]> Pileus Git - ~andy/gtk/blob - ChangeLog
Add GdkEventSetting event for notification of changes to system settings,
[~andy/gtk] / ChangeLog
1 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4         of changes to system settings, gdk_setting_get() to retrieve
5         a single system setting.
6
7         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
8         to the draft XSETTINGS mechanism.
9
10         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
11         XSETTINGS.
12
13         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
14         of GDK settings changes to the GtkSettings object.
15
16         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
17         double-click-timeout property to GDK.
18
19         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
20         Define GDK boxed types here.
21
22         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
23         gdk/gdkenumtypes.[ch] for enum definitions.
24
25         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
26         * gtk/gtk-boxed.defs: Comment out GDK types
27         * gtk/gtktypeutils.h: Remove GDK types
28         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
29
30 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
31
32         * Applied patch from Ron Steinke to add signal accumulators
33         so that signals with the convention 'TRUE return means
34         handled' stop emission on a TRUE return.
35
36         * gtk/gtkmain.[ch]: Add private accumulator 
37         _gtk_boolean_handled_accumulator, used throughout GTK+.
38         
39         * gtk/gtkspinbutton.c: Add accumulator for ::output.
40
41         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
42         
43         * gtk/gtkwidget.c: Add accumulators for event signals,
44         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
45         for ::mnemonic-activate.
46
47         * gtk/gtkwindow.c: Add accumulator for ::frame_event
48
49 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
50
51         * gtk/gtkwidget.c: Add missing include.
52
53 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
54
55         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
56         marshaller.
57
58         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
59         "changed" signal to "range_changed".
60
61         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
62         removing a tree from one model would remove all trees from that
63         model.
64         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
65         changed signal instead.
66
67 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
68
69         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
70         chaining up to parent impl, since we have a INPUT_ONLY
71         window.
72
73         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
74         foreground color for the cursor.
75
76 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
77
78         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
79         param spec when caching property values, since we unref it
80         later when we free the style.
81
82         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
83         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
84
85 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
86
87         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
88         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
89         stupidity.
90
91 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
92
93         [ First pass at adding style properties. Still needs some definite
94         fine-tuning. ]
95
96         * gtk/gtkbutton.c: Add ::default_spacing style property.
97          
98         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
99         ::indicator_spacing style properties.
100
101         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
102         style properties.
103
104         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
105         rather than a normal property.
106
107         * gtk/gtkwidget.c: Add an ::interior_focus style property to
108         draw focus inside buttons, in the Windows/Java Metal/etc. style.
109
110         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
111         Honor ::interior_focus.
112         
113         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
114         TRUE.
115
116         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
117         Add ::slider_width, ::trough_border, ::stepper_size,
118         ::stepper_spacing style properties.
119
120         * gtk/gtkscale.[ch] Add ::slider-length style property.
121
122 2001-04-02 Alexander Larsson   <alexl@redhat.com>
123
124         * gdk/linux-fb/gdkwindow-fb.c:
125         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
126         warnings that were spewed on startup.
127
128         * gtk/gtkwindow-decorate.c:
129         gtk_window_reposition -> _gtk_window_reposition
130
131 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
132
133         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
134         Add boxed type for GtkRequistion. Use it for ::size-request.
135
136         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
137         Add a new GtkBorder structure useful for geometry properties
138         for widgets. Add corresponding GTK_TYPE_BORDER.
139         
140         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
141         Support automatic parser selection like
142         gtk_settings_install_property_parser().
143
144         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
145         functionality for use by gtk_widget_class_install_style_property.
146         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
147
148 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
149
150         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
151         g_param_spec_unichar(). 
152
153 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
154
155         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
156         _NET window managers.
157
158         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
159
160 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
161
162         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
163         bad needs to be nuked, not just deprecated.
164
165         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
166         gtk_widget_popup().
167
168         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
169         
170         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
171         widget.
172         
173         * docs/Changes-2.0.txt: updates.
174         
175 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
176
177         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
178         for (i = 0; i < 100; i ++)
179           g_print ("I will confirm it compile before committing\n");
180
181 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
182
183         * gtk/gtktreestore.c: Initial work on implementing the
184         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
185
186 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
187
188         * gtk/gtkwidget.c: fixed a bunch of notifications, added
189         reference counts around emissions where the widget is used afterwards.
190         added freeze/thaws around multiple properties being notified.
191         (_gtk_widget_get_aux_info): cleanups.
192         
193         * gtk/gtksettings.c (gtk_settings_install_property): provide
194         default parsing functions for gdkcolor, enums and flags.
195
196         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
197         applied by owen.
198         backed out gtk_window_get_location(), gtk_window_set_location(),
199         gtk_window_get_size() and gtk_window_set_size(), these
200         have to be sorted out wrg x/y/width/height/default_with/default_height
201         properties.
202         kept a flag in GtkWindowGeometryInfo to handle user
203         resetting default sizes.
204         cleaned up ZVT comments.
205         bunch of assorted bug fixes, notification fixes.
206         (_gtk_window_reposition): make this a really internal function.
207         
208         * gtk/testgtk.c: fixups.
209         
210 2001-03-31  Hans Breuer  <hans@breuer.org>
211
212         * config.h.win32.in : disable USE_MMX for msvc build cause
213         the assembler doesn't fit and is out of my scope. Disable
214         USE_GMODULE for msvc build as wel. The right way to share
215         binaries on win32 would be to use libtiff.dll etc. To reduce
216         installation hassles IMO it's better to include all fileformats
217         builtin to gdk-pixbuf
218
219         * gdk-pixbuf/makefile.msc : new file
220
221         * gdk/gdk.def : updated
222
223         * gdk/win32/gdkevents-win32.c : don't erase the background if
224         .no_bg is set. It improves the scrolling (e.g. of testgtk main
225         buttons
226         * gdk/win32/gdkgeometry-win32.c : added comment about the above
227
228         * gdk/win32/gdkwindow-win32.c : added three new functions like
229         the X version. Only one is implemented, because the other two
230         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
231         be default behaviour on win32 anyway ...
232
233         * gtk/gtk.def : updated
234
235         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
236         from where it was built and add an additional rule to automagically
237         build gtkmarshal.[hc]
238
239         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
240         before array access for the current entry isn't finished
241
242         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
243         use g_return_val_if_fail
244
245         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
246         for the static array, but let the compiler calculate it. It
247         makes me wonder if gcc isn't capable to catch bugs like this ...
248
249 2001-03-31  James Henstridge  <james@daa.com.au>
250
251         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
252         constant "-1" in the aux info structure.
253
254 2001-03-30  Alexander Larsson  <alexl@redhat.com>
255
256         * gtk/gtkbutton.c (gtk_button_get_property):
257         * gtk/gtklabel.c:
258         Remove leaks.
259         
260         * gtk/gtkcontainer.c:
261         * gtk/gtkhscale.c:
262         * gtk/gtkhscrollbar.c:
263         * gtk/gtklayout.c:
264         * gtk/gtkmisc.c:
265         * gtk/gtkprogress.c:
266         * gtk/gtkprogressbar.c:
267         * gtk/gtkrange.c:
268         * gtk/gtktable.c:
269         * gtk/gtkviewport.c:
270         * gtk/gtkvscale.c:
271         * gtk/gtkvscrollbar.c:
272         * gtk/gtkwidget.c:
273         Property patches, based on patches from John Margaglione and Lee Mallabone.
274
275 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
276
277         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
278         adjustment. Cleaned redundant preconditions (spin != NULL). Added
279         inline API function docs.
280         (gtk_spin_button_new_with_range): New convenience constructor.
281         (gtk_spin_button_set_increments): New adjustment helper.
282         (gtk_spin_button_set_range): New adjustment helper.
283
284         * gtk/testgtk.c : added test of the new convenince constructor and
285         value_changed signals.
286
287 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
288
289         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
290         listen to the reorder signal.
291
292 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
293
294         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
295         to get the aux info structure fo the widget.
296
297         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
298         above function.
299
300         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
301
302         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
303         to get the size of the window manager frame, basically the same
304         code that gdk_window_get_root_origin() had
305         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
306
307         * gtk/gtkwindow.c (gtk_window_set_default_size): use
308         gdk_window_resize() if the window is realized and resizeable
309
310         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
311         typo so that setting gravity works
312
313         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
314         allocation if auto_shrink is on, even if the default size
315         has not changed.
316
317         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
318         g_return_if_fail
319
320 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
321
322         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
323         reordering/sorting work.  Now pretty much works.
324
325         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
326         reorder mostly work.  Still need to get the parity correct.
327
328         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
329         signal, so I can listen for the sort_column_changed signal so I
330         can change my "sort_indicator" property.  Cool.
331
332 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
333
334         [ Patch from Havoc Pennington, hp@redhat.com ]
335
336         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
337         Add functions gdk_window_begin_resize_drag/begin_move_drag
338         to start resizing or moving a toplevel window. This
339         is done either using the _NET_WM_MOVERESIZE protocol,
340         or, if that isn't present, by emulation.
341
342         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
343         to export the above to GTK+-land.
344
345         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
346         
347         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
348         Move this function into gdkwindow, since we need it
349         when implementing fallback resizing.
350
351         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
352         Fix typo when setting gravity.
353
354         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
355         Add an optional (but on by default) resize grip for resizing 
356         the parent window.
357
358 01-03-29  Alexander Larsson  <alexl@redhat.com>
359
360         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
361         Don't return TRUE from the event handler, that blocks all
362         event signals on the tooltip widget. Now you can press buttons
363         in toolbars again.
364
365 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
366
367         * gtk/testtext.c (create_buffer): Add missing NULL on
368         valist.
369
370         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
371         c-n-p problem with INCONSISTENT property.
372
373         [ Patch from Havoc Pennington  <hp@redhat.com> ]
374
375         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
376         hook.
377
378         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
379         signal as a hook for extending the default popup menu
380
381         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
382         use radio menu items for the input method menuitems
383
384         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
385         inserted unicode from Ctrl-Shift-hex input method
386
387         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
388         validatation here, already done at GtkTextBuffer level.
389
390         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
391         popup_menu run action signal and Shift+F10 and Menu keybindings.
392
393         * gtk/gtkentry.c: implement a default handler for popup_menu
394
395         * gtk/gtktextview.c: implement a default handler for popup_menu
396
397         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
398         from a key event
399         
400         * gtk/gtklabel.c: remove "trailer" cruft
401
402 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
403
404         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
405         handle reordering of trees.  Seems to mostly work w/ the exception
406         of the parity flag.
407
408         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
409         signal.
410
411 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
412
413         * gtk/gtkwidget.h: c++ fixes.
414
415 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
416
417         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
418         memory.
419
420 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
421
422         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
423         Nils Barth fixing event return values. (#51041)
424
425         * gtk/gtkwidget.c: Fix some return values for default
426         functions.
427
428         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
429         return values for trough_keys functions.
430
431         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
432         value for add_accelerator (shoudl have been a void
433         return.)
434
435         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
436         Fix return type of EVENT.
437
438         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
439         signal return a boolean.
440
441 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
442
443         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
444         reordered signal.
445
446         * tests/testtreesort.c (main): fix spelling.
447
448 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
449
450         * gtk/gtkliststore.c: More work on implementing sortable
451         interface.
452
453 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
454
455         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
456         reference the widgets in the resulting list. (#11821)
457         This makes this consistent with gtk_container_children.
458
459         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
460         uses of gtk_window_list_toplevels.
461
462 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
463
464         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
465         a virtual function to set whether the IM context should use 
466         the preedit string. (#51922)
467         
468 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
469
470         * gdk/gdkpango.h: Remove stale FIXME comment.
471
472 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
473
474         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
475         Fixed bug that returned NULL if a filename was selected.
476
477 2001-03-24  Havoc Pennington  <hp@pobox.com>
478
479         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
480         to contain the word "theme"
481
482 2001-03-24  Havoc Pennington  <hp@pobox.com>
483
484         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
485         slower but finer-grained
486         (gtk_hsv_focus): get initial focus on the ring or triangle 
487         according to tab direction
488
489         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
490
491 2001-03-23  Havoc Pennington  <hp@pobox.com>
492
493         * gtk/gtkhsv.c: make this somewhat key-navigable
494
495         * gtk/gtkfontsel.c: mnemonics
496
497         * gtk/gtkgamma.c: mnemonics
498
499         * gtk/gtkcolorsel.c: add mnemonics to labels
500
501 2001-03-22  Havoc Pennington  <hp@pobox.com>
502
503         Applied big patch from Seth Lytle to fix event handler return
504         values, slightly modified.
505
506         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
507         handled.
508         (gtk_calendar_key_press): return TRUE for GDK_space triggers
509         select_day
510
511         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
512         (gtk_clist_button_release): return TRUE if handled
513
514         * gtk/gtkcolorsel.c (mouse_release):
515         (palette_activate): 
516         (palette_press): 
517         (palette_new): 
518         (mouse_press): 
519         (get_screen_color): 
520         fixed return type (void to gboolean), return TRUE,
521         added GTK_SIGNAL_FUNC cast
522
523         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
524         (void to gboolean), and return TRUE
525         (gtk_combo_button_release): changed return value to TRUE after
526         gtk_grab_add on combo->popwin
527
528         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
529         collapse or expand
530
531         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
532         button/motion
533
534         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
535         press/release and motion that trigger act
536
537         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
538
539         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
540         for GDK_Return
541         
542         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
543         (gtk_list_button_release): return TRUE if selection
544
545         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
546         press
547
548         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
549         (gtk_menu_shell_button_release): chain parent_menu_shell retval
550
551         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
552         nothing triggered
553         (gtk_notebook_button_release): return TRUE if we do anything
554
555         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
556         (gtk_spin_button_button_release): return TRUE or chained retval
557
558         * gtk/gtktext.c (gtk_text_button_press): 
559         (gtk_text_button_release): return TRUE
560         (gtk_text_key_press): remove redundant retval code
561         
562         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
563         and sensitive
564         (gtk_tree_item_subtree_button_click): changed type to gint, and return
565         TRUE if sensitive
566
567         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
568         return TRUE
569
570 2001-03-23  Havoc Pennington  <hp@redhat.com>
571
572         * gtk/testgtk.c: fix warnings
573
574         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
575
576         * gtk/gtktextview.c: fix warnings
577
578         * gtk/gtktext.c (find_cursor_at_line): fix warning
579
580         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
581
582         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
583         of this function
584
585         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
586         fix warning
587
588         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
589
590         * gtk/gtkfontsel.c: fix warning
591
592         * gtk/gtkcolorsel.c: fix warnings
593
594 2001-03-23  Havoc Pennington  <hp@redhat.com>
595
596         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
597
598         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
599
600         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
601         and deprecated gtk_check_menu_item_set_show_toggle().
602         
603         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
604
605         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
606
607         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
608
609 2001-03-23  Havoc Pennington  <hp@redhat.com>
610
611         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
612         some docs
613
614 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
615
616         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
617         this.
618
619         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
620         set_cell to set_value
621
622         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
623         set_cell to set_value
624
625 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
626
627         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
628         fix braino.
629         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
630         support.
631
632         * gtk/gtktreeview.c: Addition of initial sortable support.
633
634         * gtk/gtktreestore.c: Addition of initial sortable support.
635
636         * gtk/gtkliststore.c: Addition of initial sortable support.
637
638         * gtk/gtkmarshal.list: yet another marshaller.
639
640         * gtk/gtktreedatallist.[ch]: shared code between the store models
641         for handling sorting headers.
642
643 2001-03-22  Havoc Pennington  <hp@redhat.com>
644
645         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
646         (gtk_container_unset_focus_chain): Add ability to override the 
647         focus chain for a container explicitly
648
649 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
650
651         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
652         added PROP_MNEMONIC_WIDGET.
653
654         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
655         (gtk_window_remove_mnemonic): 
656         (gtk_window_add_mnemonic): fixed assertions.
657         (gtk_window_activate_mnemonic): constrain modifier checks to those
658         permitted by gtk_accelerator_get_default_mod_mask().
659         got rid of gtk_window_get_default_accel_group().
660
661         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
662         activatable widgets either by focussing or a warning.
663         added a signal accumulator to ::activate_mnemonic which stops the
664         emission once a handler returned TRUE.
665
666 2001-03-22  Havoc Pennington  <hp@pobox.com>
667
668         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
669         the stock item label
670
671         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
672
673         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
674
675         * demos/gtk-demo/*.c: Add mnemonics all over the place
676
677         * gtk/gtklabel.h: mark parse_uline deprecated
678
679 2001-03-21  Alexander Larsson  <alexl@redhat.com>
680
681         * gtk/gtkitemfactory.[ch]:
682         Add support for stock and normal imagemenuitems.
683         
684         * gtk/testgtk.c:
685         Add some tests for mnemonics, stock toolbars, stock
686         and image menuitems in itemfactory and gdk_window_scroll.
687
688 2001-03-21  Alexander Larsson  <alexl@redhat.com>
689
690         * gtk/gtkbutton.[ch]:
691         * gtk/gtkdialog.c:
692         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
693         removed accel_group argument. Renamed gtk_button_new_accel() to
694         gtk_button_new_with_mnemonic() and removed accel_group argument.
695
696         * gtk/gtkcheckbutton.[ch]:
697         New function gtk_check_button_new_with_mnemonic().
698
699         * gtk/gtkentry.c:
700         Override activate_mnemonic and just grab focus.
701
702         * gtk/gtkitemfactory.c:
703         Don't add menu uline accel group, instead use mnemonics support.
704
705         * gtk/gtklabel.[ch]:
706         New support for mnemonics.
707
708         * gtk/gtkmarshal.list:
709         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
710
711         * gtk/gtkmenu.[c]:
712         * gtkmenushell.c:
713         Use mnemonics instead of accel groups for uline
714         support in menu items.
715         Removed gtk_menu_get_uline_accel_group() and
716         gtk_menu_ensure_uline_accel_group().
717
718         * gtk/gtkmenuitem.c:
719         Override activate_mnemonic to handle switching between
720         menu items if there are collisions.
721         
722         * gtk/gtknotebook.c:
723         Connect to activate_mnemonic on the tab_label, so that
724         activating it switches to that notebook page.
725
726         * gtk/gtkwidget.[ch]:
727         Add activate_mnemonic signal. New function
728         gtk_widget_activate_mnemonic() to emit it.
729         Default implementation does activate/grab_focus.
730
731         * gtk/gtkwindow.[ch]:
732         Add support for mnemonics in windows.
733         New functions:
734         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
735         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
736
737         * gtk/testgtk.c:
738         Update to function name changes.
739         
740 2001-03-21  Alexander Larsson  <alexl@redhat.com>
741
742         * gtk/gtkimagemenuitem.[c]:
743         Add gtk_image_menu_item_new_from_stock()
744
745 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
746
747         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
748         Fix buglet in meeting.
749
750 2001-03-19  Havoc Pennington  <hp@redhat.com>
751
752         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
753         add a bunch of accessor functions. This is because we have
754         reasonable expectations of extending what fields it contains in
755         the future.
756
757         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
758         changes
759
760         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
761         GtkIconSource   
762
763 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
764
765         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
766         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
767
768         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
769           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
770           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
771           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
772         Change float to double everywhere with the exception of 0<->1.0 alignment
773         and GtkCurve.
774
775 2001-03-19  Tor Lillqvist  <tml@iki.fi>
776
777         * gdk/win32/gdkdrawable-win32.c
778         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
779         output.
780
781         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
782         gdkwin32.h.
783
784 2001-03-18  Tor Lillqvist  <tml@iki.fi>
785
786         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
787         print_event_state, print_event): Use preprocessor macro to make
788         code more compact. Print also GDK_WINDOW_STATE events.
789         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
790         
791         * gtk/gtk.def
792         * gtk/makefile.mingw.in: Update.
793
794         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
795         to catch also Cygwin.
796
797 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
798
799         * gtk/gtkspinbutton.[hc]: added rc-style argument
800         GtkSpinButton::shadow_type.
801         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
802         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
803         rc-style settings.
804
805         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
806
807         * gtk/gtkwidget.c: quark cleanups.
808
809         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
810         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
811         to create_rc_style() (we don't do cloning in standard OO sense).
812         added per rc style properties.
813         
814         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
815         property values and for caching those. some cleanups.
816         
817         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
818         
819         * gtk/gtksettings.[hc]: new file for global rc-file properties
820         (at least currently, should get extended to support X properties
821         and other communication mechanisms).
822         
823         * gtk/gtkwidget.[hc]: added style property support:
824         (gtk_widget_class_install_style_property_parser): install style
825         property pspec with parser function for rc-file values other
826         than LONG, DOUBLE or STRING.
827         (gtk_widget_class_install_style_property): same as above without
828         parser (parsers are going to be needed quite infrequently).
829         (gtk_widget_style_get_property): retrive style property value.
830         (gtk_widget_style_get_valist): same as above with varargs support,
831         has NOCOPY semantics.
832         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
833
834 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
835
836         * demos/gtk-demo/main.c (row_activated_cb): modified to use
837         "row_activated" signal.
838
839         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
840         stupidity.  Lets actually pass in the row with this signal...
841
842 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
843
844         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
845
846         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
847
848         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
849         everything into the ::destroy function, and freed a lot more.
850
851 2001-03-16  Havoc Pennington  <hp@redhat.com>
852
853         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
854         instead of gint16, to avoid overflow issues, since sizes > 16-bit
855         are now allowed.
856
857 2001-03-16  Havoc Pennington  <hp@redhat.com>
858
859         * Applied patch from Nils Barth (bug # 51041) to 
860         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
861         in various places.
862
863 2001-03-15  Havoc Pennington  <hp@redhat.com>
864         
865         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
866         for properties to set on the tag.
867
868         * gtk/testtext.c: fixups to reflect create_tag change
869         
870         * gtk/gtktexttag.c (gtk_text_tag_set_property):
871         background/foreground stipple are objects, not boxed.
872
873         * demos/gtk-demo/textview.c: intellihancing
874
875 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
876
877         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
878         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
879
880 2001-03-16  Alexander Larsson  <alexl@redhat.com>
881
882         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
883         Fix sign error with queued region translations.
884
885 2001-03-15  HideToshi Tajima  <tajima@happy>
886
887         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
888         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
889         * gtk/gtkentry.c (update_im_cursor_location): 
890         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
891         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
892         set_cursor_pos to set_cursor_location in GtkInputContext class
893
894 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
895
896         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
897         the location of the cell relative to its area.
898         * gtk/gtkcell*: modified for above change
899         * gtk/gtktreeview.c: modified for above change.
900
901 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
902
903         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
904          (gtk_tree_view_finalize): actually unref the model.  Thanks to
905         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
906
907 2001-03-14  Havoc Pennington  <hp@redhat.com>
908
909         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
910         
911         * gtk/gtk.h: remove gtkdata.h
912
913         * gtk/Makefile.am: remove gtkdata
914         
915         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
916         not "disconnect" on the adjustments.
917         
918         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
919         GtkData
920
921         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
922         not GtkData
923
924         * configure.in: handle case where X render exists, but Pango lacks
925         Xft support.
926
927 2001-03-15 Alexander Larsson  <alexl@redhat.com>
928
929         * gtk/gtktoolbar.[ch]:
930         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
931         to add stock items to toolbars.
932
933         * gtk/Makefile.am:
934         Remove ../gdk/gdkim.h from gdk_headers.
935
936 2001-03-15  Sven Neumann  <sven@gimp.org>
937
938         * gdk/gdkim.h: removed
939         
940         * gdk/gdkprivate.h
941         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
942
943 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
944
945         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
946         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
947         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
948         set_cursor_pos() virtual method
949
950         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
951         (gtk_im_context_xim_set_cursor_pos): add implementation for
952         set_cursor_pos() method
953
954         * gtk/gtkentry.c (recompute_idle_func): set current cursor
955         position to input methods
956
957 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
958
959         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
960         code a lot.
961
962         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
963         g_mem_chunk.
964         (_gtk_tree_data_list_alloc): use g_mem_chunk.
965         (_gtk_tree_data_list_node_to_value): Fix to switch on
966         G_TYPE_FUNDAMENTAL.
967         (_gtk_tree_data_list_value_to_node): Fix to switch on
968         G_TYPE_FUNDAMENTAL.
969         (_gtk_tree_data_list_node_copy): Fix to switch on
970         G_TYPE_FUNDAMENTAL.
971
972 2001-03-12  Havoc Pennington  <hp@redhat.com>
973
974         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
975         to convert to new property API. Also, change default_width and
976         default_height get_property to return 0 as the flag value for
977         "unset"; -1 is not a valid value for these fields.
978
979 2001-03-12  Havoc Pennington  <hp@redhat.com>
980
981         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
982         enum with registration for icon sizes, instead of strings.
983
984         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
985         gtkwidget.c: Fix to reflect GtkIconSize
986         
987 2001-03-12  Alexander Larsson  <alexl@redhat.com>
988
989         Make GtkFB compile and link.
990         
991         * gdk/linux-fb/gdkdrawable-fb2.c:
992         window->mapped to GDK_WINDOW_IS_MAPPED(). 
993         
994         * gdk/linux-fb/gdkwindow-fb.c:
995         window->mapped to GDK_WINDOW_IS_MAPPED(). 
996         Added gdk_window_shape_combine_region.
997         Added assorted placeholders for unimplemented new GdkWindow API calls.
998
999 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1000
1001         * gtk/gtkfilesel.c:
1002         Add more test when converting filenames from/to utf-8.
1003         Don't allow entering text in the filename entry which isn't allowed in
1004         a filename. Just beep instead.
1005
1006 2001-03-12  Alexander Larsson  <alexl@redhat.com>
1007
1008         * gtk/gtkclist.c:
1009         Scroll using gdk_window_scroll(). Don't wait for exposes.
1010         Move the column headers in an order that makes them flash less.
1011
1012 2001-03-10  Hans Breuer  <hans@breuer.org>
1013
1014         * gdk/gdk.def : updated
1015
1016         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
1017         to offseting the clip_mask at the right place
1018
1019         * gdk/win32/gdkwindow-win32.c : don't create background brushes
1020         for all the gdkClasses, especially not for the input_only case.
1021         Otherwise flickering wont be avoidable, because we don't get
1022         WM_ERASEBKGND message for these windows.
1023
1024         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
1025         and fixed massive redraw problems apparently triggered by Alexanders 
1026         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
1027         but it seems to work quite well :-)
1028
1029         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
1030         prototype
1031
1032 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
1033
1034         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
1035         (gtk_list_store_set_cell): Fix a stupid typo.
1036
1037 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
1038
1039         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
1040         select_all not work if you're in SINGLE mode (it doesn't make that
1041         much sense, anyway.)
1042
1043         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
1044         handle types more sanely.
1045         (_gtk_tree_data_list_value_to_node): handle types more sanely.
1046         (_gtk_tree_data_list_node_copy): handle types more sanely.
1047
1048         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
1049         GValue better. Converts the type as well.
1050
1051         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
1052         GValue better. Converts the type as well.
1053
1054 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
1055
1056         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
1057         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
1058         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
1059         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
1060
1061         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
1062         gdk_im/gdk_ic.
1063
1064 2001-03-09  Hans Breuer  <hans@breuer.org>
1065
1066         * gdk/gdk.def : updated
1067
1068         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
1069         for their palette
1070
1071         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
1072         removing
1073
1074         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1075         removing and implemented Havoc's GdkWindow state functions; 
1076         stick/unstick only as no-op, cause I don't know how to emulate 
1077         on win32 ...
1078
1079         * gtk/gtk.def : updated
1080
1081         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1082
1083         * gtk/gtktypeutils.c : #include <string.h>
1084
1085         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1086
1087 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1088
1089         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1090         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1091         not a boxed.
1092
1093 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1094
1095         * docs/Changes-2.0.txt:
1096         Document expose event->region change and that gtk_widget_event
1097         doesn't allow passing expose events.
1098
1099         * gdk/gdkevents.h:
1100         Add region to expose event.
1101         
1102         * gdk/gdkevents.c:
1103         Handle event->region in gdk_event_copy() and gdk_event_free().
1104
1105         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1106         Generate expose_event->region when creating expose events.
1107
1108         * gdk/x11/gdkevents-x11.c:
1109         Generate expose events with regions when translating X events.
1110
1111         * gtk/gtkcontainer.[ch]:
1112         Default expose handler that propagates expose events to NO_WINDOW
1113         children. New function gtk_container_propagate_expose()
1114
1115         * gtk/gtkwidget.[ch]:
1116         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1117         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1118         expose events. New function gtk_widget_send_expose() to send expose
1119         events. New function gtk_widget_region_intersect() to calculate
1120         window/region intersections.
1121         
1122         * gtk/gtkmain.c (gtk_main_do_event):
1123         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1124         Use gtk_widget_send_expose() to send expose events.
1125         
1126         * gtk/gtkbin.c:
1127         * gtk/gtkbox.c:
1128         * gtk/gtkfixed.c:
1129         * gtk/gtkimagemenuitem.c:
1130         * gtk/gtklist.c:
1131         * gtk/gtkpacker.c:
1132         * gtk/gtktable.c:
1133         * gtk/gtktree.c:
1134         Remove expose handler, using the default container implementation
1135         instead.
1136         
1137         * gtk/gtkbutton.c:
1138         * gtk/gtkcheckbutton.c:
1139         * gtk/gtkeventbox.c:
1140         * gtk/gtkfixed.c:
1141         * gtk/gtkhandlebox.c:
1142         * gtk/gtklayout.c:
1143         * gtk/gtklistitem.c:
1144         * gtk/gtkmenu.c:
1145         * gtk/gtkmenubar.c:
1146         * gtk/gtkmenuitem.c:
1147         * gtk/gtknotebook.c:
1148         * gtk/gtkoptionmenu.c:
1149         * gtk/gtkpaned.c:
1150         * gtk/gtkscrolledwindow.c:
1151         * gtk/gtktogglebutton.c:
1152         * gtk/gtktoolbar.c:
1153         * gtk/gtktreeitem.c:
1154         * gtk/gtkviewport.c:
1155         Chain expose handler to parent class handler. Use
1156         gtk_container_propagate_expose() to propagate exposes.
1157
1158         * gtk/gtkclist.c (check_exposures):
1159         * gtk/gtktext.c (process_exposes):
1160         Use gtk_widget_send_expose instead of gtk_widget_event.
1161
1162 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1163
1164         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1165
1166 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1167
1168         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1169         unref the nodes.   Fixes bug #50058.
1170
1171         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1172         "::ref_iter" to "::ref_node".
1173         (gtk_tree_model_unref_node): change "::unref_iter" to
1174         "::unref_node". Fixes bug #50064.
1175
1176 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1177
1178         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1179         support for invisible cells.
1180          (gtk_tree_view_bin_expose): ditto
1181
1182 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1183
1184         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1185         on gobjects.
1186
1187         * tests/testtreefocus.c (main): New test file.
1188
1189         * tests/testtreeview.c: update to latest glib changes.
1190
1191         * tests/testtreecolumns.c: update to latest glib changes.
1192
1193 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1194
1195         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1196
1197 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1198
1199         * *.c: added accumulator data argument to g_signal_newc()
1200         functions.
1201
1202         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1203         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1204         * gtk/treestoretest.c (make_window):
1205         s/g_signal_connect/g_signal_connectc/.
1206
1207         * gtk/gtktextbuffer.c: completed signal arg fixups,
1208         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1209
1210 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1211
1212         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1213         G_CONST_RETURN.
1214
1215         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1216         ::hierarchy-changed signal when a widget changes
1217         from anchored to unanchored or vice versa.
1218         (anchored means 
1219          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1220         Use a private flag to keep track of this efficiently.
1221
1222 2001-03-07  Havoc Pennington  <hp@redhat.com>
1223
1224         * gtk/testgtk.c (create_spins): uglify so that size request gets
1225         tested.
1226
1227         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1228         request on values for upper/lower, completes #6152
1229
1230 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1231
1232         * Makefile.am: Remove gtk-config-2.0 again.
1233         (Grrrr, pkg-config. And stops make loops.)
1234
1235 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1236
1237         * gtk/gtksignal.[hc]: removed old emission hook API.
1238         
1239         * docs/Changes-2.0.txt: fixed sections.
1240         
1241         * gtk/gtktextbuffer.c: signal arg fixups.
1242
1243 2001-03-07  Havoc Pennington  <hp@redhat.com>
1244
1245         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1246
1247         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1248         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1249         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1250         validation and the redraw which is higher priority than the
1251         validation.
1252
1253 2001-03-07  Havoc Pennington  <hp@redhat.com>
1254
1255         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1256         (gtk_entry_set_property): remove trailer
1257
1258         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1259         (gtk_entry_get_width_chars): new functions, to set size request to 
1260         a given number of characters
1261
1262         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1263
1264         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1265         (gtk_dialog_get_has_separator): new function
1266         (run_delete_handler): fix to not emit "response" signal
1267         because we already did in the delete event handler installed
1268         at dialog creation time.
1269         
1270         * gtk/gtkdialog.h: add a has_separator property,
1271         add GTK_DIALOG_NO_SEPARATOR flag
1272
1273 2001-03-07  Havoc Pennington  <hp@redhat.com>
1274
1275         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1276         off decorations for a window.
1277
1278         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1279         changes
1280
1281         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1282         to get location of PangoLayout inside the label, closes #51198
1283
1284         * gtk/testgtk.c (create_bbox): fix up button box usage
1285
1286         * gtk/testcalendar.c (create_calendar): fix up button box usage
1287
1288         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1289
1290         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1291
1292         * gtk/gtkhbbox.h: deprecations
1293
1294         * gtk/gtkvbbox.h: deprecations
1295
1296         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1297         emulate deprecated gtk_button_box_get_spacing
1298
1299         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1300         the "set global default" functions
1301         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1302         GtkBox base class
1303
1304         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1305
1306         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1307         render the icon, return the missing image icon.
1308
1309         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1310         image icon if the load fails.   
1311
1312         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1313         when no image is found; should be the Netscape "missing image"
1314         icon eventually but for now is a random image
1315
1316         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1317         role for the session manager
1318
1319         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1320
1321         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1322         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1323
1324         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1325
1326 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1327
1328         * gtk/*.c: marshaller fixes.
1329         
1330         * gtk/gtkmarshal.list: extreme cleanup.
1331
1332         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1333         param spec for now.
1334
1335         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1336         where appliable.
1337
1338         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1339         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1340         which are not reference counted:
1341         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1342         PangoFontDescription, GtkTreeIter and GtkTreePath.
1343
1344 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1345
1346         * gtk/gtktreeselection.h: 
1347         * gtk/gtktreemodel.c:
1348         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1349         file should be included directly, and gobject/gmarshal.h
1350         as well as gtk/gtkmarshal.h even can't be included directly.
1351
1352         * Makefile.am: grr, install gtk-config-2.0.
1353
1354         * gtk/testgtk.c:
1355         * gtk/simple.c:
1356         * gtk/gtkmenu.c:
1357         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1358         passing "*signal*::*" args to gtk_widget_set().
1359         
1360         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1361         
1362         * gtk/*.c: removed trailer arg from property setters and getters.
1363         macro fixups.
1364
1365 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1366
1367         * gtk/gtklabel.c (set_markup): Removed warning
1368
1369 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1370
1371         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1372         field to allow you to hide cell renderers.
1373
1374         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1375
1376         * gtk/gtktreeview.c: Add support for invisible cells.
1377
1378 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1379
1380         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1381         Add "clicked" signal back to columns.
1382
1383         * ChangeLog: remove conflict markers.
1384
1385 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1386
1387         * gtk/gtkbutton.c: Add animation of activation by, on 
1388         activate, pressing the button, and adding a timeout that 
1389         releases the button after 250ms or on key release and
1390         emits ::clicked. (#51501)
1391
1392         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1393         action area, we connect to ::clicked instead of ::activate
1394         so the dialog stays up through the animation.
1395
1396 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1397
1398         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1399         check the ignore_enter flag for the menu shell that
1400         the item is actually a child of, not for attached
1401         submenus. (#51536)
1402
1403 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1404
1405         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1406         special key-press grab handling for widgets within
1407         GtkWindows. Otherwise, fall through to normal case.
1408
1409         This prevents key events being sent twice to GtkInvisible
1410         widgets, which can cause all sorts of mischief.
1411
1412 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1413
1414         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1415         widget is in effect, give the grab widget a first
1416         crack at KEY_PRESS/RELEASE events. (#424)
1417
1418 2001-03-06  James Henstridge  <james@daa.com.au>
1419
1420         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1421         offset for the window_state_event to point at window_state_event
1422         rather than no_expose_event.
1423
1424 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1425
1426         * gtk/gtkimmodule.h: fix busted /* comment */
1427
1428 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1429
1430         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1431         object properties.
1432
1433 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1434
1435         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1436         add object properties.
1437
1438         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1439         to add object properties.
1440
1441         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1442         object properties.
1443
1444         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1445         add object properties.
1446
1447         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1448         object properties.
1449
1450 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1451
1452         * gtk/gtktreemodel.c: renamed "child_toggled" to
1453         "has_child_toggled".
1454
1455         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1456         handle new signal name.
1457
1458         * gtk/gtktreestore.c: Updated to handle new signal name.
1459         * gtk/gtklisttore.c: Updated to handle new signal name.
1460         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1461
1462 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1463
1464         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1465         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1466
1467 2001-03-05  Michael Natterer  <mitch@gimp.org>
1468
1469         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1470         pixbuf-engine coincidentially also failed to make one of it's
1471         parent_class pointers static, causing overwriting of GtkLabel's
1472         parent_class pointer in pixbuf_style_class_init().
1473         (Will commit the fix to the pixbuf-engine too).
1474
1475 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1476
1477         * gdk/gdkwindow.h:
1478         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1479         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1480         gdk_window_set_icon_list for net wmspec functionality.
1481
1482         * gdk/x11/gdkwindow-x11.c:
1483         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1484         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1485         gdk_window_set_icon_list.
1486         Added gdk_wmspec_change_state helper function and used it in the code.
1487         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1488
1489         * gtk/gtkdialog.c (gtk_dialog_init):
1490         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1491
1492         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1493         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1494
1495         * gtk/gtkwindow.c:
1496         new function gtk_window_set_type_hint.
1497         On realize, set type hint and modal hint.
1498
1499         * gtk/gtkwindow.h:
1500         Added type_hint field and gtk_window_set_type_hint.
1501
1502 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1503
1504         * gtk/gtklabel.[ch]:
1505         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1506         New function gtk_label_get_accel_keyval () to get the underline accelerator
1507         of the label. Setting the label pattern overrides other attributes.
1508
1509 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1510
1511         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1512         Added missing initializers to gtk_rc_style_init().
1513
1514 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1515
1516         * gtk/gtktextview.c: fixed bug #51097 about setting 
1517         gtk_text_view_set_border_window_size() if the widget is 
1518         already realized.
1519
1520 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1521
1522         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1523
1524         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1525         comment. Won't do to have duplicated doc comments between
1526         the platform subdirs.
1527
1528 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1529
1530         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1531           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1532
1533         Detectable auto-repeat - make a repeating key generate
1534         press/press/press/release instead of press/release pairs.
1535
1536         If we have Xkb and XkbSetDectableAutoRepeat supports
1537         that, we do it that way. Otherwise, when we get
1538         a release event, we check ahead with XPending to see
1539         if the next key is a KeyPress with the same keycode
1540         and timestamp. (Not 100% reliable, but pretty close.)
1541           
1542 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1543         
1544         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1545         special key-press grab handling for widgets within
1546         GtkWindows. Otherwise, fall through to normal case.
1547  
1548         This prevents key events being sent twice to GtkInvisible
1549         widgets, which can cause all sorts of mischief.
1550  
1551 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1552  
1553         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1554         widget is in effect, give the grab widget a first
1555         crack at KEY_PRESS/RELEASE events. (#424)
1556  
1557 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1558
1559         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1560         to extend the selection. (Roughly based on patch
1561         from Jay Cox, #50939)
1562
1563         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1564         to properly handle previous GDK_BUTTON_PRESS. 
1565         (Patch from Jay Cox, #50938)
1566
1567         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1568         '\0' back along with the deleted text. (#51148)
1569
1570 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1571
1572         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1573         the group when extracting it from the X keyboard event.
1574
1575         * modules/input/Makefile.am modules/input/imipa.c: 
1576         Simple module for entering IPA. (Do we need a 
1577         gtk-stupid-input-tricks CVS module?)
1578
1579 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1580
1581         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1582         const.
1583
1584         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1585
1586         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
1587         is no focus widget for the dialog currently, grab the focus as well
1588         as the default.
1589
1590         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
1591         the action area's children to iterate through, not the
1592         dialog's children.
1593
1594 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
1595
1596         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
1597         Add plug-socket tests. (Won't work worth a darn until I commit
1598         the rest of the plug-socket changes, but no reason these
1599         can't go into CVS now.)
1600
1601 2001-03-02  Havoc Pennington  <hp@redhat.com>
1602
1603         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
1604         _gdk_region_get_xrectangles()
1605
1606         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
1607
1608         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1609
1610         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1611         function, contributed by Ron Steinke    
1612
1613         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1614         gdk_net_wm_supports
1615
1616         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1617         New function, contributed by Ron Steinke
1618
1619         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1620         used to line up the text in the entry when using the entry for
1621         editable sheet cell hacks
1622
1623         * gtk/testgtk.c (create_entry): test the activate_default setting
1624         on GtkEntry
1625
1626         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1627         cause the entry to activate the default button for a dialog when 
1628         activated
1629         (gtk_entry_get_activates_default): new function
1630
1631 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1632
1633         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1634         Hwang to move call to sync_selection() up a few lines
1635         to before the row list is modified, to fix crash when
1636         removing rows in the undo_selection list.
1637
1638         (Test case provided by Daniel Elstner:
1639
1640         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1641
1642 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1643
1644         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1645         of tree->root_tree in parent_set rather than _map(), 
1646         fixing #50892 in a bit better manner.
1647
1648 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1649
1650         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1651
1652 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1653
1654         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1655         gtk_default_draw_shadow.
1656
1657 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1658
1659         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1660         warning, make warnings more verbose, treat a error
1661         in shmat as permanent, and don't try again.
1662         (#51163, Ed Randall.)
1663
1664 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1665
1666         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1667         delay for the first click before starting to scroll.
1668         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1669
1670         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1671         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1672
1673 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1674
1675         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1676         cleanup to remove some references to unused
1677         ->xoffset, ->yoffset.
1678
1679 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1680
1681         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1682         mask. (#51039, fix from Martin Maierhofer)
1683
1684 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1685
1686         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1687         for unshifted + and shifted = for non-us keyboards.
1688         Make <Control>+ and <Control>- work as well as 
1689         <Control>KP_Plus, <Control>KP_Minus for recursive
1690         open/close.  (#2682, René Seindal)
1691
1692 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1693
1694         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1695         the active menu item before deactivating the menu,
1696         so gtk_menu_popdown doesn't change the history. (#50964)
1697         
1698 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1699
1700         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1701         draw lines with text_gc rather than black_gc.
1702         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1703
1704 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1705
1706         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1707         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1708         less interrelated then it was, but it still requires the
1709         GtkTreeView to map it.
1710
1711         * test/testtreecolumn.c: Now I can add a column to one view,
1712         remove it, add it to the another view, remove it, then re-add it
1713         to the first.  Nifty.
1714
1715 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1716
1717         * docs/tutorial/gtk-tut.sgml: Minor corrections
1718
1719 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1720
1721         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1722         GtkRowReference.
1723
1724 2001-02-28  Havoc Pennington  <hp@redhat.com>
1725
1726         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1727         draw_default
1728         (gtk_widget_draw_focus): remove this function; we could instead
1729         make it just gtk_widget_draw(), but in most cases I think the
1730         result would be broken user code, so think it's better to have
1731         that code not compile and get fixed
1732         (gtk_widget_draw_default): ditto
1733
1734         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1735         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1736         
1737         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1738         widgets lose/get the default, instead of calling draw_default
1739         
1740         * docs/Changes-2.0.txt: note about all this
1741
1742         Then fixed every widget in GTK, I won't list all the filenames.
1743
1744 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1745
1746         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1747         _gtk_tree_row_reference_deleted.
1748         (inserted_callback): Proxy out to
1749         _gtk_tree_row_reference_inserted.
1750         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1751         get around signal emission ordering problem.
1752
1753         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1754         fix to work with SINGLE 
1755         (_gtk_tree_selection_internal_select_node): Major sanitization on
1756         selections.  SINGLE now seems to work.
1757
1758         * tests/Makefile.am: add testtreecolumn.c:
1759
1760         * tests/testtreecolumn.c: New test.  Mostly points out selection
1761         bugs currently, but will test columns later.
1762
1763         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1764         selection bug.  I hate touching this code -- it's scary.
1765
1766 2001-02-26  Havoc Pennington  <hp@redhat.com>
1767
1768         * gtk/testgtk.c: test the window state stuff
1769
1770         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1771         window come to the user's attention as if it were just created
1772         (gtk_window_iconify): new function
1773         (gtk_window_deiconify): new function
1774         (gtk_window_stick): new function
1775         (gtk_window_unstick): new function
1776         (gtk_window_maximize): new function
1777         (gtk_window_unmaximize): new function
1778
1779         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1780
1781         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
1782
1783         * gdk/x11/gdkevents-x11.c: create window state events when
1784         appropriate
1785         (gdk_wmspec_supported): new function
1786
1787         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
1788         iconification before showing the window
1789         (gdk_window_deiconify): new function
1790         (gdk_window_stick): new function
1791         (gdk_window_unstick): new function
1792         (gdk_window_maximize): new function
1793         (gdk_window_unmaximize): new function
1794
1795         * gdk/gdkwindow.c: store the window state in the window; 
1796         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
1797         window->mapped.
1798         (gdk_window_get_state): return the current window state
1799
1800         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
1801         (gdk_event_get_state): handle GDK_WINDOW_STATE
1802         (gdk_synthesize_window_state): function to create the window state
1803         events
1804
1805         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
1806         event, for changes to "window state" such as maximized, sticky, 
1807         etc.
1808         
1809         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
1810         focuses a window
1811
1812         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
1813         finds out if we support a given WM spec hint
1814
1815 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
1816
1817         * docs/faq/gtk-faq.sgml: New question re memory leaks.
1818
1819 2001-02-25  Hans Breuer  <hans@breuer.org>
1820
1821         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
1822         cause we want to loose those prototypes only in the latter case
1823
1824         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
1825         GdkPixmapImplWin32 because it itsn't derived from it. Use the
1826         impl member variable instead
1827
1828         * gtk/gtk.def : updated
1829
1830         * gtk/gtklist.c : 
1831         * gtk/gtkmenus.c : include <string.h> for memset ()
1832
1833         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
1834         for everthing built here, but for gtk-x.x.dll only. This solves
1835         problem of indifferent gtk type definitions
1836
1837 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
1838
1839         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
1840
1841 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
1842
1843         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
1844         column that is exposed.
1845
1846         (_gtk_tree_view_update_size): Changed name from set_size, and
1847         changed function to do more work, and not force people calling it
1848         to figure out the size.  Simplifies a lot of code elsewhere.
1849
1850 2001-02-23  Alexander Larsson  <alexl@redhat.com>
1851
1852         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
1853         return solid masks for xpms that have no transparent color.
1854         This makes the ..._create_from_xpm... API backwards
1855         compatible.
1856
1857 2001-02-23  Tor Lillqvist  <tml@iki.fi>
1858
1859         * README.win32: Update. Mention the gtk-1-3-win32-production
1860         branch.
1861
1862         * gdk/win32/bdfcursor.c: New file. A program that generates
1863         xcursors.h. Thanks to Stefan Ondrejicka.
1864
1865         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
1866         compact format.
1867
1868         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
1869
1870         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
1871         function, uses xcursors.h.
1872         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
1873         cursor from inline data instead of using LoadCursor() to generate
1874         it from a resource.
1875
1876         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
1877         event, must check the Windows message for mouse button state, as
1878         the GDK event state might not have been built if it is
1879         undelivered. Remove one goto.
1880
1881         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
1882         SetCursor() if the current cursor as returned by GetCursor() is
1883         the window's previous cursor. The ChildWindowFromPoint() test
1884         apparently didn't work correctly.
1885
1886         * gdk/win32/rc/*.cur: Remove.
1887
1888         * gdk/win32/rc/gdk.rc.in: Remove cursors.
1889
1890         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
1891
1892         * gtk/makefile.{mingw,msc}.in: Updates.
1893
1894 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
1895
1896         * gtk/gtktreemodel.h: add functions for signal emission.
1897
1898         * gtk/gtktreestore.c: move to use above functions instead of
1899         g_signal_emit.
1900
1901         * gtk/gtkliststore.c: ditto
1902
1903 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
1904
1905         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
1906         GObject instead of GtkObject.
1907
1908         * gtk/gtkliststore.c: ditto.
1909
1910         * gtk/gtktreemodelsort.c: ditto.
1911
1912         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
1913         GtkTreeModelIface, instead of in each model.
1914
1915 2001-02-21  Havoc Pennington  <hp@redhat.com>
1916
1917         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
1918         unbreak this function
1919
1920         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
1921         properties
1922
1923         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
1924         properties
1925
1926         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
1927         properties
1928
1929         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
1930         mean unset the max length
1931
1932 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
1933
1934         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
1935         Changed name to be set_cell_data_func to make it clear what
1936         the functino does.  Close bug #51069.
1937
1938 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
1939
1940         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
1941         have memory actually freed.  Keeps box running longer.
1942
1943 2001-02-21  Alexander Larsson  <alexl@redhat.com>
1944         
1945         * gtk/gtkseparatormenuitem.[ch]:
1946         Added new menu separator item. The drawing and size handling
1947         is still done in GtkMenuItem, but the API is a bit more sane.
1948         
1949         * gtk/Makefile.am:
1950         Add gtkseparatormenuitem.[ch].
1951
1952         * gtk/gtk.h:
1953         Add gtkseparatormenuitem.h.
1954         
1955         * gtk/gtkentry.c:
1956         * gtk/gtkmenufactory.c:
1957         * gtk/gtktextview.c:
1958         Use the new API for menu separators.
1959         
1960         * demos/gtk-demo/menus.c (create_menu):
1961         Add some GtkSeparatorMenuItem demo code.
1962
1963 2001-02-20  Havoc Pennington  <hp@redhat.com>
1964
1965         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
1966         Lee Mallabone
1967
1968         * gtk/gtkarrow.c: Convert to new property API, patch from 
1969         Lee Mallabone
1970
1971 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
1972
1973         * tests/testtreeview.c (toggled_callback): fix to reflect change
1974         in GtkTreeModelStore.
1975
1976 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
1977
1978         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
1979         function to create an icon set from a pixbuf.
1980
1981 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1982
1983         * gtk/gtkcellrenderertext.[ch]:
1984         Add a "markup" property.
1985
1986         * gtk/treestoretest.c:
1987         Use the markup property, remove some leftover stuff from
1988         GtkTreeModelMapping.
1989
1990 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1991
1992         * gtk/gtklabel.c (gtk_label_set_selectable):
1993         Queue a redraw if the selectable setting was changed.
1994
1995 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1996
1997         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1998         Actually copy the whole gc, not just the public parts.
1999         
2000         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
2001         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
2002         labels.
2003
2004 2001-02-19  Havoc Pennington  <hp@pobox.com>
2005
2006         * gdk/gdkwindow.c: docs
2007
2008         * gdk/gdkrgb.c: docs
2009
2010         * gdk/gdkregion-generic.c: docs
2011
2012         * gdk/gdkgc.c (gdk_gc_set_values): docs
2013
2014         * gdk/gdkdraw.c: docs
2015
2016         * gdk/gdkdrawable.h: deprecate drawable get/set data
2017
2018 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
2019
2020         * demos/gtk-demo/dialog.c: Add simple new demo.
2021
2022 2001-02-19  Havoc Pennington  <hp@redhat.com>
2023
2024         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
2025         insert_child_anchor signal, bug #50245
2026
2027         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
2028         from create_child_anchor, so the anchor is passed in
2029
2030         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
2031         (_gtk_widget_segment_new): have the child anchor object passed in, 
2032         instead of creating it.
2033
2034         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
2035         to gtk_text_buffer_get_modified
2036
2037 2001-02-19  Havoc Pennington  <hp@redhat.com>
2038
2039         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
2040         changed GLib without fixing GTK
2041
2042         * gtk/gtkrange.h: Rename all the stupid implementation detail 
2043         functions to have an underscore in front. Most of them should 
2044         probably just go away, but for starters don't export them.
2045         Bug #50482
2046
2047 2001-02-19  Havoc Pennington  <hp@redhat.com>
2048
2049         * gdk/gdkcolor.h: test was backward, so deprecated functions were
2050         excluded by default
2051
2052         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
2053         clean up the old code a bit
2054
2055         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
2056         inconsistent state
2057
2058         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
2059         draw inconsistent state
2060
2061         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
2062         (create_menu): add inconsistent test
2063
2064         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
2065         new function
2066         (gtk_check_menu_item_get_inconsistent): new function
2067         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
2068         state (using etched in for now)
2069
2070         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
2071         draw inconsistent state
2072
2073         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
2074         function, used when the user has selected a range of stuff in
2075         different states
2076         (gtk_toggle_button_get_inconsistent): accessor for that
2077         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2078         don't know what else to do)
2079
2080 2001-02-19  Hans Breuer <hans@breuer.org>
2081
2082         * gtk/gtk.def : updated exported symbols
2083
2084         * gtk/makefile.msc.in : updated
2085
2086         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2087         a colormap, when invoked from testgtk::entry. I'm not sure where
2088         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2089         avoids immediate crashing ...
2090
2091         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2092         any objections ?
2093
2094         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2095         0 parameter. At least msvc doesn't like macros with var args. 
2096         I simply removed the extra 0, was it a feature or a typo ?
2097
2098         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2099         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2100         because the value assignment to the internal struct wasn't working.
2101         I'm not absolutely sure. The problem could have been resolved by
2102         changing the "func" declartion in the struct, but was the pointer
2103         to the function pointer intended ?
2104
2105         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2106
2107         * gdk/gdk.def : updated exported symbols
2108
2109         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2110         only use SetDIBitsToDevice if there is a palette at the drawable
2111         and the image is GDK_VISUAL_PSEUDO_COLOR
2112
2113         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2114
2115         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2116
2117         * gdk/*/makefile.msc : updated
2118
2119 2001-02-19  Havoc Pennington  <hp@redhat.com>
2120
2121         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2122         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2123
2124         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2125         (gdk_key_repeat_restore): nuke
2126
2127         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2128         (gdk_init_check): no atexit func
2129
2130         * gdk/gdkrgb.h: mark some stuff deprecated
2131
2132         * gdk/gdkcolor.h: mark some stuff deprecated
2133         
2134         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2135
2136         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2137
2138 2001-02-16  Havoc Pennington  <hp@redhat.com>
2139
2140         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2141         scroll steps.
2142
2143         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2144         steps, and add Ctrl-arrow shortcuts for paging visually as with
2145         HScale, since Page Up and Page Down move logically.
2146
2147         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2148         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2149         
2150         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2151         steps
2152         (gtk_range_scroll): handle the visual steps
2153
2154         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2155         scroll steps
2156
2157         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2158         steps, not the logical ones.
2159
2160         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2161         (scroll_vertical): handle up/down steps
2162
2163 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2164
2165         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2166         Copy data and free data with free().
2167
2168         * gdk-pixbuf/gdk-pixbuf.c:
2169         * gdk-pixbuf/io-jpeg.c:
2170         * gdk-pixbuf/io-png.c:
2171         Use g_try_malloc/g_free instead malloc/free.
2172         
2173         * gdk-pixbuf/test-gdk-pixbuf.c:
2174         Must... initialize... gobject...
2175         
2176         * gdk-pixbuf/pixops/timescale.c:
2177         * gtk/gtkcalendar.c:
2178         Use g_malloc instead of malloc.
2179         
2180 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2181
2182         * gtk/testgtkrc:
2183         Comment out property assignments, these don't work yet.
2184
2185 2001-02-17  Havoc Pennington  <hp@pobox.com>
2186
2187         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2188         bit.
2189
2190 2001-02-17  Havoc Pennington  <hp@pobox.com>
2191
2192         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2193         shadowed variables that had broken size request in some cases,
2194         leading to bogus tooltips (#50996)
2195
2196 2001-02-06  Jon K Hellan  <hellan@acm.org>
2197
2198         Implement fast browsing of tooltips, bug #50619
2199         
2200         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2201         and last_popdown
2202         
2203         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2204         use_sticky_delay and last_popdown.
2205         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2206         time of popdown.
2207         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2208         is NULL.
2209         (gtk_tooltips_recently_shown): New static function.  Return true
2210         if < sticky_delay has elapsed since last popdown.
2211         (gtk_tooltips_event_handler): Display window after sticky_delay
2212         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2213         since last popdown.
2214         
2215 2001-02-17  Havoc Pennington  <hp@pobox.com>
2216
2217         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2218         instead of (). #6394
2219
2220         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2221         G_CONST_RETURN, make it return by reference, #50473
2222         
2223 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2224
2225         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2226         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2227         setup fields contain garbage (e.g. subwindow, breaking
2228         gdk_drawable_ref() upon event copy).
2229         (gtk_menu_stop_navigating_submenu_cb): same here.
2230
2231         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2232         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2233         * gtk/gtkclist.c (vertical_timeout): 
2234         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2235         default-zero-intialization for unions to memset(,0,), as unions are
2236         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2237         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2238
2239         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2240         g_closure_sink() warning.
2241
2242         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2243         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2244         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2245         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2246         
2247 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2248
2249         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2250         gtk_*_store_get, and moved to GtkTreeModel.
2251
2252         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2253
2254         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2255
2256         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2257
2258         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2259         set the func.
2260
2261         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2262         freeze/thaw notify between setting all the properties for a cell.
2263
2264         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2265
2266 2001-02-15  Havoc Pennington  <hp@redhat.com>
2267
2268         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2269         the X coordinates so they're with respect to the line, rather than 
2270         with respect to the layout.
2271
2272         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2273         Mallabone
2274
2275         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2276         and inverted test
2277
2278         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2279         #50806
2280
2281         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2282
2283         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2284         gtk_text_iter_is_end
2285
2286         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2287         rename gtk_text_buffer_get_end_iter
2288
2289         * gtk/testgtk.c (create_labels): Add test for selectable
2290
2291         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2292         the selection stuff. This code is kind of broken since it doesn't 
2293         use the theme engine.
2294
2295         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2296         fix infinite loop and y offset problem
2297         (gdk_draw_layout_line_with_colors): fix foreground color handling
2298
2299         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2300         that makes the label selectable.
2301         
2302         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2303         layout when the style is set, since fonts etc. could have changed.      
2304
2305 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2306
2307         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2308
2309         * gtk/gtktreemodelsimple.[ch]: removed.
2310
2311 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2312
2313         * gtk/gtktreemodelmapping.[ch]:
2314         New files. Implement GtkTreeModelMapping.
2315         
2316         * gtk/Makefile.am:
2317         Add gtktreemodelmapping.[ch].
2318         
2319         * gtk/gtk.h:
2320         Add gtktreemodelmapping.h
2321
2322         * gtk/treestoretest.c:
2323         Test the GtkTreeModelMapping
2324
2325 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2326
2327         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2328         have a demo, we might as well pass in real values.  Thanks to
2329         clahey for pointing this out.
2330
2331 2001-02-14  Havoc Pennington  <hp@pobox.com>
2332
2333         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2334         "static" to a private function
2335         (gtk_image_menu_item_class_init): remove destroy handler,
2336         add "image" object property
2337
2338 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2339
2340         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2341         Add a shortcut if the window and the current clip_region doesn't
2342         overlap. This is needed when there are a lot of windows in a
2343         window. The layout test in testgtk is a good test.
2344
2345         * gdk/linux-fb/gdkwindow-fb.c:
2346         Whitespace fix.
2347
2348 2001-02-13  Sven Neumann  <sven@convergence.de>
2349
2350         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2351
2352 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2353
2354         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2355         Don't reference last_cursor if it is null. Fixes crash when rotating
2356         the screen before having moved the mouse.
2357
2358         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2359
2360         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2361
2362         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2363         when using 90 or 270 degrees rotation.
2364
2365 2001-02-12  Havoc Pennington  <hp@pobox.com>
2366
2367         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2368         it always set the foreground, even if we were only using
2369         a stipple.
2370         (gdk_draw_layout_line_with_colors): new function, allow
2371         override colors
2372         (gdk_draw_layout_with_colors): new function, allow override
2373         colors
2374         (gdk_pango_layout_line_get_clip_region): function to get the clip
2375         region for a logical text range
2376         (gdk_pango_layout_get_clip_region): get the clip region for a
2377         logical text range
2378
2379         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2380         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2381         the right number of arguments.
2382
2383         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2384         enhance the function to check that node data corresponds to a 
2385         view still belonging to the tree.
2386
2387         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2388         GtkTreePath
2389         (gtk_tree_view_inserted): ditto
2390         (gtk_tree_view_child_toggled): ditto
2391
2392         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2393         simplify this code.
2394
2395         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2396         a PangoAttrList
2397
2398         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2399
2400         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2401
2402         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2403         size in the size request 
2404         (gtk_menu_bar_size_allocate): consider toggle size here
2405
2406         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2407         that displays a widget in the toggle slot
2408
2409         * gtk/testgtk.c: test GtkImageMenuItem
2410
2411         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2412         
2413         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2414         request and allocation
2415
2416         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2417
2418         * gtk/gtkcheckmenuitem.c
2419         (gtk_check_menu_item_toggle_size_request): ditto
2420         
2421 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2422
2423         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2424         reference.
2425
2426         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2427         and refuse to initialize GTK+ if they fail.
2428
2429 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2430
2431         * configure.in: Add check for gtk-doc version.
2432
2433 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2434
2435         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2436         where the xpad/ypad was only being used on one side!
2437
2438 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2439
2440         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2441         function, copied from X11 version.
2442
2443         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2444         DestroyCursor failures. The reason for the problem (despite the
2445         inconsistent messages from GetLastError()) was that
2446         DestroyCursor() cannot be called while a cursor is set in a
2447         window. Set the new cursor first and then destroy the old one.
2448         Thanks to jpe@archaeopteryx.com.
2449
2450         * gdk/win32/gdkcc-win32.c: Remove.
2451
2452         * gdk/win32/Makefile.am: Remove from here, too.
2453         
2454         * gdk/gdk.def
2455         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2456
2457         * gtk/gtk.def
2458         * gtk/makefile.mingw.in: Updates.
2459
2460 2001-02-08  Havoc Pennington  <hp@redhat.com>
2461
2462         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2463         add a widget to a bin that already has a child.
2464
2465         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2466
2467         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2468         
2469         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2470
2471         * gdk/gdk.h: remove gdkcc.h
2472
2473         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2474
2475         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2476         GdkPixbuf, since the previous implementation was GdkColorContext
2477         dependent.
2478
2479         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2480         
2481 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2482
2483         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2484         a sane value!
2485
2486 2001-02-08  Havoc Pennington  <hp@redhat.com>
2487
2488         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2489         lighten them.
2490
2491 2001-02-08  Havoc Pennington  <hp@redhat.com>
2492
2493         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2494         validation idle
2495
2496         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2497         cell renderer
2498
2499         * demos/pixbuf-demo.c (timeout): remove deprecated
2500         gtk_widget_draw
2501
2502         * demos/testpixbuf-save.c (main): remove deprecated
2503         gtk_drawing_area_size
2504
2505         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2506         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2507         at the start of the allocation.
2508         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2509         unsetup or NULL model.
2510
2511         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2512         even/odd/sorted cells in the tree view.
2513
2514         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2515         bugfixes
2516
2517         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2518         backgrounds with draw_flat_box using different detail for even/odd
2519         rows.
2520
2521         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2522         row, so we can draw the alternating colors thing
2523
2524         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2525         property from a synonym property, notify for the synonym.
2526         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2527         (gtk_text_tag_get_property): Always return the font, even if
2528         all its fields aren't set
2529
2530         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2531         store the attr list; it leaves us with no way to change attributes
2532         in _render according to the render flags, and no way to implement
2533         get_property. Instead store all the specific text attributes. 
2534         Separate whether an attribute is enabled from its value. Sync all
2535         properties with GtkTextTag, make them all consistent, etc.
2536
2537         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2538         renderers can highlight the sort row/column     
2539
2540         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2541         accessor functions to get values; this has the side effect of
2542         showing up which accessor functions were missing. Added those.
2543
2544         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2545         set_alignment, to be consistent with GtkLabel, GtkMisc
2546
2547         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2548         arrow.
2549
2550         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2551
2552         * gtk/gtktreesortable.h: updates in here
2553
2554 2001-02-07  Sven Neumann  <sven@convergence.de>
2555
2556         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2557         pango dimensions after painting the background. We used to draw
2558         gigantic flat boxes here.
2559
2560 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2561
2562         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2563         error introduced with earlier commit) (pointed out by
2564         Ollie Lho)
2565
2566 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2567
2568         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2569         which are no longer necessary.
2570
2571 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2572
2573         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2574
2575 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2576
2577         * gdk/gdk.def
2578         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2579         Provide dummy implementations.
2580
2581 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2582
2583         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2584
2585         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
2586         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
2587         deprecated this function.
2588
2589         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
2590         argument.
2591
2592 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
2593
2594         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
2595
2596 2001-02-03  Havoc Pennington  <hp@pobox.com>
2597
2598         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
2599         Mikael Hermansson with patch from Mikael (if there was a toggle
2600         start one after the first character in the range, this function
2601         was broken). Bug #50380
2602
2603 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
2604
2605         * configure.in: Remove confusing comment about X11.
2606
2607 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2608
2609         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2610         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2611         
2612 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2613
2614         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2615         it breaks things on BSD. If you want to compile GTK+ with
2616         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2617         when configuring, since GTK+ simply can't be "pure ANSI" 
2618         in the header files it uses. (#8170, Greg Hudson)
2619
2620 2001-02-02  Havoc Pennington  <hp@redhat.com>
2621
2622         * gtk/gtkwindow.c: docs
2623
2624         * gtk/gtkwidget.c: docs
2625         (gtk_widget_set_colormap): add a reference to the colormap
2626         (gtk_widget_get_default_colormap): add a reference to the colormap
2627
2628         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2629
2630         * gtk/gtktextiter.c: docs
2631
2632         * gtk/gtkmain.c (gtk_propagate_event): docs
2633
2634         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2635         (gtk_paned_set_position): docs
2636
2637         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2638         sort interface, no implementation yet.
2639
2640         * demos/testpixbuf.c (new_testrgb_window): replace
2641         gtk_drawing_area_size() with gtk_widget_set_usize()
2642
2643         * demos/testpixbuf-drawable.c (main): ditto
2644         
2645         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2646
2647         * gtk/gtktextbuffer.c: docs
2648
2649         * gtk/gtkstock.c: docs
2650
2651         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2652
2653         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2654
2655         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2656         
2657         * gtk/gtkimage.c: add some docs in here
2658         (gtk_image_size_request): change name of
2659         gtk_widget_render_stock_icon
2660         (gtk_image_get_icon_set): don't dup returned string
2661         (gtk_image_get_icon_set): don't dup returned string
2662
2663         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2664         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2665         and gtkiconfactory.h functions
2666
2667         * gtk/gtkiconfactory.c: add some docs in here
2668
2669         * gtk/gtkmain.c (gtk_get_default_language): document
2670         (gtk_get_current_event): document
2671         (gtk_get_current_event_state): document
2672         (gtk_get_event_widget): document
2673
2674         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2675
2676         * gtk/gtkcontainer.c: Add some documentation
2677         (gtk_container_add): give a more explanatory warning on adding an
2678         already-parented widget, this is kind of a FAQ and also a common
2679         typo that's easier to debug with a nice warning 
2680
2681         * gtk/gtkcellrenderertoggle.c
2682         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2683         adding this, it's useless
2684         (gtk_cell_renderer_toggle_set_active): remove
2685         (gtk_cell_renderer_toggle_get_radio): add
2686
2687         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2688         the NULL cell renderer, that doesn't make any sense to me. 
2689
2690         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2691         demo code should never use deprecated features.
2692
2693         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2694         code should never use deprecated features.
2695
2696         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2697         gtk_widget_queue_clear_area deprecated
2698
2699         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2700         deprecated
2701
2702         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2703
2704         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2705         a GdkImage deprecated, replaced by new consistently-named
2706         functions       
2707
2708         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2709
2710         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2711
2712         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2713         deprecated
2714
2715         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2716         so it won't appear in docs and confuse people.
2717
2718         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2719
2720         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2721         macros deprecated. (can't mark the type itself deprecated, since
2722         GtkProgressBar is not deprecated and we need the type decl to use
2723         GtkProgressBar)
2724
2725         * gtk/gtkpixmap.h: Mark deprecated
2726
2727         * gtk/gtkoldeditable.h: Mark deprecated
2728
2729         * gtk/gtklist.h: Mark deprecated
2730
2731         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2732         for anything anymore.
2733
2734         * gtk/gtkctree.h: Mark deprecated
2735
2736         * gtk/gtkclist.h: Mark deprecated
2737
2738         * gtk/gtkpreview.h: Mark deprecated
2739
2740         * gtk/gtkpacker.h: Mark deprecated
2741
2742         * gtk/gtktipsquery.h: Mark deprecated
2743
2744         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2745
2746         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2747
2748         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2749
2750         * gtk/gtkruler.h: Add comment that it will move out of GTK
2751
2752         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2753
2754         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2755
2756 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2757
2758         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2759         gdk_colormap_sync private since it was never exported
2760         in a header file.
2761
2762         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2763         colormap->colors[] for StaticGray, StaticColor colormaps.
2764
2765         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2766         was being used as if it was image->bits_per_pixel.
2767
2768         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2769         for the image in the GdkImage structure since it isn't
2770         reconstructable, and we need it to handle packed types
2771
2772         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2773         the assumption that on Win32 image->bits_per_pixel == image->depth,
2774         always.
2775
2776         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2777
2778         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2779         warning message if no converter can be found. 
2780
2781 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
2782
2783         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
2784         chars to isupper() / tolower(). (#567)
2785
2786         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
2787         to clear up 64-bit warnings. (#567)
2788
2789 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
2790
2791         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
2792         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
2793
2794         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
2795         since some people set $(libdir) separately. (#1290, David Kaelbling)
2796
2797 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
2798
2799         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
2800         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
2801         MAXPATHLEN, but the code here depends on a fixed value.)
2802         (#4524)
2803
2804 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
2805
2806         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
2807         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
2808
2809 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
2810
2811         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
2812         viewable there is no way that moving the node will cause the 
2813         focus row to become not viewable, so omit check on the visibility
2814         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2815
2816 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
2817
2818         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
2819         selection before inserting new text.
2820
2821 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
2822
2823         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
2824         Make the sensitivity of the reparented child track that of
2825         the original parent menu item. (#34218, David Hodson)
2826
2827         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
2828         the case where the current item is destroyed properly.
2829
2830         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
2831         some edge cases with child-less menuitems.
2832         
2833 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
2834
2835         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
2836         key pop down window. (#12074, Jon K Hellan)
2837
2838 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
2839
2840         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
2841         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
2842         The solution here isn't perfect - you get an extraneous
2843         emission of "toggle", which could conceivably confuse an app,
2844         but better than the current situation. LXR search seems to
2845         indicate that no apps in GNOME CVS connect to "toggle".
2846
2847 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
2848
2849         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
2850         gtk_public_h_sources to directly here to avoid warning when
2851         building srcdir != builddir. (#9656)
2852
2853 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2854
2855         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
2856         handlers in gtkrange.c return the proper values (TRUE == handled)
2857         (#10316).
2858
2859         This is just the tip of the iceberg, but gtkrange.c is the
2860         most common place where the propagation is problematical,
2861         and also a place where it is almost certainly safe to change
2862         this in the stable branch.
2863
2864         (You don't want right click popups on a range control or anything...)
2865
2866 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
2867
2868         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
2869         area on focus out, even if a background pixmap isn't set.
2870         (#13941)
2871         
2872 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
2873
2874         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
2875         to deal with setting the shape properly when scrolling arrows are
2876         turned on, but not visible because there is sufficient space.
2877         (#13432)
2878
2879 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
2880
2881         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
2882         items with submenus, destroy the item along with the submenu.
2883         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
2884         properly.
2885
2886         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
2887         later.
2888
2889 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
2890
2891         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
2892         the focus widget sometimes wasn't drawn with the default if there
2893         was no default widget.
2894
2895         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
2896         unreference pixmaps. 
2897
2898         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
2899         for some extra safety.
2900
2901 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
2902
2903         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
2904         the text of a cell to the old pointer value better, by
2905         copying the new text before freeing the old text. Some code
2906         cleanup. (#8079, Karl Nelson)
2907
2908 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
2909
2910         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
2911         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
2912
2913 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
2914
2915         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
2916         item from a menu, check to see if it matches 
2917         menu->old_active_menu_item, and if so, unref and clear
2918         old_active_menu_item (Patch from Pavel Cisler)
2919
2920         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
2921         menu_shell->active_menu_item, if it is the child being
2922         removed. (Patch based on that of Gene Ragan, #50337)
2923
2924 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
2925
2926         * gdk/linux-fb/gdkselection-fb.c: 
2927         * gdk/linux-fb/gdkcolor-fb.c: 
2928         * gdk/linux-fb/gdkdrawable-fb2.c: 
2929         * gdk/linux-fb/gdkfont-fb.c: 
2930         * gdk/linux-fb/gdkim-fb.c: 
2931         * gdk/linux-fb/gdkinput.c: 
2932         * gdk/linux-fb/gdkkeyboard-fb.c: 
2933         * gdk/linux-fb/gdkmain-fb.c: 
2934         * gdk/linux-fb/gdkrender-fb.c: 
2935         A bunch of whitespace cleanup.
2936         
2937 2001-01-30  Havoc Pennington  <hp@pobox.com>
2938
2939         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
2940         #ifdef GTK_ENABLE_BROKEN.
2941
2942         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
2943         GTK_ENABLE_BROKEN just before including the broken headers.
2944         
2945         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
2946         deprecated types registered.
2947
2948         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
2949         we have to test the broken stuff.
2950
2951         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
2952         
2953 2001-01-30  Havoc Pennington  <hp@redhat.com>
2954
2955         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
2956         here where prev pointer was set to the wrong thing
2957
2958         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
2959         (gtk_tree_path_is_descendant): new function
2960
2961         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
2962         cached length
2963         (gtk_list_store_get_iter): don't modify iter if we can't get the
2964         path.
2965
2966         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
2967         
2968         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
2969         GtkTreeDragDest
2970
2971         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
2972         was causing segfault
2973
2974         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
2975         pointer to NULL
2976
2977         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
2978
2979         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
2980         on returning FALSE
2981         (gtk_list_store_iter_children): ditto
2982         (gtk_list_store_iter_nth_child): ditto
2983         (gtk_list_store_iter_nth_child): ditto
2984         (gtk_list_store_iter_parent): ditto
2985
2986         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
2987         on iter->user_data != NULL instead of silently accepting it.
2988         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
2989         we are returning TRUE.
2990         (gtk_tree_store_iter_children): ditto
2991         (gtk_tree_store_iter_nth_child): ditto
2992         (gtk_tree_store_iter_parent): ditto
2993         (gtk_tree_store_insert): remove handling of parent->user_data ==
2994         NULL, replace with parent == NULL       
2995
2996         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
2997         and a comment explaining things
2998
2999         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
3000         interface support to GtkTreeStore.
3001
3002         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
3003         FALSE if no prev, fix
3004
3005         * gtk/gtktreeview.c (set_source_row): use a row reference
3006         (set_dest_row): use a row reference
3007
3008 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
3009
3010         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
3011         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
3012         (gtk_tree_selection_select_iter): The same as above.
3013
3014 2001-01-26  Havoc Pennington  <hp@redhat.com>
3015
3016         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
3017         which holds a handle to a specific row (particular set of values
3018         in the model, i.e. pointer-identity row).
3019
3020         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
3021         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
3022         Still need to use it for the src/dest row saved on the drag context.
3023
3024 2001-01-26  Havoc Pennington  <hp@redhat.com>
3025
3026         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
3027
3028         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
3029         not offset by TREE_VIEW_HEADER_HEIGHT
3030         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
3031         TREE_VIEW_HEADER_HEIGHT
3032
3033         * configure.in (included_loaders): for me, --with-included-loaders
3034         generates the error "the specified loader yes does not exist",
3035         i.e. the arg defaults to "yes", so change test for value ""
3036         to test for value "yes", and include all loaders in that case.
3037
3038         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
3039
3040         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
3041         handle TREE_VIEW_VERTICAL_SEPARATOR
3042         (gtk_tree_view_bin_expose): fix to consider the row offset as
3043         pointing halfway into vertical separator.       
3044         (gtk_tree_view_draw_node_focus_rect): ditto
3045
3046         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
3047         --gtk-debug=updates, which causes gdk_window_set_debug_updates
3048         (TRUE) to be called.
3049
3050         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
3051         debug mode where the invalid region is colored in on invalidate,
3052         so you can see the flicker and know whether your redraw code is 
3053         doing a good job.
3054
3055         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
3056         tree window coordinates (clip rect is in tree window coords)
3057
3058         * gtk/Makefile.am: add gtktreednd.[hc]
3059
3060         * gtk/gtkliststore.c: implement gtktreednd interfaces.
3061
3062         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
3063         drag-and-drop data operations on a model (so we can set up tree
3064         drag-and-drop automatically)
3065
3066         * gtk/testgtk.c: Add a window to change sensitivity in the
3067         GtkLabel test; add a way to change the entry frame in GtkEntry
3068         test
3069
3070         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
3071         (gtk_entry_get_has_frame): new functions to remove the frame
3072         around an entry
3073         (gtk_entry_size_request): shrink requisition if no frame
3074         (gtk_entry_draw_focus): don't draw frame if no frame
3075
3076         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3077         checks inside a cell renderer
3078         (gtk_default_draw_option): ditto for options
3079
3080         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3081         children from the alignment, not the button
3082         (gtk_tree_view_column_init): ref/sink the column, to emulate
3083         GObject refcounting.
3084
3085         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3086         
3087         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3088         Use theme functions to draw the toggles 
3089
3090         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3091
3092         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3093         GdkPangoAttrEmbossed to use in rendering insensitive text
3094
3095         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3096
3097         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3098         using new GDK features
3099         
3100 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3101
3102         * gtk/gtkimage.c:
3103         Splitted gtk_image_clear into gtk_image_clear() and
3104         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3105         to avoid leaks.
3106
3107         * gtk/gtklabel.c (set_markup):
3108         Don't leak text.
3109
3110         * gtk/gtktextlayout.c:
3111         Always free display->shaped_objects.
3112
3113         * gtk/testgtk.c (create_clist):
3114         Don't leak custom style.
3115
3116 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3117
3118         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3119         Don't leak image. Simplify using gdk_colormap_query_color().
3120         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3121
3122         * linux-fb/gdkcolor-fb.c:
3123         Implemented gdk_colormap_query_color.
3124
3125 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3126
3127         * linux-fb/gdkcursor-fb.c:
3128         Don't leak built-in cursors.
3129
3130         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3131         Don't leak tmp_points.
3132
3133         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3134         Don't modify desc. Don't leak font if the PangoFont
3135         isn't found.
3136         
3137         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3138         Free dash_list.
3139
3140         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3141         Don't leak string.
3142         
3143 2001-01-20  Havoc Pennington  <hp@pobox.com>
3144
3145         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3146         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3147         me, matches Pango
3148
3149 2001-01-22  Havoc Pennington  <hp@redhat.com>
3150
3151         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3152
3153         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3154
3155         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3156         Remove, move back to gdk-pixbuf
3157
3158         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3159         to all the word functions
3160
3161         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3162         before doing anything on NULL layout or if we don't have the focus
3163
3164         * gtk/testtext.c (fill_example_buffer): "justification"
3165
3166         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3167         to be called "justification" not "justify"
3168
3169         * demos/gtk-demo/textview.c (create_tags): "justification"
3170         
3171         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3172
3173 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3174
3175         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3176         Don't leak visible_region. Use visible_region instead of region.
3177         
3178         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3179         Don't do extra gdk_drawable_ref(). This is not X.
3180         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3181         gdk_fb_focused_window is ref:ed.
3182         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3183         windows.
3184
3185 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3186
3187         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3188         Don't leak the PangoFontDescriptor.
3189
3190 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3191
3192         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3193         when not realized.
3194         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3195         (gtk_tree_view_realize): add scroll_to support
3196         (gtk_tree_view_finalize): add a finalize method.  Populate.
3197         (gtk_tree_view_insert_column): ref and sink the column.
3198         (gtk_tree_view_append_column): ref and sink the column.
3199         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3200         individual nodes.  Should make the code much more efficient, if
3201         actually used.
3202
3203 2001-01-19  Havoc Pennington  <hp@redhat.com>
3204
3205         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3206         byte_offset variable was being used to mean both "offset into
3207         layout" and "offset into buffer line" which was no longer true
3208         with addition of preedit string; fix
3209
3210 2001-01-19  Havoc Pennington  <hp@redhat.com>
3211
3212         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3213
3214         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3215         function
3216
3217         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3218         implement
3219
3220         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3221         scroll_to_cell, matches TextView scroll functions better
3222         (gtk_tree_view_tree_to_widget_coords): new function
3223         (gtk_tree_view_widget_to_tree_coords): new function
3224         (gtk_tree_view_get_visible_rect): new function
3225         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3226         (gtk_tree_view_draw_node_focus_rect): new function moved from
3227         draw_focus, also, use width of bin_window as width of the focus
3228         rect
3229         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3230         already-expanded rows
3231         (gtk_tree_view_get_cell_rect): new function
3232         (gtk_tree_view_get_path_at_pos): return the click position
3233         relative to the passed-in cell
3234         (gtk_tree_view_set_expander_column): new function
3235
3236         * configure.in: remove gtk-config-2.0 chmod
3237
3238         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3239         and properly handle drags with targets we don't understand
3240         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3241         scrolling anyway
3242         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3243         mark invisible
3244
3245         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3246         function
3247         (gtk_drag_dest_get_target_list): new function
3248         (gtk_drag_dest_set_target_list): new function
3249         
3250         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3251
3252         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3253         related to drag-and-drop
3254
3255 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3256
3257         * gdk/linux-fb/gdkprivate-fb.h:
3258         Define EMULATE_GDKFONT.
3259         Add extra pango_font stuff to GfkFontPrivate.
3260         
3261         * gdk/linux-fb/gdkdrawable-fb2.c:
3262         * gdk/linux-fb/gdkfont-fb.c:
3263         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3264         emulation using PangoFont.
3265
3266 2001-01-17  Havoc Pennington  <hp@pobox.com>
3267
3268         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3269         all the non-deprecated set_foo functions. Added missing object
3270         properties, and added g_object_notify() to setters. 
3271         Wrote docs.
3272         
3273 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3274
3275         * gtk/gtkmain.c
3276         * gtk/gtkrc.c: (Win32) Use the new
3277         g_win32_get_package_installation_(sub)directory() functions.
3278
3279         * config.h.win32.in: New file.
3280         
3281         * config.h.win32: Removed.
3282
3283         * configure.in: Output config.h.win32.
3284
3285         * Makefile.am: Add it to EXTRA_DIST.
3286
3287         * gtk/gtk.def: Update.
3288
3289 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3290
3291         * gtk/gtklabel.c (gtk_label_size_request): Set the
3292         attributes onto the PangoLayout even if they are newly
3293         created from label->pattern.
3294
3295 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3296
3297         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3298
3299         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3300         structures in functions. Fixes bug where gtk_dataset_*
3301         was accidentally still being used in one place, causing
3302         every dest side event to be treated independently.
3303
3304         * gtk/gtkdnd.c: Remove last vestages of handling
3305         ::draw (fixes warning)
3306         
3307         * gtk/gtkentry.[ch]: Add drag and drop support.
3308
3309         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3310         new function gtk_check_drag_threshhold() for checking
3311         to check if (dx,dy) has exceeded the threshhold for starting
3312         a drag and use it everywhere.
3313
3314 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3315
3316         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3317         add -I{includedir}/gtk-2.0.
3318
3319         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3320         gdk/gdk-pixbuf.h: Doc fixups.
3321         
3322         * gtk/gtkobject.h: Remove trailing , from enum
3323
3324 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3325
3326         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3327         Doh! Mixed up x and y.
3328
3329         * gdk/linux-fb/gdkglobals-fb.c:
3330         Removed gdk_fb_pointer_grab_window_events,
3331         added _gdk_fb_pointer_grab_owner_events and
3332         _gdk_fb_keyboard_grab_owner_events.
3333
3334         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3335         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3336         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3337         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3338         Send crossing events after ungrab finished.
3339         (gdk_keyboard_grab): Set ..._owner_events
3340         (type_masks): Move out of function.
3341         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3342         gdk_fb_keyboard_event_window): New functions, return the
3343         window an event should be targeted at. Handles grabs and
3344         event propagation. Can return NULL.
3345         (gdk_event_make): Remove event_mask checking. Now always
3346         returns an event.
3347                 
3348         * gdk/linux-fb/gdkkeyboard-fb.c:
3349         * gdk/linux-fb/gdkproperty-fb.c:
3350         * gdk/linux-fb/gdkselection-fb.c:
3351         Use new event_window/gdk_event_make() behaviour.
3352         
3353         * gdk/linux-fb/gdkmouse-fb.c:
3354         Use new event_window/gdk_event_make() behaviour.
3355         Only send motion events if in the same window.
3356         If grabbed, use cursor from window if sibling of grabbed
3357         window, and cursor from grabbed window otherwise.
3358
3359         * gdk/linux-fb/gdkprivate-fb.h:
3360         Update gdk_fb_window_send_crossing_events, gdk_event_make
3361         and grab varaible declarations. Add gdk_fb_*_event_window().
3362
3363         * gdk/linux-fb/gdkwindow-fb.c:
3364         Use new event_window/gdk_event_make() behaviour.
3365         Keep correct track of focus window.
3366         (gdk_window_set_events): Set all specific button motion masks
3367         if GDK_BUTTON_MOTION_MASK set.
3368
3369         * gtk/gtkdnd.c (gtk_drag_update):
3370         Free info->last_event if gdk_drag_motion returned FALSE.
3371
3372 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3373
3374         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3375         Eliminate redraws when input-only windows are shown or
3376         hidden. Thanks to jpe@archaeopteryx.com.
3377
3378 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3379
3380         * docs/faq/gtk-faq.sgml: FAQ update:
3381           - Update to bugzilla
3382           - Add GTK+ and security/SUID/SGID
3383           - Add DnD question
3384
3385 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3386
3387         * gdk/linux-fb/gdkdnd-fb.c:
3388         Some cleanups.
3389         
3390 2001-01-15  Havoc Pennington  <hp@pobox.com>
3391
3392         * tests/testtreeview.c: add test stuff for CellRendererToggle
3393
3394         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3395         accessor
3396
3397         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3398         only toggle on button press (would do release like GtkButton, but
3399         we'd need implicit grab code for treeview cells)
3400
3401 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3402
3403         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3404
3405         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3406         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3407
3408         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3409         to g_{locale,filename}_{to,from}_utf8 to match current API.
3410
3411         * gtk/makefile.msc.in (gtk_OBJECTS)
3412         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3413
3414         * gtk/gtk.def: Update.
3415
3416 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3417
3418         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3419         implementaion that more closely mimics the events that an X server
3420         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3421         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3422         with nested preview widgets, for instance, more responsive when
3423         you move the mouse quickly into them.
3424         (find_window_for_pointer_event): Make it actually compile.
3425         (gdk_event_translate): Set send_event to the value of
3426         InSendMessage (). This doesn't really mean the same as X11's
3427         send_event flag, but is close enough, says jpe@archaeopteryx.com
3428
3429 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3430
3431         * gdk/linux-fb/gdkdnd-fb.c:
3432         Implemented drag and drop.
3433         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3434         when it tries to free and then copy the same event (info->last_event).
3435         I am not sure about why this happens, but will continue looking.
3436
3437 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3438
3439         * gdk/linux-fb/gdkwindow-fb.c:
3440         Use gdk_window_invalidate_rect instead of
3441         gdk_window_invalidate_rect_clear to minimise flashing.
3442         When hiding windows you need to clear the root window though.
3443
3444 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3445
3446         * gdk/linux-fb/gdkdrawable-fb2.c:
3447         For optization, add an full_shapes argument to gdk_fb_clip_region.
3448         If this is false, only the cliprects of the shapes are used.
3449
3450         * gdk/linux-fb/gdkprivate-fb.h:
3451         Export gdk_fb_window_peek_shape.
3452         Add full_shapes to gdk_fb_clip_region.
3453
3454         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3455         When moving a window, don't clear everything under the it, just the
3456         root window. Makes stuff faster and flash less.
3457         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3458         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3459         offset of the shape.
3460         
3461
3462 2001-01-12  Havoc Pennington  <hp@redhat.com>
3463
3464         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3465         current invalid region, fixes redraw bug while scrolling the 
3466         text widget
3467
3468         * gtk/gtktextview.c, gtk/gtktextview.h:
3469         Rearrange the scrolling/validation/etc. code in a major way, 
3470         so it seems to make sense to me. Probably isn't genuinely that
3471         much better, but...
3472
3473         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3474         notifies
3475
3476         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3477
3478 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3479
3480         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3481         Hide mouse pointer while rotation. Show it afterwards.
3482
3483 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3484
3485         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3486         windows in consideration when generating clip region.
3487
3488         * gdk/linux-fb/gdkfb.h:
3489         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3490
3491         * gdk/linux-fb/gdkprivate-fb.h:
3492         Add shape to GdkWindowFBDatat.
3493         exported gdk_fb_window_get_abs_shape().
3494         removed gdk_fb_draw_lines declaration.
3495
3496         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3497         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3498         send focus changes when there is a grabbed window.
3499         (gdk_window_get_pointer): Handle shaped windows.
3500         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3501         (gdk_fb_window_peek_shape): Returns the shape for a window,
3502         handles GDK_FB_USE_CHILD_SHAPE.
3503         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3504         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3505         (gdk_window_shape_combine_mask): Implement.
3506
3507         * gtk/gtkwindow-decorate.c:
3508         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3509         setting the shape of a window makes the window transparent.
3510
3511 2001-01-11  Havoc Pennington  <hp@redhat.com>
3512
3513         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3514
3515 2001-01-10  Havoc Pennington  <hp@redhat.com>
3516
3517         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3518         add this function, bug 40251
3519
3520         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3521         of type macro   
3522
3523 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3524
3525         * acconfig.h:
3526         Added ENABLE_SHADOW_FB
3527
3528         * configure.in:
3529         Added --disable-shadowfb
3530
3531         * gdk/linux-fb/gdkcursor-fb.c:
3532         Update shadowfb when updating cursor
3533
3534         * gdk/linux-fb/gdkdrawable-fb2.c:
3535         Added wrappers for shadowfb that calls  the normal drawable
3536         methods, but calls gdk_shadow_fb_update(bounding box) when
3537         GdkWindows are drawed to.
3538         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3539         which also returns the bounding box.
3540
3541         * gdk/linux-fb/gdkfb.h:
3542         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3543
3544         * gdk/linux-fb/gdkgeometry-fb.c:
3545         Update shadowfb when scrolling window.
3546
3547         * gdk/linux-fb/gdkglobals-fb.c:
3548         Add _gdk_fb_screen_angle.
3549         
3550         * gdk/linux-fb/gdkkeyboard-fb.c:
3551         Test code for screen rotation. Shift-F2 in the xlate driver
3552         rotates the screen.
3553
3554         * gdk/linux-fb/gdkmain-fb.c:
3555         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3556
3557         * gdk/linux-fb/gdkmouse-fb.c:
3558         Use fb_width/height instead of modeinfo.xres/yres.
3559
3560         * gdk/linux-fb/gdkprivate-fb.h:
3561         Added fb_men, fb_width, fb_height & fb_stride. When using
3562         shadow fb these can differ from the framebuffer stuff.
3563         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3564         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3565         _gdk_fb_screen_angle. Removed CM, RP.
3566
3567         * gdk/linux-fb/gdkrender-fb.c:
3568         Added code for shadowfb handling and screen rotation using
3569         shadowfb.
3570
3571         * gdk/linux-fb/gdkwindow-fb.c:
3572         Use fb_mem, fb_stride, fb_width, fb_height.
3573         Added recompute_rowstride to reset the rowstride of all windows.
3574         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3575         window abs positions and window rowstrides. Usefull when the
3576         rotation has changed.
3577
3578 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3579
3580         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3581
3582 2001-01-10  Havoc Pennington  <hp@redhat.com>
3583
3584         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3585         where sibling == iter
3586         (gtk_tree_store_insert_after): handle sibling == iter
3587         (gtk_tree_store_prepend): remove stamp checks
3588         (gtk_tree_store_insert_before): ditto
3589         (gtk_tree_store_append): ditto
3590         (gtk_tree_store_get_path): ditto
3591         (gtk_tree_store_get_value): ditto
3592         (gtk_tree_store_iter_has_child): ditto
3593         (gtk_tree_store_iter_n_children): ditto
3594         (gtk_tree_store_iter_nth_child): ditto
3595         (gtk_tree_store_insert_after): ditto
3596         (gtk_tree_store_is_ancestor): ditto
3597         (gtk_tree_store_iter_depth): ditto
3598         (gtk_tree_store_insert_before): assert that sibling's parent is
3599         the same as the passed-in parent
3600         (gtk_tree_store_insert_after): assert that sibling's parent is
3601         the same as the passed-in parent
3602
3603         
3604         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
3605         function to get the first iterator in a model
3606         
3607         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3608         conventionally the "root" in this sense is just NULL afaict.
3609
3610         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3611         where sibling == iter
3612         (gtk_list_store_insert_after): handle case where sibling == iter
3613
3614         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3615         automated tests for ListStore, TreeStore
3616
3617         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3618         (gtk_list_store_insert): update tail pointer, and fix it to work
3619         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3620         (gtk_list_store_append): use tail to be faster
3621         (gtk_list_store_prepend): fix it, update tail pointer
3622         (gtk_list_store_insert_after): fix it, update tail pointer
3623
3624         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3625         the list
3626
3627 2001-01-09  Havoc Pennington  <hp@redhat.com>
3628
3629         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3630         is NULL due to a pending resize
3631
3632         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3633         column width to values less than 1
3634
3635         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3636         width to be between min/max width, and still set the width 
3637         even if autosize is turned on, so the tree view can use this 
3638         function in order to autosize.
3639         (gtk_tree_view_column_init): set initial width to 1 not 0
3640
3641         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3642         setter function to modify column width, so we get notification
3643         (gtk_tree_view_insert_iter_height): ditto
3644         (gtk_tree_view_calc_size): ditto
3645         (gtk_tree_view_check_dirty): ditto
3646
3647         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3648         properties to change all the interesting attributes of the tree
3649         view column.
3650         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3651         (gtk_tree_view_column_get_clickable): add
3652         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3653         attributes; assume a cell renderer with equivalent object
3654         properties has been swapped in. Do g_object_notify().
3655         (gtk_tree_view_column_set_visible): g_object_notify
3656         (gtk_tree_view_column_get_sizing): rename from get_col_type
3657         (gtk_tree_view_column_set_sizing): g_object_notify
3658         (gtk_tree_view_column_set_width): add g_object_notify
3659         (gtk_tree_view_column_set_min_width): ditto
3660         (gtk_tree_view_column_set_max_width): ditto
3661         (gtk_tree_view_column_set_title): ditto
3662         (gtk_tree_view_column_set_clickable): ditto
3663         (gtk_tree_view_column_set_widget): ditto
3664         (gtk_tree_view_column_set_justification): ditto
3665
3666 2001-01-09  Havoc Pennington  <hp@redhat.com>
3667
3668         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3669         there are no rows in the model
3670
3671         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3672         NULL, then return the start of the list
3673
3674         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3675         if we can't get any rows from an empty model 
3676
3677         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3678         extraneous * after function pointer typedef usage
3679
3680         * Makefile.am: don't specify full path to cp and rm
3681
3682         * gtk/gtkcellrenderertextpixbuf.c
3683         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3684         NULL before dereferencing, fixes a segfault that happened from
3685         time to time
3686
3687         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3688         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3689         and reindent the function
3690         (gtk_cell_renderer_pixbuf_get_size): indentation
3691
3692         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3693         we quit it
3694         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3695         (gtk_dialog_set_default_response): New function, to set default
3696         button
3697         (gtk_dialog_set_response_sensitive): New function, to set 
3698         sensitivity of buttons
3699
3700         * gtk/gtkcellrendererpixbuf.c
3701         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3702         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3703
3704         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3705         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3706         also boxed types.
3707         (_gtk_tree_data_list_value_to_node): ditto
3708
3709         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3710         --gtk-debug=tree
3711
3712         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3713
3714         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3715
3716 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3717
3718         * gdk/win32/gdkevents-win32.c: Implement better mouse
3719         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3720         (find_window_for_pointer_event): New function.
3721         (gdk_event_translate): Use it when handling mouse events.
3722
3723 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3724
3725         * configure.in:
3726         Added --with-included-loaders option
3727
3728         * gdk-pixbuf/Makefile.am:
3729         * gdk-pixbuf/gdk-pixbuf-io.c:
3730         Add support for including selected gdk-pixbuf loaders only.
3731
3732         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3733         gtk_window_set_has_frame):
3734         Added inline documentation.
3735
3736         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3737         * docs/reference/gdk/tmpl/windows.sgml:
3738         Added inline documentation.
3739
3740 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3741
3742         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3743         realizing buttons that have already been realized.
3744
3745 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3746
3747         * tests/testtreeview.c (main): Show menu items before adding to
3748         option menu.
3749
3750         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3751         around if we kill them.
3752
3753         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3754         Return if we pass in a NULL model.
3755
3756 2001-01-08  Havoc Pennington  <hp@redhat.com>
3757
3758         * tests/testtreeview.c: hack on this some
3759
3760         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3761         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3762         list
3763         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3764
3765         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3766         functions
3767
3768 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3769
3770         * gtk/gtkwindow-decorate.[hc]:
3771         * gtk/Makefile.am:
3772         New files. Contains an implementation of a minimal WM for
3773         linux-fb.
3774
3775         * gtk/gtkwindow.h:
3776         Add the possibility for GtkWindows to specify a frame. This
3777         is used for the window decoration code, but could concievably
3778         be used for X programs too (xmms style windows).
3779         GtkWindow->frame is the toplevel window if the window is framed.
3780         The signal frame_event gets all events that are targeted to
3781         GtkWindow->frame.
3782         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
3783         
3784         * gtk/gtkwindow.c:
3785         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
3786         Call out to gtkwindow-decorate.c for WM support in linx-fb.
3787
3788 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3789
3790         * docs/README.linux-fb:
3791         Correct filename ~/.pangoft2_aliases
3792
3793         * gdk/gdkwindow.h:
3794         Added new function gdk_window_get_decorations.
3795
3796         * gdk/linux-fb/gdkfb.h:
3797         Removed _gdk_window_get_decorations declaration.
3798         Renamed _gdk_window_set_child_handler to
3799         gdk_fb_window_set_child_handler.
3800
3801         * gdk/linux-fb/gdkwindow-fb.c:
3802         Renamed _gdk_window_set_child_handler to
3803         gdk_fb_window_set_child_handler.
3804
3805         * gdk/x11/gdkwindow-x11.c:
3806         New function gdk_window_get_mwm_hints().
3807         Implemented gdk_window_get_decorations.
3808
3809         * docs/reference/gdk/tmpl/windows.sgml:
3810         * docs/reference/gdk/gdk-sections.txt:
3811         Added gdk_window_get_decorations docs.
3812         
3813 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
3814
3815         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
3816         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
3817         gdk_fb_window_send_crossing_events):
3818         Possibly send focus events when the mouse moves from one
3819         window to another.
3820
3821 2001-01-07  Tor Lillqvist  <tml@iki.fi>
3822
3823         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
3824         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
3825         to match current API.
3826
3827         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
3828         environment variable is set, don't call g_error when on a
3829         palettized (PseudoColor) display. Some people want to use GTK+ 
3830         in 256-colour mode even though works only partially.
3831
3832         * gdk/gdk.def
3833         * gtk/gtk.def
3834         * gtk/makefile.mingw.in: Update.
3835
3836 2001-01-05  Havoc Pennington  <hp@redhat.com>
3837
3838         * tests/testtreeview.c: hack on this a bit
3839
3840         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
3841         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
3842
3843         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
3844         was spelled incorrectly
3845         (GTK_IS_TREE_MODEL_SIMPLE): ditto
3846
3847         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
3848         from gtk_tree_view_set_headers_active   
3849
3850         * gtk/gtktexttag.c:
3851         (gtk_text_tag_get_property): handle PROP_DIRECTION
3852         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
3853         properties, bug 40235
3854
3855         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
3856         forward_to_line_end
3857
3858 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
3859
3860         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
3861         modules/input/gtkimcontextxim.c: Adapt to new prototypes
3862         for unicode,locale,filename conversion functions.
3863
3864 2001-01-05  Havoc Pennington  <hp@redhat.com>
3865
3866         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
3867         broken if called on the first position in the buffer.
3868
3869         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
3870         forward_to_delimiters to be called only if we aren't already at
3871         the delimiters.
3872
3873 2001-01-05  Havoc Pennington  <hp@redhat.com>
3874
3875         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
3876
3877 2001-01-05  Alexander Larsson  <alexl@redhat.com>
3878
3879         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
3880         colormap in here. Sync from X port.
3881         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
3882         Sync from X port.
3883         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
3884         This happens now and then, and i don't think it is a bug.
3885         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
3886         != endpoint.
3887         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
3888         GDK_LINE_SOLID.
3889
3890         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
3891         some of the fields filled in at least.
3892
3893         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
3894         miLineArcD is no more, remove it from the function definition.
3895
3896 2001-01-04  Havoc Pennington  <hp@redhat.com>
3897
3898         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
3899         this
3900
3901         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
3902         user_data instead of tree_node
3903
3904         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
3905         TREE_VIEW_COLUMN_SIZE
3906
3907         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
3908         "size" field to "width" finishes bug 40061
3909
3910         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
3911         for bitfields, bug 40268
3912
3913 2001-01-04  Havoc Pennington  <hp@redhat.com>
3914
3915         Rename some stuff:
3916         
3917         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
3918
3919         s/GtkModelSimple/GtkTreeModelSimple/g;
3920         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
3921         s/gtk_model_simple/gtk_tree_model_simple/g;
3922         s/gtkmodelsimple/gtktreemodelsimple/g;
3923
3924         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
3925
3926         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
3927         s/column_set_col_type/column_set_sizing/g;
3928
3929         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
3930         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
3931
3932         s/GtkCellRendererType/GtkCellRendererState/g;
3933         
3934         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
3935         (gtk_cell_renderer_toggle_class_init): change "state" property to
3936         "active", to match GtkToggleButton
3937         (gtk_cell_renderer_toggle_get_active): new function, bug
3938         40269
3939         (gtk_cell_renderer_toggle_set_active): new function
3940         (gtk_cell_renderer_toggle_set_property): route changes to toggle
3941         state through gtk_cell_renderer_set_active
3942
3943 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
3944
3945         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
3946         temporarily until they work again.  Brought up to date with
3947         changes in the model.
3948         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
3949         model.
3950
3951 2001-01-04  Havoc Pennington  <hp@redhat.com>
3952
3953         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
3954         equal to the line length, then position iterator before paragraph 
3955         separators. Fixes crash reported by Mikael Hermansson when
3956         pressing left arrow from the start of a line.   
3957
3958         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
3959         about byte indexes off the end
3960         (iter_set_from_char_offset): add g_error about char offsets
3961         off the end
3962
3963 2001-01-03  Havoc Pennington  <hp@redhat.com>
3964
3965         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
3966
3967         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
3968         of private functions; remove inclusion of private headers.
3969
3970         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
3971         function, so we don't need private functions in gtktextdisplay.c
3972
3973         * gtk/gtktextiterprivate.h: underscore-ification
3974
3975         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
3976         to instead say "only useful to implement widgets"
3977
3978         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
3979         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
3980         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
3981
3982         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
3983         This function was completely broken
3984
3985         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
3986
3987         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
3988
3989         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
3990
3991         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
3992
3993         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
3994
3995         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
3996
3997         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
3998         gtk_paint_layout
3999
4000         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
4001         gtk_paint_layout
4002
4003         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
4004         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
4005         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
4006         which were not implemented.     
4007
4008         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
4009         insert_pixbuf signal. Rename delete_text to delete_range since it
4010         also deletes pixbufs and child anchors. This almost closes bug
4011         40245 (still need to deal with child anchors)
4012
4013         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
4014         insert_pixbuf, change signal names as appropriate, change types of
4015         signals taking marks/tags to have the specific type, not just
4016         G_TYPE_OBJECT
4017         
4018         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
4019         closes bug 40051
4020
4021         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
4022         unnecessary remove_contents() call
4023         (gtk_option_menu_class_init): add a "changed" signal, closes
4024         bug 40039
4025         (gtk_option_menu_update_contents): emit "changed" if the 
4026         active menu item changes
4027
4028         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
4029         cast to GtkObject, reported by Jonas Borgstrom
4030         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
4031         we can't do stuff with side effects in finalize. Instead, spew a
4032         warning if the loader isn't closed.
4033
4034         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
4035         colormap in here, non-X ports probably need to sync to this change
4036
4037         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
4038         assertion that colormap != NULL, you can set the colormap to NULL
4039         if you like.
4040         
4041         * Makefile.am: remove gtk-config-2.0
4042
4043         * configure.in: Use pkg-config to locate GLib. Remove
4044         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
4045         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
4046         Use pkg-config to locate Pango. Output correct Pango libs to
4047         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
4048
4049         * Makefile.am (pkgconfig_DATA): install only target-specific pc
4050         files
4051         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
4052         X11 pc files
4053
4054         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
4055         unref from here
4056
4057 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
4058
4059         * configure.in:
4060         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
4061
4062 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4063
4064         * gtk/gtktextlayout.c
4065         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
4066         variable when moving back onto a single line.
4067
4068 2001-01-01  Havoc Pennington  <hp@redhat.com>
4069
4070         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4071
4072         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
4073
4074         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4075         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4076
4077 2001-01-01  Havoc Pennington  <hp@redhat.com>
4078
4079         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4080
4081         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4082         GtkTextAttributes
4083
4084         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4085         #40246
4086         (gtk_text_attributes_copy_values): rename from 
4087         gtk_text_attributes_copy
4088         (gtk_text_attributes_copy): a more standard GTK copy function, 
4089         which returns a new object
4090
4091 2001-01-01  Havoc Pennington  <hp@redhat.com>
4092
4093         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4094         
4095         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4096         don't fill in tree_view->priv->selection, kind of an unexpected
4097         side effect
4098
4099         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4100         gtkintl.h
4101         
4102         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4103         gtkintl.h
4104         (gtk_cell_renderer_get_property): remove calls to g_value_init
4105
4106         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4107         gtkintl.h
4108
4109         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4110         and include gtkintl.h
4111         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4112         property names
4113
4114         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4115         GtkTreeSelection
4116         (_gtk_tree_selection_new_from_with_view): rename, return
4117         GtkTreeSelection
4118         (_gtk_tree_selection_set_tree_view): rename with uscore
4119         (gtk_tree_selection_get_selected): fill in the "model" out param
4120         first, so it gets filled in even if we return at the top of the 
4121         function
4122         (gtk_tree_selection_real_select_all): add a comment and an else{}
4123         to clarify this a bit
4124         (gtk_tree_selection_real_unselect_all): add the same else{}
4125
4126         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4127         set_tree_view to have underscore prefixes, move them to the
4128         private header, fix return type of new_with_tree_view
4129         (struct _GtkTreeSelection): mark struct
4130         fields private  
4131
4132         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4133         GtkTreeModelFlags, not a guint
4134         (gtk_tree_path_prev): return gboolean not gint
4135         (gtk_tree_path_up): return gboolean not gint
4136
4137         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4138         return GtkTreeModelFlags, not a guint
4139
4140         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4141         that child model is non-null before unrefing it
4142         (g_value_int_compare_func): make this a qsort compare func, not 
4143         a boolean predicate
4144
4145         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4146         (add -umn to the end), and mark it unimplemented
4147         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4148         I don't see what it's for - doesn't the model always sort itself?
4149         (gtk_tree_model_sort_set_compare): this had the wrong signature
4150
4151         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4152         Fix the docs to say that it destructively replaces existing
4153         attributes (previously said that it added attributes).
4154         (gtk_tree_view_column_set_visible): canonicalize bool before
4155         equality testing. Also, check for realization before
4156         hiding/showing the tree_column->window; if this window could exist
4157         before realization, then it's busted and needs fixing, we can't 
4158         create GDK resources pre-realization. Also, remove
4159         superfluous queue_resize(), since set_size() does that for us.
4160         (gtk_tree_view_column_set_col_type): check realization before 
4161         using tree_column->window
4162
4163         * gtk/gtktreedatalist.c: fix filename in copyright notice
4164
4165 2000-12-31  Havoc Pennington  <hp@pobox.com>
4166
4167         * gtk/gtktextview.c: Rearrange all the
4168         scroll-while-dragging-or-selecting code to be different, not
4169         necessarily better. ;-)
4170         (gtk_text_view_scroll_to_mark): Change this
4171         function to take within_margin as a fraction instead of a pixel
4172         value, and to take alignment arguments (indicating where to align 
4173         the mark inside the visible area)
4174         
4175         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4176         to GtkObject
4177
4178         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4179         behavior so that offsets past the end of the line are not 
4180         allowed, and an offset equal to the line length moves the iterator
4181         to the next line
4182         (gtk_text_iter_set_line_index): make parallel change
4183         (gtk_text_iter_get_bytes_in_line): add this function
4184         
4185         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4186         of byte indexes off the end of the line; byte index at the end of
4187         the line now returns FALSE and doesn't fill in the requested
4188         values, byte index past the end of the line is an error.  Also,
4189         don't allow -1 offset anymore, since its meaning is unclear.
4190
4191         This change exposes some bug in visual cursor motion, where we
4192         end up with a huge invalid byte index; needs fixing. Symptom of 
4193         bug is a crash when you hit up arrow.
4194         
4195         (_gtk_text_line_char_locate): match the change to byte_locate
4196
4197         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4198         from start of line properly. fixes bug reported by Mikael
4199         Hermansson where backspace would delete all text before the
4200         cursor.
4201
4202 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4203
4204         * gdk/win32/gdkwindow-win32.c
4205         (gdk_window_impl_win32_get_visible_region): New function, as in
4206         the X11 backend.
4207         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4208         instead of duplicating the same code here.
4209
4210         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4211         GDK_COLORMAP macro.
4212
4213         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4214         destroy function.
4215         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4216         access that.
4217
4218         * gtk/gtk.def: Update.
4219
4220         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4221
4222 2000-12-30  Havoc Pennington  <hp@pobox.com>
4223
4224         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4225         colormap on input only windows, to avoid special cases all over
4226         the code for these windows.
4227
4228 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4229
4230         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4231         we are on a palettized display ("PseudoColor" in X11), as the code
4232         for that doesn't work anyway, and never has.
4233
4234 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4235
4236         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4237         Don't use isprint() for chars > 255.
4238
4239 2000-12-21  Havoc Pennington  <hp@redhat.com>
4240
4241         * tests/testtreeview.c: more work
4242
4243 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4244
4245         * docs/README.linux-fb:
4246         Update the docs to the new pangoft2 way.
4247
4248 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4249
4250         * configure.in:
4251         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4252         pango version.
4253         Remove modules/linux-fb/Makefile.
4254
4255         * gdk/linux-fb/gdkdrawable-fb2.c:
4256         Render glyphs using freetype.
4257
4258         * gdk/linux-fb/gdkfb.h:
4259         Add new fb-specific functions needed for managing windows.
4260
4261         * gdk/linux-fb/gdkmain-fb.c:
4262         Remove gdk_font_init/fini() calls.
4263
4264         * gdk/linux-fb/gdkpango-fb.c:
4265         Remove old implementation. Use pangoft2 instead.
4266
4267         * gdk/linux-fb/gdkprivate-fb.h:
4268         Remove PangoFBFont and related stuff.
4269
4270         * gdk/linux-fb/gdkwindow-fb.c:
4271         Implement drawable->get_visible_region.
4272         Implement support for _gdk_window_set_child_handler () and
4273         _gdk_window_get_decorations().
4274
4275         * modules/Makefile.am:
4276         Remove linux-fb subdir.
4277
4278         * modules/linux-fb/*:
4279         Removed all.
4280         
4281 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4282
4283         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4284         calls, as they are no longer needed.
4285
4286         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4287         
4288         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4289         figure out how to emit a signal on an interface.
4290
4291 2000-12-20  Havoc Pennington  <hp@redhat.com>
4292
4293         * tests: new directory to contain tests, gtk/test* should move
4294         here sometime (with appropriate on-cvs-server hackery)
4295
4296         * tests/testtreeview.c, tests/Makefile.am: a test
4297         
4298         * configure.in (AC_OUTPUT): add tests/Makefile
4299
4300         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4301         and "invisible_set" which were missing
4302
4303         * gtk/gtkrbtree.h: some cheesy indentation fix
4304         
4305 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4306
4307         * gtk/gtkinvisible.c (gtk_invisible_realize):
4308         Attach the style to the window so that the style it is not
4309         leaked when unrealizing the window.
4310
4311 2000-12-18  Havoc Pennington  <hp@redhat.com>
4312
4313         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4314         begin/end user action where appropriate
4315         (gtk_text_view_commit_handler): add begin/end user action
4316
4317         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4318         bracket interactive operations with begin/end user action pair.
4319         
4320         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4321         "interactive" arg from insert_text and delete_text signals.
4322         Add begin_user_action, end_user_action signals
4323         (gtk_text_buffer_begin_user_action): 
4324         (gtk_text_buffer_end_user_action): New functions to delimit 
4325         a user-visible action
4326
4327         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4328         signals.
4329         
4330 2000-12-18  Havoc Pennington  <hp@redhat.com>
4331
4332         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4333         was pretty non-working.
4334
4335         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4336         by passing the length to g_utf8_validate().
4337
4338 2000-12-16  Havoc Pennington  <hp@pobox.com>
4339
4340         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4341         Port to GObject, can go back in gdk-pixbuf after setting up 
4342         a gdk-pixbuf-marshal.h header over there.
4343
4344         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4345         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4346         args
4347         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4348         set
4349         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4350         here, do it when we create the buttons later
4351         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4352         (gtk_tree_view_map): paranoia checks that column->button is shown 
4353         and unmapped
4354         (gtk_tree_view_size_request): only request visible children.
4355         Move header size calculation in here, for cleanliness, and 
4356         to maintain invariants for child widgets if we eventually 
4357         let users set different children inside the buttons
4358         (gtk_tree_view_map_buttons): factor out code to map buttons,
4359         since it was being called several times
4360         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4361         windows instead of just moving them; their height may change 
4362         if we allow random widgets in there, or the theme changes.
4363         (gtk_tree_view_size_allocate): move button size allocation 
4364         above emitting the scroll signals, to ensure a sane state when we
4365         hit user code
4366         (gtk_tree_view_button_release): remove queue_resize after
4367         tree_view_set_size(), set_size() will handle any resize queuing
4368         that's needed
4369         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4370         draw_focus goo
4371         (gtk_tree_view_focus): use gtk_get_current_event() and
4372         gdk_event_get_state()
4373         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4374         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4375         semicolon
4376         (gtk_tree_view_create_button): show the button here
4377         (gtk_tree_view_button_clicked): actually emit the clicked signal
4378         on the column
4379         (_gtk_tree_view_set_size): return right away if the size is
4380         unchanged, as a cheesy optimization
4381         (gtk_tree_view_setup_model): rename set_model_realized to 
4382         setup_model to match the flag that indicates whether we've 
4383         called it
4384         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4385         exist, because set_scroll_adjustment does that and it shouldn't
4386         matter what order you call these in
4387         (gtk_tree_view_get_vadjustment): ditto
4388         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4389         for paranoia
4390         (gtk_tree_view_set_headers_visible): call
4391         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4392         (gtk_tree_view_append_column): clarify whether the return value
4393         is the count of columns before or after, and do the increment 
4394         separately from the return statement so you can tell from the code.
4395         (gtk_tree_view_remove_column): ditto
4396         (gtk_tree_view_insert_column): ditto
4397         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4398         outside the existing range, the docs say that outside-range
4399         columns are allowed, so we handle them as documented. (Presumably
4400         this allows a nice loop with column != NULL as test.)
4401         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4402         mean (left/right/center etc.).
4403         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4404         (gtk_tree_view_expand_row): add docs
4405         (gtk_tree_view_collapse_row): add docs
4406
4407         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4408         function to emit the clicked signal on a column
4409         
4410         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4411         state of an event
4412         (gdk_event_get_time): don't treat GDK_SCROLL 
4413         as a button event, remove default case from switch so gcc 
4414         will whine if we don't explicitly handle all event types
4415
4416         * gtk/gtktreeselection.h: added some FIXME 
4417         
4418         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4419         "columns" to "n_columns" and "column" to "columns" for clarity
4420
4421 2000-12-16  Havoc Pennington  <hp@pobox.com>
4422         
4423         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4424         stuff. This should make e.g. the delete key work again in the
4425         text widget...
4426         (gtk_text_iter_forward_cursor_positions): handle negative count
4427         (gtk_text_iter_backward_cursor_positions): handle negative count
4428         (gtk_text_iter_forward_word_ends): handle negative count
4429         (gtk_text_iter_backward_word_starts): handle negative count
4430
4431         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4432         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4433         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4434         GObject. No doubt will cause breakage.
4435
4436         * demos/gtk-demo/textview.c: remove hacks around
4437         non-GObject-ification of the text objects
4438
4439         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4440         the text tag
4441         
4442 2000-12-14  Havoc Pennington  <hp@pobox.com>
4443
4444         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4445         that we have Xrender
4446
4447 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4448
4449         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4450         Add two virtualized functions gdk_drawable_get_clip_region - to
4451         get the clip region when drawing.
4452         
4453         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4454         use invalidate_region.
4455
4456         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4457         region.
4458
4459         * acconfig.h configure.in: Check for Xft. For now, assume
4460         that if Xft is found, Pango was compiled with Xft support
4461         as well.
4462
4463         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4464         gdk_colormap_query_color().
4465         
4466         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4467         with Xft if appropriate.
4468
4469         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4470         a pangoxft context if we have XFT and the environment
4471         variable GD_USE_XFT is set.
4472         
4473         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4474         and also possibly an XftDraw structure.
4475
4476         * gtk/gtkfontsel.c: Handle the case where the font from the
4477         style doesn't match any of the fonts a bit better.
4478         
4479         * gtk/testgtk.c: Add tabs between directional segments for
4480         hebrew/arabic test. (Not really necessary, just a little
4481         prettier.)
4482
4483 2000-12-14  Havoc Pennington  <hp@redhat.com>
4484
4485         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4486         reading a file
4487
4488 2000-12-14  Havoc Pennington  <hp@redhat.com>
4489
4490         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4491         unused call to get_last_line()
4492
4493         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4494         here until boxed is working (and maybe after that - we should
4495         really not gratuitously break old code)
4496
4497         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4498         specific types for font_desc and tabs args, move them to
4499         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4500         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4501
4502         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4503         use GTK_TYPE_POINTER for signal signatures as a hack-around
4504
4505         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4506         PangoTabArray
4507
4508         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4509         make static
4510         (line_display_index_to_iter): make static
4511
4512         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4513         to marshal a string not a boxed
4514
4515         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4516
4517         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4518         since the UTF-8 isn't validated yet
4519
4520         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4521         lines to end in '\n'
4522         
4523         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4524         forward_to_delimiters, and grapheme boundaries
4525         (gtk_text_view_delete_from_cursor): properly handle non-newline
4526         delimiters, and grapheme boundaries
4527
4528         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4529         to gtk_text_iter_forward_to_delimiters, and make it work properly
4530         if empty lines end with a character other than '\n'
4531
4532         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4533         position
4534
4535 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4536
4537         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4538
4539         * gtk/gtk.def
4540         * gdk/gdk.def: Update.
4541
4542         * gdk/win32/gdkmain-win32.c
4543         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4544         gdkmain-win32.c here.
4545
4546         * gdk/win32/makefile.mingw.in (all): No need to make
4547         gdk-win32res.o here, the makefile one step up will call us to make
4548         it.
4549
4550         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4551         gdkkeys-win32.
4552
4553         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4554
4555         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4556         call to g_source_add().
4557
4558         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4559         leak. Thanks to Andreas Kemnade.
4560
4561 2000-12-13  Havoc Pennington  <hp@pobox.com>
4562
4563         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4564
4565         * gtk/gtktext*.[hc]: update accordingly
4566         
4567 2000-12-13  Havoc Pennington  <hp@pobox.com>
4568
4569         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4570         header file
4571
4572         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4573
4574 2000-12-13  Alex Larsson  <alexl@redhat.com>
4575
4576         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4577         Add support for ps2 intellimouse.
4578
4579         * gdkkeyboard-fb.c:
4580         Move shift-F1 repaint handling to xlate handler only.
4581         
4582         * docs/README.linux-fb:
4583         Add imps2 to docs.
4584         Document the new refresh keys.
4585         
4586 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
4587
4588         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
4589
4590         * gtk/gtkbox.c: change property types from (u)long to (u)int for
4591         ::position and ::padding.
4592
4593         * gtk/gtkcontainer.c: make ::border_width an INT property.
4594
4595         * gtk/gtkpacker.c: make ::position an INT property.
4596
4597         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4598         guard against NULL h/v scrollbars, since this is used at construction
4599         time.
4600
4601         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
4602         internal gtk_clist_constructor().
4603
4604         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
4605         gtk_ctree_constructor().
4606
4607         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4608         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4609
4610         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4611         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4612
4613         * gtk/gtkwidget.[hc]:
4614         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4615         and gtk_widget_get().
4616         (gtk_widget_new): use g_object_new_valist().
4617         (gtk_widget_set): use g_object_set_valist().
4618
4619         * gtk/gtkobject.[hc]:
4620         removed gtk_object_arg_get_info(), gtk_object_getv(),
4621         gtk_object_query_args(), gtk_object_newv(),
4622         gtk_object_class_add_signals(),
4623         gtk_object_class_user_signal_new(),
4624         gtk_object_class_user_signal_newv(),
4625         gtk_object_arg_set(), gtk_object_arg_get(),
4626         gtk_object_args_collect(),
4627         gtk_object_default_construct(),
4628         gtk_object_constructed(),
4629         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4630         removed nsignals, signals and n_args members from GtkObjectClass.
4631         (gtk_object_new): use g_object_new_valist().
4632         (gtk_object_set): use g_object_set_valist().
4633         (gtk_object_get): use g_object_get_valist().
4634         
4635         * gtk/gtkcompat.h: define gtk_object_default_construct().
4636         
4637         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4638         g_object_new().
4639
4640         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4641         fucntions, cleaned up method assignments (make sure your structures
4642         are setup properly before calling out). removed all GTK_CONSTRUCTED
4643         hacks ;)
4644
4645 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4646
4647         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4648         off-by-one error in checks. (Dave Lambert)
4649
4650 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4651
4652         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4653         Don't free gdk_fb_keyboard twice.
4654
4655 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4656
4657         * gtk/testgtk.c:
4658         (create_tooltips): 
4659         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4660         use GObject swapped_signal:: properties instead.
4661
4662         * gtk/gtkcellrenderertoggle.c: 
4663         * gtk/gtkcellrenderertextpixbuf.c: 
4664         * gtk/gtkcellrenderertext.c: 
4665         * gtk/gtkcellrendererpixbuf.c: 
4666         * gtk/gtkcellrenderer.c:
4667         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4668         missing warnings for invalid property ids, install properties
4669         with g_object_class_install_property() now.
4670         
4671         * gtk/gtksignal.c:
4672         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4673         
4674 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4675         
4676         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4677         to determine if a window is the focus widget within
4678         its toplevel.
4679
4680         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4681         to be boolean.
4682
4683         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4684         of the case where the container CAN_FOCUS to here instead
4685         of having it in each individual move-the-focus place.
4686
4687         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4688         focusing to be geometric in a much more obvious sense. Arrowing
4689         around is still non-intuitive because it isn't perfect and
4690         because entries, etc, grab the arrow keys, but it at least
4691         usually will do what you expect now.
4692         
4693         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4694         file.
4695
4696         * gtk/gtknotebook.c: Change tabs to be a single item in
4697         the focus chain. Make movement of focus on tabs with arrow
4698         keys wrap around.
4699         
4700         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4701         CHECK_FIND_CHILD macro to give informative error messages
4702         instead of silent returns.
4703
4704         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4705         flag since we handle GdkReturn on the tabs.
4706
4707         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4708         windows rather than sending expose events directly.
4709
4710         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4711         definition for GtkNotebookPage into .c file, since it is private.
4712
4713         * gtk/testgtk.c (create_notebook): Add option for 
4714         testing borderless notebook.
4715
4716         * gtk/testgtk.c (page_switch): Removed egregious poking
4717         around in GTK+ internals.
4718
4719         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4720
4721         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4722         properly through gtk_clist_focus. Make the title headers a
4723         single item in the tab-focus chain, and make left-right wrap
4724         around.
4725
4726         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4727         focus method so that wrapping around works properly.
4728
4729         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4730         that is handled for the widget now. 
4731
4732 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4733
4734         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4735         widgets as TOPLEVEL.
4736
4737         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4738         TOPLEVEL widgets are containers.
4739
4740         * gtk/gtkinvisible.h: Remove useless include.
4741
4742 2000-12-11  Havoc Pennington  <hp@redhat.com>
4743
4744         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4745         Handle chopping off \r\n and 0x2029 in addition to \n before
4746         passing to PangoLayout
4747
4748         * gtk/gtkimcontextsimple.c
4749         (gtk_im_context_simple_get_preedit_string): 
4750         return an empty string if no match is pending
4751
4752         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4753         assertion that the returned preedit string was sane
4754
4755         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4756         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4757         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4758
4759 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4760
4761         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4762         Fix up finalizer to chain to its parent.
4763
4764 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4765
4766         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4767         Clearified the difference between the keyboard types. Wrote a note
4768         about the magic sysrq key to get out of raw mode.
4769
4770 2000-12-09  James Henstridge  <james@daa.com.au>
4771
4772         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4773         member to hold masks for detecting the start of a protocol packet.
4774         (mouse_devs): add packet start masks for ps2 and ms device types.
4775         Left the mask for fidmour blank, as I have no idea what it should
4776         be.
4777         (handle_mouse_io): skip bytes until we get to the start of a
4778         packet.  My Logitech mouse seems to be passing an extra NULL pad
4779         byte, and GPM does a similar thing here.
4780         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
4781         this is the ms mouse driver.
4782         (gdk_fb_mouse_ms_packet): fix up button handling, which was
4783         completely broken except for button1.  It was checking the wrong
4784         bit in the packet for the status of the right mouse button, and
4785         wrongly assuming right == button2 rather than 3.  I fixed that and
4786         also added support for middle button (button2).
4787
4788 2000-12-08  Havoc Pennington  <hp@redhat.com>
4789
4790         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
4791         that cause a segfault on text insertion
4792
4793         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
4794         warning
4795
4796         * gtk/gtktextiter.c (test_log_attrs): use
4797         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
4798
4799         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
4800         Get log attrs for a line, using a cache stored on the buffer
4801         
4802         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
4803         reported by Jeff Franks
4804
4805 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4806
4807         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
4808         /dev/ttyS0 -> /dev/mouse
4809
4810 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4811
4812         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
4813         Added dummy gdk_fontset_load.
4814
4815 2000-12-08  Alexander Larsson  <alexl@redhat.com>
4816
4817         * docs/README.linux-fb:
4818         * docs/Makefile.am:
4819         Initial GtkFB docs.
4820         
4821         * gdk/linux-fb/Makefile.am:
4822         Define GDK_DATA_PREFIX.
4823
4824         * gdk/linux-fb/gdkmain-fb.c:
4825         Fix typo.
4826         Change default display to /dev/fb0.
4827
4828         * gdk/linux-fb/gdkpango-fb.c:
4829         Add $(prefix)/share/fonts/ to font path.
4830         
4831 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4832
4833         * gdk/linux-fb/gdkkeyboard-fb.c:
4834         New file containing the abstracted keyboard driver. Most code
4835         taken from gdkinput-ps2.c
4836
4837         * gdk/linux-fb/gdkinput-ps2.c:
4838         Removed file.
4839         
4840         * gdk/linux-fb/Makefile.am:
4841         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
4842
4843         * gdk/linux-fb/gdkcolor-fb.c:
4844         display->fb was renamed to display->fb_fd.
4845
4846         * gdk/linux-fb/gdkcursor-fb.c:
4847         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4848
4849         * gdk/linux-fb/gdkinput.c:
4850         Moved gdk_input_init here from gdkinput-ps2.c
4851
4852         * gdk/linux-fb/gdkmain-fb.c:
4853         display->fb was renamed to display->fb_fd.
4854         Now the tty and the console is opened here instead
4855         of in the keyboard driver. Also check GDK_VT to see what
4856         tty to open.
4857         Move gdk_beep () here from gdkinput-ps2.c
4858         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4859
4860         * gdk/linux-fb/gdkmouse-fb.c:
4861         Add header.
4862         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4863         Return correct keyboard modifiers.
4864         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
4865
4866         * gdk/linux-fb/gdkprivate-fb.h:
4867         Add tty and vt info to display.
4868         Add orignal modeinfo storage to display
4869         Update global functions
4870
4871         * gdk/linux-fb/gdkwindow-fb.c:
4872         Added gdk_fb_window_find_focus().
4873         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4874
4875 2000-12-07  Havoc Pennington  <hp@pobox.com>
4876
4877         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
4878         function, noticed by Alex
4879
4880 2000-12-06  Elliot Lee  <sopwith@redhat.com>
4881
4882         * configure.in: Detect freetype properly
4883
4884         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
4885         above.
4886
4887 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4888
4889         * gdk/linux-fb/Makefile.am:
4890         Add gdkmouse-fb.c
4891         
4892         * gdk/linux-fb/gdkmouse-fb.c:
4893         New file. Abstracted the mouse drivers a bit.
4894
4895         * gdk/linux-fb/gdkcursor-fb.c:
4896         The cursor hide/show functions was moved here from gdkinput-ps2.c.
4897
4898         * gdk/linux-fb/gdkinput-ps2.c:
4899         Removed old mouse handling code. Moved cursor handling code
4900         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
4901         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
4902         gdk_mouse_get_info.
4903
4904         * gdk/linux-fb/gdkmain-fb.c:
4905         Pass NULL pointers for x,y in gdk_mouse_get_info call.
4906
4907         * gdk/linux-fb/gdkprivate-fb.h:
4908         Removed public gdk_fb_find_common_ancestor, added and renamed
4909         functions for the new mouse handling code.
4910
4911         * gdk/linux-fb/gdkwindow-fb.c:
4912         Moved gdk_fb_window_send_crossing_events here. added global
4913         variable gdk_fb_window_containing_pointer. made
4914         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
4915         renamed to gdk_mouse_get_info.
4916
4917 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4918
4919         * gdk/linux-fb/gdkevents-fb.c:
4920         Update to match latest gmain/gsource changes.
4921
4922         * gdk/linux-fb/gdkinput-ps2.c:
4923         Bogus gdk_keymap_get_entries_for_keycode implementation so that
4924         it links. Will be implemented later.
4925
4926 2000-12-03  Havoc Pennington  <hp@pobox.com>
4927
4928         * gdk/Makefile.am: add gdkkeys.[hc]
4929
4930         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
4931         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
4932
4933         * acconfig.h, configure.in: add checks and command line options
4934         for XKB
4935
4936         * gdk/x11/gdkkeys-x11.c: Implement the above functions
4937         
4938         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
4939         and group in the key event
4940
4941         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
4942         field with the low-level hardware key code, and a group
4943         field with the keyboard group
4944
4945         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
4946         and declare a couple globals used for keymap handling
4947         
4948         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
4949         hold down Shift-Control and type a hex number to get a Unicode 
4950         character corresponding to the hex number
4951         (gtk_im_context_simple_get_preedit_string): Fix cursor position
4952         (return bytes not chars)
4953
4954 2000-12-05  Elliot Lee  <sopwith@redhat.com>
4955
4956         * gdk/gdkcolor.h: Make GdkColor specify element sizes
4957         to avoid waste on 64-bit platforms.
4958
4959 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
4960
4961         * INSTALL: Fix link to PNG home, remove reference
4962         to fribidi.
4963
4964         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
4965         
4966         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
4967         tested.)
4968
4969         * gtk/gtkcheckmenuitem.c: Permanently turn on
4970         always_show_toggle.
4971
4972         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
4973         be NULL. (Vladimir Klebanov, #26545)
4974
4975         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
4976         some signed/unsigned comparison problems. (#6510,
4977         David Kaelbling)
4978
4979         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
4980         return type to boolean (Oskar Liljeblad, #18648)
4981
4982 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4983
4984         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
4985         Remove bogus colormap setting.
4986
4987 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4988
4989         * gdk/linux-fb/gdkcolor-fb.c:
4990         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
4991
4992         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
4993         Must set colormap.
4994         
4995 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
4996
4997         * docs/tutorial/gtk-tut.sgml: DND updates
4998
4999 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
5000
5001         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5002         Remove old debug g_warning().
5003         (gdk_fb_draw_drawable): The src argument can be either a wrapper
5004         or an implementation, just pass the implementation to draw_drawable_2.
5005         
5006         * gdk/linux-fb/gdkprivate-fb.h:
5007         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
5008
5009         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5010         clear and invalidate area when window is destroyed.
5011         (send_map_events): Remove old commented out code.
5012
5013 2000-12-05  Alexander Larsson  <alexl@redhat.com>
5014
5015         * gdk/linux-fb/gdkpango-fb.c:
5016         Use italic instead of oblique in font aliases.
5017         
5018         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
5019         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
5020         other unsupported functions.
5021
5022 2000-12-04  Havoc Pennington  <hp@redhat.com>
5023
5024         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
5025
5026         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
5027
5028         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
5029
5030         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
5031         hack to avoid infinite loops (synthetic expose event) - 
5032         Owen has more appropriate fixes in a branch he'll check in later.
5033
5034         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
5035         separator, CR, and CRLF as line ends
5036
5037         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
5038         into lines using pango_find_paragraph_boundary(); other bits of
5039         the widget are still going to be broken if the boundary isn't '\n'
5040         though
5041
5042 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5043
5044         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
5045         multiply.
5046
5047         * gdk/linux-fb/gdkpango-fb.c:
5048         Copied some 26.6 scaling macros from pango to clean up the rounding.
5049         (pango_fb_font_get_glyph_info): Correct sign on x value.
5050
5051         * gdk/linux-fb/gdkprivate-fb.h:
5052         Removed unreferenced external functions.
5053
5054         * modules/linux-fb/Makefile.am: Use ` instead of '.
5055
5056         * modules/linux-fb/basic.c:
5057         Remove dead code. In particular the dummy lang engine which broke all
5058         pango layouts in GtkFB. Don't include tables-big.i anymore.
5059
5060         * modules/linux-fb/tables-big.i:
5061         Upgrade to latest version from pango. Left for reference, basic_ranges
5062         moved to basic.c.
5063         
5064 2000-12-04  Havoc Pennington  <hp@redhat.com>
5065
5066         Fix bugs Alex found:
5067         
5068         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
5069         to "draw"
5070
5071         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
5072
5073         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
5074
5075         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5076         implementation in here, apparently the expose() implementation was
5077         dead code.
5078
5079 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5080
5081         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5082         Return positive descent.
5083
5084 2000-12-02  Havoc Pennington  <hp@pobox.com>
5085
5086         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5087         method and signal
5088         
5089         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5090         calls gdk_window_process_updates() to push the exposes through
5091         (gtk_widget_class_init): No more draw signal, no
5092         gtk_widget_real_draw()  
5093         
5094         * gtk/gtkbin.c (gtk_bin_draw): remove
5095
5096         * gtk/gtkbox.c (gtk_box_draw): remove
5097
5098         * gtk/gtkbutton.c (gtk_button_draw): remove
5099
5100         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5101
5102         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5103
5104         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5105
5106         * gtk/gtkclist.c (gtk_clist_draw): remove
5107
5108         * gtk/gtkentry.c (gtk_entry_draw): remove
5109
5110         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5111
5112         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5113
5114         * gtk/gtkframe.c (gtk_frame_draw): remove
5115
5116         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5117
5118         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5119
5120         * gtk/gtklayout.c (gtk_layout_draw): remove
5121
5122         * gtk/gtklist.c (gtk_list_draw): remove
5123
5124         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5125
5126         * gtk/gtkmenu.c (gtk_menu_draw): remove
5127
5128         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5129
5130         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5131
5132         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5133
5134         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5135
5136         * gtk/gtkpacker.c (gtk_packer_draw): remove
5137
5138         * gtk/gtkrange.c (gtk_range_draw): remove
5139
5140         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5141
5142         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5143
5144         * gtk/gtktable.c (gtk_table_draw): remove
5145
5146         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5147
5148         * gtk/gtktext.c (gtk_text_draw): remove
5149
5150         * gtk/gtktextview.c (gtk_text_view_draw): remove
5151
5152         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5153
5154         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5155
5156         * gtk/gtktree.c (gtk_tree_draw): remove
5157
5158         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5159
5160         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5161
5162         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5163
5164         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5165
5166         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5167
5168         * gtk/gtkwindow.c (gtk_window_draw): remove
5169
5170 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5171
5172         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5173         a GtkToggleButton is both insensitive and active, it was being
5174         drawn by the GtkButton draw handler which doesn't check the
5175         state. Now it's calling gtk_toggle_button_paint instead.
5176         
5177 2000-12-01  Havoc Pennington  <hp@redhat.com>
5178
5179         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5180         dangling pointers to the appearance attributes from the 
5181         line display
5182
5183         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5184         width/height to mean "full width/height of drawable"
5185
5186         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5187         click to select word/line
5188         
5189         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5190         when getting log attrs. Get a slice, so that pixmaps and stuff
5191         are properly handled.
5192
5193         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5194         paste into the selection (replaces selection now, previously
5195         crashed or added to selection). Reveals longstanding btree bug -
5196         select multiple lines, middle-click on the selection, boom. This
5197         isn't related to my changes though.
5198
5199         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5200         PangoLogAttrs changes
5201         (gtk_entry_move_backward_word): ditto
5202
5203         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5204         functions return bool whether the iter moved onto a
5205         dereferenceable position.
5206  
5207         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5208         functions for motion in terms of display lines.
5209
5210         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5211         get the buffer a mark is inside
5212         
5213 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5214
5215         * gdk/linux-fb/Makefile.am:
5216         * modules/linux-fb/Makefile.am:
5217         Freetype 2 final uses freetype-config
5218
5219         * gdk/linux-fb/gdkpango-fb.c:
5220         Upgrade to use Freetype 2 final.
5221         More flexible support for font aliases, this also fixes a bug with
5222         GtkFontSelector, as the aliases must be visible in the font/family list,
5223         or GtkFontSelector reads uninitialized memory.
5224
5225 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5226
5227         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5228         XGetIMValues to properly terminate variable argument list, and do
5229         NULL return check for ic_values and xim_styles.
5230
5231         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5232         Restore preedit state after XmbResetIC().
5233         
5234         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5235         XvaCreateNestedList() should take XvaNestedList, but not
5236         XvaNestedList*.
5237
5238         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5239         preedit_draw_callback, preedit_caret_callback): Match
5240         "preedit-changed" signal name to "preedit_changed" to be
5241         consistent to the spec.
5242
5243         * gtk/gtkimcontextsimple.c (check_table):
5244         Match "preedit-changed" to "preedit_changed" to be consistent
5245         to the spec.
5246
5247 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5248
5249         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5250         gc->clip_region == NULL>
5251
5252 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5253
5254         Changes by Hans Breuer:
5255         
5256         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5257         Dont't use negative width and height as max_hints. This fixes
5258         Owen's recent testgtk changes for win32.
5259
5260         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5261         gdk_win32_hdc_release): These are exported and may be called with
5262         other drawable types than our GdkDrawableImplWin32 (?).
5263
5264         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5265         so always #define USE_BACKING_STORE.
5266
5267         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5268         of printf for debugging output.
5269
5270         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5271         
5272         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5273
5274         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5275         declaration.
5276
5277         * gtk/gtktexttypes.h: Ditto.
5278
5279         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5280         (GDK_VoidSymbol) also if in case of arg check failure.
5281
5282         * gtk/gtkimcontextsimple.c
5283         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5284         position to the pointer, but to the variable it points to.
5285
5286         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5287
5288         * gtk/gtk.def: Updates.
5289
5290 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5291
5292         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5293         GTK_TYPE_TREE_MODEL.
5294
5295 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5296
5297         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5298         Set the size of the font from the description.
5299         (gdk_text_width): Gross hack that calculates the width
5300         of text by text_length * size/2. This is necessary because
5301         GtkLabel does some ugly gtk_string_width call to calculate
5302         an good size.
5303         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5304
5305 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5306
5307         * docs/tutorial/gtk-tut.sgml: DND updates
5308
5309 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5310
5311         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5312         If you pass width or height == 0 to gdk_window_clear_area they
5313         should be calculated from the window size.
5314
5315 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5316
5317         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5318         a grab, but no grab-cursor, use the cursor from the grabbed
5319         window. (gdk_fb_window_send_crossing_events): Send normal
5320         enter/leave notifications if grab and owner_events == TRUE.
5321
5322 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5323
5324         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5325         Do implicit button grabs, even if the window doesn't
5326         want the event.
5327         (gdk_fb_window_send_crossing_events): If there is a
5328         grab, only the grabbed window gets normal enter/leave
5329         notifications. On ungrab go from grabbed window to current.
5330         Don't send any notification to b when propagating from c -> b.
5331         If setting a grab on window, don't set prev_window.
5332         (handle_mouse_input): Send enter/leave events to the window the
5333         mouse is over, not the grabbed one.
5334         
5335 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5336
5337         * gdk/gdkregion-generic.c: Zap warning.
5338         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5339         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5340
5341 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5342
5343         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5344         The cursor should be hidden if it is part of either the
5345         source or destination region. Not only if it is in both.
5346         (gdk_window_set_transient_for): Silence warnings.
5347
5348 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5349
5350         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5351         The default mode in X is Pie Arcs, therefore that is
5352         what Gtk+ uses.
5353
5354 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5355
5356         * gdk/linux-fb/gdkinput-ps2.c:
5357         Implement correct EnterNotify/LeaveNotify:
5358         (gdk_fb_window_send_crossing_events): New function that sends
5359         all GdkCrossingEvents from the last mouse-window to the specified
5360         destination.
5361         (gdk_fb_window_visibility_crossing): Removed function.
5362         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5363         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5364         instead of gdk_window_get_pointer() for better readability.
5365
5366         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5367         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5368
5369         * gdk/linux-fb/gdkprivate-fb.h:
5370         removed gdk_fb_window_visibility_crossing, added
5371         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5372
5373         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5374         New function that finds the least common ancestor of two windows.
5375         (gdk_window_show, gdk_window_hide):
5376         Use gdk_fb_window_send_crossing_events.
5377         (gdk_fb_window_move_resize): Send configure events to toplevel
5378         windows. Use gdk_fb_window_send_crossing_events.
5379
5380 2000-11-27  Havoc Pennington  <hp@redhat.com>
5381
5382         * gtk/gtkprivate.h (enum): Remove a trailing comma
5383
5384 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5385
5386         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5387         the "changed" callback of the adjustment.  We need to redraw the
5388         spin button's arrows when the adjustment's range changes.
5389         (adjustment_changed_cb): Draw the arrows.
5390         (gtk_spin_button_value_changed): Draw the arrows.
5391
5392 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5393
5394         * gdk/linux-fb/gdkselection-fb.c:
5395         Initial selection implementation.
5396
5397         * gtk/gtkselection.c:
5398         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5399         requestor in gtk_selection_request.
5400         
5401         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5402         Added gdk_selection_property atom.
5403
5404         * gdk/linux-fb/gdkprivate-fb.h:
5405         Export _gdk_selection_window_destroyed.
5406         Removed mask_off_x/y from GdkCursorPrivateFB.
5407         Removed hbearing, added top, left to PangoFBGlyphInfo.
5408
5409         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5410         Call _gdk_selection_window_destroyed
5411         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5412         the root window has been created.
5413         (static_dx_hack, static_dy_hack, compare_draw_rects,
5414         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5415         in region. They are already sorted. Instead just traverse them in
5416         reverse if draw_direction < 0.
5417         
5418         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5419         Double-clicks must be sent after the normal button_press.
5420         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5421         
5422         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5423         Pass _gdk_fb_screen_gc instead of NULL.
5424
5425         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5426         Initialize gdk_selection_property.
5427         (gdk_event_make): Remove unused code.
5428
5429         * gdk/linux-fb/gdkcursor-fb.c:
5430         Make the pixmap for the cursor the same size as the mask. Also remove
5431         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5432         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5433         Now the whole cursor is visible.
5434
5435         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5436         Fix bug where xdest+height instead of ydest+height was used
5437         to calculate if the source and dest overlapped. This fixes the
5438         redraw bug when the main window in testgtk was scrolled when
5439         partially covered by a tall window.
5440         Copy rectangles in region in order depending on draw_direction.
5441         Also moved the draw_direction flipping of start_y and end_y into
5442         the gc functions, as this might not be what all of them want.
5443         (gdk_fb_draw_lines): Support dashed lines.
5444         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5445         so that the text is positioned correctly (was 1 pixel high).
5446
5447         gdk/linux-fb/gdkgc-fb.c:
5448         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5449         all lines were drawn a pixel to short. Also checked the default of
5450         the rest of the values, and they're the same as X now.
5451
5452         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5453         Clean up pixel positioning of the glyphs. Just use bgy->top and
5454         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5455         to all divisions to get correct rounding behaviour.
5456
5457         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5458         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5459         Moved start_y/end_y flip into draw_drawable implementations.
5460         Flip also x rendering when draw_direction < 0.
5461         Remove unneccesary multiply with draw_direction.
5462
5463 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5464
5465         * docs/tutorial/gtk-tut.sgml:
5466           - get rid of gtk_toggle_button_toggled FUD
5467           - start DND section - needs work - based on:
5468                 http://wolfpack.twu.net/docs/gtkdnd/
5469
5470 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5471
5472         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5473         Correct calculation of font metrics. Now GtkEntrys have sane
5474         size.
5475
5476 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5477
5478         * gdk/gdktypes.h:
5479         Add new type GdkSpan
5480         
5481         * docs/reference/gdk/gdk-sections.txt,
5482         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5483         gdk/gdkregion.h:
5484         Implement and document gdk_region_spans_intersect_foreach.
5485
5486         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5487         Add new file gdkrender-fb.c which contains all core
5488         rendering code.
5489         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5490         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5491         (optimized rectangle fillers).
5492
5493         * gdk/linux-fb/gdkdrawable-fb2.c:
5494         Move all rendering code to gdkrender-fb.c.
5495         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5496         Use the new span intersection functions in gdk_fb_fill_spans.
5497         gdk_fb_draw_rectangle() clips filled rectangles and calls
5498         gc->fill_rectangle with the result.
5499         gdk_fb_fill_spans() gets extra argument "sorted".
5500
5501         * gdk/linux-fb/gdkevents-fb.c:
5502         Remove unused includes and defines.
5503         New function gdk_fb_get_time() to get correct time for events.
5504
5505         * gdk/linux-fb/gdkinput-ps2.c:
5506         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5507         Make sure to set the time of all events.
5508
5509         * gdk/linux-fb/gdkmain-fb.c:
5510         Use gdk_fb_get_time ().
5511
5512         * gdk/linux-fb/gdkprivate-fb.h:
5513         New virtual GC calls: fill_span & fill_rectangle.
5514         Export gdk_fb_get_time().
5515         gdk_fb_fill_spans() gets extra argument "sorted".
5516
5517         * gdk/linux-fb/mi*.c:
5518         Use GdkSpan instead of GdkRectangle.
5519         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5520         from XFree 4 source)
5521         
5522 2000-11-22    <jrb@redhat.com>
5523
5524         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5525         reversing the order in an if statement will do.  Doing so managed
5526         to make the treemodelsort half work.  Other half will follow after
5527         I get the insert function fully fixed.
5528
5529 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5530         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5531         more than 2 bits. Besides, I need to implement an evil hack. :)
5532
5533 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5534
5535         * docs/tutorial/gtk-tut.sgml: minor corrections
5536
5537 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5538         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5539           convert to and from relative path's and iters.
5540
5541         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5542           testing sorting functions a bit better.  Currently broken -- will
5543           fix in morning.
5544
5545 2000-11-20  Havoc Pennington  <hp@redhat.com>
5546
5547         * gtk/gtkwidget.c: Documented a bunch of functions in here
5548         (gtk_widget_realize): Warn if you try to realize
5549         a widget with no parent that isn't a toplevel
5550         (gtk_widget_intersect): return a gboolean
5551
5552 2000-11-20  Havoc Pennington  <hp@redhat.com>
5553
5554         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5555         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5556         scrolling to be implemented in GDK to finish. Also, right now
5557         we just size_allocate all children on every layout change,
5558         which is pretty lame. Test commented out of testtext.c, 
5559         until it works better.
5560
5561 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5562
5563         * gdk/linux-fb/gdkdrawable-fb2.c:
5564         Removed unused arguments from gdk_fb_drawable_get_pixel().
5565
5566         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5567         Renamed fidur specific mouse packet data in MouseDevice to
5568         generic. Used it in ps2 mouse handling code to avoid blocking
5569         reads.
5570
5571 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5572
5573         * demos/gtk-demo/main.c: Changed to have the list become
5574         non-italic when the demo window is destroyed through an external
5575         event (like a close button).  Doing so found three bugs in the
5576         widget.
5577
5578         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5579
5580         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5581         we actually set the cell.
5582
5583         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5584
5585         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
5586         free a leaked path.  Thanks memprof.
5587
5588 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
5589
5590         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
5591         off-by-one error when destroying allocated segments
5592         on failure. (Elliot)
5593
5594 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
5595
5596         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
5597         memleaks found by Evan Martin.
5598
5599 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
5600
5601         * Released 1.3.2
5602         
5603         * NEWS: Updates for 1.3.2
5604
5605 2000-11-17  Tor Lillqvist  <tml@iki.fi>
5606
5607         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5608         but in general for window system specific events.
5609
5610         * gtk/gtk.def
5611         * gtk/makefile.mingw.in
5612         * gtk/makefile.msc.in: Update.
5613         
5614         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5615
5616 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5617
5618         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5619         distribute gtk.immodules.
5620
5621         * gtk/Makefile.am (install-data-local): Don't install the
5622         gtk.immodules file created for the uninstalled modules;
5623         instead run gtk-query-immodules after install
5624
5625 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5626
5627         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5628         -rpath to the right install location.
5629
5630         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5631         -export-dynamic.
5632
5633         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5634         properly.
5635
5636 2000-11-15  Havoc Pennington  <hp@pobox.com>
5637
5638         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5639         patch from Mikael Hermansson to temporarily stop blinking while
5640         the user is using the keyboard to type or navigate. 
5641
5642         Also, when blinking, stay on for longer than we stay off. Also,
5643         return from start_cursor_blink if !cursor_visible, to save
5644         checking that flag all over the place before we call
5645         start_cursor_blink.
5646
5647 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5648
5649         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5650         only contain a "fontset" line, which is now ignored.
5651
5652         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5653         double-click-to-select-word work.
5654         
5655 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5656
5657         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5658         Don't move back one char when we are actually at the end of the 
5659         paragraph.
5660
5661 2000-11-15  Robert Brady  <robert@suse.co.uk>
5662
5663         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5664         'o' < 'p'.
5665         
5666         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5667         bind_textdomain_codeset.
5668
5669         (gtk_init_check): Make the warning about translating default:LTR
5670         sterner.
5671         
5672 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5673
5674         * **/Makefile.am : remove unecessary rules for win32-specific
5675         config-substituted targets. If you want these rules, use
5676         --enable-maintainer-mode (called automatically by autogen.sh).
5677         Stops a lot of unneccessary make-time warnings.
5678
5679         * gtk/gtktext{layout,display}.c: Factor in total width as
5680         well as screen when figuring alignment for word-wrap as well as
5681         no wrap; this is necessary to handle lines that cannot be wrapped
5682         at all.
5683
5684 2000-11-15  Havoc Pennington  <hp@redhat.com>
5685
5686         * gtk/testtext.c: Implement essential color cycling feature
5687
5688 2000-11-15  Havoc Pennington  <hp@redhat.com>
5689
5690         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5691         when we invalidate the main window.
5692
5693         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5694         GtkTextView will now invalidate the side windows for us when text
5695         changes.
5696
5697 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5698
5699         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5700         unconditionally, since we may need to update the horizontal
5701         scrollbars even if the height didn't change.
5702
5703         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5704         the extra attrs, since some of them affect size.
5705
5706         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5707         x_offset correctly.
5708
5709 2000-11-15  Havoc Pennington  <hp@redhat.com>
5710
5711         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5712         don't move the first line out into the margin, instead move the
5713         whole paragraph in order to make space for the first line within 
5714         the margin
5715
5716 2000-11-15  Havoc Pennington  <hp@redhat.com>
5717
5718         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5719         xoffset in addition to yoffset, so horizontal scrolling doesn't
5720         break redraws
5721
5722 2000-11-15  Havoc Pennington  <hp@redhat.com>
5723
5724         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5725         from the cursor
5726         (render_layout_line): fix reversed test that caused weird
5727         underlines to get drawn
5728
5729 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5730
5731         * gdk/linux-fb/gdkprivate-fb.h:
5732         Fix debug macros.
5733         
5734 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5735
5736         * gdk/linux-fb/gdkprivate-fb.h:
5737         Added virtual functions set_pixel, get_color,
5738         fill_span and draw_drawable to the GC.
5739         Added global _gdk_fb_screen_gc to use instead of
5740         NULL when drawing to the screen.
5741         Added _gdk_fb_gc_calc_state() prototype.
5742
5743         * gdk/linux-fb/gdkgc-fb.c:
5744         Call _gdk_fb_gc_calc_state() on any gc state change.
5745
5746         * gdk/linux-fb/gdkglobals-fb.c:
5747         Add _gdk_fb_screen_gc
5748                 
5749         * gdk/linux-fb/gdkdrawable-fb2.c:
5750         _gdk_fb_gc_calc_state() calculates best functions
5751         for the GC state and depth.
5752         Moved bpp specialized code to separate functions.
5753         Added optimized 24 bpp AA draw_drawable.
5754
5755         * gdk/linux-fb/gdkevents-fb.c:
5756         Silence gcc warning.
5757
5758         * gdk/linux-fb/gdkimage-fb.c:
5759         Use _gdk_fb_screen_gc
5760
5761         * gdk/linux-fb/gdkwindow-fb.c:
5762         Init and use _gdk_fb_screen_gc
5763
5764         * gdk/linux-fb/mitypes.h:
5765         Remove unused types.
5766
5767 2000-11-14  Havoc Pennington  <hp@pobox.com>
5768
5769         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5770         to pixels
5771
5772 2000-11-14  Havoc Pennington  <hp@pobox.com>
5773
5774         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5775
5776         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5777         unknown char, no real reason we were using a variable. 
5778         Remove gtk_text_unknown_char variable. Fix all the text widget
5779         files accordingly.
5780
5781         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
5782         since the Unicode spec seems to prefer that character for our
5783         purposes.
5784
5785 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
5786
5787         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
5788         value of g_getenv() isn't freeable, so g_strdup it.
5789
5790         * modules/input/inuktitut.c: Inuktitut input method.
5791
5792         * modules/input/Makefile.am: Build this.
5793         
5794 2000-11-14  Elliot Lee  <sopwith@redhat.com>
5795
5796         * gtk/Makefile.am: Install gtk.immodules, needed for operation
5797         of gtk programs.
5798
5799 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
5800
5801         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
5802         reversed > that was causing Home to go to end of previous line.
5803
5804         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
5805         modified-keypresses (leave for bindings.)
5806
5807         * modules/input/Makefile.am: Remove useless -export-dynamic
5808         from module LDFLAGS.
5809
5810 2000-11-14  Havoc Pennington  <hp@redhat.com>
5811
5812         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
5813         higher.
5814
5815         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
5816         account. Also, render rise, underline, background, etc. for
5817         pixbufs as well as text. Also, draw underlines one pixel higher.
5818
5819         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
5820         PangoAttribute for the rise, so it gets drawn properly. Also,
5821         add the GtkTextAppearance attribute for pixbuf/widget segments
5822         as well; we should go ahead and have rise, underline, background,
5823         stipple work for those
5824
5825         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
5826         Pango
5827
5828 2000-11-15  Tor Lillqvist  <tml@iki.fi>
5829
5830         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
5831
5832         * gtk/gtk.def: Update.
5833
5834         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
5835         included.
5836         (gtk_rc_get_im_module_file): Use run-time installation directory
5837         on Win32.
5838
5839         * gdk/win32/rc/gdk.rc: Remove.
5840         * gdk/win32/rc/gdk.rc.in: New file.
5841         * gdk/win32/rc/Makefile.am: New file
5842         * gdk/win32/Makefile.am: Corresponding changes.
5843
5844         * gtk/gtk.rc: Remove.
5845         * gtk/gtk-win32.rc.in: New file.
5846         * gtk/Makefile.am: Corresponding changes.
5847
5848         * configure.in: Corresponding changes.
5849
5850         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
5851         has a built gtkcompat.h. Developers using CVS code on Win32 can
5852         hand-edit it from gtkcompat.h.in.
5853
5854         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
5855         gtkcompat.h from gtkcompat.h.win32.
5856
5857 2000-11-14  Havoc Pennington  <hp@redhat.com>
5858
5859         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
5860         to default to GDK_ACTION_MOVE if the drag is within a single
5861         widget. Defaults to GDK_ACTION_COPY between widgets.
5862
5863 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
5864
5865         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
5866
5867         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
5868
5869         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
5870         srcdir != builddir
5871
5872         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
5873
5874         * configure.in (GTK_VERSION): Up to 1.3.2
5875
5876         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
5877         gtkimcontextxim.h
5878
5879         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
5880         missing doc comment.
5881
5882 2000-11-14  Alexander Larsson  <alexl@redhat.com>
5883
5884         * modules/linux-fb/basic.c:
5885         Use the glib iconv wrappers.
5886
5887 2000-11-13  Havoc Pennington  <hp@pobox.com>
5888
5889         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
5890         still more bugs.
5891
5892         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
5893         scroll the GdkWindows before realization.
5894
5895 2000-11-13  Havoc Pennington  <hp@redhat.com>
5896
5897         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
5898         where GC didn't always get updated properly
5899
5900         * demos/gtk-demo/textview.c (create_tags): Use subattributes
5901         of fonts instead of setting the entire font
5902
5903         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
5904         setting entire font
5905
5906         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
5907
5908         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
5909         a bunch of individually-settable font attributes. You can still 
5910         use the "font" and "font_desc" args, they just set all the font
5911         attributes at once.
5912
5913 2000-11-13 Elliot Lee <sopwith@redhat.com>
5914
5915         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
5916
5917 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
5918
5919         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
5920         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
5921
5922         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
5923         work better.
5924
5925 2000-11-13  Havoc Pennington  <hp@redhat.com>
5926
5927         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
5928         the module file.
5929
5930         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
5931         dest->language
5932
5933         * gtk/testtext.c: Test pixels above/below/inside paragraphs
5934         settings
5935
5936         * gtk/gtktextview.c: Implement object args and setters/getters for
5937         all the aspects of the GtkTextAttributes that are not set from
5938         GtkWidget attributes. This is spacing, justification, margins,
5939         etc.
5940
5941         (gtk_text_view_set_arg)
5942         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
5943         args
5944         (gtk_text_view_class_init): Add args for justify, left_margin,
5945         right_margin, indent, and tabs
5946         
5947
5948         * gtk/gtktextlayout.c (set_para_values): fix to display indent
5949         attribute properly
5950
5951         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
5952         replace with indent attribute
5953
5954         * gtk/gtktextlayout.c (set_para_values): multiply indent by
5955         PANGO_SCALE
5956
5957         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
5958         rearranging code to do that
5959         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
5960         i.e. don't subtract the top_margin first, just to keep
5961         all margin-futzing in one place.
5962
5963         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
5964
5965         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
5966         special case of last line, Pango now handles this itself.
5967         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
5968         Y coordinate
5969         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
5970         (find_display_line_above): wasn't moving the byte index as it
5971         iterated over lines, so always returned byte 0. Also, port to use
5972         PangoLayoutIter.
5973         (find_display_line_below): same problem as
5974         find_display_line_above. Also, port to use PangoLayoutIter.
5975
5976 2000-11-13  Alexander Larsson  <alexl@redhat.com>
5977
5978         * gdk/linux-fb/*.[ch]:
5979         Massive reindent to gtk+ standard. My hands hurt.
5980
5981         * gdk/linux-fb/gdkcolor-fb.c:
5982         Move GdkColorPrivateFB from inherited to windowing_data
5983
5984         * gdk/linux-fb/gdkcursor-fb.c:
5985         _gdk_cursor_new_from_pixmap made static
5986
5987         * gdk/linux-fb/gdkdnd-fb.c:
5988         GdkDragContextPrivate moved to windowing_data
5989
5990         * gdk/linux-fb/gdkdrawable-fb2.c:
5991         Removed endian.h, use glib endianness macros instead
5992         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
5993         and GDK_DRAWABLE_IMPL_FBDATA
5994
5995         * gdk/linux-fb/gdkfont-fb.c:
5996         Add empty gdk_font_load(). Needed for linking of Gtk+.
5997
5998         * gdk/linux-fb/gdkimage-fb.c:
5999         Removed endian.h, use glib endianness macros instead
6000         Moved GdkImagePrivateFB to windowing_data
6001         gdk_image_new_bitmap didn't always allocate enough
6002         memory.
6003
6004         * gdk/linux-fb/gdkinput-ps2.c:
6005         Added semi-working support for MS serial mice.
6006
6007         * gdk/linux-fb/gdkprivate-fb.h:
6008         s/GdkWindowPrivate/GdkWindowObject/
6009         Removed GdkWindowPrivate typedef
6010         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
6011         Removed GDK_DRAWABLE_P
6012         Move GdkColorPrivateFB from inherited to windowing_data
6013         Moved GdkImagePrivateFB to windowing_data
6014
6015         * gdk/linux-fb/gdkvisual-fb.c:
6016         Removed some unused debug code.
6017
6018         * gdk/linux-fb/gdkwindow-fb.c:
6019         Use stock cursors instead of including X headers.
6020         s/GdkWindowPrivate/GdkWindowObject/
6021
6022         * gdk/linux-fb/mitypes.h:
6023         Removed unused types.
6024
6025         * modules/linux-fb/basic.c:
6026         Use the pango fribidi wrappers.
6027
6028 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
6029
6030         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
6031         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
6032         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
6033         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
6034         GEqualFunc where applicable.
6035         
6036         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
6037         pango_font_description_equal as changed in pango.
6038         
6039         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
6040
6041         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
6042
6043         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
6044
6045         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
6046
6047         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
6048
6049         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
6050
6051         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
6052         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
6053
6054         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
6055         gtk_rc_styles_compare -> gtk_rc_styles_equal.
6056
6057 2000-11-12  Havoc Pennington  <hp@pobox.com>
6058
6059         * demos/gtk-demo/Makefile.am (democodedir): change demo install
6060         dir to datadir/gtk+-2.0/demo
6061
6062         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
6063         sorts of text widget and Pango font bugs. Urgh.
6064
6065         * demos/gtk-demo/Makefile.am (demos): Add textview.c
6066
6067         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
6068         tree that you should double click to see the demo. Fix 
6069         types of variables to reflect changed return values from 
6070         GtkTreeStore and GtkTreeViewColumn constructors.
6071
6072         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
6073         newly-created buffer to prepare for GObject semantics
6074
6075         * gtk/testtext.c: don't leak the buffer with GObject semantics
6076
6077         * gtk/testtextbuffer.c: ditto
6078         
6079 2000-11-12  Havoc Pennington  <hp@pobox.com>
6080
6081         Rename this testgtk to gtk-demo to avoid confusion, and 
6082         install it so people can use it as a supplement to 
6083         the documentation.
6084         
6085         * demos/gtk-demo: Moved from demos/testgtk
6086
6087         * demos/testgtk: Removed
6088
6089         * configure.in: make Makefile in gtk-demo
6090         
6091         * demos/gtk-demo/Makefile.am: Install sample source to 
6092         datadir/gtk-demo (maybe there's a better place?), and 
6093         rename the binary to gtk-demo
6094         
6095         * demos/gtk-demo/main.c (load_file): Load installed sample
6096         source if source isn't found in pwd.
6097
6098 2000-11-09  Havoc Pennington  <hp@pobox.com>
6099
6100         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6101         argument to set the char displayed when visibility == FALSE
6102         (gtk_entry_create_layout): If !entry->visible, replace 
6103         all chars with the "invisible char"
6104
6105         * gtk/testgtk.c: Test the invisible_char deal
6106         
6107 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6108
6109         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6110         can't get a native font in the right encoding.
6111
6112 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6113
6114         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6115         respectively.
6116
6117 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6118
6119         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6120         Fix warning when moving between paragraphs.
6121
6122         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6123         delete => delete_from_cursor, insert => insert_at_cursor
6124
6125 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6126
6127         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6128
6129         * modules/input/imthai-broken.c: A Thai input method for use if
6130         Thai keys are really generating Latin1 keysyms.
6131
6132         * modules/input/Makefile.am: Build these.
6133
6134 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6135
6136         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6137         g_filename_{to,from}_utf8 now takes an extra parameter.
6138
6139         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6140         strftime into UTF-8.
6141
6142         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6143         calendars.
6144
6145         (gtk_calendar_paint_day_names): Draw day names in the right 
6146         place.
6147         
6148 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6149
6150         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6151         problem with using result of g_get_charset() backwards -
6152         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6153
6154         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6155         negative min_width/height and max_width/height to
6156         mean "requisition"; this allows setting a window
6157         to be user-resizable in only one direction easily.
6158
6159         * gtk/testgtk.c (create_main_window): Remove hard-coded
6160         usize - set a default size in the vertical direction.
6161
6162 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6163
6164         * gtk/gtkrange.c: Add some missing casts. Support 
6165         2 and 3 button clicks on the arrows to mean 
6166         "move by pages" and "jump to end". (Like gtkspinbutton)
6167
6168 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6169
6170         * gdk/win32/makefile.msc : reflect build module changes
6171
6172         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6173         from GdkPixmap*, cast implementation member instead.
6174
6175         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6176         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6177         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6178         more Gdi functions return value checking. 
6179         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6180         GdkImagePrivateWin32 *.
6181
6182         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6183         menus useable again. Add #pragma message to keep reminded on this issue.
6184         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6185         windows. This allows to enable backing store on Win32!
6186
6187         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6188         in drawable is of impl type. Correct specific type checks appropriate.
6189  
6190         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6191         GDK_WINDOW_DESTROYED before allocating new resources.
6192
6193         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6194
6195         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6196         (gdk_window_foreign_new) initialize parent handle.
6197         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6198
6199         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6200         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6201         problems (e.g. main buttons in testgtk). 
6202
6203 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6204
6205         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6206         gtk_widget_activate for GDK_Return.
6207
6208         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6209         of preedit cursor position.
6210
6211 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6212
6213         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6214         static.
6215
6216 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6217
6218         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6219         out support for multiple locales; that simple doesn't
6220         work reliably with current Xlib
6221
6222         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6223         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6224         Add support for positioning the cursor within the preedit string.
6225
6226 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6227
6228         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6229         at XIM input method module.
6230
6231         * gtk/gtktextview.c: Check for bindings after passing
6232         events to im context filter.
6233
6234 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6235
6236         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6237         empty attribute lists properly.
6238
6239 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6240
6241         * gtk/queryimmodules.c (main): Return non-zero exit
6242         status if errors were encountered querying any
6243         modules.
6244
6245         * modules/input/Makefile.am (moduledir): remove
6246         leftover bin program target.
6247
6248         * docs/make-todo: Fix typo in error message.
6249
6250 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6251
6252         * configure.in: Add modules/input/Makefile
6253
6254 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6255
6256         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6257         don't include gtkthemes.h.
6258
6259         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6260         to point
6261
6262         * gtk/Makefile.am: Add new .c and .h files, build 
6263         gtk-query-immodules and use it to create a gtk.immodules
6264         file for use of test programs.
6265
6266         * gtk/gtkpreview.c: remove extra blank line.
6267
6268 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6269
6270         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6271         Add the ability to add extra tables beyond the default
6272         one, and also the ability to have compose sequences 
6273         that are prefixes of other compose sequences. 
6274
6275         * gtk/gtkimcontextsimple.c: Export a preedit string which
6276         consists of possible candidates for keystrokes that have
6277         been entered but not yet committed.
6278
6279         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6280         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6281
6282         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6283         Add a function to add input-method switching menu items
6284         to a menu.
6285
6286         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6287         when switching input methods.
6288
6289         * gtk/gtkimcontextsimple.[ch]: Change the format of
6290         the compose table to allow compose tables of different
6291         lengths / sequence.
6292
6293 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6294
6295         * gtk/gtkimmodule.[ch]: Support routines for loading
6296         GtkIMContext implementations dynamically at runtime.
6297
6298         * modules/input/imcyrillic-translit.c: A sample input
6299         method (based on GtkIMContextSimple with an extra table),
6300         which demonstrates preedit strings and the module
6301         system for input modules
6302
6303         * gtk/queryimmodules.c: Program to query the available
6304         input modules and write the results into a file.
6305          
6306         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6307         extra config options "im_module_file" (cache file for
6308         input method modules), and "im_module_path" - path
6309         to look for modules when generating cache file.
6310
6311         This doesn't scale.
6312
6313 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6314
6315         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6316         generic code from gtkthemes into a new abstraction
6317         GtkModule which has the logic for implementing
6318         a loadable module which implements a number of 
6319         GObject types.
6320
6321 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6322
6323         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6324         a class into an interface  
6325         
6326         * gtk/gtkoldeditable.[ch]: Move the old editable
6327         implementation into here, so legacy widgets can
6328         still rely on the implemenation. GtkOldEditable
6329         exports GtkEditable. Make selection handling
6330         code use new text conversion functions (and
6331         handle UTF-8 as a side-effect). Use GtkClipboard
6332         for CLIPBOARD.
6333
6334         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6335         Adopt to match above changes.
6336
6337         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6338         avoid GtkOldEditable implementation. Restructure
6339         to reduce number of places that modify state directly.
6340         Move to GtkBindingSet. Display the preedit string.
6341         Queue recomputation of PangoLayout and scroll position
6342         to improve effiency of doing complex changes naively.
6343         Add a menu with cut/copy/paste and input method selection.
6344
6345 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6346
6347         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6348         to set preedit string and attributes; display preedit string by
6349         inserting string and attributes at cursor when creating the
6350         GtkTextLineDisplay.
6351
6352         * gtk/gtktextlayout.c: Move all conversions between byte
6353         positions in PangoLayout and GtkTextIter into new functions
6354         line_display_iter_to_index/index_to_iter that properly
6355         handle the preedit string.
6356
6357         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6358         it to return const char * (eventually will end up
6359         as GCONST char *, most likely.)
6360
6361         * gtk/gtktextview.[ch]: Handle the preedit string, call
6362         gtk_im_context_reset() as necessary, add a menu to switch
6363         input methods.
6364         
6365         * gtk/gtktextlayout.[ch]: Remove useless
6366         gtk_text_layout_get_log_attrs() function.
6367
6368 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6369
6370         * gdk/gdk.def
6371         * gtk/gtk.def: Update.
6372
6373         * gdk/win32/*.c: Add last argument to g_type_register_static()
6374         calls.
6375
6376         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6377
6378         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6379         generated by older wheel mouse drivers. Get the correct y
6380         coordinate from WM_MOUSEWHEEL messages.
6381
6382         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6383         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6384         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6385         Debugging functions.
6386
6387         * gdk/win32/gdkprivate-win32.h: Declare them.
6388
6389         * gdk/win32/gdkinput-win32.h: Add declaration for
6390         gdk_input_window_destroy().
6391
6392         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6393
6394 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6395
6396         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6397         function to help handle keeping things in sync.
6398
6399 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6400
6401         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6402         BOXED marshallers.
6403
6404         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6405         (gtk_list_store_class_init): use the new BOXED marshallers.
6406
6407         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6408         new_with_values to new_with_types.
6409         (gtk_tree_store_get_column_type): add this.
6410         (gtk_tree_store_class_init): use the new BOXED marshallers.
6411
6412         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6413         mirror some POINTER marshallers.
6414
6415 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6416
6417         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6418         allow more interesting iterators.  Also, made the lifecycle of
6419         iterators more explicit.
6420
6421         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6422
6423         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6424         types.
6425
6426 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6427
6428         * demos/testgtk/menus.c:
6429         Changes to make the new testgtk compile after
6430         gtk_menu_append was removed.
6431
6432         * gdk/linux-fb/gdkdrawable-fb2.c
6433         (gdk_fb_get_depth, gdk_fb_get_visual,
6434         gdk_drawable_impl_fb_class_init): Implement
6435         these drawable functions. Now GtkImages work again.
6436
6437         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6438
6439         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6440         
6441         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6442         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6443         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6444         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6445
6446 2000-11-08  Havoc Pennington  <hp@pobox.com>
6447
6448         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6449         visible_set args, don't know where these had gone, I thought they
6450         used to be there
6451
6452         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6453         now we can test the feature and see that it's totally broken.
6454
6455 2000-11-08  Havoc Pennington  <hp@pobox.com>
6456
6457         Make DND copy pixbufs and tags when source and target share a 
6458         tag table.
6459         
6460         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6461         in-process GTK_TEXT_BUFFER_CONTENTS target
6462         (gtk_text_view_drag_data_received): Paste from
6463         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6464
6465 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6466
6467         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6468         API changes.
6469
6470         * gtk/gtkmenu.c: Add support for scrolling menus.
6471         Remove gtk_menu_append/prepend/insert, these have been moved to
6472         gtkcompat.h as #defines.
6473
6474         * gtk/gtkcompat.h.in:
6475         Add compatibility #defines for gtk_menu_append/prepend/insert
6476
6477         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6478         GtkMenuPositionFunc gets an extra argument push_in.
6479         gtk_menu_append/prepend/insert removed.
6480         
6481         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6482         positioning behaviour to fit to scrolling menus.
6483
6484         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6485         into menuitem->submeny. That is wrong, and broke torn
6486         off submenus of torn off menus, since they were unrealized
6487         when the first menu was unrealized.
6488
6489         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6490         gtk_menu_shell_select_item() since these need to be overridden in
6491         GtkMenu.
6492
6493         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6494         positioning behaviour to fit to scrolling menus.
6495         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6496         the current item so that it is prelighted when the menu pops up.
6497         This is a workaround to the fact that the menu doesn't get the
6498         initial enter event (due to grabs).
6499
6500         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6501         s/gtk_menu_append/gtk_menu_shell_append/
6502
6503         * gtk/gtknotebook.c:
6504         s/gtk_menu_insert/gtk_menu_shell_insert/
6505
6506         * gtk/testgtk.c (create_menu, create_menus):
6507         Create the first menu with 50 items so that menu scrolling
6508         can be tested.
6509         
6510         
6511         Patch from Jonathan Blandford  <jrb@redhat.com>
6512
6513         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6514         system to handle size requests.  First, we ask what the size of
6515         the toggle is.  Then, when allocating the size, we allocate the
6516         toggle_size first.  This way we can have multiple menu-item
6517         classes w/o needing a seperate class for each.
6518
6519         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6520         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6521
6522         * gtk/gtkcheckmenuitem.c
6523         (gtk_check_menu_item_toggle_size_request): New function to handle
6524         the toggle size-request.
6525
6526 2000-11-07  Havoc Pennington  <hp@redhat.com>
6527
6528         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6529         Half-ass somewhat fix this function, so that scrolling to the
6530         insertion point works. Pango hacking is in the future to really
6531         fix it.
6532
6533         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6534         length of data, no longer used.
6535
6536         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6537         method contents in here, get rid of destroy method
6538         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6539         that were backward. Remove debug spew.
6540         (cut_or_copy): Make the clipboard work with insert_range to
6541         preserve tags and pixbufs, not just the primary selection.
6542
6543 2000-11-07  Havoc Pennington  <hp@redhat.com>
6544
6545         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6546         to gtk_text_mark_get_visible
6547
6548         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6549         bug that was generating an invalid iterator
6550
6551         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6552         ensure_char_offsets() in front of code placing the iter in an
6553         invalid state.
6554
6555         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6556         make override_location arg const
6557         (paste): Replace the selection if we paste into the 
6558         current selection
6559
6560         * gtk/gtkselection.h: Remove "GtkSelectioData"
6561         (struct _GtkSelectionData): move the definition here.
6562
6563         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6564         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6565
6566         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6567
6568         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6569         (gtk_text_buffer_insert_range_interactive): implement
6570         (gtk_text_buffer_get_tags): Remove, replaced by
6571         gtk_text_iter_get_tags()
6572
6573         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6574         limit parameter, to avoid infinite linear scan.
6575         (gtk_text_iter_backward_search): Add search limit
6576         (gtk_text_iter_forward_find_char): Add search limit
6577         (gtk_text_iter_backward_find_char): Add search limit
6578
6579 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6580
6581         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6582         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6583         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6584         gdk/linux-fb/gdkwindow-fb.c:
6585         use g_object_new() instead of g_type_create_instance() which
6586         is a private function for fundamental type implementations.
6587
6588         * gdk/linux-fb/gdkinput-ps2.c:
6589         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
6590         instead just store the current modifier state. Add a (somewhat broken)
6591         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
6592         Rename exported function gdk_input_ps2_get_mouseinfo to
6593         gdk_input_get_mouseinfo.
6594
6595         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
6596         gdk/linux-fb/gdkwindow-fb.c:
6597         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
6598         
6599
6600 2000-11-02  Havoc Pennington  <hp@redhat.com>
6601
6602         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
6603         use stock buttons. Should be 100% source compatible, appropriate
6604         filesel fields now point to dialog->vbox and dialog->action_area.
6605         On the bizarre side, dialog->action_area and filesel->action_area
6606         are not the same widget.
6607         (gtk_file_selection_init): Put some padding around the selection
6608         entry, so it isn't touching the GtkDialog separator.    
6609
6610         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6611         use stock buttons, etc. Should also be source compatible.
6612         Set the dialog default title in _init not _new().
6613         
6614         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6615         Use stock buttons; don't put a button box inside the existing
6616         dialog button box. Don't bother with push/pop colormap anymore.
6617
6618         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6619         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6620         for message dialog, and necessary for the font selection and color
6621         selection with help and apply buttons.
6622         
6623         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6624         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6625         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6626         between buttons, put less padding around the action area.
6627         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6628         This will also exit the loop if the widget is hidden.
6629         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6630         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6631         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6632         special-case delete event.
6633
6634         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6635         formatting
6636         
6637 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6638
6639         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6640         button to temporarily disable position recording in the
6641         "saved position" test.
6642
6643 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6644
6645         * gtk/gtkthemes.c: added compat code that temporarily implements
6646         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6647         going to be revamped by owen's upcoming GtkModule patches, but
6648         untill then people want gtk to build, right? ;)
6649
6650 2000-11-04  Havoc Pennington  <hp@pobox.com>
6651
6652         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6653         list
6654
6655         * docs/Changes-2.0.txt: Add note about
6656         gtk_container_get_toplevels()
6657
6658         * gtk/gtktextview.h: formatting
6659         
6660         * gtk/gtktextview.c: don't start descriptions with "Returns",
6661         confuses gtk-doc
6662
6663 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6664
6665         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6666         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6667
6668 2000-11-03  Havoc Pennington  <hp@redhat.com>
6669
6670         * gtk/gtktexttagtable.c: Docs
6671         (gtk_text_tag_table_size): return a signed int
6672
6673         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6674         (gtk_text_tag_event): make the event_object a GObject
6675
6676         * gtk/gtktextview.c: Write API docs for all functions.
6677
6678         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6679         for gtk_text_view_get_window_type() called on one of the private
6680         windows.
6681
6682         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6683         directly, call get_buffer() which demand-creates a default
6684         buffer. So gtk_text_view_new() can be used to create a view with a
6685         default buffer in it, if you just want an empty text box users can
6686         put data in. Useful for GUI builders also.
6687
6688 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6689
6690         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6691         the charset encodign portion MUST be in lowercase.
6692         * gtk/gtkrc.az: added file for Azeri language
6693
6694 2000-11-03  Havoc Pennington  <hp@redhat.com>
6695
6696         Get widgets working on the btree/buffer side. Display of them 
6697         still doesn't work.
6698         
6699         * gtk/gtktextview.c: start implementing child widget stuff
6700
6701         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6702
6703         * gtk/gtktextlayout.c: handle embedded widgets
6704
6705         * gtk/gtktextdisplay.c: handle embedded widgets
6706
6707         * gtk/gtktextchild.c: Implement all the child anchor goo
6708
6709         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6710         function
6711
6712         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6713         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6714         creating a child anchor or a pixbuf segment.
6715         (gtk_text_btree_create_child_anchor): new function
6716         (gtk_text_btree_unregister_child_anchor): new function
6717
6718         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6719         allocate_child signal on GtkTextLayout
6720
6721         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6722         values
6723         (gtk_text_iter_get_child_anchor): new function
6724
6725         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6726         default handler for the changed signal, which calls
6727         gtk_text_buffer_set_modified(), instead of just always emitting
6728         changed then calling set_modified() manually. I guess this is
6729         maybe more flexible. It seems logical.
6730
6731 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6732
6733         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6734         now.
6735
6736         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6737
6738 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6739
6740         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6741         been marked static.
6742
6743 2000-11-02  Havoc Pennington  <hp@redhat.com>
6744
6745         * gtk/testgtk.c (create_labels): had a test backward
6746
6747         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6748         fields, so the dest GC ends up with the correct clip origin, 
6749         etc. Fixes a bug where colored labels didn't redraw 
6750         properly.
6751
6752 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6753
6754         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6755         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6756         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6757         Add last argument to t_type_register_static call.
6758         
6759         * gdk/linux-fb/gdkdrawable-fb2.c:
6760         Add last argument to t_type_register_static call.
6761         export the get_image drawable virtual function.
6762
6763         * gdk/linux-fb/gdkimage-fb.c:
6764         Add last argument to t_type_register_static call.
6765         rename gtk_image_get to _gdk_fb_get_image and
6766         export it for use by gdkdrawable-fb2.
6767
6768         * gdk/linux-fb/gdkprivate-fb.h:
6769         export _gdk_fb_get_image.
6770
6771         * gdk/linux-fb/gdkselection-fb.c:
6772         Add new api call stubs.
6773
6774         * gtk/Makefile.am:
6775         Missing ( in linux-fb part.
6776
6777         * modules/linux-fb/Makefile.am:
6778         Must link with gdk_pixbuf or get unresolved symbol.
6779
6780 2000-11-01  Havoc Pennington  <hp@pobox.com>
6781
6782         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
6783         GTK_TYPE_TEXT_ITER and BOXED marshallers
6784
6785         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
6786
6787         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
6788         
6789         * gtk/gtk-boxed.defs: add GtkTextIter
6790
6791         * gtk/gtkmarshal.list: Add marshallers for text widget that 
6792         properly use OBJECT and BOXED
6793
6794 2000-11-01  Havoc Pennington  <hp@redhat.com>
6795
6796         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
6797
6798         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
6799         before returning it. 
6800         
6801 2000-11-01  Havoc Pennington  <hp@redhat.com>
6802
6803         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6804         Clip the rectangle to be rendered to the drawable, since
6805         get_from_drawable() requires a region within the drawable
6806
6807 2000-11-01  Havoc Pennington  <hp@redhat.com>
6808
6809         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
6810         from coordinates.
6811
6812 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
6813
6814         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
6815         it isn't NULL.
6816
6817 2000-11-01  Havoc Pennington  <hp@pobox.com>
6818
6819         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
6820         on a label
6821         (gtk_label_finalize): unref the attr list if any.
6822
6823         * gtk/testgtk.c (create_get_image): close test on second click
6824         (make_message_dialog): close dialog if it exists
6825
6826         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
6827
6828         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
6829         gdk-pixbuf
6830
6831         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
6832         from Pango markup format
6833         (gtk_label_set_markup_with_accel): ditto but with accelerator
6834         parsing
6835
6836         * gtk/gtkimage.c (gtk_image_expose): reformatting.
6837
6838         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
6839         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
6840         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
6841         call gdk_window_get_origin().
6842
6843         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6844         implement GDK_PIXBUF_ALPHA_FULL
6845         
6846 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
6847
6848         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
6849         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
6850         g_signal_handlers_disconnect_matched to block/unblock and disconnect
6851         multiple handlers respectively, instead of only treating the
6852         first handler found (bug reported by owen).
6853
6854 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
6855
6856         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
6857
6858         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
6859
6860         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
6861         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
6862         gtk/gtktreeviewcolumn.h: Fixed inline docs.
6863
6864         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
6865         widget.  Needs writing someday.
6866
6867         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
6868         the docs.
6869
6870 2000-10-30  Havoc Pennington  <hp@redhat.com>
6871
6872         * gtk/gtktextview.h, gtk/gtktextview.c:
6873         Rename delete_at_cursor delete_from_cursor, and 
6874         move to move_cursor.
6875
6876 2000-10-30  Havoc Pennington  <hp@redhat.com>
6877
6878         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
6879         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
6880         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
6881         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
6882         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
6883         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
6884         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
6885         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
6886         gtktexttypes.h, gtktextview.c, gtktextview.h:
6887
6888         Massive reindentation and reformatting. Arg alignment and comments
6889         still need fixing in various places.
6890
6891 2000-10-30  Havoc Pennington  <hp@redhat.com>
6892
6893         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
6894         to be named insert_at_cursor and delete_at_cursor so C++ can
6895         handle them.
6896
6897 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6898
6899         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
6900         to get a double directory separator in case the home directory
6901         ends with one. This would cause trouble especially on Windows,
6902         where the path will be confused with the syntax for an an UNC
6903         (network share) path \\server\share\path.
6904         (gtk_rc_add_initial_default_files): Ditto.
6905
6906 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
6907
6908         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
6909
6910         * gtk/gtktextview.c: Use correct marshallers.
6911
6912 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
6913
6914         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
6915         use new iter stuff, and added all the appropriate signals et al.
6916
6917         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
6918         code is internal to gtk only.
6919
6920 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6921
6922         * gtk/gtk.def
6923         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
6924         glib-genmarshal etc.
6925
6926 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
6927
6928         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
6929         parallel builds.
6930
6931 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
6932
6933         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
6934
6935 2000-10-27  Robert Brady  <robert@suse.co.uk>
6936
6937         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
6938         en_GB (British), ia (Interlingua).
6939
6940 2000-10-26  Havoc Pennington  <hp@redhat.com>
6941
6942         * gtk/gtktextiter.c (my_strrstr): fix constness warning
6943
6944         Fixed output of:
6945         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
6946         
6947         * gtk/gtktextsegment.c (char_segment_new): rename
6948         (_char_segment_new_from_two_strings): rename
6949         (_toggle_segment_new): rename
6950         
6951         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
6952         (make_clipboard_widget): make it static
6953         (text_get_func): static
6954         (text_clear_func): static
6955
6956         * gtk/gtkcolorsel.c (adjustment_changed): make this function
6957         static
6958         (hex_changed): make it static
6959         (hsv_changed): make it static
6960         (opacity_entry_changed): make it static
6961
6962         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
6963         (toggle_segment_check_func): rename with _gtk
6964
6965         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
6966         (_widget_segment_new): rename
6967         (_widget_segment_add): rename
6968         (_widget_segment_remove): rename
6969         (_widget_segment_ref): rename
6970         (_widget_segment_unref): rename
6971
6972         * gtk/gtktextmark.c (_mark_segment_new): Rename
6973         _gtk_mark_segment_new   
6974
6975 2000-10-26  Havoc Pennington  <hp@redhat.com>
6976
6977         * gtk/gtkmarshal.list: add new marshallers used by the text widget
6978         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6979         types
6980
6981         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
6982         marshaller types
6983
6984         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
6985         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
6986         license on these files.
6987
6988         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
6989         work.
6990
6991         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
6992         runtime random number different for each tree, instead of 
6993         a constant I made up.
6994
6995 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
6996
6997         * gtk/Makefile.am: buncha cleanups, kludged build sources
6998         dependencies with a Makefile: oldest-source-stamp dependancy
6999         for the moment. automake is really fighting us here, with
7000         intentionally not allowing user-defined rules or dependancies
7001         prior to it's -include $(DEP_FILES) statement. sucks rocks!
7002
7003         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
7004         to public headers. tehy have a comment stating that they are
7005         "semi-public" aren't included by gtk.h and if enums popup there,
7006         they can be /*< skip >*/-ed.
7007
7008         * gtk/gtktextlayout.h: 
7009         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
7010         added LGPL... <SIGH>
7011
7012 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
7013
7014         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
7015         GtkTreeIter.  Added iterators everywhere.
7016
7017         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
7018
7019         * gtk/gtktreeviewselection.c: Changed to use the iterators.
7020
7021         * gtk/gtktreestore.c: Changed to use the iterators.
7022
7023         * gtk/gtkliststore.c: Commented out the code.  Will convert to
7024         iterators tomorrow.
7025
7026         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
7027         iterators tomorrow.
7028
7029         * gtk/treestoretest.c: Changed to use iterators.
7030
7031         * demos/testgtk/main.c: Moved to use the new iterator system.
7032
7033 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
7034
7035         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
7036         localization misbehaviour.
7037
7038         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
7039         a useless type without copy/free.
7040
7041         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
7042         of GTK_TYPE_CTREE_NODE.
7043
7044 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
7045
7046         * gtk/gtksignal.c:
7047         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
7048         applicable.
7049
7050         * gtk/gtk-boxed.defs (GtkSelectionData): specify
7051         gtk_selection_data_copy and gtk_selection_data_free
7052         do GtkSelectionData work as params in signals.
7053
7054 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
7055
7056         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
7057         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
7058         couldn't they at least give it a non-standard name?
7059         
7060         * gtk/gtktextlayout.c: arg! yet another implementation of
7061         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
7062
7063         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
7064         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
7065         home. now i know this _is_ a conspiracy.
7066
7067         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
7068         ::state-changed.
7069
7070         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
7071         (gtk_accel_group_create_add): marshaller signature fixups.
7072
7073         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
7074         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7075
7076         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7077         anymore.
7078
7079 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7080
7081         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7082         due to the signal system changes, it wouldn't build currently. to
7083         be fixed soon.
7084
7085         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7086
7087         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7088         so it needs gtk_marshal_VOID__ENUM() instead of
7089         gtk_marshal_NONE__UINT().
7090
7091         * gdk/gdk*.c: adapted type registration functions.
7092
7093         * gtk/gtkbindings.c:
7094         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7095         gone.
7096
7097         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7098
7099         * gtk/gtkobject.c:
7100         (gtk_object_destroy):
7101         (gtk_object_shutdown): fixed recursion guards. basically we have to
7102         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7103         is called during ::destroy, and avoid recursion there.
7104
7105         * gtk/gtktypeutils.c:
7106         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7107         boxed_copy/boxed_free. this needs a more general solution based on a
7108         publically installed code-generator utility.
7109
7110         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7111         glib's gobject has support for that now.
7112         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7113
7114 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7115
7116         * gtk/gtksignal.[hc]:
7117         * gtk/gtkmarshal.[hc]:
7118         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7119         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7120         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7121         care of that.
7122
7123         * *.c: marshaller name fixups.
7124
7125         * gtk/gtkmarshal.list: added a comment briefing the format.
7126
7127 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7128
7129         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7130         compatibility macros here now. more specifically, most of
7131         the API is preserved (yes, _most_, nonwithstanding the
7132         following exceptions listed, the API is stil lHUGE ;)
7133         things that got removed completely:
7134         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7135         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7136         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7137         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7138         gtk_signal_remove_emission_hook().
7139         non-functional functions variants:
7140         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7141         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7142         not supported anymore.
7143         (gtk_signal_compat_matched): new internal function to aid
7144         implementation of the compatibility macros, it  provides
7145         functionality to block/unblock/disconnect handlers based
7146         on func/data.
7147
7148         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7149
7150         * *.c: adaptions to new type registration API signatures.
7151
7152 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7153
7154         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7155
7156 2000-10-25  Robert Brady  <robert@suse.co.uk>
7157
7158         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7159         gdk_property_delete): If window == NULL, assume the root window.
7160         (restoring the behaviour that was in 1.2).
7161         
7162         * gtk/testtext.c (save_buffer): Allow creation of new files when
7163         saving.
7164
7165         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7166         calls to read().
7167
7168 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7169
7170         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7171
7172         * gdk/win32/gdkdrawable-win32.c
7173         * gdk/win32/gdkimage-win32.c
7174         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7175         X11 backend.
7176
7177         * gdk/win32/gdkcc-win32.c
7178         * gdk/win32/gdkcolor-win32.c
7179         * gdk/win32/gdkfont-win32.c
7180         * gdk/win32/gdkinput-win32.c
7181         * gdk/win32/gdkmain-win32.c
7182         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7183
7184 2000-10-24  Havoc Pennington  <hp@redhat.com>
7185
7186         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7187         it a static function
7188
7189         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7190         redraw text when a tag is applied to it.
7191
7192         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7193         (gtk_text_tag_affects_nonsize_appearance): private functions to
7194         see if a tag requires various kinds of redraw/layout to be queued
7195         up.
7196
7197         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7198
7199         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7200         at the start of the buffer, so search works by default
7201
7202         * gtk/gtktextiter.c (lines_match): init match_start always
7203
7204         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7205         function, get iter at a line + a byte index
7206
7207         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7208         to set byte position within a line
7209         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7210
7211 2000-10-23  Havoc Pennington  <hp@redhat.com>
7212
7213         * gtk/testtext.c: Re-enable the "find" dialog
7214
7215         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7216         
7217         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7218         the arguments to gdk_draw_drawable were in the wrong order
7219         (gdk_window_paint_init_bg): This function was ignoring the
7220         init_region, instead of clipping to it, so the entire backing
7221         pixmap was cleared on every begin_paint()
7222         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7223         was in here again, the loop kept using the same GtkWindowPaint
7224         over and over.
7225         (gdk_window_begin_paint_region): Fix a bug where we had two
7226         x_offset instead of x_offset and y_offset
7227
7228         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7229         before we get the image.
7230         (gdk_draw_drawable): get the composite before we draw the drawable.
7231         (gdk_drawable_real_get_composite_drawable): default
7232         get_composite_drawable implementation that returns the drawable 
7233         itself
7234
7235         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7236         get_composite_drawable virtual function
7237
7238         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7239         list-walking bug
7240
7241         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7242         make this work if the source drawable is a GdkDrawableImplX11
7243         instead of a public drawable type. This is really broken; the
7244         problem is that GdkDrawable needs a virtual method get_xid(), but
7245         of course that doesn't work in practice. Enter RTTI.
7246
7247         Also, improve mismatched depth message.
7248
7249         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7250         GdkPixmap
7251
7252         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7253         install _gdk_x11_get_image as our implementation of get_image
7254         
7255         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7256         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7257
7258         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7259         gdk_drawable_get_image
7260
7261         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7262
7263         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7264         get_image
7265
7266         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7267         trailing semicolon after for loop
7268
7269 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7270
7271         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7272         where font_desc for widget's context lagged widget's font_desc by
7273         one step.
7274
7275 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7276
7277         * gdk/win32/gdkgc-win32.c
7278         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7279
7280         * gtk/makefile.mingw.in
7281         * gtk/gtk.def: Updates.
7282
7283         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7284         library.
7285
7286         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7287
7288         * gtk/makefile.msc: Remove
7289
7290         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7291
7292         * gtk/Makefile.am: Add it.
7293
7294         * configure.in: Generate it.
7295
7296         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7297         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7298         something even if not implemented, to satisfy picky MSVC.
7299
7300         Patches by Hans Breuer:
7301         
7302         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7303         SetBkMode() and SetTextAlign() before calling
7304         pango_win32_render().
7305
7306         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7307         Set hcliprgn to NULL after destroying it.
7308         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7309
7310         * gdk/win32/gdkgeometry-win32.c
7311         (_gdk_windowing_window_queue_antiexpose): More effective
7312         implementation.
7313
7314         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7315         depth as default, not the visual's.
7316
7317         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7318         against empty title.
7319
7320         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7321         IMAGE_PRIVATE_DATA.
7322
7323         * gdk/win32/gdkimage-win32.c: Use it.
7324
7325 2000-10-22  Robert Brady  <robert@suse.co.uk>
7326
7327         * configure.in: Check for bind_textdomain_codeset
7328
7329         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7330         present, make use of it.
7331
7332         Add a translatable string "default:LTR" which, if translated
7333         to "default:RTL", will cause the default direction to be
7334         Right-to-Left.
7335
7336         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7337         direction if marked as flippable.
7338
7339         * gtk/gtkhscale.c: Mark widget as flippable.
7340         
7341 2000-10-04  Havoc Pennington  <hp@redhat.com>
7342
7343         * gtk/testgtk.c (create_buttons): create some stock buttons
7344         with the default accel group
7345         (create_image): test some new GtkImage features
7346         (make_message_dialog): test GtkMessageDialog
7347         (create_modal_window): fix someone's bizzarro indentation
7348
7349         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7350         GTK_WIN_POS_CENTER_ON_PARENT. 
7351         Add "destroy with parent" setting, which means the window goes
7352         away with its transient parent.
7353         (gtk_window_get_default_accel_group): get the default accel group
7354         for the window.
7355         (gtk_window_set_destroy_with_parent): set/unset destroy with
7356         parent flag
7357         (gtk_window_read_rcfiles): invalidate icon set caches
7358         after reloading rcfiles 
7359
7360         * gtk/gtkenums.h (GtkWindowPosition): add
7361         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7362         on its parent window when the dialog is mapped for the first time.
7363
7364         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7365         a simple message dialog class
7366         
7367         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7368         handler to emit response signal, and maybe later it would
7369         honor a hide_on_delete flag - though that isn't there yet.
7370         Set border width on the vbox to 2, so we get some padding.      
7371         Use a button box for the action area.
7372         (gtk_dialog_key_press): synthesize a delete event if Esc
7373         is pressed and the GtkWidget key press handler didn't 
7374         handle the escape key.
7375         (gtk_dialog_new_with_buttons): new function creates a dialog
7376         with some default buttons in it.
7377         (gtk_dialog_add_action_widget): add an activatable widget
7378         as a button in the dialog - you can also add a non-activatable
7379         widget by accessing the action area directly.
7380         (gtk_dialog_add_button): add a simple button - stock ID or 
7381         label - to the action area
7382         (gtk_dialog_response): emit response signal
7383         (gtk_dialog_run): block waiting for the dialog, return 
7384         the response. Override normal delete_event behavior, so that 
7385         delete_event does nothing inside gtk_dialog_run().
7386
7387         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7388         emitted when an action widget is clicked or the dialog gets
7389         delete_event
7390
7391         * gtk/gtk.h: add gtkmessagedialog.h
7392
7393         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7394
7395 2000-10-18  Havoc Pennington  <hp@redhat.com>
7396
7397         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7398         where any number of empty lines would get skipped
7399
7400         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7401         edge.
7402
7403         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7404         warning about invalid iterators (explain more thoroughly)
7405         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7406
7407         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7408         big
7409
7410         * demos/*.c: Add error handling
7411
7412         * gtk/gtktextbuffer.c: don't modify const iterators
7413
7414         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7415
7416         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7417         on file load
7418
7419         * gtk/gtkiconfactory.c: Update to reflect addition of error
7420         handling to gdk-pixbuf loaders
7421
7422 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7423
7424         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7425         move to new modularized testgtk.
7426
7427 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7428
7429         * gtk/gtktreeview.c: Draw the arrows correctly.
7430
7431         * gtk/gtktreemodel.c: Added user docs.
7432
7433         * gtk/gtk.h: remove gtktreedatalist.h.
7434
7435         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7436         parent when generating my type.
7437
7438         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7439         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7440
7441 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7442
7443         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7444         GtkTreeModel from object to interface.
7445
7446 2000-10-16  Havoc Pennington  <hp@redhat.com>
7447
7448         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7449         compilation
7450
7451 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7452
7453         * gtk/gtktreeselection.c: Add API documentation to all public
7454         functions.
7455
7456         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7457         functions.
7458
7459 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7460
7461         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7462         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7463         docs to all public functions.
7464
7465         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7466         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7467         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7468         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7469         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7470         issue.
7471
7472 2000-10-14  Robert Brady  <robert@suse.co.uk>
7473
7474         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7475
7476 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7477
7478         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7479         values other then G_TYPE_STRING.
7480         * gtk/gtktreeselection.c: Minor commenting updates.
7481         * gtk/gtktreeview.c: Format updates.
7482
7483 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7484
7485         * README.win32: Update.
7486
7487         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7488         lines that had been deleted by mistake (?).
7489
7490         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7491         also the case fg==white and bg==black (but still not randomly
7492         coloured cursors). Thanks to Wolfgang Sourdeau.
7493
7494         * gdk/win32/*.c: Silence gcc -Wall.
7495
7496         * gtk/gtk.def: Add missing entry points.
7497
7498         Fixes by Hans Breuer:
7499
7500         * gdk/makefile.msc
7501         * gdk/win32/makefile.msc: Update.
7502
7503         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7504         some MSVC thing, presumably), cause breakpoint on failures. Add
7505         GDK_NOR case. Call g_log_set_always_fatal.
7506
7507         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7508         should be pased by reference.
7509         
7510         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7511         
7512         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7513
7514         * gdk/win32/gdkevents-win32.c
7515         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7516
7517         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7518         implementation object.
7519
7520         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7521         not just windows.
7522         
7523         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7524         Use the wrapper object.
7525         
7526 2000-10-06  Havoc Pennington  <hp@redhat.com>
7527
7528         * Makefile.am (SRC_SUBDIRS): contrib subdir
7529
7530         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7531         so it can be used in Xlib version
7532
7533         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7534         tree
7535
7536         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7537         change from 1.0 tree that returns first frame of animation
7538         if the loaded file is an animation.
7539
7540         * contrib: add new directory to hold stuff that comes with GTK+
7541         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7542         
7543         * configure.in: add contrib/*
7544
7545 2000-10-05  Havoc Pennington  <hp@redhat.com>
7546
7547         * demos/testpixbuf-save.c: add pixbuf save test
7548
7549         * demos/Makefile.am: add testpixbuf-save.c
7550
7551 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7552
7553         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7554         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7555         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7556         * gtk/gtktreeselection.[ch]: Replaced
7557         "node_selected"/"node_unselected" signal with "selection_changed"
7558         signal.
7559
7560 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7561
7562         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7563         tree widget.
7564
7565 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7566
7567         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7568         drawing.
7569
7570 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7571
7572         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7573         Move list pointer forwards before removing item from
7574         list. (Crash reported by Salmaso Raffaele)
7575
7576         * gdk/gdkwindow.h: Remove spurious trailing ,
7577
7578         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7579         dependencies on uninstalled libraries, sorry folks.
7580
7581 2000-10-04  Havoc Pennington  <hp@redhat.com>
7582
7583         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7584         gtk/gtkiconfactory.c: Fix copyrights    
7585
7586         * demos/testpixbuf.c: add inline pixbuf test
7587         
7588 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
7589
7590         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
7591         Add gdk_window_iconify.
7592
7593         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
7594         (gdk_window_set_geometry_hints): Add win_gravity
7595         to geometry structure.
7596
7597         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
7598         Implement _NET_WM_PING.
7599
7600         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
7601         Set _NET_WM_PID on the client leader.
7602
7603         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
7604         Handle UTF-8 better.
7605
7606         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
7607         UTF-8 better, set _NET_WM_NAME as well. Only set
7608         icon name if it hasn't previously been explicitely 
7609         set.
7610
7611 2000-10-03  Havoc Pennington  <hp@redhat.com>
7612
7613         * gtk/testtextbuffer.c: clean up trailing whitespace,
7614         add extensive tests for tag toggle iteration.
7615         
7616         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7617         distance
7618
7619         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7620         optimize case where the tag root is on level 1
7621         (gtk_text_line_previous_could_contain_tag): attempt to implement
7622         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7623         functionality
7624
7625         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7626         Implement this, though not very efficiently.
7627
7628         * gtk/gtktextiterprivate.h: reformat
7629
7630         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7631         iterator
7632
7633         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7634         this to properly revalidate the iterators.
7635
7636         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7637         properly at the end of the line (and therefore on empty lines)
7638
7639         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7640         maybe we should return a value...
7641
7642 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7643
7644         * config.h.win32: Guard definition of alloca(). glib.h now handles
7645         that.
7646
7647         * gdk/gdk.def
7648         * gtk/gtk.def: Add new entry points.
7649
7650         Changes just to make GTK+ build without errors on Win32. No hope
7651         of it working in its current state, though...:
7652         
7653         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7654         some functions from the X11 backend, just to make GTK+ build.
7655
7656         * gdk/makefile.mingw.in
7657         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7658         number. Add new object files.
7659
7660         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7661         GetMessageTime to get timestamp (where on X11 uses
7662         gdk_x11_get_server_time()).
7663
7664 2000-10-02  Havoc Pennington  <hp@pobox.com>
7665
7666         * gtk/gtktextview.c: text_window_* weren't static and should have
7667         been.
7668         Start work on child widgets; not yet complete, syncing to 
7669         office computer.
7670
7671         * gtk/gtktextchild.h: change this to contain a public interface,
7672         starting work on child interfaces.
7673         * gtk/gtktextchildprivate.h: move private interfaces here
7674
7675         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7676
7677         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7678         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7679         gtk/gtktextmark.c: copyright notices
7680
7681         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7682         internal functions      
7683
7684         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7685         internal function
7686
7687         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7688         Reformatting    
7689
7690 2000-09-30  Havoc Pennington  <hp@pobox.com>
7691
7692         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7693         NULL start/end pointers
7694
7695         * gtk/gtktextbuffer.c: Write some docs
7696         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7697         NULL, so you can just check whether there's a selection.        
7698
7699         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7700         cleanup_line or segments_changed ourselves, it gets done 
7701         in unlink_segment
7702
7703         * gtk/gtktextmark.h:
7704         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7705         
7706         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7707
7708         * gtk/gtktextmark.c: delete some more old Tk cruft
7709
7710         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7711         mark before removing it, so we can emit MARK_DELETED with a valid
7712         pointer.
7713         (gtk_text_buffer_mark_set): hold ref across signal emission
7714
7715         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7716         whining about attempts to delete special marks
7717
7718         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7719         underscore, since it's internal.
7720
7721         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7722         now implemented in terms of iterators in gtktextiter.h
7723
7724         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7725         New function, destructively sets contents of buffer. Also 
7726         a convenient way to clear the buffer by setting text to ""
7727
7728         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7729         multiline string literal
7730
7731         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7732         text changes.
7733
7734         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7735         is not dereferenceable
7736         (gtk_text_iter_forward_lines): fix return value
7737
7738 2000-09-29  Havoc Pennington  <hp@redhat.com>
7739
7740         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7741
7742         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7743         that set border window size to have nicer name
7744         (gtk_text_view_mark_set_handler):  Fix this to have the 
7745         right signature.
7746
7747         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7748
7749         * gtk/testtext.c: Update with API changes, put line numbers on 
7750         both sides.
7751         
7752         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7753         with this
7754
7755         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7756         pixbuf; delete a big block of #if 0 Tk code
7757
7758         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7759         insert_pixmap with insert_pixbuf
7760
7761 2000-09-29  Martin Baulig  <baulig@suse.de>
7762
7763         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7764         confusion with the GdkPixbuf of the GNOME 1.x platform.
7765
7766 2000-09-29  Havoc Pennington  <hp@pobox.com>
7767
7768         * gtk/gtktextview.c: Implement the side windows.
7769
7770         * gtk/testtext.c: Implement simple line numbering in the 
7771         left side window; seems to make scrolling sloooow. Oops.
7772         Also, cursor blink is for some reason causing redraws
7773         of the line numbers. Should investigate...
7774
7775 2000-09-28  Havoc Pennington  <hp@redhat.com>
7776
7777         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7778         scrolling child windows, and draw focus rectangle properly.
7779         
7780         (gtk_text_view_buffer_to_window_coords):
7781         Coordinate transformation to deal with all these freaking windows
7782         and offsets
7783         (gtk_text_view_window_to_buffer_coords): transform the other way
7784
7785         * gtk/testtext.c (create_buffer): Update to match Pango API change
7786
7787         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
7788         anonymous tags
7789         (foreach_unref): don't emit remove signal from finalize, just
7790         set tag's parent to NULL
7791
7792 2000-09-26  Havoc Pennington  <hp@redhat.com>
7793
7794         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
7795         Fix some warnings       
7796
7797 2000-09-26  Havoc Pennington  <hp@redhat.com>
7798
7799         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
7800         headers into the private header list
7801
7802         * Makefile.am (pkgconfig_DATA): install pkg-config files
7803
7804         * configure.in: add pkg-config files
7805
7806         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
7807
7808         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
7809         outstanding icon caches on theme change.
7810
7811         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
7812         important types:
7813
7814         (GtkIconSource): Specification for creating a pixbuf 
7815         appropriate for a direction/state/size triplet from 
7816         a source pixbuf or filename
7817
7818         (GtkIconSet): List of GtkIconSource objects that are used to
7819         create the "same" icon (e.g. an OK button icon), and cache for
7820         rendered icons
7821
7822         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
7823         up the icon set for a given stock ID.  GTK maintains a stack of
7824         GtkIconFactory to search, and applications or libraries can add
7825         additional icon factories on top of the stack
7826         
7827         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
7828         the set of GtkIconSource specified for a given stock ID into 
7829         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
7830         RcStyle, under the specified stock ID.
7831
7832         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
7833         render_icon used to derive a GdkPixbuf from a GtkIconSource.
7834         This allows people to theme how prelight, insensitive, etc. are
7835         done.
7836
7837         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
7838         icon factories for a style, and return the resulting 
7839         icon set if any.
7840
7841         (gtk_style_render_icon): Render an icon using the render_icon 
7842         method in the GtkStyleClass.
7843
7844         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
7845         Use the style for a given widget to look up a stock ID, get the
7846         icon set, and render an icon using the render_icon method 
7847         of the style
7848
7849         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
7850         (contains information about a stock item), the built-in stock item
7851         IDs, and functions to add/lookup stock items.
7852
7853         * gtk/stock-icons/*: Stock icons that come with GTK
7854
7855         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
7856         a button based on a GtkStockItem
7857         (gtk_button_new_accel): Takes a uline string and accel group, and
7858         installs the accelerator.
7859
7860         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
7861         image-display widget.
7862
7863 2000-09-25  Havoc Pennington  <hp@redhat.com>
7864
7865         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
7866
7867         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
7868         Fix a bug when removing node data, we didn't properly 
7869         re-splice the linked list after removing the data.
7870
7871         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
7872         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
7873
7874         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
7875
7876         * gtk/gtktextlayout.c (set_para_values): Set tab array 
7877         for the layout from the GtkTextTag.
7878
7879         * gtk/gtktexttypes.h: delete tab and search cruft, 
7880         remove g_convert() in favor of GLib version
7881
7882         * gtk/gtktexttypes.c: remove tab implementation from here,
7883         move to Pango
7884
7885         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
7886         tab stuff using new PangoTabArray from Pango
7887
7888         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
7889         unused border_width stuff
7890
7891 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
7892
7893         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
7894         glib) and now useless utf_to_latin1() latin1_to_utf()
7895
7896         * gtk/gtktextview.[ch]: Change ::move_insert and
7897         ::delete_text action signals to ::move and ::delete;
7898         create the signals with the right enumeration type,
7899         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
7900         C-v bindings, change Home, End to move to beginning/end
7901         of line, Add C-Home C-End to move to beginning/end
7902         of buffer. Change ::cut_text to ::cut_clipboard, etc;
7903         combine ::scroll_text into ::move; use new GtkSelectionData
7904         functions to simplify DND text handling.
7905         
7906         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
7907         deletion enumerations here, rename enumeration values to 
7908         be consistently plural.
7909
7910         * gtk/gtktextbuffer.c: Use new clipboard interfaces
7911         for cut/copy/paste and primary selection.
7912
7913         * gtk/gtktextbuffer.[ch]: Remove excess time and
7914         'interactive' arguments from cut/copy/paste;
7915         rename cut to cut_clipboard, etc; remove
7916         gtk_text_buffer_get_clipboard_contents().
7917
7918         * gtk/gtktextlayout.[ch]: Add 
7919         gtk_text_layout_move_iter_to_line_end() to move the iter to 
7920         line ends.
7921
7922         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
7923         Functions to set or get a UTF-8 string on the selection
7924         data.
7925
7926         * gtk/gtkclipboard.[ch]: New, simplified selection handling
7927         interfaces.
7928
7929         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
7930         created widgets - one of these is useless if we don't.
7931
7932         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
7933         a public function clear all targets registered for the
7934         widget.
7935
7936         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
7937         Never call gtk_widget_realize() - that was just asking
7938         for bizarre side-effects.
7939
7940         * gtk/gtkselection.c (gtk_selection_owner_set): Call
7941         gdk_selection_owner_set even if the widget is the
7942         same so that we reliably update the timestamp on
7943         the server.
7944
7945         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
7946         gdk_x11_get_server_time() function.
7947         
7948         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
7949         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
7950         Add some tricky filtering on serial numbers for
7951         selection clear events to fix up long-standard
7952         race condition FIXME's in gtkselection.c.
7953
7954         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
7955         routines to convert from utf8 to compound text or
7956         STRING and from a text property to UTF-8.
7957
7958         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
7959         a convenience function gdk_get_current_event_time().
7960
7961         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
7962         and free selection_data->data properly
7963
7964 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
7965
7966         * gtk/gtkthemes.c: Remove some unecessary includes.
7967
7968 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
7969
7970         * gtk/gtktextdisplay.c
7971         * gtk/gtktextlayout.c
7972         * gtk/gtktexttag.c
7973         * gtk/gtktexttag.h
7974         * gtk/testtext.c: Change the overstrike property to strikethrough,
7975         to closer match pango.
7976
7977 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
7978
7979         * gtk/gtktextview.c: Fix up visibility so that focus,
7980         cursor_visible and blink interact properly.  Reenable cursor blink
7981         which had been roughly disabled. Make blink and focus
7982         properly per-view.
7983
7984         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
7985         Add a flag for whether to display insertion cursor and
7986         a function to set the flag.
7987
7988         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
7989         get_line_y() to get_line_yrange(), to be a bit more generally
7990         useful.
7991
7992 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
7993
7994         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
7995           do stop_navigating_submenu, to clear last timeout properly.
7996           Also in gtk_menu_motion_notify move ignore_enter above
7997           the conditional to make it always happen as suggested by Owen
7998
7999 2000-09-07  Tor Lillqvist  <tml@iki.fi>
8000
8001         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
8002
8003         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
8004         w32api headers.
8005
8006         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
8007         declarations.
8008
8009         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
8010         (gdk_win32_get_colormap): A line had been deleted by mistake.
8011
8012         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
8013         (gdk_event_translate): Handle more virtual keycodes to be able to
8014         generate GDK events for Control-comma, Control-period, etc.
8015
8016         * gtk/gtk.def: Add some missing entry points.
8017
8018 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
8019
8020         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
8021         Doc comment fixing. (Mostly non-matching parameter names.)
8022
8023         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
8024         comments a little to avoid looking like a doc comment.
8025
8026         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
8027         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
8028         conversions be changed to GError?)
8029
8030         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
8031         Move private #defines into .c file.
8032
8033         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
8034         order of argument addition, remove duplicates.
8035
8036         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
8037         parent class is FrameClass, not BinClass.
8038
8039         * gtk/gtk.h: Add gtkinvisible, which was missing.
8040         (It's occasionalyl useful for client apps, if seldom.)
8041
8042         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
8043         #define.
8044
8045 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
8046
8047         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
8048         coordinates when creating window, instead of GDK-space
8049         coordinates. (Avoid BadValue on too large windows.)
8050
8051 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8052
8053         * configure.in (use_mmx_asm): Remove conftest* after use along the
8054         lines of AC_TRY_COMPILE.        
8055         
8056         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
8057         of g_dirname, which is deprecated.
8058         (gtk_rc_parse_any): Removed calls to
8059         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
8060
8061         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
8062         Removed calls to g_hash_table_{freeze,thaw}, as they are
8063         deprecated now.
8064
8065         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
8066         instead of g_basename.
8067         
8068 2000-09-04 Elliot Lee <sopwith@redhat.com>
8069         
8070         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
8071         ANSI warning.
8072
8073 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
8074
8075         * gtk/gtkwidget.h:  Add some documenting comments about 
8076           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8077           just as owen said on irc.
8078
8079         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8080           set HAS_DEFAULT.  Only set it if there isn't another window
8081           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8082           it if the widget is not the focused window with RECEIVES_DEFAULT.
8083           This fixes weird double default bugs in dialogs which has things
8084           call gtk_window_set_default at times.
8085
8086 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8087
8088         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8089         Nils Barth and David Santiago to improve submenu
8090         navigation. The patch does this by creating a triangular
8091         region from the point where the pointer leaves the
8092         menu to the submenu.  While the pointer is in
8093         that region and a timeout has not expired, events 
8094         that would cause the active submenu to change are
8095         ignored.
8096
8097 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8098
8099         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8100         moving a toplevel window immediately after sizing it would
8101         result in it being sized back to the old size since 
8102         impl->width, impl->height aren't updated until we hear
8103         back from the server. There is still a (longstanding) bug
8104         here that gdk_window_get_size() will give the wrong size
8105         until we do hear back.
8106
8107 2000-08-31  Havoc Pennington  <hp@redhat.com>
8108
8109         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8110         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8111         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8112         Rename GtkTextStyleValues to GtkTextAttributes
8113
8114 2000-08-31  Havoc Pennington  <hp@pobox.com>
8115
8116         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8117         for rapid testing whether an iterator is the end iterator
8118         (gtk_text_btree_new): init end line cache
8119         (gtk_text_line_is_last): use fast cached line to 
8120         see if we're the last line.
8121         (get_last_line): use cached line here too, should 
8122         speed up some random unrelated code.
8123         
8124 2000-08-30  Havoc Pennington  <hp@pobox.com>
8125
8126         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8127         signals.
8128
8129         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8130         delete_text signals. This allows the signals to be used for
8131         implementing undo.
8132
8133         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8134         provide "interactive" argument when emitting insert_text or
8135         delete_text signal.
8136         
8137 2000-08-30  Havoc Pennington  <hp@pobox.com>
8138
8139         * gtk/gtktextbuffer.c: Docs
8140
8141 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8142
8143         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8144         from switch statements, since Tor removed the enumeration
8145         value.
8146         
8147         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8148         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8149
8150 2000-08-29 Elliot Lee <sopwith@redhat.com>
8151         * */*.h: Use G_GNUC_CONST.
8152
8153 2000-08-27  Havoc Pennington  <hp@pobox.com>
8154
8155         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8156         minor indentation fixes, inserted some FIXME about stuff I
8157         realized was broken while documenting it.
8158         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8159         GTK convention  
8160
8161 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8162
8163         * gtk/testgtk.c (create_styles): Fix double free of
8164         font desc.
8165
8166 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8167
8168         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8169         
8170         * gtk/testgtk.c (create_styles): Add a test for modifying
8171         the style through gtk_widget_modify_*.
8172
8173         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8174         a function to get the current modifier style.
8175
8176         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8177         of the passed in GtkRcStyle instead of ref'ing it.
8178
8179         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8180
8181 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8182
8183         * gdk/gdkimage.h
8184         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8185         shared memory image+pixmap GdkImage type, or
8186         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8187         I am dropping that.
8188
8189         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8190         actually call gtk_init_abi_check(), passing also
8191         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8192
8193         * gtk/gtk.def
8194         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8195         New functions, used to check that the GTK+-using code has been
8196         compiled using the correct compiler and switches. In particular,
8197         with gcc one has to use the -fnative-struct switch as GTK+ is
8198         compiled with that.
8199
8200 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8201
8202         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8203         ->prev fields when merging lists. (Found simultaneously
8204         by Pawel Salek and Jakub Jelinek)
8205
8206 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8207
8208         * gdk/gdk.def
8209         * gtk/gtk.def: Add missing entries.
8210
8211         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8212         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8213
8214         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8215         function. Dummy implementation at this point.
8216
8217         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8218         rules. Undefine GTK_COMPILATION when compiling the test programs.
8219         
8220         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8221
8222 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8223
8224         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8225         to convert back and forth from UTF-8 and the "system" (or "current
8226         locale") charset when necessary. Indentation/spacing cleanup.
8227
8228 2000-08-10  Havoc Pennington  <hp@redhat.com>
8229
8230         * Makefile.am (snapshot): Change the format of the snapshot
8231         version to match glib
8232
8233         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8234         from EXTRA_DIST since it doesn't seem to exist
8235
8236 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8237
8238         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8239         version of the directory name (not the UTF-8 one) when building
8240         the path name to stat().
8241
8242 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8243
8244         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8245         PANGO_ATTR_SHAPE set.
8246
8247 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8248
8249         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8250         Peter Osterlund to simplify the code while keeping the
8251         functionality the same.
8252
8253 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8254
8255         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8256         is_viewable() test further inside the function, since removing the 
8257         window from the redraw list without clearing ->update_area
8258         was also very broken.
8259
8260 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8261
8262         * configure.in: Check for <unistd.h>.
8263
8264 2000-08-01  Martin Baulig  <baulig@suse.de>
8265
8266         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8267         to display the message that this is a development version of GTK+.
8268
8269 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8270
8271         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8272         was depending on widget->allocation instead of the width of text_area,
8273         which was incorrect for subclasses like GtkSpinButton.
8274
8275         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8276         with width == 1 tests that should be width == -1.
8277
8278 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8279
8280         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8281         (broken, Elliot, every single window blank on X) custom code with call
8282         to gdk_window_is_viewable() which a) prevents code duplicate and
8283         b) works. 
8284
8285 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8286
8287         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8288         to get the GDK_PARENT_ROOT() macro to work.
8289         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8290         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8291         of, windows that aren't shown.
8292         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8293         pointer grab stuff.
8294
8295 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8296
8297         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8298           s/gtk_main_iteration/g_main_iteration/
8299
8300           Did this already in change:
8301                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8302           don't know how it got reverted.
8303
8304 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8305
8306         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8307         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8308
8309         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8310         not gdk_pixbuf.
8311
8312 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8313
8314         * configure.in,po/{sp,sr}.po: Added Serbian files
8315
8316 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8317
8318         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8319
8320         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8321         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8322         GIOChannel implementation.
8323
8324         * gdk/win32/gdkinput.c
8325         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8326
8327         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8328         definition to match prototype.
8329
8330         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8331
8332 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8333
8334         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8335         function, to allow handling image formats that cannot be detected
8336         by looking at content alone.
8337
8338 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8339
8340         * docs/tutorial/*.gif *.jpg *.eps
8341           Update these to the same look-n-feel.
8342           Why does including images in DocBook suck so badly?
8343
8344 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8345
8346         * gtk/gtktable.c: applied patch from Phil Thompson
8347         <phil@river-bank.demon.co.uk> that enables space settings for
8348         the last row/columns as well.
8349
8350 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8351
8352         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8353         updates the license headers to the GNU Lesser General Public License,
8354         as well as updating the copyright year to 2000.
8355
8356 2000-07-26  Robert Brady  <rwb197@zepler.org>
8357
8358         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8359           and po/Makefile, was installing and looking for them under gtk20
8360           and gtk2 respectively.
8361
8362 2000-07-25  Havoc Pennington  <hp@redhat.com>
8363
8364         * gtk/testtext.c: Comment out some stuff that depends on the rest
8365         of my patches.
8366
8367 2000-07-25  Havoc Pennington  <hp@redhat.com>
8368
8369         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8370         buffer
8371
8372 2000-07-25  Havoc Pennington  <hp@redhat.com>
8373
8374         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8375         widget changes.
8376
8377         * gtk/gtktextview.h: To be consistent with usage of "line"
8378         throughout the API to mean "newline-terminated thingy", change
8379         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8380         to MOVEMENT_LINE.
8381
8382         (GtkTextView): Add flags for default editability, and whether to
8383         show the cursor. Add functions to get/set that. Add 
8384
8385         (gtk_text_view_get_iter_location): new function
8386
8387         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8388         gtktextlayout.h
8389         (g_convert): Add g_convert temporarily, will go in glib in a bit
8390         
8391         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8392         GtkTextTagTableForeach instead of brokenly using GHFunc.
8393         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8394
8395         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8396         moved to public header.
8397
8398         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8399         "invisible", since "elide" was a bad name.
8400         (gtk_text_tag_get_priority): Added
8401
8402         (GtkTextStyleValues): put this in public header, along with
8403         functions to use it.
8404
8405         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8406         longer include gtktextbtree.h.
8407
8408         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8409         gtk_text_mark_deleted
8410
8411         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8412         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8413         to make this possible. Now we only need to install
8414         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8415         (However the Makefile.am isn't changed yet because of the
8416         logistics of merging gtk-hp-patches piecemeal)
8417
8418         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8419         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8420         gtk_text_iter_get_line is now used in the public API for a
8421         different purpose.
8422
8423         * gtk/gtktextiter.h: Clean up function names to be more
8424         consistent. Always call char offset "offset" and byte index
8425         "index". A "line" is always a line number. 
8426
8427         (gtk_text_iter_is_last): new function, more efficient than 
8428         the existing way to check
8429         (gtk_text_iter_is_first): new function, also more efficient
8430
8431         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8432
8433         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8434         gtk_text_iter_forward_char, etc.
8435
8436         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8437         forward_find_tag_toggle, since this isn't a linear search
8438
8439         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8440
8441         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8442         New functions, search for a buffer substring.
8443
8444         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8445         interactive and default editable (since we need to store that info
8446         until we receive the selection data).
8447
8448         Remove all the _at_char and at_line etc. versions of functions;
8449         only have iterator versions.
8450
8451         Add _interactive() versions of functions, that consider the
8452         editability of text. (FIXME add interactive flag to the 
8453         insert/delete signals per Darin's suggestion)
8454
8455         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8456         tag table if necessary
8457
8458         Remove declaration of gtk_text_buffer_get_iter_from_string
8459
8460         (_gtk_text_buffer_get_btree): private/internal function, added.
8461         
8462
8463         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8464         (gtk_text_line_is_last): new function
8465
8466 2000-07-25  Havoc Pennington  <hp@redhat.com>
8467
8468         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8469         using GtkProgressBar. See Changes-2.0.txt for details.
8470
8471         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8472         "pulse_step" which are the equivalent of
8473         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8474         Implement new API.
8475         
8476         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8477         (use_text_format) to mark whether text set on the progress bar is
8478         a format string. Deprecate entire GtkProgress interface.
8479
8480         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8481         (gtk_progress_build_string): make this a no-op if use_text_format
8482         is FALSE
8483
8484         * docs/Changes-2.0.txt: Describe progress bar changes.
8485
8486 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8487
8488         * Makefile.am: Include the build directory.
8489
8490         * configure.in: Generate build/Makefile, build/win32/Makefile,
8491         gdk/, gdk/win32/, and gtk/makefile.mingw.
8492
8493         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8494         Add GETTEXT_PACKAGE.
8495         
8496         * gdk/gdk.def
8497         * gtk/gtk.def: Updates.
8498
8499         * gdk/gdkfont.h
8500         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8501         need them any longer.
8502
8503         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8504
8505         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8506         PANGOWIN32_LIBS and gdk_pixbuf.
8507
8508         * gdk/win32: Compiles, but no doubt doesn't work at all.
8509
8510         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8511
8512         * gdk/win32/gdkinput.c: New file, temporarily.
8513         
8514         * gdk/win32/gdkinput-win32.h: New file
8515
8516         * gdk/win32/gdkinputprivate.h: Remove.
8517
8518         * gdk/win32/gdkpango-win32.c: New file.
8519
8520         * gtk/makefile.mingw.in: New file
8521
8522         * gtk/makefile.cygwin: Removed
8523         
8524         * gtk/Makefile.am: Update accordingly.
8525
8526         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8527         made externally visible.
8528
8529         * gtk/gtkmain.c: Use it.
8530         
8531         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8532         is enough.
8533
8534         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8535
8536 2000-07-24 Elliot Lee <sopwith@redhat.com>
8537         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8538         individual backends already.
8539         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8540         again. Yes, there really is a good reason for this, if you are using the gdkregion
8541         internals, and if you're not, why do you care?
8542         * gdk/gdkwindow.c: Fix inverted condition
8543         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8544         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8545         * gtk/gtkrange.c: Redraw trough when moving.
8546         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8547         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8548
8549 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8550
8551         * configure.in: Check for mkstemp and sigsetjmp. Output
8552         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8553
8554         More work on GDK for Win32. Still in an intermediate state.
8555
8556         * gdk/makefile.cygwin
8557         * gdk/win32/makefile.cygwin: Removed.
8558         
8559         * gdk/makefile.mingw.in
8560         * gdk/win32/makefile.mingw.in: New files.
8561
8562         * gdk/Makefile.am
8563         * gdk/win32/Makefile.am: Generate and distribute them.
8564
8565         * gdk/win32/gdkwindow-win32.h
8566         * gdk/win32/gdkdrawable-win32.h
8567         * gdk/win32/gdkpixmap-win32.h: New files.
8568
8569         * gdk/win32/gdkcolor-win32.c
8570         * gdk/win32/gdkcursor-win32.c
8571         * gdk/win32/gdkdrawable-win32.c
8572         * gdk/win32/gdkgc-win32.c
8573         * gdk/win32/gdkimage-win32.c
8574         * gdk/win32/gdkprivate-win32.h
8575         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8576         Rename fields and variables called xcursor, xid, etc (these names
8577         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8578
8579 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8580
8581         * gtk/gtkentry.[ch]: Fix some problems with vertical
8582         alignment.
8583
8584         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8585         char/byte confusion.
8586
8587 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
8588
8589         * gtk/gtktextview.c (changed_handler): Fix bug where
8590         redraw wasn't being done properly when height of
8591         dirty region changed.
8592
8593         * demos/Makefile.am: Remove various references to
8594         -lgmodule
8595
8596 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
8597
8598         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
8599         PangoAttrShape to reserve space for pixmaps, add 
8600         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
8601         in the display functions.
8602         
8603         * gtk/testgtk.c (create_layout): Set some more exotic
8604         scrolled window options
8605
8606         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
8607         Add function to set the shadow type of a window, to allow
8608         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8609         which don't draw their own frame.
8610
8611 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8612
8613         * docs/tutorial/package-db-tutorial.sh: New file for
8614           packaging DocBook format tutorial
8615
8616 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8617
8618         * docs/tutorial/gtk-tut.sgml: Minor updates
8619
8620         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8621
8622 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8623
8624         * gtk/gtksignal.c: Fix C++ comment.
8625
8626         * gtk/gtkimmulticontext.c
8627         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8628         don't return value from void functions.
8629
8630         * gtk/gtk.def: Add gtk_rc_style_unref.
8631
8632 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8633
8634         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8635         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8636         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8637         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8638         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8639         gtk/gtktypeutils.h: Include files outside of the extern "C"
8640         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8641         <vakatov@peony.nlm.nih.gov>.
8642
8643 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8644
8645         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8646           Completes first pass. Hurrah!
8647
8648 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8649
8650         * docs/tutorial/gtk-tut.sgml: More clean ups.
8651
8652 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8653
8654         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8655         paint the background of the text area which was accidentally
8656         removed at some point.
8657
8658         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8659           
8660          - Move most of the functionality from the theme vtable
8661            into GtkRcStyleClass and GtkStyleClass. The moved
8662            vtable functions were changed a bit in the move to
8663            work better in their new home.
8664
8665          - Get rid of the engine and engine_data fields from
8666            GtkRcStyle and GtkStyle; instead the theme
8667            engine derives theme-specific subclasses of GtkRcStyle
8668            and GtkStyle
8669
8670          - Add extra dlsym() found entry point to themes,
8671            theme_create_rc_style().
8672
8673         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8674         in gtk_style_real_copy.
8675
8676         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8677         to register a type associated with an engine. (The engine
8678         won't be unloaded as there is an instance of the type.)
8679
8680
8681 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8682
8683         * docs/tutorial/gtk-tut.sgml: Clean ups.
8684
8685 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8686
8687         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8688           of cleaning up to do.
8689
8690 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8691
8692         * gdk/testgdk.c: New file, quick hack to test backends for
8693         pixel-by-pixel correctness of the most simple graphic operations.
8694
8695 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8696
8697         * Really release 1.3.1
8698         
8699         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8700         include structure.
8701
8702 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8703
8704         * Released 1.3.1
8705
8706 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8707
8708         * gtk/gtktextlayout.c: use FALSE for size_only most
8709         of the time when calling gtk_text_layout_get_line_display()
8710         to avoid causing double reshapes when a redraw follows
8711         immediately after.
8712
8713 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8714
8715         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8716         appropriate region and gdk_window_process_updates() so trough
8717         updating doesn't lag behind the window being scrolled.
8718
8719         * gdk/gdkgc.c: Make parent_class pointer static.
8720          
8721 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8722
8723         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8724         include <string.h>.
8725          
8726         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8727         cut-and-paste error in computing memory offset for 4 channels.
8728
8729 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8730
8731         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8732         gtk_rc_append_default_pixmap_path(), since it wasn't
8733         adding an interesting path and we don't have a meaningful
8734         default for this value.
8735
8736 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8737
8738         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8739         gtk-config to gtk-config-2.0 move gtk_.m4 to
8740         gtk-2.0.m4
8741
8742         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8743         gdk/Makefile.am demos/Makefile.am: Change 
8744         library names to libgtk-1.3.la, etc, so that we
8745         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8746
8747         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8748         gdk/Makefile.am gdk/x11/Makfile.am
8749         Move include files into /usr/include/gtk-2.0, 
8750         /usr/lib/gtk-2.0/include/
8751          
8752         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8753         gtk/gtkintl.h: Change package for gettext from 
8754         gtk+ to gtk20. Put hack in autogen.sh to modify
8755         po/Makefile.in.in after gettextize to make this
8756         possible.
8757
8758         * gtk+.spec: Some updates, not tested.
8759
8760         * gdk-pixbuf/Makefile.am: Move loaders into
8761         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8762
8763         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8764         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8765         to THEMENAME/gtk-2.0/. Move engine directory  to
8766         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8767         
8768 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8769
8770         Win32 changes, still doesn't build though.
8771
8772         * gdk/makefile.cygwin
8773         * gdk/win32/makefile.cygwin
8774         * gtk/makefile.cygwin: Updates.
8775
8776         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8777         default values for fg and bg pixel as X11 does (0 and 1), not
8778         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8779         Use 0 for pen width by default (treated as 1 anyway later, but for
8780         apps that might check the value in the GdkGC).
8781         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
8782         interface to gdk_gc_predraw and _postdraw.
8783
8784         * gdk/win32/gdkwin32.h
8785         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
8786
8787         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
8788         extraneous semicolon.
8789
8790         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
8791
8792         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
8793         not the Win32 bitspixel value.
8794
8795         * gdk/win32/gdkcc-win32.c:
8796         * gdk/win32/gdkcolor-win32.c 
8797         * gdk/win32/gdkprivate-win32.h
8798         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
8799         GDK object structure.
8800
8801 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
8802
8803         * docs/tutorial/gtk_tut_12.es.sgml (name): 
8804         * docs/tutorial/gtk_tut_it.sgml (name): 
8805         * docs/tutorial/gtk_tut_fr.sgml (name): 
8806         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
8807         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
8808
8809 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
8810
8811         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
8812           small changes.
8813
8814 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
8815
8816         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
8817         a bug here, never been here and never fixed anything ;(
8818         (don't segfault if tree->root_tree is NULL, which happens prior
8819         to widget realization, but puke instead).
8820
8821 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
8822
8823         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
8824         add the necessary tokens.
8825
8826         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
8827         (gtk_rc_style_to_style): copy thicknesses.
8828         (gtk_rc_init_style): apply thicknesses.
8829         (gtk_rc_parse_style): parse xthickness and ythickness.
8830
8831         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
8832
8833         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
8834         (gdk_window_new): 
8835         (_gdk_windowing_window_init): 
8836         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
8837         (gdk_pixmap_create_from_data): 
8838         (gdk_bitmap_create_from_data): 
8839         (gdk_pixmap_new): 
8840         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8841         (gdk_image_new): 
8842         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
8843         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
8844         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
8845         (gdk_colormap_get_system): 
8846         (gdk_colormap_new): 
8847         * gdk/gdkwindow.c (gdk_window_init): 
8848         * gtk/gtkstyle.c (gtk_style_new):
8849         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
8850         * gdk/gdkpixmap.c (gdk_pixmap_init): 
8851         * gtk/gtkrc.c (gtk_rc_style_new):
8852         use g_object_new() instead of g_type_create_instance() which
8853         is a private function for fundamental type implementations.
8854
8855 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
8856
8857         * configure.in: Add check for db2html
8858
8859 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
8860
8861         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
8862         hack to set glib_debug_objects based on gtk_debug_flags.
8863
8864 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
8865
8866         * INSTALL.in: Update the Prerequisites section.
8867
8868         * Makefile.am demos/Makefile.am docs/Makefile.am
8869         docs/tutorial/Makefile.am gdk/x11/Makefile.am
8870         gdk/linux-fb/Makefile.am: Dist fixes
8871
8872 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
8873
8874         * NEWS: 10,000 foot view of 1.3.1 changes.
8875
8876 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
8877
8878         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
8879         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
8880         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
8881         gdk/x11/gdkmain-x11.c: 
8882
8883         Patch from George Lebl to add a GdkGrabStatus enumeration to use
8884         as a return value of gdk_*_grab(). Previously, we just
8885         returned the X11 values directly.
8886
8887 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
8888
8889         * gdk/x11/Makefile.am: Patch from George Lebl to 
8890         install all the headers in the right place.
8891
8892 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
8893
8894         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
8895           initial conversion to DocBook.
8896
8897 2000-07-04  Tor Lillqvist  <tml@iki.fi>
8898
8899         * README.win32: Improve a bit.
8900
8901         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
8902         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
8903         Alt+0nnn on the numpad (used to enter characters by numeric code
8904         from current DOS or ANSI codepage) working correctly, as in other
8905         Windows apps.
8906
8907         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
8908         same argument validity tests as in X11 version.
8909         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
8910
8911         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
8912         definitions in case missing from headers.
8913
8914         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
8915         destroy the window-specific cursor.
8916         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
8917         calling GetModuleHandle(NULL).
8918         (gdk_window_set_cursor): Reworked to always copy the passed cursor
8919         with CopyCursor before setting it as the window-specific
8920         cursor. It is OK for the caller to destroy the GdkCursor (and thus
8921         also its Windows cursor) after calling this function. Destroy any
8922         previous window-specific cursor.
8923
8924 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
8925
8926         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
8927         font charset is iso8859-1, not iso-8859-1.
8928
8929 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
8930
8931         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
8932         Use g_get_charset() instead of g_get_codeset().
8933
8934         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
8935         Comment out some strdup'ing functions to keep timj
8936         happy until we finish fighting this out.
8937
8938 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
8939
8940         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
8941         <= width or height.
8942
8943         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
8944         from 1.2 for parent/child states.
8945
8946         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
8947         of typos.
8948
8949         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
8950         event structures, replace with a generic axes field. Replace 
8951         deviceid/sourec with GdkDevice *device.
8952
8953         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
8954         to extract particular axis use value from event. (Also
8955         can be used for normal X/Y.)
8956
8957         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
8958         allow for arbitrary number of axes, namespace everything
8959         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
8960         everywhere.
8961
8962         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
8963         Get rid of the gdk_input_vtable setup if favor of simply
8964         defining the functions in gdkinput-none/gxi/xfree.c in
8965         a similar fashion to the way that the port structure is 
8966         done.
8967
8968         * gtk/gtkdnd.c: Fix fields of synthesized button press event
8969         for new event structures. 
8970
8971         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
8972         new device interfaces.
8973
8974 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
8975
8976         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
8977         set the initial text.
8978
8979         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
8980         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
8981         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
8982         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
8983
8984         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8985         pango_layout_set_font_description to simplify.
8986
8987 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
8988
8989         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8990         pango_layout_set_font_description to simplify.
8991
8992 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
8993
8994         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
8995         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
8996         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
8997
8998         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
8999         PANGO_PIXELS() macro.
9000
9001 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
9002
9003         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
9004         that returns a PangoContext owned by the widget and updated to
9005         match future changes in the widget. Also, make 
9006         gtk_widget_create_pango_layout() use this context. If we ever
9007         add a ::changed signal to PangoContext, this will make things
9008         much more convenient. 
9009
9010         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
9011         in the appropriate places instead of destroying the layouts and
9012         creating new ones.
9013
9014         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
9015         in a few strategic places.
9016
9017 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
9018
9019         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
9020         gtk_widget_size_request() on reparented child, if one. Otherwise,
9021         queue_resize() on the child never results in it getting size-requested
9022         at all.
9023
9024         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
9025         in option menus, so that (with luck) people won't copy it into
9026         their apps in the future.
9027
9028         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
9029         to gtk_option_menu_calc_size. This isn't perfect, but should fix
9030         a lot of problems with changing the size of the menu's menu
9031         items after adding it to the option menu.
9032
9033         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
9034
9035         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
9036         the text direction for a widget changes.
9037
9038         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
9039         ::direction_changed to get rid of various hacks.
9040
9041 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
9042
9043         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
9044         name.
9045
9046 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
9047
9048         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
9049         flag to the structure. Do not call XFreePixmap on pixmaps created
9050         by gdk_pixmap_foreign_new().
9051
9052 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
9053
9054         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
9055         value using GdkRGB functionality given GdkColormap and GdkColor.
9056         (name not final, waiting for inspiration.)
9057         
9058         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
9059         set the foreground/background of a GC using the GC's colormap
9060         and GdkRGB. (name not final, waiting for inspiration.)
9061
9062         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
9063         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
9064
9065         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
9066         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
9067         purely a function of the corresponding colormap. Make
9068         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
9069
9070         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
9071         gdk_pixbuf_*create_from_xpm_* in terms of
9072         gdk_pixbuf_new_from_xpm_data(), move into platform independent
9073         code.
9074
9075         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9076         advantage of the new draw_rgb_32_image_dithalign.
9077
9078         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9079
9080         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9081         on each created GC.
9082
9083         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9084
9085         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9086         which we initialize from the drawable when the GC is created,
9087         if the drawable has a colormap.
9088
9089         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9090
9091         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9092
9093         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9094
9095 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9096
9097         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9098         actually returning expose events, make sure to set
9099         the count field properly.
9100
9101         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9102         accidentally reintroced bug which always cleared
9103         the graphics_exposures value. 
9104
9105 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9106
9107         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9108
9109 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9110
9111         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9112
9113 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9114
9115         * docs/faq/gtk-faq.sgml: Start of Section 6.
9116
9117 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9118
9119         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9120         
9121         (Fixes problem with drawing childless frames. Pointed out
9122         by and a first patch from Anders)
9123         
9124         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9125         compute a child_allocation, even if we don't have a child.
9126
9127         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9128         Always chain to the parent's impl, even if we don't have a child.
9129
9130 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9131
9132         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9133         use multiple parts of it instead of creating a bunch of separate
9134         segments, since the maximum number of segments per system is not
9135         large. (This might be worth backporting to GTK+-1.2.x if we make a
9136         new release )
9137
9138         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9139         structure in preparation for per-colormap GdkRGB.
9140
9141         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9142         to False when we get EINVAL from shmget so that the caller of
9143         gdk_image_new can retry with a smaller segment size.
9144
9145 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9146
9147         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9148
9149 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9150
9151         * configure.in: make the current version number 1.3.1 (binary age 0,
9152         interface age 0).
9153         
9154         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9155         gtkcompat.h is all we want.
9156
9157         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9158         GLib primitive types. fixed g_type_register_fundamental() argument
9159         ordering.
9160
9161         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9162         compiles.
9163
9164         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9165         object code cleanup, comment trigraph fixes, etc...
9166
9167 2000-06-23  Havoc Pennington  <hp@redhat.com>
9168
9169         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9170         instead of making up a bogus name for first_para_mark
9171
9172         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9173         0 as a context ID
9174
9175 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9176
9177         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9178
9179 2000-06-21  Havoc Pennington  <hp@pobox.com>
9180
9181         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9182         we didn't check window->bg_pixmap != GDK_NO_BG.
9183
9184         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9185         gdk-pixbuf
9186
9187 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9188
9189         * docs/faq/gtk-faq.sgm: Move file to here.
9190           TODO: Update Makfile.am 
9191
9192 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9193
9194         * docs/gtk-faq.sgm: Add Section 2
9195
9196 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9197
9198         * docs/gtk-faq.sgm: New file. Start of DocBook
9199           version of the FAQ.
9200
9201 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9202
9203         * configure.in (GDK_PIXBUF_MAJOR): Define version
9204         numbers for GDK_PIXBUF_*, as they get substituted
9205         into a header file. Need to consider versioning
9206         for gdk-pixbuf more carefully later.
9207
9208 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9209
9210         Work with srcdir != builddir.   
9211         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9212         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9213         * demos/testpixbuf.c: Likewise.
9214         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9215         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9216         <gdk/x11/gdkx.h>.
9217         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9218         "gdk-pixbuf.h".
9219         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9220
9221 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9222
9223         * TODO.xml: Change 1.4 version numbers to 2.0.
9224
9225 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9226
9227         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9228         fixups to GTK+ standard.
9229
9230 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9231
9232         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9233         gdk-pixbuf.
9234
9235         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9236         fixups for GObject.
9237
9238         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9239         gdk-pixbuf with GDK dependencies moved into GDK.
9240         
9241         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9242         move gdk-pixbuf-loader here until GObject has signals.
9243
9244         * demos/: New directory of demos. Move demos from
9245         gdk-pixbuf here.
9246
9247         * demos/pixbuf-init.c: Small bit of code to check for
9248         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9249         set GDK_PIXBUF_MODULEDIR appropriately.
9250
9251         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9252         define which no longer makes sense.
9253
9254 2000-06-21  Havoc Pennington  <hp@redhat.com>
9255
9256         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9257         gtk_get_default_language
9258
9259         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9260         new function to get the default language
9261
9262         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9263         s/gtk_text_view_style_values/gtk_text_style_values/
9264
9265         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9266         Add a "language" field to tags.
9267
9268         (gtk_text_tag_set_arg): Fix bug in setting
9269         "bg_full_height_set" tag.
9270
9271 2000-06-21  Havoc Pennington  <hp@redhat.com>
9272
9273         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9274         in the interfaces
9275
9276         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9277         stuff instead when possible.
9278
9279         * gtk/gtktexttypes.h: Delete some unused constants
9280
9281         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9282         testtextbuffer.c: use glib instead of custom unicode routines
9283
9284 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9285
9286         * docs/es/: Removed mistakenly added generated sgml
9287
9288         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9289         Remove outdated info files.
9290
9291         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9292         Moved tutorial files into subdir
9293
9294         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9295         subdir.
9296
9297         * docs/man/gtk_button.pod: Remove. (contents will be
9298         integrated into gtk-reference button page.)
9299
9300         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9301         docs/faq/Makefile.am: Adjust for new organization
9302
9303 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9304
9305         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9306         not $(MKINSTALLDIRS)
9307
9308 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9309
9310         * gtk/testgtk.c (create_text): Finish the job Elliot started
9311         of removing font setting test for text widget. (Since text widget
9312         and GdkFont are not deprecated, and cause portability problems.)
9313
9314 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9315
9316         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9317         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9318         Remove use of libunicode in favor of new GLib functions.
9319
9320         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9321         nano-x, framebuffer. The X11 include is just a hack until we get
9322         the necessary functions in gdkcolor.h, so there is no reason to
9323         add other includes of platforms.
9324
9325         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9326         window bigger than the screen change.
9327
9328         * gtk/testgtk.c: Revert some random changes from Elliot
9329         that had no particular point and were causing testgtkrc
9330         not to function correctly.
9331         
9332         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9333         because GdkSegment and GdkRegionBox have the same fields,
9334         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9335         results in clearer code.
9336
9337         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9338         gdk_input_translate_coordinates): Fix missed GdkObjectification
9339
9340 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9341
9342         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9343         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9344
9345 2000-06-20  Havoc Pennington  <hp@redhat.com>
9346
9347         * modules/linux-fb/Makefile.am: Make this compile
9348         without framebuffer enabled
9349
9350         * gdk/linux-fb/Makefile.am: Add conditional to not build
9351         framebuffer unless specified in configure
9352
9353         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9354         the size of the target instead of source if -1 was passed for
9355         width/height
9356
9357         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9358         width/height confusion.
9359
9360 2000-06-19  Havoc Pennington  <hp@redhat.com>
9361
9362         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9363         GDK_DRAWABLE_XID. In the future, we probably want to make it
9364         faster with G_DISABLE_CHECKS turned on.
9365
9366 2000-06-14  Havoc Pennington  <hp@redhat.com>
9367
9368         * gdk/Makefile.am: add gdkpixmap.c
9369
9370         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9371         s/gdk_image_init/_gdk_windowing_image_init
9372
9373         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9374         ref/unref
9375
9376         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9377
9378         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9379         GdkWindowType is now non-deprecated; 
9380         change gdk_window_get_type() compat to be
9381         gdk_window_get_window_type().
9382
9383         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9384
9385         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9386         virtual GObject. Make all functions call into the vtable.
9387         Move gdk_image_put() guts in here. Remove GdkDrawableType
9388         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9389         draw_image, get_depth, get_size, set_colormap, get_colormap,
9390         get_visual added to the vtable.
9391         
9392         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9393         GObject. Virtualize everything. 
9394         (gdk_gc_new_with_values): remove check for destroyed window,
9395         because now GdkWindow::create_gc will check this.
9396         (gdk_gc_set_values): New function to set GC values, this 
9397         was already implemented but wasn't in the header
9398
9399         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9400
9401         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9402         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9403         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9404         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9405         _gdk_windowing_window_init, rename gdk_image_init to
9406         _gdk_windowing_image_init.
9407         
9408         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9409         (gdk_draw_layout): Remove check for destroyed window, 
9410         because all the drawable methods already check it.
9411         
9412         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9413         Add gdkpixmap.c which contains implementation of GdkDrawable
9414         virtual table (by chaining to a platform-specific implementation
9415         object).
9416         
9417         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9418         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9419         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9420         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9421         GdkColormapPrivate. 
9422
9423         * gdk/gdktypes.h: #include <glib-object.h>
9424
9425         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9426         Move most functionality to platform-specific implementation
9427         object. GdkWindow itself now handles the backing store, then
9428         chains to the platform-specific implementation.
9429         (gdk_window_get_window_type): return GdkWindowType of the window.
9430         (gdk_window_peek_children): New routine, returns the children of 
9431         a GdkWindow
9432         (gdk_window_get_children): Was in X11-specific code and did 
9433         XQueryTree. Changed to simply return a copy of window->children; 
9434         so it can go in cross-platform code.
9435         
9436         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9437
9438         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9439         GdkColormap; just changed to use the new private data instead
9440         of casting to GdkColormapPrivate.
9441
9442         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9443         gdk_cursor_new().
9444
9445         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9446         (private data member in the GObject). 
9447         (xdnd_manager_source_filter): Function had broken 
9448         error handling, fix it (use gdk_error_trap_push).
9449
9450         * gdk/x11/gdkdrawable-x11.c: This file now implements
9451         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9452         base class is purely for the convenience of the X port,
9453         and not part of the interface to cross-platform GDK.
9454
9455         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9456         
9457         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9458         specific to X, and returned by the create_gc virtual method
9459         of GdkDrawableImplX11. 
9460         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9461         rather than gchar, this was also changed in the GdkGC vtable.
9462         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9463         mask is 0, return immediately, instead of checking every flag.
9464         This is faster, and keeps us from segfaulting if values is NULL
9465         and the mask contains some nonzero flags.
9466
9467         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9468         GdkWindow.
9469
9470         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9471         GdkWindowPrivate is gone.
9472
9473         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9474
9475         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9476         remove the image_put stuff that got transferred to GdkDrawable.
9477         
9478         * gdk/x11/gdkinput.c: renamings
9479
9480         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9481
9482         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9483
9484         * gdk/x11/gdkprivate-x11.h: indentation fixes
9485
9486         * gdk/x11/gdkproperty-x11.c: renamings
9487
9488         * gdk/x11/gdkselection-x11.c: renamings
9489
9490         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9491         implements the platform-specific "impl" object.
9492         Moved gdk_window_get_children to gdk/gdkwindow.c
9493
9494         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9495         that no longer exist. Add declaration of GdkGCX11 object here.
9496         Fix all the macros to still work. 
9497
9498         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9499         GdkDragContext from the boxed types since they are now GObjects.
9500
9501         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9502         moved xthickness/ythickness into the instance. GtkStyleClass
9503         functions are now in the standard vtable for GtkStyle, so you have
9504         to create a GObject subclass to write a theme engine.
9505         (gtk_style_copy): fixed a leaked PangoFontDescription
9506         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9507         can be the standard GObject function.
9508         
9509         * Throughout GTK:
9510         s/style->klass->[xy]thickness/style->[xy]thickness
9511         s/pango_layout_unref/g_object_unref/
9512
9513         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9514         
9515         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9516         accessing GDK internals.
9517
9518         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9519         accessing GDK internals.
9520
9521 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9522
9523         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9524
9525         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9526         problem by calculating event position relative to the trough
9527         rather than the slider.
9528         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9529
9530         * gdk/gdkgc.h: Add GDK_NOR.
9531
9532         * configure.in, Makefile.am: Add modules top level dir
9533         * configure.in: Only use pangox library if building x11 target.
9534         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9535
9536 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9537
9538         * gtk/gtkcolorsel.c: Change private class member to be named
9539         private_data throughout the file.
9540
9541         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9542         private_data to avoid clashing with keyword.
9543
9544 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9545
9546         * gdk/gdkdnd.h: Add comment to remove warning.
9547
9548 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9549
9550         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9551         Byelorussian language; changed the Makefile and file names 
9552         to reflect that.
9553
9554 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9555
9556         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9557         rather than gdk_window_hide; this makes things work
9558         correctly if the window is programmatically hidden while
9559         iconified.
9560
9561 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9562
9563         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9564         cut and paste typo where wrong pixmap was being
9565         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9566
9567 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9568
9569         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9570         Add helper function to compute format / bytes 
9571         relationship. Use in a couple places to fix up
9572         errors which assume 8 * format.
9573
9574         * gtk/gtkselection.c (gtk_selection_request): Use 32
9575         rather than 8 * sizeof (GdkAtom), to work correctly
9576         on Alpha.
9577
9578 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9579
9580         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9581         libgtk.la
9582         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9583         versions
9584
9585         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
9586         checking macros return NULL since the function has a return value.
9587
9588 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
9589
9590         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
9591         GTK+ from building at all.
9592
9593         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
9594
9595 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
9596
9597         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
9598         gtk/Makefile.am: make it possible to configure gtk for different
9599         targets on the same platform. The library name is now 
9600         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
9601         flag. Only the x11 target compiles right now.
9602         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
9603         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
9604         * gdk/nanox/gdk*generic*: delete generic region code.
9605         * gdk/linux-fb/gdk*generic*: delete generic region code.
9606         * README.nanox: update information.
9607         
9608 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9609
9610         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9611         prepend not append. (Pointed out by Brett Hall.)
9612
9613 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9614
9615         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9616
9617 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9618
9619         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9620         need this later, and this makes sure that the atexit for
9621         glib gets called after that for GDK, so atexits are
9622         properly ordered for object leak checking.
9623
9624         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9625
9626         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9627         pango_x_shutdown_display()
9628
9629         * gtk/simple.c (main): Close window on destroy.
9630
9631 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9632
9633         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9634         to treat initial creation different from setting with 
9635         regards to the graphics-exposures parameter, so add a parameter
9636         indicating whether this is initial or not.
9637
9638 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9639
9640         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9641         to sort of work by adding an extra return_exposes arg
9642         to gdk_event_translate() - it might be better to simply
9643         deprecate the function altogether and force people to rewrite
9644         without it. gdk_window_scroll() handles most of it, and where
9645         gdk_window_scroll() doesn't work, simply redrawing more does.
9646
9647         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9648         assertion.
9649
9650         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9651
9652         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9653         bunch of pretty much useless /* Print debugging info */ comments 
9654         which had drifted away from the code they were commenting.
9655
9656 2000-06-02  Havoc Pennington  <hp@pobox.com>
9657
9658         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9659         is in working order.
9660         
9661         * gtk/testtext.c: Change to reflect anonymous mark API
9662
9663         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9664
9665         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9666         field, which was unused.
9667
9668         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9669         saves some typing.
9670
9671         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9672
9673         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9674         flag on the insertion point and selection bound
9675
9676         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9677         make mark-manipulation functions take a GtkTextMark* instead of a
9678         mark name.
9679         
9680         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9681         GtkTextMarkBody; will be used to detect attempts to delete
9682         the permanent marks (insert and selection bound)
9683
9684         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9685
9686 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9687
9688         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9689         flag to on.
9690
9691         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9692         Honor DOUBLE_BUFFRED_FLAG
9693
9694         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9695         function to set the DOUBLE_BUFFERED flag.
9696
9697         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9698         or not exposes done on the widget should be double-buffered.
9699
9700         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9701         to be what would be expected. (Fixes problem with a
9702         g_return_if_fail() validating a TextDirection enumeration)
9703
9704 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9705
9706         * gtk/gtkwidget.c: Remove all references to 
9707         offscreen flag which was no longer used.
9708
9709         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9710
9711         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9712         for non-null label_widget->parent.
9713
9714         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9715         which no longer was used.
9716
9717         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9718
9719         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9720         for null arguments.
9721
9722         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9723         check for destroyed windows.
9724
9725 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9726
9727         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9728         the slave context there.
9729
9730         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9731         identical to GtkWindow.
9732
9733 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9734
9735         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9736         pangox to here, so we can write them independent of rendering
9737         system, using GDK primitives.
9738
9739         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9740         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9741         since we have a rendering-system independent implementation in
9742         terms of draw_glyphs().
9743         
9744         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9745         function to render a single line.
9746
9747         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9748         into ../gdkpango.c, which simplifies things, since we
9749         don't have to deal with raw X gc's.
9750
9751 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9752
9753         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9754         get the logical attributes for a given GtkTextLine.
9755
9756 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9757
9758         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9759         g_locale_get_codeset() to g_get_codeset() change.
9760
9761 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9762
9763         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9764         descriptions.
9765
9766         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9767         the entry.
9768
9769         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9770         redoing (vastly simplifying) for Pango. Still needs quite
9771         a bit of work. (Size selection is currently poor. List of 
9772         predefined sizes is not a good idea, since all of these
9773         sizes won't necessarily be distinct.)
9774
9775 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9776
9777         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9778         CODESET results for LANG=C.
9779
9780 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
9781
9782         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
9783         which takes a stringized pango font description;
9784         ignore the older 'font' and 'fontset' declarations.
9785
9786         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
9787         field with a GdkFont derived via gdk_font_from_description(),
9788         for compatibility. (Should we just remove it entirely?
9789         Probably too much compatibility breakage, but people
9790         should be migrating to the new Pango stuff as quickly
9791         as possible.)
9792
9793 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
9794
9795         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
9796
9797 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
9798
9799         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
9800         redoing; there are some bugs in size allocation right
9801         now, the semi-existant distinction between header / day
9802         fonts was removed, but, with Pango, could actually
9803         be made functional in a nice way.
9804         
9805         * gtk/testcalender: Move calender from examples into this
9806         directory as a test program. (We really need to restrcture
9807         testgtk into a whole directory full of tests for every
9808         widget or functionality group, separated into multiple .c
9809         files.)
9810
9811 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
9812
9813         * gtk/testgtk.c (file_exists): Fix stupid typo that
9814         was keeping RC file from being loaded.
9815
9816         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
9817         RC file font code.
9818
9819 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
9820
9821         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
9822         Add function to load a GdkFont from a PangoFontDescription.
9823
9824 2000-05-29  Tor Lillqvist  <tml@iki.fi>
9825
9826         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
9827         variable should be of type GdkEventPrivate.
9828
9829 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
9830
9831         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
9832         to have any widget for the label, use a GtkLabel widget
9833         to display the text. (Based partially on a patch from
9834         Anders Carlson.)
9835
9836         (Quite a bit of code reorganization - strip 90% of the
9837         guts out of gtkaspectframe and add a single virtual
9838         func to GtkFrameClass - compute_child_allocation.)
9839
9840 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
9841
9842         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
9843         (Removed clist->row_center_offset field because caching
9844         it wasn't saving time or code, added private function
9845         _gtk_clist_create_cell_layout()).
9846
9847 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
9848
9849         * gtk/gtkaccellabel.c: Pangoized.
9850
9851         * gtk/[hv]ruler.c: Pangoized
9852
9853 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
9854
9855         * gtk/gtkfilesel.c (gtk_file_selection_init):
9856         Use gtk_clist_set_column_auto_resize() to remove need
9857         need for manual column width computations.
9858
9859 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
9860
9861         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
9862         ensuring Pango correctness, and considerably simplifying the
9863         code.
9864         
9865         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
9866
9867         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
9868         getting of numbers of lines.
9869
9870         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
9871         to the actual requested width of the lable, not to the wrap
9872         width we set.
9873
9874         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
9875
9876         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
9877           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
9878
9879         * gtk/gtktextview.c: Fix structure inheritance.
9880
9881         * gtk/gtkprogressbar.c: Pangoize.
9882
9883 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
9884
9885         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
9886         in a function.
9887
9888         * gtk/gtktextlayout.c (find_display_line_above): Fixed
9889         bug with computing line tops.
9890
9891         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
9892
9893 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9894
9895         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
9896         and y_offset coordinates to do what we need now. (The offset between
9897         buffer and layout coordinates has been reintroduced, but is a 
9898         bit different than before.)
9899
9900         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
9901         handle the adjustments ourselves, and scroll as necessary using
9902         the new gdk_window_scroll().
9903         
9904         The advantage of this is that when we are incrementally revalidating,
9905         we are essentially rearranging things around the visible portion
9906         of the screen. With the old setup, the visible portion of the
9907         screen was moved around in the layout, so scrolling and redrawing
9908         to track that caused jumping of the display. Since we now
9909         control the scrolling ourselves, we can suppress this and
9910         only redraw when things actually change.
9911
9912 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
9913
9914         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
9915         the region not just redisplay it after-all, since we store the
9916         cursors in the LineDisplay. (Ugly interactions here between
9917         GtkLayout and GtkTextBTree here.)
9918         
9919         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
9920
9921 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9922
9923         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
9924         Added function to scroll contents of a window while keeping the
9925         window constant. Works by XCopyArea or guffaw-scrolling depending
9926         on the details of how the window is set up. (guffaw-scrolling
9927         still needs to be filled in.)
9928
9929 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
9930
9931         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
9932         move the debugging that was tied to a global variable
9933         to that.
9934
9935         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
9936
9937         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
9938         validated flag, in line data instead of setting height/width to
9939         -1. This allows us to perform operations with partially invalid
9940         buffer (using the old size for invalid lines) and thus to do
9941         incremental vaidation. Keep height/width aggregates up to date
9942         when deleting text and rebalancing the tree.
9943
9944         * gtk/gtktextbtree.[ch]: Add functions validate a line
9945         (gtk_text_btree_validate_line), and to validate up
9946         to a number of pixels (gtk_text_btree_validate).
9947
9948         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
9949         that indicates that something is changed and a revalidation
9950         pass is needed. Change ::need_repaint to ::changed, and
9951         make it take old and new yranges instead of a rectangle.
9952
9953         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
9954         the line_data_destroy() function from 
9955         gtk_text_btree_add_view() to a virtual function in 
9956         GtkTextLayout
9957
9958         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
9959         since we are handling partial repaints in a different fashion
9960         now.
9961
9962         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
9963         of the selection instead of queueing a repaint on the
9964         entire widget.
9965
9966         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
9967         get_selection_bounds() down to btree, make the function
9968         in buffer a wrapper around the btree function.
9969
9970         * gtk/gtktextlayout.[ch]: Add functions to check if the
9971         layout is valid and to recompute either a range of pixels
9972         aroudn a line or a certain total number of pixels.
9973
9974         * gtk/gtktextlayout.[ch]: Cache a single line display;
9975         now that we only redraw the needed portions, the hit rate
9976         for this cache is quite high.
9977         
9978         * gtk/gtktextview.[ch]: Keep track of the first paragraph
9979         on the screen so that when re-laying-out the buffer, we can
9980         keep the same place. This requires connecting to ::value_changed
9981         on the adjustments
9982
9983         * gtk/gtktextview.[ch]: Add idle functions to revalidate
9984         the buffer after we receive an ::invalidated signal.
9985         
9986 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
9987
9988         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
9989         to max of allocation and layout size, not just to the
9990         layout size.
9991
9992         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
9993         Invalidate window so it gets redrawn properly.
9994
9995         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
9996         to mean the entire window.
9997
9998         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
9999         into public header.
10000
10001 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10002
10003         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
10004         to get the name of a mark.
10005
10006         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
10007         to find the paragraph from a y position.
10008
10009 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
10010
10011         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
10012         nodes have width/height >= 0, not > 0.
10013
10014 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
10015
10016         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
10017         Add a size_only flag, so when we only need the size, we don't create
10018         useless appearance attributes.
10019
10020         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
10021         duplicate setting of font description.
10022
10023         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
10024
10025 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10026
10027         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10028         EXTRA_DIST. It does not work well when the file that
10029         everything depends on is not in the tarball.
10030
10031 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10032
10033         * gtk/testgtk.c: Some hacks and fixes so that it basically
10034         works when not sitting in the GTK+ build tree.
10035
10036 2000-05-03  Havoc Pennington  <hp@redhat.com>
10037
10038         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
10039         Properly determine the ordering of the tag root and the current
10040         line within the tree. Previous algorithm only worked if the tag
10041         root's immediate parent was the common root of both the current
10042         line and the tag root.
10043
10044 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
10045
10046         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
10047         alignment.
10048
10049         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
10050         the widget text directional dynamically.
10051
10052         * gtk/gtktextview.[ch]: Added functions to get and set default
10053         wrap mode.
10054
10055 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
10056
10057         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
10058         in cursor location computation.
10059
10060 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
10061
10062         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
10063         vadjusment values properly when layout gets smaller.
10064
10065         * gtk/gtktextview.c (need_repaint_handler): Areas being
10066         passed in are far completely inaccurate, and sometimes
10067         too small, so, for now, just queue a redraw on the
10068         whole visible region.
10069
10070 2000-04-25  Havoc Pennington  <hp@redhat.com>
10071
10072         * gtk/gtktextbtree.c (summary_destroy): new function to 
10073         destroy tag summary nodes
10074         (gtk_text_line_next_could_contain_tag): this function was 
10075         totally broken if the line passed in wasn't below the tag
10076         root. Fix it.
10077         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10078         "wildcard" case, we have to do a linear scan. Blah.
10079         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10080         we have to do the linear scan
10081         (tag_removed_cb): When a tag is removed from the tag table, 
10082         remove the GtkTextTagInfo node from the btree.
10083         (gtk_text_btree_spew): Implement the spew function, for 
10084         our debugging pleasure.
10085
10086 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10087
10088         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10089         a problem with referring to the wrong buffer.
10090
10091         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10092
10093         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10094         font description to gtk_style_new() - otherwise things
10095         don't work without a .gtkrc file.
10096
10097         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10098         tags table if we create it ourself, too.
10099
10100         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10101         it was conflicting with XKB modifiers.
10102
10103         * gtk/gtktextview.[ch]: Add simple support for 
10104         GtkIMContext.
10105
10106 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10107
10108         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10109         with deletion from last commit.
10110
10111 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10112
10113         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10114         in the context from the current locale.
10115         
10116         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10117         context, not hardcoded value.
10118
10119         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10120         not logical.
10121
10122 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10123
10124         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10125         attributes - that doesn't handle partial-glyph selection
10126         properly. Instead use new pango_layout_line_get_x_ranges()
10127         functionality to draw the selection.
10128
10129         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10130         now properly handles out-of-range coordinates.
10131
10132         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10133
10134         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10135         public.
10136
10137         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10138         for paragraphs opposite to the base direction of the widget.
10139
10140         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10141
10142         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10143         causes Arabic words to reshape as you cursor through.
10144
10145         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10146         cursor position when moving vertically with the arrow keys and
10147         scrolling with page-up/page-down. (Arrow keys save only the X,
10148         scrolling saves both X and Y.)
10149
10150         This means you can line-up / line-down or page-up / page-down
10151         without losing your place, and also that moving vertically
10152         with the cursor keys keeps the same X position, not the same
10153         character count:
10154
10155         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10156         arrow keys move by display lines, not paragraphs.
10157
10158 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10159
10160         * gtk/gtklayout.c: Make sure that the bin window is at least
10161         as big as the allocation. (Should we also make sure that the
10162         bin window is big enough to completely cover widget->window?)
10163
10164         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10165         function to get the onscreen rectangle.
10166
10167         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10168         for offsets in window coordinates.
10169
10170 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10171
10172         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10173         confusion.
10174
10175         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10176         from the widget direction.
10177
10178         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10179         Add a "direction" attribute.
10180
10181         * gtk/gtktextview.c: global s/tkxt/text_view/.
10182
10183         * gtk/testtext.c: Added long block of text in Arabic, to test out
10184         the direction attributes. (Some problems with the shaping system
10185         for arabic become obvious - like the fact the cursor splits words
10186         into unjoined pieces.)
10187
10188 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10189
10190         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10191
10192         * gtk/gtktextlayout.c: Fix up alignment.
10193
10194         * gtk/testtext.c: Add some tests for centering, wrapping.
10195
10196 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10197
10198         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10199         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10200         If we wrote GTK+-specific layout-render function this could just replace
10201         the draw_layout() operation in the vtable.
10202
10203         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10204         pango_layout_get_cursor_pos() and use that function.
10205
10206         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10207         is a non-static symbol.
10208
10209         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10210         with gtk_text_btree_find_line_by_y()
10211
10212         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10213         renderer that handles GtkTextAppearance attributes.
10214
10215         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10216
10217           - Move the values in the style that don't affect geometry into a
10218             GtkTextAppearance structure.
10219           - Change underline to take a PangoUnderline and "font" a string
10220             representation of a font description
10221           - Add a "font_desc" attribute which takes a FontDescription structure.
10222
10223         * gtk/gtktextlayout.[ch]:
10224
10225           - Get rid of the display-line list per each line. Instead, we
10226             generate, on demand, a GtkTextLineDisplay structure which]
10227             contains a PangoLayout * and other necesary information
10228             (offsets, cursor locations) for displaying a paragraph.
10229           - Get rid of the code to wrap lines, create display chunks,
10230             etc. Instead, we just go through a paragraph and convert
10231             it into the necessary inputs to a PangoLayout.
10232           - Implement a new attribute type, GtkTextAttrAppearance. This
10233             holds a GtkTextAppearance, and is used to pass colors, 
10234             stipple, etc, through from the layout to the display without
10235             having to use lots and lots of individual attributes.
10236           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10237             in terms of PangoLayout functions.
10238         
10239         * gtk/gtktextview.c: 
10240          
10241           - Handle passing the necessary PangoContext to the layout
10242           - Some fixups in painting to deal with the automatic backing store
10243             and offsetting of GTK+-1.4
10244           - Add a style_set handler so that the default style reacts
10245             properly to theme changes.
10246         
10247         * gtk/gtktext?*.[ch]: Random code-style fixes.
10248
10249         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10250
10251 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10252
10253         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10254         in original form preparatory to Pango-ization and gdkimcontext-ization.
10255
10256 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10257
10258         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10259         so that we can derive from gtkimcontext in language bindings properly.
10260
10261 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10262
10263         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10264         Add a compose table including (almost) all the compose combinations
10265         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10266         data in the XIM implementation.
10267
10268         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10269         Moved functions to convert keyvalues from and to unicode here from
10270         the win32 port and made them public.
10271
10272 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10273
10274         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10275
10276 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10277
10278         * gtk/gtkimcontext.[ch]: Base class for new input context system
10279
10280         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10281         the real input context implementation to be loaded from modules
10282         and switched on the fly.
10283
10284         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10285         context that just does direct keysymbol => unicode translation.
10286
10287         * gtk/gtkentry.[ch]: Start switching editing over to using
10288         GtkInputContext. (No handling of preedit yet.)
10289
10290 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10291
10292         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10293         many substitutions. (klass should not be subsituted.)
10294
10295 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10296
10297         * configure.in: Add checks for Pango
10298
10299         * configure.in docs/Makefile.am: Add test for sgml2html
10300         and allow 'make dist' without building html, but print out
10301         warnings in that case. (For making snapshots)
10302
10303         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10304         Add Pango libraries and C flags
10305
10306         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10307         Add function (gdk_draw_layout) to draw a pango layout.
10308
10309         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10310         for getting Pango contexts for GDK.
10311
10312         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10313
10314         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10315         editing.
10316
10317         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10318         keysym => unicode translations. More languages can be added
10319         here, but real input-method support is needed.
10320
10321         * docs/Changes-1.4.txt: Added note about entry behavior.
10322         
10323         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10324         to set the reading direction for a widget and the global direction.
10325         Add test which allows toggling the global direction. Two private
10326         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10327
10328         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10329           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10330
10331         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10332
10333         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10334         underlining now handled by Pango.
10335
10336         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10337         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10338         is temporary.)
10339
10340         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10341         convenience functions for creating contexts and layouts for widgets.
10342
10343         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10344
10345 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10346
10347         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10348         titles to be active, even if they aren't visible.
10349         (gtk_clist_column_titles_passive):  Ditto.
10350
10351 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10352
10353         * gtkmenu.c:
10354         * gtkmenu.h:
10355         * gtktypeutils.h: Spelling/grammar fixes in comments.
10356
10357 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10358
10359         * gdk/nanox/*.h: add missing header files.
10360
10361 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10362
10363         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10364         send_event to TRUE.
10365         (gtk_drawing_area_size): queue a resize.
10366
10367 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10368
10369         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10370         the handlers, also invalidate them. bug nailed down by Karl Nelson
10371         <kenelson@ece.ucdavis.edu>.
10372
10373 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10374
10375         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10376         "(nil)" foundries, patch from Grigorios Magklis.
10377
10378         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10379         on non-available fonts, based on a patch by Grigorios Magklis
10380         <maglis@cs.rochester.edu>.
10381
10382 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10383
10384         * gdk/x11/gdkregion-generic.c: If a region does not have any
10385         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10386         instead of GDK_OVERLAP_RECTANGLE_IN.
10387
10388 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10389
10390         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10391         OFFSCREEN, as it is no longer necessary.
10392
10393 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10394
10395         * gtk/gtkcolorsel.c: Patch from David Santiago
10396         <mrcooger@cyberverse.com> to change things so that the 
10397         indicator of the active palette entry is done independently,
10398         not via the focus, since it should always be visible.
10399
10400 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10401
10402         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10403         refcount leaks as in the X11 backend.
10404
10405         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10406         cosmetics.
10407
10408         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10409         backend. Add _gdk_windowing_window_destroy().
10410
10411         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10412         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10413         either, but these probably do exist on nanox?)
10414         
10415         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10416         which isn't necessarily defined by <math.h>.
10417
10418         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10419         ancestry past GtkObject.
10420
10421         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10422         from DLL on Win32.
10423
10424         * gtk/gtk.def: Update corresponding to recent changes.
10425
10426         * gtk/makefile.{cygwin,msc}: Updates.
10427
10428 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10429
10430         * docs/Changes-1.4.txt: A bit of editing.
10431
10432         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10433         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10434         to clear the update area for the window, and clear it
10435         when hiding a window.
10436
10437         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10438         if window destroyed.
10439
10440         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10441
10442         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10443         gdk_window_destroy() to the generic code, since there was a lot of 
10444         window-system-independent logic it in. Add a function:
10445         
10446          _gdk_window_destroy() 
10447
10448         to the internal API to destroy a window without unreferencing it.
10449         Add a function:
10450
10451          _gdk_windowing_window_destroy()
10452
10453         That does the windowing-system-dependent part of destroying 
10454         the window.
10455
10456 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10457
10458         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10459
10460 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10461
10462         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10463         Make gtk_widget_shape_combine_mask() keep a reference count on
10464         the pixmap since it keeps it around.
10465
10466 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10467
10468         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10469         leak.
10470
10471         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10472         leak with event filters.
10473
10474 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10475
10476         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10477         signal handlers with the right data arguments. (Fixes
10478         some warnings when a widget was repeatedly set as a drag
10479         destination.)
10480
10481         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10482         window so we can avoid avoid setting the DND properties on the
10483         toplevel window repeatedly.
10484
10485 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10486
10487         * gdk/win32/gdkwin32.h: Define more message types missing from
10488         mingw headers.
10489
10490         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10491         call gdk_window_destroy_notify(). It was never called. This
10492         probably meant that the GdkWindow was never freed. Thanks Owen for
10493         noticing (!).
10494
10495         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10496         window as destroyed before calling DestroyWindow(). DestroyWindow()
10497         causes a call to the window procedure (gdk_WindowProc), which
10498         calls gdk_event_translate(), which calls
10499         gdk_window_destroy_notify(), which gets confused unless the window
10500         is set as destroyed.
10501
10502         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10503         this function to indicate it's win32 only. Put inside #ifdef
10504         G_ENABLE_DEBUG.
10505
10506         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10507         debugging function. (gdk_event_translate:) Add a default branch
10508         that uses the above function to print debug messages with all
10509         Windows messages symbolically.
10510
10511         * gdk/win32/gdkprivate-win32.h: Declare it, and
10512         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10513
10514 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10515
10516         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10517         public header file.
10518
10519 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10520
10521         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10522
10523         * gtk/gtktext.c: made the adjustments no-construct args, simply
10524         provide default adjustments.
10525         (gtk_text_destroy): release adjustments.
10526
10527         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10528         adjustment argument non-construct.
10529
10530         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10531         instead of in finalize.
10532         (gtk_progress_get_text_from_value): 
10533         (gtk_progress_get_current_text): 
10534         (gtk_progress_set_value): 
10535         (gtk_progress_get_percentage_from_value): 
10536         (gtk_progress_get_current_percentage): 
10537         (gtk_progress_set_percentage): 
10538         (gtk_progress_configure): ensure an adjustment is present.
10539
10540 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10541
10542         * gtk/gtkcolorsel.[hc]:
10543         * gtk/gtkcolorseldialog.[hc]:
10544         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10545         their parent implementation, use bit fields for boolean values, don't
10546         create unused widgets, usage of glib types, braces go on their own
10547         lines, function argument alignment, #include directives etc. etc. etc..
10548
10549         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10550
10551 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10552
10553         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10554
10555         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10556         of NULL.
10557
10558         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10559         to freed data.
10560         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10561
10562         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10563         to NULL when the toplevel is getting destroyed.
10564         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10565         (gtk_menu_destroy): 
10566         (gtk_menu_init): store the information of whether we have to
10567         readd the initial child ref_count during destruction in a new
10568         GtkMenu field needs_destruction_ref_count.
10569
10570         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10571         here, those reading: learn from my mistake! ;)
10572         in order for set_?adjustment to support a default adjustemnt if
10573         invoked with an adjustment pointer of NULL, the code read (pseudo):
10574         if (v->adjustment) unref (v->adjustment);
10575         if (!adjustment) adjustment = adjustment_new ();
10576         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10577         now imagine the first unref to actually free the old adjustment and
10578         adjustment_new() creating a new adjustment from the very same memory
10579         portion. here, the latter comparision will unintendedly fail, and
10580         all hell breaks loose.
10581         (gtk_viewport_set_hadjustment):
10582         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10583         after unreferencing it.
10584
10585         * gtk/gtkcontainer.[hc]: removed toplevel registration
10586         functions: gtk_container_register_toplevel(),
10587         gtk_container_unregister_toplevel() and
10588         gtk_container_get_toplevels() which had wrong semantics
10589         anyways: it didn't reference and copy the list.
10590
10591         * gtk/gtkwindow.c: we take over the container toplevel registration
10592         bussiness now. windows are registered across multiple destructions,
10593         untill they are finalized. the initial implicit reference count
10594         users are holding on windows is removed with the first destruction
10595         though.
10596         (gtk_window_init): ref & sink and set has_user_ref_count, got
10597         rid of gtk_container_register_toplevel() call. add window to
10598         toplevel_list.
10599         (gtk_window_destroy): unref the window if has_user_ref_count
10600         is still set, got rid of call to
10601         gtk_container_unregister_toplevel().
10602         (gtk_window_finalize): remove window from toplevel list.
10603         (gtk_window_list_toplevels): new function to return a newly
10604         created list with referenced toplevels.
10605         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
10606
10607         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10608         adjustment a non-construct arg.
10609         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10610         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10611         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10612
10613         * gtk/gtkrange.c: added some realized checks.
10614         (gtk_range_destroy): get rid of the h/v adjustments in the
10615         destroy handler instead of finalize. remove timer.
10616         (gtk_range_get_adjustment): demand create adjustment.
10617
10618         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10619         we simply create them on demand now and get rid of them in
10620         the destroy handler.
10621         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10622         destroy handler instead of finalize.
10623         (gtk_viewport_get_hadjustment): 
10624         (gtk_viewport_get_vadjustment): 
10625         (gtk_viewport_size_allocate): demand create h/v adjustment
10626         if required.
10627
10628         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10629         gtk_widget_real_destroy () functionality.
10630         (gtk_widget_real_destroy): reinitialize with a new style, instead
10631         of setting widget->style to NULL.
10632
10633 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10634
10635         * gtk/gtkcalendar.c:
10636         * gtk/gtkbutton.c: ported _get_type() implementation over to
10637         GType, either to preserve memchunks allocation facilities,
10638         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10639
10640         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10641         over. prepare for ::destroy to be emitted multiple times.
10642         removed reference tracer magic. chain into GObjectClass.shutdown()
10643         to emit ::destroy signal.
10644
10645         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10646         fundamental.
10647
10648         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10649         cludge.
10650
10651         * gtk/gtksocket.c:
10652         * gtk/gtkplug.c:
10653         * gtk/gtklayout.c:
10654         * gtk/gtklabel.c:
10655         * gtk/gtkargcollector.c:
10656         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10657         not being a fundamental anymore, and to work with the new
10658         type system (nuked fundamental type varargs clutter).
10659
10660         * gtk/*.c: install finalize handlers in the GObjectClass
10661         part of the class structure.
10662         changed direct GTK_OBJECT()->klass accesses to
10663         GTK_*_GET_CLASS().
10664         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10665
10666         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10667         GType. made most of the GTK_*() type macros and Gtk* typedefs
10668         simple wrappers around macros and types provided by GType.
10669         most notably, a significant portion of the old API vanished:
10670         GTK_TYPE_MAKE(),
10671         GTK_TYPE_SEQNO(),
10672         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10673         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10674         GTK_TYPE_ARGS,
10675         GTK_TYPE_CALLBACK,
10676         GTK_TYPE_C_CALLBACK,
10677         GTK_TYPE_FOREIGN,
10678         GtkTypeQuery,
10679         gtk_type_query(),
10680         gtk_type_set_varargs_type(),
10681         gtk_type_get_varargs_type(),
10682         gtk_type_check_object_cast(),
10683         gtk_type_check_class_cast(),
10684         gtk_type_describe_tree(),
10685         gtk_type_describe_heritage(),
10686         gtk_type_free(),
10687         gtk_type_children_types(),
10688         gtk_type_set_chunk_alloc(),
10689         gtk_type_register_enum(),
10690         gtk_type_register_flags(),
10691         gtk_type_parent_class().
10692         replacements, where available are described in ../docs/Changes-1.4.txt.
10693         implemented compatibility functions for the remaining API.
10694
10695         * configure.in: depend on glib 1.3.1, use gobject module.
10696
10697 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10698
10699         * TODO.xml: Various updates to current status.
10700
10701 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10702
10703         * gtk.m4: Print out version when test succeeds.
10704
10705 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10706
10707         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10708         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10709         
10710         (Original triangle color selector from Simon Budig
10711         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10712         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10713         Santiago <mrcooger@cyberverse.com>)
10714
10715         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10716         out into a separate widget.
10717
10718         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10719         and opacity controls.
10720
10721 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10722
10723         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10724         snuck in prematurely.
10725
10726 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10727
10728         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10729         had deleted a ! operator by mistake, which caused
10730         GDK_SELECTION_CLEAR events never to be generated, which caused
10731         only the first copy to the clipboard from an gtkeditable to
10732         actually cause a copy to the Windows clipboard.
10733
10734 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10735
10736         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10737         compilation, too. Current mingw gcc distributions include the
10738         necessary headers. Also the necessary IIDs are now in mingw
10739         headers/libraries, and own definitions unnecessary.
10740
10741         More hacking on OLE2 DND, still doesn't work though, and thus
10742         ifdeffed out.
10743
10744         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10745         here, too.
10746
10747 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10748
10749         * gdk/nanox/*: nano-X port work in progress.
10750         * gdk/simple.c: simple test for Gdk.
10751         * README.nanox: notes about the port: read this first!
10752         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10753         with nano-X.
10754
10755 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10756
10757         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10758         gdk_window_clear() into common code, implement in terms of
10759         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10760         not redirected to the backing rectangle.
10761
10762 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10763
10764         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10765         EXTRA_DIST. It does not work well when the file that
10766         everything depends on is not in the tarball.
10767
10768 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10769
10770         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10771         with recursion where process_updates() is called from
10772         an expose handler. (GtkTextView is highly broken in
10773         doing this, but it should work, so it is a nice test
10774         case.)
10775
10776 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10777
10778         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10779         handle the case where updates are queued during processing of
10780         updates.
10781
10782 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10783
10784         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
10785         window is on gdk_display - use that instead of segfaulting.
10786
10787 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
10788
10789         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
10790         broken and require an empty arg, give it to them.
10791
10792 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
10793
10794         * gtk/gtklabel.h: indentation fixes.
10795
10796 2000-05-02  Tor Lillqvist  <tml@iki.fi>
10797
10798         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
10799         draw too narrow or too low arcs, they seem to fail, at least with
10800         some display drivers.
10801
10802         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
10803
10804         Large changes to the Win32 backend, partially made necessary by
10805         the changes to the backend-independent internal
10806         structures. Attempts to implement similar backing store stuff as
10807         on X11. The current (CVS) version of the Win32 backend is *not* as
10808         stable as it was before the no-flicker branch was merged. A
10809         zipfile with that version is available from
10810         http://www.gimp.org/win32/. That should be use by "production"
10811         code until this CVS version is usable. (But note, the Win32
10812         backend has never been claimed to be "production quality".)
10813
10814         * README.win32: Add the above comment about versions.
10815
10816         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
10817
10818         * gdk/gdk.def: Update.
10819
10820         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
10821         presumably be replaced by some more better mechanism as 1.4 gets
10822         closer to release shape.
10823
10824         * gdk/makefile.{cygwin,msc}: Update.
10825
10826         * gdk/win32/*.c: Correct inclusions of the backend-specific and
10827         internal headers. Change code according to changes in these. Use
10828         gdk_drawable_*, not gdk_window_* where necessary.
10829
10830         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
10831         our old DND.
10832
10833         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
10834         to interpret single characters as UTF-8. Thanks to Hans Breuer.
10835         Use correct function name in warning messages.
10836
10837         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
10838         GSourceFuncs gdk_event_prepare and gdk_event_check.
10839         (gdk_event_get_graphics_expose): Do implement, use
10840         PeekMessage. Thanks to Hans Breuer.
10841         (event_mask_string): Debugging function to print an GdkEventMask.
10842         (gdk_pointer_grab): Use it.
10843
10844         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
10845         (old) book I used claimed was Hangul actually is CJK Unified
10846         Ideographs Extension A. Also, Hangul Syllables were missing.
10847         Improve logging.
10848
10849         * gdk/win32/gdkgc-win32.c: Largish changes.
10850
10851         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
10852         g_win32_getlocale() from GLib, and not setlocale() to get current
10853         locale name.
10854
10855         * gdk/win32/gdkprivate-win32.h
10856         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
10857         gdkwin32.h, similarily as in the X11 backend.
10858
10859         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
10860         assignment was used instead of equals in if test. Thanks to Hans
10861         Breuer.
10862
10863         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
10864         the X11 version.
10865
10866         * gdk/win32/makefile.{cygwin,msc}
10867         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
10868         path to the Win32 headers that works also with the mingw compiler.
10869
10870         * gtk/gtkstyle.c: Include <string.h>.
10871
10872 2000-04-26  Havoc Pennington  <hp@redhat.com>
10873
10874         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
10875         replacing the broken gtk_label_get ()
10876
10877 2000-04-15  Havoc Pennington  <hp@pobox.com>
10878
10879         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
10880         this keeps scanner scripts from getting confused.
10881
10882         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
10883         data, rather than void
10884
10885 2000-04-15  Tor Lillqvist  <tml@iki.fi>
10886
10887         * gtk/gtkclist.c (gtk_clist_motion)
10888         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
10889         with is_hint FALSE, get x and y from the event. They used to be
10890         used uninitialised. The Win32 backend never sends motion events
10891         marked as hints. This for instance fixes the annoying file and
10892         font selector behaviour in the Win32 version.
10893
10894 2000-04-14  Tor Lillqvist  <tml@iki.fi>
10895
10896         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
10897         gtk_private_n_signals variables, they are used by some software,
10898         sigh.
10899
10900         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
10901         installation directory from the Registry, where the installer
10902         should have put it.
10903
10904 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
10905
10906         * gdk/x11/Makefile.am: Fix problem with installation directory for
10907         gdkx.h
10908
10909         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
10910         <mrcooger@cyberverse.com> so that when selecting menus with the
10911         mouse, the first item will not be selected, but when selecting
10912         with an accelerator, or navigating left-right on a menubar with
10913         the menus popped up, the first item will be selected.
10914
10915 2000-04-05  Dan Damian  <dand@dnttm.ro>
10916
10917         * configure.in: Added "ro" to ALL_LINGUAS.
10918
10919 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
10920
10921         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
10922         indentation.
10923
10924         * Makefile.am (EXTRA_DIST): Fix typo.
10925
10926         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
10927         to catch gdkconfig.h
10928
10929         * gtk/gtkitemfactory.c: Added FIXME.
10930
10931 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
10932
10933         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
10934         s/return_if_fail/return_val_if_fail/g and add a return value.
10935
10936 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10937
10938         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
10939         merge slipup.
10940
10941         * gdk/gdkinput.h: Fix missing line from merge.
10942
10943 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
10944
10945         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
10946         instead of gdkprivate.h.
10947
10948 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
10949
10950         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
10951         parent class to correctly be GtkDialogClass.
10952
10953 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
10954
10955         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
10956         toplevel windows and their immediate children by their parents,
10957         since the size of toplevel windows is out of our immediate
10958         control and we don't get any real benefit from trying to track
10959         this size for clipping.
10960
10961         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
10962         for input_only windows.
10963
10964         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
10965         to fix some hacks and make sure that we don't try to set the
10966         background of input only windows.
10967
10968 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
10969
10970         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
10971         the _really_ internal stuff, and leave gdkprivate.h for the fake private
10972         stuff that we've traditionally exposed.
10973
10974         * gdk/**.c: Use gdkinternals.h where appropriate.
10975
10976         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
10977         not include gdkprivate-x11.h, move all stuff of conceivable public
10978         interest into gdkx.h; keep all really private stuff in
10979         uninstalled header gdkprivate-x11.h.
10980
10981         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
10982         image->image_put on windows through a new function _gdk_window_draw_image()
10983         to allow us to do backing store for images. (Sort of ugly)
10984
10985         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
10986         contexts locally so that we can offset them properly when drawing 
10987         onto backing pixmaps.
10988
10989         * gdk/gdkinput.h: Reindented
10990
10991         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
10992         pixmap or color for the window, so we can properly initialize
10993         our double-buffer pixmaps, and also so that we temporarily set
10994         a background of None while scrolling.
10995
10996         * gdk/gdkregion.h: Revise region boolean operators to have an
10997         interface that is actually convenient - switch from creating new
10998         regions on every op, to "methods" that modify existing regions
10999         (A = A OP B). 3 argument forms which allow dest == src, would also
11000         be possible, but the current interfaces seem to map nicely
11001         onto what needs to be done. (There is quite a lot of region
11002         code in GDK now.)
11003
11004         * gdk/gdkregion.h: Add constructor from rectangle and a copy
11005         operator.
11006
11007         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
11008         gdkpoly-generic.h: Copy region code from Xlib, switch it over
11009         to 32 bit coordinates, modify it to be mostly GTK+ style
11010         and to have interfaces that match gdkregion.h.
11011
11012         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
11013         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
11014         create a backing pixmap and redirect all drawing to
11015         that backing pixmap until a matching gdk_window_end_paint().
11016
11017         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
11018         Create a special drawable class for GtkWindow's that 
11019         redirects the drawing to the backing pixmap as necessary
11020         and then calls the real operations in _gdk_windowing_window_class.
11021
11022         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
11023         Store invalid region for each window. Generate expose events for invalid
11024         region in an idle. This replaces both the expose compression
11025         and the redrawing queuing in GTK+. It is both more efficient and
11026         simpler than either one individually and far more so then the
11027         combination.
11028
11029         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
11030         Emulate 32 bit coordinates for windows with 16 bit coordinates
11031         by offsetting drawing, guffaw scrolling techniques and
11032         mapping/unmapping child windows as necessary.
11033
11034         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
11035         where, when invalid regions are processed, the region is stored,
11036         and if expose events come in that are detectably duplicate
11037         the processed exposes (by comparison of event serial numbers),
11038         the stored region is subtracted out of those exposes.
11039
11040         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
11041         regions newly exposed when scrolling or resizing windows.
11042         This, combined with forcing processesing of queued invalidated
11043         regions, gives nice flicker-free scrolling.
11044
11045         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
11046         invalidated regions after every scroll.
11047
11048         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
11049         emulation in GDK. Its, for all practical purposes just a
11050         GtkViewport/GtkFixed hybrid now.
11051
11052         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
11053         (16-bit) structures as necessary instead of just casting.
11054
11055         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
11056         in terms of the structures from gdkregion-generic.c, using appropriate
11057         offsets from GDK to X11 coordinates. Cache clip mask and
11058         origin and ts origin locally and only flush to the server
11059         when drawing, to avoid constantly setting and resetting these
11060         values when offsetting GC's for scrolling and backing pixmaps.
11061
11062         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
11063
11064         * gtk/gtkcontainer.c: Call process_all_updates at end
11065         of resizing to reduce flicker. (Avoids having redraw
11066         lag arbitrarily behind resize under some circumstances)
11067
11068         * gtk/gtkentry.c: Remove old backing store code, and simply take
11069         advantage of the new backing store capabilities of GDK.
11070
11071         * gtk/gtkmain.c: Simple implementation of widget backing
11072         store - simply push a paint while handling each expose.
11073         (Should really be configurable widget for widget.)
11074         
11075         * gtk/gtkwidget.c: Remove all the old complicated redraw
11076         code, and simply invalidate the GDK windows from
11077         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11078         debugged complexity ... gone to the winds.)
11079
11080         Remove all the code for suppressing expose events while
11081         resizes are pending; this isn't needed since the invalid
11082         areas won't be processed until after the resizes are
11083         processed, since they are in a lower priority idle.
11084
11085 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11086
11087         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11088         and height of dest rectangle for non-intersecting rectangles.
11089
11090 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11091
11092         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11093         for GdkRectangle.
11094
11095 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11096
11097         * gdk/gdk{events,image,private,types,window}.h
11098          gdk/x11/gdkinputprivate.h: Change all coordinates
11099          from int16 to int. Also, Change width and height from
11100          unsigned to signed to avoid all the stupid C 
11101          signedness bugs.
11102
11103 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11104
11105         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11106         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11107         Add some more detailed checking.
11108
11109         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11110         New function to retrieve the depth of a drawable.
11111
11112         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11113         field, reorder fields to save memory. 
11114
11115 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11116
11117         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11118         of the background image instead of scaling the background down to
11119         a line.
11120
11121         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11122         which temporarily set slider to wrong size.
11123
11124         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11125         queue_clear().
11126
11127 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11128
11129 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11130
11131         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11132
11133 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11134
11135         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11136         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11137
11138         * gdk/win32/gdkfont-win32.c
11139         * gdk/win32/gdkproperty-win32.c
11140         * gdk/win32/gdkselection-win32.c
11141         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11142         now declared such.
11143
11144 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11145
11146         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11147
11148 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11149
11150         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11151         is called without trapping X errors.
11152
11153 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11154
11155         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11156         way into the fontset lists.
11157
11158 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11159
11160         * gtk/gtkthemes.h: add extern "C" scope.
11161
11162 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11163
11164         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11165         to make appends to the list constant. (gtk-guy-990901-0.patch)
11166
11167 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11168
11169         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11170         for the typename hash table.
11171
11172 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11173
11174         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11175         to make sure we never divide by zero. 
11176         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11177
11178 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11179
11180         * gtk/gtkfontsel.c: Apply patch from
11181         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11182         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11183
11184         Also, some cleanups in atom handling.
11185
11186 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11187
11188         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11189         not GtkWidget.
11190
11191 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11192
11193         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11194         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11195         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11196         more guint wrap-around bugs before going to bed.
11197
11198 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11199
11200         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11201         guint wrap arounds in allocation.width.
11202
11203         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11204         process untill we fit the allocation given.
11205
11206 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11207
11208         * gtk/gtkwidget.c:
11209         (gtk_widget_unrealize): guard widget access with ref/unref
11210         around signal emission.
11211         (gtk_widget_hide): same here, but also check its destroyed
11212         state before queueing a resize.
11213
11214 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11215
11216         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11217         of gtk_default_insensitive_bg as insensitive base color.
11218
11219         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11220         to the widget's state.
11221         (gtk_text_realize): same here.
11222         (gtk_text_state_changed): same here.
11223         (draw_bg_rect): compare background color against base[] from
11224         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11225
11226 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11227
11228         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11229         grabs are active, unless a delete event is send to the toplevel
11230         of the currently grab holding widget.
11231
11232 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11233
11234         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11235         debugging g_print's.
11236
11237 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11238
11239         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11240         ever make the scrolled-window requisition ever depend on the 
11241         visibility state of the scrollbars for the AUTOMATIC policy. 
11242         This breaks the GTK+ requisition model, and causes loops.
11243
11244 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11245
11246         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11247         the default font to avoid problems with XFree86-4.0 where the
11248         default charset is iso10646-1, not iso8859-1.
11249
11250 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11251
11252         * acinclude.m4
11253         * config.guess
11254         * config.sub
11255         * ltconfig
11256         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11257
11258         * gtk/Makefile.am: minor cosmetic consistency tweak
11259
11260 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11261
11262         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11263         the activate_time to 0, so that we handle a quick
11264         press/release press/release properly and don't suppress
11265         the second release. (Red Hat bug #7545)
11266
11267 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11268
11269         * gtk/gtkctree.c (row_delete):
11270         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11271         bugs with destruction notifier, *always* update internal
11272         structures *before* calling user code.
11273
11274 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11275
11276         A few more fixes for bug #5487, #2051, #2677.
11277         * gtk/gtkclist.c : 
11278         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11279         not GDK_BUTTON_PRESS.
11280         (resync_selection): resync only if selection_mode is
11281         GTK_SELECTION_EXTENDED
11282         * gtk/gtkctree.c (resync_selection): same here
11283
11284 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11285
11286         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11287         gdk_drag_get_selection() and gtk_menu_detach().
11288
11289         [ From Jeroen Ruigrok/Asmodai ]
11290
11291 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11292
11293         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11294         page->tab_label can be NULL.
11295
11296 2000-01-25  Havoc Pennington  <hp@pobox.com>
11297         
11298         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11299         arg is boolean
11300
11301         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11302
11303         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11304
11305         * gdk/gdkproperty.c (gdk_property_get): return boolean
11306
11307         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11308
11309         * gdk/gdkim.c (gdk_im_ready): return boolean
11310
11311         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11312
11313         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11314         glib clash, should fix glib)
11315
11316         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11317         (gdk_get_show_events): return gboolean, and canonicalize 
11318         to TRUE/FALSE
11319
11320         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11321         colormap is private
11322         (gdk_colors_alloc): gboolean whether to be contiguous
11323         (gdk_color_equal): return gboolean since we are a predicate
11324         and not a qsort() (this looks semi-wrong due to glib breakage,
11325         IMO glib should be fixed)
11326         
11327         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11328         (gdk_get_use_xshm): return gboolean
11329         (gdk_pointer_is_grabbed): return gboolean
11330
11331         * gdk/gdk.h: Change prototypes to match all the above changes,
11332         and re-run egtk-format-protos as required.
11333
11334 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11335
11336         * gtk/gtkctree.c (resync_selection): 
11337         * gtk/gtkclist.c (resync_selection):
11338
11339         Return immediately if clist->drag_pos < 0. This is a workaround
11340         for the corrupt state that the clist gets into when a
11341         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11342
11343         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11344         
11345         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11346         variable from recent commit.
11347
11348 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11349
11350         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11351
11352 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11353
11354         * gtk/Makefile.am: prefix all autogenerated source that get build in
11355         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11356         in builddir. since we subsequently cd into srcdir for autogeneration,
11357         the paths have to be stripped from the target file names, thusly we
11358         use $(@F) as target names now.
11359         put a comment about configure.in's --disable-rebuilds option,
11360         which can be used for non-writable source directories, for development
11361         setups though, srcdir has to be *writable*.
11362
11363 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11364
11365         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11366           Finish the job of allowing event to be NULL.
11367           (Fixes bug #4283, reported by Chris Blizzard)
11368
11369         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11370           things so that the cursor appears on screen, properly
11371           take into account INNER_BORDER.
11372           (Fixes bug #4754, reported by Antonio Campos)
11373
11374 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11375
11376         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11377           show the tab_label unless it itself is visible.
11378
11379           gtk/gtknotebook.c (gtk_notebook_size_request):
11380           Do a better job of making sure that the visibility
11381           of the tab label corresponds to whether it should
11382           be mapped or not.
11383
11384 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11385
11386         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11387           Use the requisition, not the allocation, since the
11388           allocation has not necessarily been computed yet.
11389           (Pointed out by Eugene Osintsev)
11390
11391 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11392
11393         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11394           style/base[GTK_STATE_INSENSITIVE] both to
11395           gtk_default_insensitive_bg!
11396           (Bug #2187, reported by Jonathan Blandford)
11397
11398         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11399           Add Alt_L, Alt_R to list of invalid accelerators.
11400           (Bug #3736, reported by Vlad Harchev)
11401
11402 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11403
11404         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11405         bugs which occured after an attempt to open 
11406         invalid home directory left cmpl_state->reference_dir == NULL.
11407
11408          - completion on files in home directory didn't work
11409          - completion on an empty string caused  segfault
11410
11411          (Bug #3678, reported by Steve Ratcliffe)
11412
11413         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11414         cut and paste error that was causing scales to
11415         be incorrectly positioned.
11416         (Bug #2956,
11417          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11418
11419 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11420
11421         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11422         when checking for dcgettext, if we've found we needed
11423         it for dgettext.
11424 +
11425 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11426
11427         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11428         queue_clear on NO_WINDOW widgets during a reparent,
11429         since at that point the window and widget heirarchies
11430         are out of sync. This stops crashing in some cases
11431         (the scrolled window reparent test, for instance), and
11432         _probably_ won't cause drawing errors.
11433
11434         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11435         test do what it was supposed to do and be robust against
11436         window closings, etc. (Bug #2443)
11437
11438 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11439
11440         * gtk/gtkentry.c: Fix return values on mouse events.
11441         (Bug #2686, Sky <seb_sky@yahoo.com>)
11442
11443         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11444         (pointed out by George Lebl)
11445
11446         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11447         (From Ettore Perazzoli  <ettore@helixcode.com>)
11448  
11449 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11450
11451         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11452         clicks between rows or outside calender area correctly.
11453         (Patch from Damon Chaplin)
11454
11455         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11456         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11457           Call destroy function when overwriting existing data. 
11458           (Pointed out by Damon Chaplin)
11459
11460 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11461
11462         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11463           which was causing problems on various systems with Xmu.
11464           This hasn't been needed for a very long time.
11465           (Fixes #1185 3167)
11466
11467 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11468
11469         * gdk/gdki18n.h: Include <ctype.h> when defining
11470           gdk_isw* in terms of is* as a fallback.
11471           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11472
11473 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11474
11475         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11476           realize the widget when it is size allocated!
11477           (old, old bug)
11478
11479         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11480           Removed unused call to gdk_window_get_size() that
11481           showed up when the above was fixed.
11482
11483 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11484
11485         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11486           fix up widget->window when the widget is a
11487           NO_WINDOW container widget.
11488
11489 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11490
11491         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11492           to account for the fact that feof() does _not_ 
11493           return TRUE on errors, and thus avoid infinite loops
11494           when trying to use gdk_pixmap_create_from_xpm()
11495           on unreadable values.
11496
11497 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11498
11499         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11500
11501 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11502
11503         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11504           gdk_gc_set_dashes to take gint8 instead of gchar to
11505           make it clearer that it is _not_ a NULL terminated string.
11506
11507         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11508           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11509           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11510           arguments.
11511
11512 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11513
11514         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11515         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11516         background size relative to our allocation, guard against small
11517         allocations, we may have not yet been size allocated.
11518
11519 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11520
11521         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11522         not just version == 3. We implement all 3 + most of 4 - 
11523         (we don't support matching text/plain;charset=iso-8859-1
11524         to a dest that expects text/plain). We'll still advertise
11525         3 to be safe, but any client implementing version >= 3
11526         must interoperate with 3.
11527         
11528 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11529
11530         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11531         background and gc members, add a warning in gtk_tooltips_set_color()
11532         indicating that this function is deprecated.
11533
11534 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11535
11536         * docs/gtkfaq.sgml: FAQ Update:
11537           - Minor cleanups (Emmanuel, me)
11538           - New questions:
11539                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11540                 How can I retrieve the text from a GtkMenuItem? (timj)
11541                 How do I validate/limit/filter the input to a GtkEntry? (me)
11542                 Memory does not seem to be released when I free the list
11543                         nodes I've allocated (timj)
11544
11545 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11546
11547         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11548         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11549         for which it is no use to call GetLastError onWin9x.
11550         (gdk_other_api_failed) New function, for general error
11551         reporting without calling GetLastError.
11552         (gdk_win32_api_failed) OTOH, this function always calls
11553         GetLastError. (gdk_win32_last_error_string) Remove this function,
11554         GLib has the equivalent now.
11555
11556         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11557         call them with function name, file name and line number in the
11558         arguments.
11559
11560         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11561         functions.
11562         
11563         * gtk/gtk.def: Add some missing entry points.
11564
11565         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11566         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11567         
11568         Fixes by Hans Breuer:
11569
11570         * gdk/makefile.msc: Update for debugging.
11571
11572         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11573         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11574         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11575         in the dash_list.
11576
11577         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11578         the x11 backend.
11579
11580         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11581
11582         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11583
11584 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11585
11586         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
11587         just pixel value of background colour.
11588
11589         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
11590         containing code snippet previously duplicated in a couple of
11591         places.
11592         
11593         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
11594         gdk_colormap_color.
11595
11596         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
11597         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
11598         events for autorepeated Shift, Control and Alt keys. Use
11599         gdk_colormap_color.
11600
11601         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
11602         pointer is inside the window the cursor of which we are setting,
11603         call SetCursor immediately.
11604
11605         * gdk/win32/makefile.cygwin
11606         * gtk/makefile.cygwin: If we don't have the build number stamp
11607         file, use zero.
11608
11609         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11610         gtk_paned_set_gutter_size as empty.
11611
11612         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11613         
11614 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11615
11616         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11617           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11618           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11619           docs/gtk_tut.sgml docs/gtk.texi TODO:
11620
11621           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11622
11623 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11624
11625         * gtk/gtkcalendar.c: Implement num_marked_dates,
11626           and don't emit mutiple day_selected signals on
11627           month_prev.
11628
11629 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11630
11631         * docs/make-todo (lineno): let title and logo be configurable so
11632         that GNOME can use this script too.
11633
11634         * TODO.xml: added logourl and a title
11635
11636 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11637
11638         * TODO.xml: Added some UI items, and an explanatory
11639         comment at the top of the file.
11640
11641 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11642
11643         * TODO.xml: some updates, added abunch of new entries.
11644         a note for those fiddeling with this file, when done
11645         with it, invoke:
11646         $ ./docs/make-todo TODO.xml >/dev/null
11647         and correct output errors before comitting changes.
11648
11649 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11650
11651         * TODO.xml: Added XML-structured TODO file.
11652         * docs/make-todo: python script to turn TODO.xml into
11653           pretty XML output. 
11654
11655 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11656
11657         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11658         the function to let it draw the seven dots, instead of the old,
11659         much maligned, method.
11660         (draw_dot): New function to draw a dot.
11661
11662         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11663         to draw the handle inside the border width as opposed to outside.
11664         Use paint function instead of gdk_draw_point.
11665
11666         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11667         to draw the handle inside the border width as opposed to outside.
11668         Use paint function instead of gdk_draw_point.
11669
11670         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11671         Change indenting to be more GTK like.
11672
11673 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11674
11675         * docs/gtk_tut.sgml: New section on GtkCalendar
11676         * examples/calendar: Update example code
11677
11678 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11679
11680         * docs/gtkfaq.sgml: FAQ Update
11681
11682 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11683
11684         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11685         to prevent the scroll event to be propagated upwards.
11686
11687 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11688
11689         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11690         OwnerGrabButtonMask from button entries for
11691         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11692
11693         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11694         to the event mask (which will result in button/press release
11695         being added to the event mask on Unix) so scrolling works
11696         for layouts in scroll windows.
11697
11698         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11699
11700         Patch from Anders Carlsson  <andersca@gnu.org> to add
11701         a scroll event.
11702
11703         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11704         scrolling to the "Test Scrolling" part of testgtk.
11705  
11706         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11707  
11708         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11709         it against GDK_SCROLL.
11710  
11711         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11712         way of mouse wheel scrolling.
11713  
11714         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11715  
11716         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11717  
11718         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11719  
11720         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11721         gdk_event_mask_table.
11722  
11723         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11724         GdkEventScroll handler.
11725  
11726         * gdk/gdkevents.h: Added GdkEventScroll structure.
11727  
11728 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11729
11730         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11731         and Anders Carlsson to change the Paned widgets so that they
11732         can be dragged from anywhere along the length. Also change
11733         the way that this is drawn to make this apparent.
11734
11735         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11736         from George Lebl to check that option_menu->menu is present
11737         before getting history.
11738
11739 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11740
11741         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11742         before the assertion for non-NULL segment list.
11743
11744         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11745         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11746         machine, but it might be display driver dependent. Sigh, so make
11747         sure the stipple is that size. Does Windows suck or what?
11748
11749         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11750         places.
11751
11752 2000-02-13  Havoc Pennington  <hp@pobox.com>
11753
11754         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11755         refcount to 1
11756         (gdk_cursor_new): init refcount to 1
11757
11758         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11759
11760 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11761
11762         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11763         so that we don't have to do unnecessary settings to the HDC.
11764
11765         * gdk/win32/gdkdrawable-win32.c
11766         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11767         gdk_gc_predraw.
11768
11769         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11770         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11771         GDI paths, call WidenPath to get the outline of the stroken path,
11772         and then fill the outline (with the brush that was built from the
11773         stipple).
11774
11775         * gdk/win32/gdkgc-win32.c: Factor out common code from
11776         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11777         gdk_win32_gc_values_to_win32values. Use correct colour for
11778         SetBkColor() (Until now the code actually used a random colour in
11779         the call to SetBkColor()... but that didn't show up as not many
11780         GDI APIs use the background colour. Pattern (opaque stippled)
11781         brushes do.)
11782
11783         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
11784         gdk_win32_api_failed): New functions for error logging.
11785
11786         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
11787         WIN32_API_FAILED to call them, passing function or file name and
11788         line number.
11789
11790         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
11791
11792         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
11793         GdkColor for foreground and background in GdkGCWin32Data.
11794
11795         * gdk/makefile.cygwin: Link in the resource object separately.
11796
11797         * gdk/win32/rc/gdk.rc
11798         * gtk/gtk.rc (New file)
11799         * gdk/win32/makefile.cygwin
11800         * gtk/makefile.cygwin: Update build number in DLLs automatically,
11801         as in GLib.
11802
11803 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
11804
11805         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
11806         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
11807         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
11808         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
11809         parameters given and cursor->ref_count. coding style fixups.
11810
11811         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11812         not GtkWidget.
11813         
11814         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
11815         fix up widget macros and add _GET_CLASS() variant.
11816         
11817         * gtk/*.c: some GtkType fixups.
11818
11819 2000-02-09  Tor Lillqvist  <tml@iki.fi>
11820
11821         * gdk/win32/gdkproperty-win32.c
11822         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
11823         were reversed.
11824
11825 2000-02-04  Tor Lillqvist  <tml@iki.fi>
11826
11827         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
11828         g_filename_to_utf8 to convert the font names Windows gives us from
11829         whatever is the default codepage to UTF-8.
11830         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
11831         in the other direction.
11832
11833         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
11834         error in debugging output.
11835
11836 2000-02-02  Tor Lillqvist  <tml@iki.fi>
11837
11838         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
11839         and height parameters to gdk_window_clear_area(). Not minus one.
11840
11841 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
11842
11843         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
11844         checks if the widget passed to gtk_drag_get_data() was not the
11845         dest widget.
11846
11847 2000-02-01  Tor Lillqvist  <tml@iki.fi>
11848
11849         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
11850         g_filename_from_utf8 functions (which were added a moment ago to
11851         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
11852         size buffers.
11853
11854         gtk_file_selection_get_filename returns the filename in the C
11855         runtime encoding. It calls g_filename_from_utf8, but copies the
11856         returned string to a static buffer, which is returned. I think
11857         this is better than returning the result from g_filename_from_utf8
11858         directly, which would mean all apps that use it would have to free
11859         the return value. Or should this function care about this issue at
11860         all? Maybe a new function with clearly defined semantics.
11861
11862         * gtk/gtkfilesel.h: Add comment about
11863         gtk_file_selection_get_filename returning the filename in the C
11864         runtime's encoding.
11865
11866         * README.win32
11867         * gdk/gdk.def
11868         * gdk/makefile.{cygwin,msc}
11869         * gtk/gtk.def: Updates.
11870
11871         * gdk/gdkcursor-win32.c: Initialise refcount.
11872
11873 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
11874
11875         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
11876
11877 2000-01-30  Havoc Pennington  <hp@pobox.com>
11878
11879         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
11880         destroy
11881
11882         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
11883
11884         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
11885         implemented in platform-specific code
11886
11887         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
11888
11889         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
11890         underscore in front
11891
11892         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
11893         put an underscore in front
11894
11895         * gdk/gdkcursor.c: new file, implements
11896         gdk_cursor_ref/gdk_cursor_unref
11897
11898         * gdk/gdkcursor.h: Refcount GdkCursor
11899
11900         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
11901
11902 2000-01-29  Tor Lillqvist  <tml@iki.fi>
11903
11904         * gdk/gdkwindow.h
11905         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
11906
11907 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11908
11909         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
11910         structures to properly inherit from GtkWidget not GtkBin.
11911
11912 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
11913
11914         * gtk+.spec.in: Added lib/gtk+/include/* to %files
11915         (bug #5178 - Peter Wainright)
11916         
11917         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
11918         so that it will be installed.
11919         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
11920
11921 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
11922
11923         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
11924         for the GtkStyleClass vtable const.
11925
11926         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
11927         take a const string argument like GtkTranslateFunc. This will
11928         require changes in use code.
11929
11930 2000-01-19  Tor Lillqvist  <tml@iki.fi>
11931
11932         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
11933         semantics (to mimic the X11 backend, which just calls XClearArea)
11934         is to check for zero width (and height), and in that case use the
11935         window's width minus x (height minus y). This fixes for instance
11936         some redraw problems with gtkclist, which were easily noticeable
11937         in the gtk file selection widget.
11938
11939         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
11940         windows.
11941
11942 2000-01-13  Tor Lillqvist  <tml@iki.fi>
11943
11944         * configure.in
11945         * gdk/Makefile.am
11946         * gdk/x11/Makefile.am
11947         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
11948         (bug #5177).
11949         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
11950         out later.
11951
11952 2000-01-09  Tor Lillqvist  <tml@iki.fi>
11953
11954         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
11955         WM_MOVE for iconified or invisible windows. This fixes various
11956         problems when minimising windows. Thanks to Bernd Herd.
11957
11958 2000-01-05  Tor Lillqvist  <tml@iki.fi>
11959
11960         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
11961         backend's draw_lines method, not draw_points.
11962
11963 2000-01-02  Tor Lillqvist  <tml@iki.fi>
11964
11965         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
11966         before Owen's reorganisation: Don't have queued_events and
11967         queued_tail statics in this file, but use gdk_queued_events and
11968         gdk_queued_tail. This makes exposure event compression work again.
11969
11970         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
11971         seem to be needed?
11972
11973 1999-12-30  Tor Lillqvist  <tml@iki.fi>
11974
11975         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
11976         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
11977         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
11978         doesn't do anything.
11979
11980         * gdk/gdk.def: Add gdk_xid_table_insert.
11981
11982         * gdk/win32/gdkprivate-win32.h
11983         * gdk/win32/gdkevents-win32.c
11984         * gdk/win32/gdkinput-win32.c
11985         
11986         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
11987         extension_events field in the GdkWindowWin32Data struct. Use only
11988         the extension_events field in GdkWindowPrivate. Previously one was
11989         set, and the other one tested, which broke tablet
11990         functionality. Thanks to Keishi Suenaga for pointing this out.
11991
11992 1999-12-18  Tor Lillqvist  <tml@iki.fi>
11993
11994         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
11995         When handling a single character (text length == 1), don't handle
11996         it as if it was UTF-8.
11997
11998 1999-12-11  Tor Lillqvist  <tml@iki.fi>
11999
12000         * Makefile.am: Distribute README.win32.
12001         
12002         * gdk/Makefile.am
12003         * gdk/win32/Makefile.am: Distribute Win32 files.
12004
12005         * gdk/makefile.msc: New file.
12006
12007         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
12008         after label).
12009
12010         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
12011         gdk_error_code as GDKVAR, as they are referred outside GDK.
12012
12013         * gdk/win32/makefile.msc: Update.
12014
12015         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
12016         tweaks. Check only if at least one of those Unicode subrange bits
12017         we care for is set. If no code page bits are set, guess (wildly)
12018         based on the charset.
12019
12020         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
12021
12022         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
12023         non-NULL.
12024
12025         * gtk/gtkdnd.c
12026         * gtk/gtklayout.c
12027         * gtk/gtkplug.c
12028         * gtk/gtkselection.c
12029         * gtk/gtksocket.c
12030         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
12031         appropriate. There must be a cleaner way to handle this?
12032
12033         * gtk/gtkrc.c: Must include windows.h on Win32.
12034
12035         * gtk/testgtk.c: No need to include gdkx.h.
12036
12037         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
12038
12039 1999-12-07  Tor Lillqvist  <tml@iki.fi>
12040
12041         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
12042         the rbearing is set to the same as the width, but this should be
12043         fixed.
12044
12045 1999-12-06  Tor Lillqvist  <tml@iki.fi>
12046
12047         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
12048         function. If Windows doesn't tell us what Unicode subranges a font
12049         covers, guesstimate based on the codepages it covers. This will
12050         hopefully help those Windows versions or fonts that don't give us
12051         any useful Unicode subrange information with GetTextCharsetInfo.
12052         Call this function in gdk_font_load_internal.
12053
12054         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
12055         minor changes.
12056
12057 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
12058
12059         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
12060         New function, long needed.
12061
12062 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
12063
12064         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
12065         only_if_exists argument of gdk_atom_intern to
12066         bool.
12067
12068 1999-11-25  Tor Lillqvist  <tml@iki.fi>
12069
12070         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
12071         Fix two copy&paste errors.
12072
12073         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
12074         win32 has changed.
12075
12076         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12077         GdkWin32SingleFont struct.
12078
12079         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12080         subranges of loaded fonts. Clear font signature first, in case
12081         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12082         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12083
12084         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12085         Unoffset clip region.
12086
12087 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12088
12089         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12090         event->any.window before calling filter functions.
12091
12092 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12093
12094         * gtk/gtkgamma.h: Adapt cast macros to standard.
12095
12096 [ Merges from 1.2 ]
12097
12098 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12099
12100         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12101         If translation does not include a '/', use entire
12102         translation instead of crashing.
12103
12104 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12105
12106         * docs/gtk_tut.sgml:
12107         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12108
12109 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12110
12111         * gtk/gtkselection.c (gtk_target_list_remove): Use
12112         g_list_remove_link, not g_list_remove.
12113
12114         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12115         
12116 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12117
12118         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12119         statement upon unselection (how the heck did that slip in?).
12120
12121 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12122
12123         * gtk/gtktext.c (gtk_text_freeze): 
12124         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12125         in frozen state (and aparently crashes). patch provided by Anders
12126         Melchiorsen <and@kampsax.dtu.dk>.
12127
12128 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12129
12130         * fix insensitive default/focus widget activation,
12131         reported by Matt Goodall <mgg@isotek.co.uk>.
12132
12133         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12134         (gtk_window_activate_default):
12135         (gtk_window_activate_focus):
12136         return handled=FALSE for actiavtion of insensitive default
12137         widgets. return handled=TRUE for activation of insensitive
12138         focus widgets. don't activate in either case.
12139
12140 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12141
12142         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12143         and $glib_cflags to match library order and in the
12144         theory that an old version of GLib is more likely to
12145         be in the include directory for X then vice-versa.
12146         (Bug #2776)
12147
12148 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12149
12150         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12151         to determine the locale for fontsets, not LC_MESSAGES;
12152         the user may want English messages with a handling
12153         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12154         will still be broken) (Bug #2891)
12155
12156 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12157
12158         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12159
12160 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12161
12162         * gtk/gtkrc.ko: Changed the Korean default fontset.
12163
12164 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12165
12166         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12167         where when scrolling to the left or top double exposes
12168         were done, causing major slowdowns.
12169
12170 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12171
12172         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12173         names to lowercase and alphanumeric, before looking
12174         them up.
12175
12176         * gtk/Makefile.am: Install codeset variant gtkrc files
12177         with normalized names.
12178
12179 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12180
12181         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12182         popup menus when the menu is already visible, but its parent
12183         is still hidden, (happens after tornoff window got hidden).
12184
12185 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12186
12187         * gtk/Makefile.am (install-data-local): Fix
12188         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12189         deleted, causing error messages on install.
12190
12191 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12192
12193         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12194         the handle as well, since we now sometimes ignore
12195         exposes on the handle while resizing.
12196
12197 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12198
12199         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12200         extra g_free introduced in one of the last one or two 
12201         commits.
12202
12203 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12204
12205         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12206         consistent, put each style that a gtkrc.* file creates
12207         in a unique namespace, remove old files before installing.
12208
12209 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12210
12211         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12212         gtk_rc_init is called multiple times. (Yes, people who
12213         do that have bugs in their code.)
12214
12215 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12216
12217         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12218         Remove it since it's generated by the Makefile anyway
12219
12220 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12221
12222         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12223         device->info.axes for core pointer.
12224
12225 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12226
12227         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12228         idle_id, to deal with obsolete, broken C libraries.
12229
12230 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12231
12232         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12233         allocation->x/y twice!
12234
12235         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12236         consistent with gtk_vscale_pos_trough().
12237
12238 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12239
12240         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12241         be queueing a resize on a toplevel container between
12242         the time we show it and when we map it. So, we need
12243         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12244         use GTK_WIDGET_DRAWABLE() for child windows.
12245
12246 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12247
12248         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12249         (fixes bug #2144)
12250
12251 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12252
12253         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12254         container DRAWABLE (instead of VISIBLE), so we don't queue
12255         resizes on non-toplevel containers.
12256
12257 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12258
12259         * gtk/gtkselection.[ch]: Make the data argument
12260         const guchar *.
12261
12262 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12263
12264         * gtk/gtkwindow.c: Try to behave sensibly if 
12265         the focus widget is the window itself. (Should
12266         we allow this at all?)
12267
12268 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12269
12270         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12271         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12272         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12273         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12274         in prototypes and implementations consistent (Tomas Ogren).
12275
12276         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12277         before the widget is unparented (reported by damon).
12278
12279         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12280         since we provide unsigned data anyways.
12281
12282 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12283
12284         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12285         the call to gtk_tooltips_layout_text() until later.
12286
12287         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12288         Call gtk_widget_ensure_style() before using the style.
12289
12290 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12291
12292         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12293         for old widgets that don't propagate draws to all
12294         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12295
12296 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12297
12298         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12299         for a redraw but just the widget that requested the resize.
12300
12301 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12302
12303         * gtk/gtkcontainer.c: added new widget level method
12304         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12305         reallocate_redraws : 1 to reflect the setting, exported this through
12306         the argument system as a boolean ::reallocate_redraws.
12307
12308         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12309         on the widget because the allocation changes, do so as well for
12310         widget->parent if the parent has reallocate_redraws set to TRUE.
12311         with that containers requesting reallocation redraws get automatically
12312         redrawn if their children changed allocation (this unfortunately
12313         affects also other children that didn't change allocation, but we
12314         cannot work around that before 1.3).
12315
12316 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12317
12318         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12319         _and_ height are >0 (not _or_).
12320
12321         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12322         instead of gtk_container_queue_resize(), which is a core gtk internal
12323         function (must have been on crack when i queued that).
12324
12325         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12326         we can check more reliably if we want to discard expose events.
12327         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12328         flag.
12329         
12330         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12331         we simply trust these events. for deciding whether to discard exposes,
12332         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12333         
12334 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12335
12336         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12337         queues of areas that are completely off screen.
12338
12339         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12340         logic for handleboxes.
12341
12342         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12343         check on width/height.
12344
12345 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12346
12347         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12348         we are fine with using $@ the way we do (if we actually encounter
12349         brokeness with $@ in VPATH builds because of additional path prefixes,
12350         we need to use $(@F) actually).
12351
12352 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12353
12354         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12355         short lived bugs, that would allow language bindings to do surgeries
12356         to our guts.
12357
12358 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12359
12360         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12361         where comparison was being done against an uninitialized
12362         value causing intermittant results depending on
12363         compiler flags. Also make it clearer that we aren't
12364         ever initializing the child as 0x0 (though this will
12365         be caught in gtk_widget_size_allocate())
12366
12367 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12368
12369         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12370         gtk_window_unset_transient_for() call after we do checks
12371         involving the old transient parent.
12372         [ From Lance Capser <lmc@cyberhighway.net> ]
12373
12374 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12375
12376         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12377         an empty file.
12378
12379 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12380
12381         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12382         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12383
12384 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12385
12386         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12387         `$@' is valid only in the build dir, not after we've done 
12388         `cd $srcdir'.  Also use `test -f' instead of less portable
12389         `test -e'.
12390
12391 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12392
12393         * gtk/gtktext.c (correct_cache_insert): Rewrite
12394          for simplicity, and hopefully correctness.
12395          (Fixes bug #1322, which was a segfault when
12396           on some insertions with the properties around
12397           the insertion set up just wrong.)
12398
12399         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12400          a "changed" signal, clamp the new value to the adjustment
12401          bounds to avoid segfaulting if someone tries to change
12402          the adjustment to a bogus value. (Bug #1795)
12403
12404 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12405
12406         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12407         for children, for toplevel windows handle them
12408         like delete_event.
12409
12410         * gtk/gtkplug.c: Add an unrealize handler so that
12411         we unref plug->socket_window when we are done
12412         with it.
12413
12414 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12415
12416         * gtk/gtktext.c (clear_area): Fix stupid signedness
12417          problem that was causing background to sometimes
12418          be misaligned.
12419
12420 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12421
12422         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12423         
12424         * gtk/gtkmenu.c (gtk_menu_position): Make
12425          sure we never position menus with negative x, y,
12426          since gtk_widget_set_uposition() can't handle that.
12427
12428         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12429          Modify the positioning code a bit so that we always
12430          put the top-left corner onscreen. (This is for
12431          UI reasons, gtk_menu_position() now takes care of
12432          gtk_widet_set_uposition() brokeness.)
12433
12434 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12435
12436         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12437
12438 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12439
12440         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12441           RC style that is passed in. The lack of the ref
12442           before was a bug. If people worked around this
12443           bug, this will introduce a slight memory leak
12444           in their code. The code should typically look like:
12445
12446             rc_style = gtk_rc_style_new ();
12447             [...]
12448             gtk_widget_modify_style (widget, rc_style);
12449             gtk_rc_style_unref (rc_style);
12450
12451         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12452           the style if it was already set.
12453
12454         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12455           style if it was set before.
12456
12457 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12458
12459         * gtk/testgtk.c (main): Add a check to see if we
12460           are being run from the correct directory and
12461           to quit nicely if we are not.
12462
12463         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12464           static.
12465
12466 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12467
12468         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12469
12470         * gtk/gtkwindow.c:
12471         queue resizes unconditionally (gtk_widget_queue_resize will figure
12472         what to do if the window is not realized).
12473         (gtk_window_move_resize): only recenter the window
12474         for GTK_WIN_POS_CENTER_ALWAYS.
12475         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12476         the same way as GTK_WIN_POS_CENTER.
12477
12478 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12479
12480         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12481         with (!(info->last_flags & GDK_HINT_POS)) instead of
12482         (!info->last_flags & GDK_HINT_POS).
12483
12484         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12485         new_height unconditionally, because we use these values even if
12486         !default_size_changed && !hints_changed.
12487         comented the (default_size_changed || hints_changed) case with
12488         respect to resize rejects from the window manager.
12489
12490         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12491         in the zvt condition hack, since this includes the window hints, set
12492         the hints after the handling_resize case.
12493
12494         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12495         window is initially shown with to the geometry.
12496
12497 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12498
12499         * gtk/gtkwindow.c (gtk_window_move_resize):
12500         s/size_changed/default_size_changed/g so i know what's
12501         really going on (frying brain on smaller flame now).
12502
12503 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12504
12505         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12506         we have size_changed upon handling_resize. this is a gross
12507         workaround for the broken zvt widget and should be removed in
12508         1.3 again (search for FIXME).
12509         Owen provided an accurate comment for this:
12510
12511         /* We could be here for two reasons
12512          *  1) We coincidentally got a resize while handling
12513          *     another resize.
12514          *  2) Our computation of size_changed was completely
12515          *     screwed up, probably because one of our children
12516          *     is broken. It's probably a zvt widget.
12517          *
12518          * For 1), we could just go ahead and ask for the
12519          * new size right now, but doing that for 2)
12520          * might well be fighting the user (and can even
12521          * trigger a loop). Since we really don't want to
12522          * do that, we requeue a resize in hopes that
12523          * by the time it gets handled, the child has seen
12524          * the light and is willing to go along with the
12525          * new size. (this happens for the zvt widget, since
12526          * the size_allocate() above will have stored the
12527          * requisition corresponding to the new size in the
12528          * zvt widget)
12529          *
12530          * This doesn't buy us anything for 1), but it shouldn't
12531          * hurt us too badly, since it is what would have
12532          * happened if we had gotten the configure event before
12533          * the new size had been set.
12534          */
12535
12536 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12537
12538         * gtk/gtkrc.c: deal properly with the fact that RC
12539           style lists may include rc styles more than once.
12540
12541         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12542           unused static function.
12543
12544         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12545           stack of directories of RC files currently being
12546           parsed and implicitely add them to pixmap path.
12547           
12548           This fixes a bug where the directory would get
12549           appended then overwritten by pixmap_path declarations.
12550
12551           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12552
12553         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12554           theme's exit function. (Patch from Peter Wainwright,
12555           bug #1454)
12556
12557         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12558           Add a destroy() handler to take care of removing
12559           group for menu item. (Fixes bug #1197)
12560
12561         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12562           in warning message.
12563
12564 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12565
12566         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12567         roundtrip to figure window's width and height, since we know that
12568         anyways from widget->allocation.
12569
12570 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12571
12572         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12573           the hints after we request the new size.
12574
12575 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12576
12577         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12578           GTK_WIDGET_REALIZED() assertion - we can compute the
12579           hints before we are realized.
12580
12581         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12582           hint changing so that we have a value of hints_changed
12583           when we decide whether to constrain the window size.
12584
12585         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
12586
12587         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
12588         change back to G_MAXINT.
12589
12590 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
12591
12592         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
12593         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
12594         contain uncluttered values.
12595         (gtk_window_compute_hints): simply assert that window is realized
12596         and that geometry_info is valid, since we rely on this anyways.
12597         (gtk_window_constrain_size): major cleanups to the code.
12598         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
12599         for the base size, instead of the minimums. use 32767 as max width
12600         and height (like in gtkwindow.c) instead of G_MAXINT.
12601
12602 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
12603
12604         * cleaned up the GtkContainer.need_resize flag handling mess, we
12605         only need to force resize requests when we were prematurely
12606         realized, or our widget tree was modified when we were temporarily
12607         hidden. handling these cases directly upon showing the window (i.e.
12608         while the GdkWindow is still unmapped) avoids the need to wait for
12609         a configure event response and therefore makes the GUI more snappier
12610         and avoids blank windows during the roundtrip.
12611
12612         * gtk/gtkwidget.c:
12613         (gtk_widget_hide): 
12614         (gtk_widget_show): don't queue resizes on toplevels, they know how
12615         to deal with matters.
12616
12617         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12618         flag directly for not visible resize containers and spare us unecessary
12619         signal emissions.
12620
12621         * gtk/gtkwindow.c:
12622         (gtk_window_realize): if we need to enforce premature size allocation,
12623         queue a container resize so we are correctly resized later on.
12624         (gtk_window_init):
12625         (gtk_window_size_request):
12626         don't freak around with the ->need_resize flag,
12627         gtk_container_queue_resize() will care about that.
12628         (gtk_window_show):
12629         handle initial resizing issues here, we can handle matters better in
12630         this place, especially since we know that our GdkWindow is still
12631         unmapped.
12632         (gtk_window_move_resize):
12633         don't care about ->need_resize at all.
12634         handle size changes properly that occoured while we waited for a
12635         configure event.
12636
12637 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12638
12639         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12640         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12641         Move the hint setting code from gtk_widget_set_uposition
12642         to here; set the hints so that we respect any previously
12643         set geometry hints.
12644
12645         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12646         change the window hints here or move the window here,
12647         let that happen in gtk_window_move_resize().
12648
12649 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12650
12651         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12652         to already queued resizes (and therefore redraws) on a widget, check
12653         its anchestry as well.
12654
12655         * gtk/gtkcontainer.c:
12656         (gtk_container_queue_resize): clear resize widgets for resize
12657         containers before aborting prematurely. this is especially important
12658         for toplevels which may need imemdiate processing or their resize
12659         handler to be queued.
12660         (gtk_container_dequeue_resize_handler): added new internal function for
12661         gtkwindow.c.
12662
12663         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12664         configure event, take possible changes in window position into account
12665         as well.
12666         if we request a new window size, queue up a resize handler that will
12667         last until the configure event response arrives.
12668         combined the ->need_resize case (initial show) with the general size
12669         (hints) changed case and added even more comments.
12670         if !auto_shrink, only revert to the old allocation if the new size
12671         is smaller than the current allocation.
12672
12673 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12674
12675         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12676                            gtk_window_set_geometry_hints
12677                            gtk_window_set_default_size):
12678         When hints are set, queue a resize so that the hints will
12679         be eventually reset on the toplevel.
12680
12681         * gtk/gtkwindow.c (gtk_window_show): Use
12682         gtk_window_compute_default_size(). Clear the need_resize flag
12683         on the initail map so that we don't unnecessarily trigger the
12684         resize code.
12685
12686         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12687         into separate functions. Compare the hints we are setting
12688         with what we set last time so that we can accurately
12689         tell when we need to reset the hints.
12690
12691         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12692         function to figure out the size from requisition
12693         and default_size.
12694
12695         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12696         from fvwm to constrain a size to the geometry hints.
12697
12698         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12699         to compare two sets of geometry hints.
12700
12701         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12702         from gtk_window_set_hints(), just compute the hints,
12703         don't set them.
12704
12705         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12706         code from gtk_window_move_resize() to separate function,
12707         rationalize a bit.
12708
12709 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12710
12711         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12712         structure into a new private structure.
12713
12714         * gtkrc.c: Split GtkRcStyle into public/private.
12715         In the private part, add a list of pointers to the
12716         RcStyle lists this RcStyle participates in.
12717
12718         * gtkrc.c: When a RcStyle is free, remove all
12719         lists referencing it from the 
12720         realized_style_ht hash, and free those lists.
12721         
12722         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12723         gtk_rc_init(), since that adds the default styles
12724         to the list of parsed RC files again.
12725
12726         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12727         
12728 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12729
12730         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12731         checks that ensure that a widget's allocation is at least 1 in width
12732         and height. (GNOME note: this doesn't affect old panel code anymore,
12733         because GtkSocket will request width and height of at least 1 since
12734         Fri Jul 23).
12735
12736         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12737         allocated yet (happens if the user realizes the window prematurely),
12738         size request and allocate it.
12739         (gtk_window_size_allocate): guard against guint underflows.
12740
12741 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12742
12743         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12744         in gtk_built_sources, so gtk.defs gets built prior to all other
12745         sources.
12746
12747 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12748
12749         * gtk/Makefile.am:
12750         invoke indent on gtkmarshal.*. 
12751         rewrote source generation rules, use COPYING as oldest source tag for
12752         a piggyback rule to generate all sources from (don't touch it ;).
12753         major cleanups, strip spaces on build rules for GNU Make.
12754
12755         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12756         source and target files from commandline arguments. don't invoke indent.
12757
12758 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12759
12760         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12761         notebook after switch to avoid drawing problems.
12762         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12763         
12764         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12765         show them instead. 
12766         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12767
12768 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12769
12770         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12771         notebook after switch to avoid drawing problems.
12772         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12773         
12774         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12775         show them instead. 
12776         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12777
12778 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12779
12780         * gtk/gtkwindow.c:
12781         we use window->need_resize from configure_event now, to indicate that
12782         the gtkwindow should keep its allocation (e.g. because the user resized
12783         the window through window manager handles). resize_count is now reliably
12784         used to figure whether we got the allocation we requested from the
12785         window manager.
12786         configure events get queued as resizes now, the real stuff (size
12787         computation and allocation) now only goes on in gtk_window_move_resize().
12788         GtkWindow's requisition now contains its *real* requisition (like all
12789         other widgets), *not* taking usize into account.
12790         geometry_info->last_{width|height} is now updated from set_hints() only
12791         so it always contains the last hints we set for the window manager.
12792         made some event handlers return TRUE instead of FALSE.
12793         the overall code should be much more straight forward now, and the
12794         significant code portions are accompanied by comments now.
12795         (gtk_window_set_hints):
12796         removed requisition argument and made it
12797         fetch the requisition through gtk_widget_get_child_requisition.
12798         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
12799         does that now.
12800         (gtk_window_show):
12801         ensure that the widget is realized before calling 
12802         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
12803         ensure that we got properly size requested and allocated before
12804         realization.
12805         (gtk_window_configure_event):
12806         ignore plain window moves, or reallocate the widget tree through the
12807         resize queue otherwise.
12808         (gtk_window_move_resize):
12809         mostly rewrote this function to figure window manager hints more
12810         reliably, coalesce window moves and resizes to reduce configure events
12811         and do actuall size allocations.
12812
12813 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12814
12815         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
12816         that have a resize pending, because a redraw is already queued for them.
12817
12818         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
12819         hack to clear resize_widgets.
12820
12821         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
12822         for resize containers prior to size allocation. (this is also a bit
12823         ugly, but avoids side effects for stopped emissions and is thus more
12824         reliable).
12825         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
12826
12827         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
12828         function from gtk_tooltips_expose, as we connect to ::expose_event
12829         *and* ::draw now.
12830
12831 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12832
12833         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
12834         checks.
12835         (gtk_target_list_unref): Likewise.
12836
12837         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
12838
12839 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
12840
12841         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
12842         guard against division by zero. (Fixes bug #1339)
12843
12844 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
12845
12846         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
12847         Prevent the trivial leak of information of allowing
12848         word motion when the entry is not visible.
12849
12850 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
12851
12852         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
12853         modality to error dialog as well as confirmation dialogs.
12854         (Bug #1803, reported by Rosanna Wing Sze Yuen)
12855
12856 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12857
12858         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
12859         tree->view_lines.
12860         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
12861
12862         * gtk/Makefile.am (install-data-local): Solaris apparently
12863         has various troubles with ln -f; use rm first instead.
12864         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
12865
12866 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
12867
12868         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
12869         use `cp' followed by `rm' (the `rm' was already there).
12870
12871 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12872         
12873         * configure.in: Fix autoconf warnings about cross compilation by
12874         trying to provide sane defaults for AC_TRY_RUN.
12875         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
12876         put them into $(srcdir) when generated. Also add a dependency of
12877         gtksignal.h on gtkmarshal.h for -j builds. 
12878         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
12879
12880 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
12881
12882         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
12883         GDK_THREADS_{LEAVE,ENTER} pair.
12884         (From Paul Fisher <pnfisher@redhat.com>)
12885
12886 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
12887
12888         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
12889         width and height are always >0 (owen).
12890
12891 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
12892
12893         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
12894         change that assured that a widget's allocated with and height are
12895         always >1, since this breaks *buggy* panel code. unfortunately this
12896         back-breaks the gimp's color selector.
12897
12898         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
12899         allocation is always >0 in width and height, before sending the
12900         configure event; this is a *gross* hack to get the gimp back to work.
12901         
12902         * marked both cases with TODO-1.3
12903
12904 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
12905
12906         * gtk/gtktext.c: Don't display wrap indicators when
12907         text is not editable and word wrap is on.
12908
12909 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
12910
12911         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
12912         option menus here as they are not derived from menu shell, assure that
12913         the option menu has a menu we can add items to.
12914
12915 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
12916
12917         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
12918         width/height to (gint) before calculations and check against < 0 to
12919         avoid guint wraparounds.
12920
12921 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
12922
12923         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
12924         width and height is never zero. sanity check both dimensions against
12925         32767 and issue a warning if the allocation is greater than that.
12926
12927 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
12928
12929         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
12930         to g_main_pending() as well.
12931
12932 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
12933
12934         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
12935         call to g_main_iteration() - since that will regrab
12936         GTK+ lock to process events.
12937
12938 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
12939
12940         * gtk/gtkwindow.c
12941         - Regularize with the rest of GTK+ by making widget->requisition
12942           not reflect the set_usize()
12943         - Always recompute geometry hints, then check if they
12944           changed before sending them to the X server. The
12945           previous checks for changes would fail in a number
12946           of circumstances. 
12947
12948 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
12949
12950         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
12951
12952 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
12953
12954         * gtk/gtkdnd.c:
12955         - Code cleanups
12956         - Instantaneously update on modifier key presses
12957         - Allow cancellation of the drag with Escape.
12958
12959 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
12960
12961         * gtk/testgtk.c (create_handle_box): Set the policy
12962         to auto_shrink - otherwise the appearance is rather
12963         strange when flipping between horizontal and vertical.
12964
12965 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
12966
12967         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
12968         (gtk_window_set_default_size): don't change a value if it's < 0.
12969         queue a resize.
12970
12971 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
12972
12973         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
12974
12975 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
12976
12977         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
12978         add an extra "/" when concating "/" + filename.
12979         (From Matt Grossman <mattg@oz.net>)
12980
12981 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
12982
12983         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
12984         for fg_gc if we set it for drawing pixmap.
12985
12986 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
12987
12988         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
12989         
12990         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
12991         already set, call old engine's destroy function and
12992         unref the old engine.
12993
12994 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
12995
12996         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
12997
12998 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
12999
13000         * gtk/gtkaccelgroup.h: mark certain functions as internal.
13001
13002 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
13003
13004         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
13005         expand behaviour changed.
13006
13007         * gtk/gtklabel.c (gtk_label_set_pattern):
13008         (gtk_label_set_justify):
13009         (gtk_label_set_line_wrap):
13010         don't bother invoking queue_clear, the reallocation does
13011         that for us, always free_words so the upcoming resize will
13012         relayout the label's contents.
13013
13014 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
13015
13016         * applied argument implementation patches from Elena Devdariani
13017         <elena@cogent.ca>.
13018
13019         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
13020         ::space_style, ::relief
13021         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
13022         * gtk/gtkpreview.c: ::expand
13023         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
13024         * gtk/gtknotebook.c: ::homogeneous
13025         * gtk/gtklabel.c: ::wrap
13026         * gtk/gtklist.c: ::selection_mode
13027         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
13028         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
13029         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
13030         * gtk/gtkclist.c: ::sort_type
13031         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
13032         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
13033
13034 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
13035
13036         * gtk/gtkstyle.c: Removed ill-thought-out part of last
13037         comment.
13038
13039 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
13040
13041         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
13042         counting right when we have to attach a new style
13043         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
13044
13045         * gtk/gtkstyle.c: Documented the refcounting
13046         peculularities of gtk_style_attach.
13047
13048 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13049
13050         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
13051         window types.
13052
13053         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
13054         of GTK_TOPLEVEL for creating the window.
13055
13056 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
13057
13058         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
13059         the last argument (reported by Per Winkvist).
13060         
13061 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
13062
13063         Fixes for invisible XOR lines (Frank Loemker
13064         <floemker@TechFak.Uni-Bielefeld.DE>)
13065         
13066         * gtk/gtkclist.c (gtk_clist_realize): Always use
13067         a non-zero pixel for GDK_XOR.
13068
13069         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
13070         Use GDK_INVERT instead of GDK_XOR.
13071
13072 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
13073
13074         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13075         signals if h/voffsets differ from adjustment values.
13076         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13077
13078 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13079
13080         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13081         ::selection-done emissions up to the topmost menu shell.
13082
13083 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13084
13085         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13086         the user data on the window before destroying it.
13087
13088         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13089         unrealize handler to take care of destroying 
13090         notebook->panel properly. 
13091         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13092
13093         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13094         of g_new and g_realloc to stop memory leak. (Actually,
13095         we could just use g_realloc(), but I'm not 100% sure
13096         that is portable).
13097         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13098
13099 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13100
13101         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13102
13103         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13104         for fontsets.
13105
13106         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13107         with bin/button confusion.
13108
13109 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13110
13111         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13112         and show how preselection of radio items is done.
13113
13114 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13115
13116         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13117         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13118         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13119         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13120         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13121         * gtk/gtktable.c (gtk_table_attach): 
13122         * gtk/gtklist.c (gtk_list_insert_items): 
13123         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13124         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13125         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13126         * gtk/gtkbin.c (gtk_bin_add): 
13127         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13128         * gtk/gtkfixed.c (gtk_fixed_put): 
13129         * gtk/gtklayout.c (gtk_layout_put):
13130         general fixups to container_add logic. always realize child if
13131         child->parent is realized, only map the child and queue a resize
13132         if child and child->parent are both visible.
13133
13134 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13135
13136         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13137         instead of gtk_container_foreach to walk and unrealize children, so
13138         composite children get also unrealized.
13139         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13140         (gtk_widget_map): assert that the widget is visible (basic constrain).
13141         (gtk_widget_real_map): assert that the widget is realized (basic
13142         constrain).
13143
13144 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13145
13146         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13147
13148 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13149
13150         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13151         file for iso-8859-2 locales.
13152
13153         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13154
13155 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13156
13157         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13158          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13159          Remove some suspicious and useless lines. 
13160
13161 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13162
13163         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13164         width,height = 0, 0 to mean - here to edge of window,
13165         instead of -1, -1, since the former is all we support.
13166
13167 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13168
13169         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13170         when removing from quit_functions list.
13171
13172 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13173
13174         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13175
13176 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13177
13178         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13179          When redrawing characters on non-visible entry, use appropriate
13180          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13181
13182 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13183
13184         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13185         from drag coordinates.
13186         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13187         use drag_dest_cell.
13188
13189         * gtk/gtktree (drag_dest_cell)
13190         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13191         (Bug #1129)
13192
13193 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13194
13195         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13196         translate_* fields.
13197         (gtk_item_factory_finalize): invoke translate_notify independant from
13198         translate_data.
13199         (gtk_item_factory_set_translate_func): likewise.
13200         (gtk_item_factory_destroy): only remove ifactory pointer from those
13201         widgets that belong to us (stupid me).
13202
13203 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13204
13205         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13206         rc_style list when lookup succeeeds.
13207
13208 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13209
13210         * gtk/gtkctree.c (resync_selection): 
13211         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13212         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13213         bug.
13214
13215 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13216
13217         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13218         Add some missing GDK_THREADS_ENTER()/LEAVE around
13219         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13220
13221 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13222
13223         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13224         rather than emit_by_name.
13225
13226         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13227         on the widget across multiple signal emissions.
13228         (gtk_editable_delete_text): same here.
13229         (gtk_editable_class_init): set widget_class->activate_signal after
13230         editable_signals[ACTIVATE] has been created.
13231
13232 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13233
13234         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13235         position here prematurely -- we might not have the
13236         right ->min_position and ->max_position yet.
13237
13238 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13239
13240         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13241         Add error traps so if the other end of the connection
13242         dies, we survive.
13243
13244         * gtk/gtkselection.c (gtk_selection_notify): Clean
13245         up properly when selection property retrieval fails.
13246         
13247         * gtk/gtkselection.c (gtk_selection_request): Correctly
13248         reject SelectionRequest notifies where the handler
13249         returns no data.
13250
13251 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13252
13253         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13254         when we've previously highlighted.
13255
13256         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13257         emit two "drag_leave" signals for Motif drops.
13258
13259         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13260         back the correct status messages when dropping from
13261         Motif onto a proxy window that is rejecting the
13262         drop.
13263
13264 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13265
13266         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13267         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13268         to compare two argument values. added gtk_arg_to_valueloc() to set a
13269         variable from an arg through its location (pointer).
13270
13271         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13272         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13273         as gfloat*, uchars are collected as guchar*, ints are collected as
13274         gint*, etc...
13275
13276 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13277
13278         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13279         Include <string.h> instead of <strings.h>.
13280
13281         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13282         (actually, a lot more duplicate includes occur if
13283          you trace through the sequence of #include's)
13284         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13285         
13286 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13287
13288         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13289         gtk-a-higuti-990322-[0-3]
13290
13291         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13292         that was causing -DX_LOCALE not to work.
13293
13294         * gtk/gtkrc.c (gtk_rc_init):
13295         X_LOCALE will never have LC_MESSAGES defined
13296
13297 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13298
13299         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13300         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13301
13302         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13303         left/right as well (gtk-michael-980726-0.patch.gz).
13304
13305         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13306         for pointer values, use gchar instead of char. fixed uline allocation
13307         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13308         chunks instead of G_ALLOC_ONLY.
13309         (gtk_label_size_request): always alter requisition as passed and leave
13310         widget->requisition alone.
13311         (gtk_label_set_text): allow NULL strings.
13312         (gtk_label_new): likewise.
13313
13314 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13315
13316         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13317
13318 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13319
13320         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13321         *and* mapped (i.e. drawable).
13322         (gtk_bin_expose): only send exposes to drawable children.
13323
13324         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13325         (gtk_box_expose): only send exposes to drawable children.
13326
13327         * gtk/gtkhscale.c (gtk_hscale_draw): 
13328         * gtk/gtkvscale.c (gtk_vscale_draw):
13329         hm, this is an ugly one. we first compute the size of our trough area
13330         here (window relative) and then check intersection with the draw_area
13331         which is parent relative because we're a NO_WINDOW widget, so we need
13332         to offset the trough area by allocation.x and allocation.y before the
13333         check. (this must not be done for the background area though, since
13334         that's already computed parent relative).
13335
13336 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13337
13338         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13339         unrealize title buttons.
13340
13341 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13342
13343         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13344         (gtk_clist_column_title_active): 
13345         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13346
13347         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13348         zero initialize event, removed superfluous gdk_window_get_pointer call
13349
13350         * gtk/gtklist.c (gtk_list_vertical_timeout)
13351         (gtk_list_horizontal_timeout): removed superfluous
13352         gdk_window_get_pointer call
13353
13354 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13355
13356         * plugging problems reported by "Bruce Mitchener, Jr."
13357         <bruce@puremagic.com> due to a purify session.
13358
13359         * gtk/gtkstyle.c:
13360         (gtk_style_ref): 
13361         (gtk_style_unref): assert ref_count to be > 0.
13362
13363         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13364         the requisition.
13365         (gtk_clist_set_shift): likewise.
13366
13367         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13368         adjustments.
13369
13370         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13371         event before sending it and set send_event to TRUE (which needs to
13372         be done for *all* synthesized events).
13373         (gtk_list_vertical_timeout): likewise.
13374
13375         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13376         leaks.
13377
13378         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13379         to TRUE when synthesizing events.
13380
13381 [ *** end of merges from 1.2 *** ]      
13382         
13383 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13384
13385         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13386         (or copied from gdkconfig.h.win32 on Win32, sigh).
13387
13388         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13389
13390         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13391
13392         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13393
13394         * gdk/gdkconfig.h.win32: New file.
13395
13396         * gdk/win32/makefile.cygwin: Build just a static archive here.
13397
13398         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13399         for the DLL from the static archive built above.
13400
13401         * gdk/gdk.def: Moved here from the win32 subdirectory.
13402
13403         * gdk/win32/*: Adapt for the changed private struct organisation.
13404
13405         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13406
13407 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13408
13409         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13410         for wheel mice (buttons 4 and 5).
13411
13412 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13413
13414         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13415         drawables use just the pixel field in the foreground and
13416         background GdkColor of the GdkGC.
13417
13418         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13419         GdkColors containing uninitialized (red,green,blue) fields, and
13420         just the pixel field filled in, and furthermore in the
13421         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13422         It thus turns out that we really don't need to have the full
13423         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13424         it later to have just the pixel values.
13425
13426 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13427
13428         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13429
13430 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13431
13432         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13433         New question on GtkLabel background colors.
13434
13435         * docs/gtk_tut.sgml:
13436           - Correct the example code callback
13437             function definitions.
13438           - Update the gtkdial example code, from Frans van Schaik.
13439           - Update setselection.c to current API.
13440
13441         * examples/Makefile examples/*/*.c: Update to code
13442         listed in tutorial.
13443
13444 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13445
13446         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13447         subrange table (from the "Developing International Software for
13448         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13449         block... Get the loaded font's charset correctly.
13450
13451         (Note that this, and the other *-win32.c files, still really are
13452         the old ones, the win32 subdirectory is not ready for compilation
13453         yet after the reorg.)
13454
13455 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13456
13457         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13458         check.
13459
13460 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13461
13462         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13463         on results of XQueryDeviceState().
13464
13465 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13466
13467         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13468         we need to accesss only ->children. We need an accessor
13469         for the children.
13470
13471         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13472         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13473         to get rid of gdkx.h include.
13474         
13475         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13476         and random references to 'None'.
13477
13478         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13479         Get rid of unused #include <gdk/gdkx.h>
13480
13481         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13482         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13483         gdkconfig.h.
13484
13485 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13486
13487         * gdk/win32/gdkdraw.c
13488         * gdk/win32/gdkfont.c
13489         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13490         following yesterday's changes. (Unrelated to Owen's reorg.)
13491
13492 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13493
13494         * gdk/x11/gdkinput-gxi.c: Add missing include,
13495           fix GdkWindowPrivate => GdkDrawablePrivate.
13496
13497         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13498
13499         * gdk/x11/Makefile.am (xinput_sources): Add missing
13500         backslash to fix building with --with-xinput=none
13501
13502 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13503
13504         Move all X specific code into the x11/ directory.
13505         Aside from shuffling things around, did the following:
13506
13507        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13508          gdk_arg_context_* - a simple argument parsing system
13509          in the style of popt.
13510
13511        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13512          gdk/x11/gdkprivate-x11.h:
13513          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13514          add ->klass and ->klass_data fields. The klass_data
13515          field points to an auxilliary structure that is
13516          windowing system dependent.
13517
13518        * gdk/gdkfont.c: Make most of the measurement functions
13519          simply wrappers around gdk_text_extents().
13520
13521        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13522          _gdk_font_strlen() function that hides the weird
13523          behavior in gtk+-1.[02] where a string is interpreted
13524          differently for 8-bit and 16-bit fonts.
13525
13526        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13527          to store common code for synthesizing double/triple
13528          press events.
13529         
13530        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13531          Make all the function that modify an existing GC
13532          simply wrappers around gdk_gc_set_values().
13533          
13534        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13535          for throwing out later.
13536
13537        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13538          GdkImagePrivate and GdkColormapPrivate to have a
13539          windowing system dependent part (GdkFontPrivateX etc.)
13540          that "derives" from the system-independent part.
13541
13542        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13543          Got rid of the included-source-files for XInput in
13544          favor of automake conditionals. (Which didn't exist
13545          when XInput support was originally added.)
13546
13547        * gdk/gdkrgb.c: Remove the visual id from the debugging
13548          statements since that is X11 specific; print out
13549          type/depth info instead.
13550          
13551
13552 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13553
13554         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13555         loading duplicates of hashed fonts.
13556
13557         * gdk/gdk.c (gdk_keysym_convert_case): rename
13558         gdk_XConvertCase to gdk_keysym_convert_case, allow
13559         results to be NULL in the GTK+ style.
13560
13561         * gdk/gdkcompat.h: Started compatibility header
13562         for renames.
13563
13564 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13565
13566         * gdk/win32/gdkprivate.h: New font private structures, related to
13567         fontsets.
13568
13569         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13570         gdk_font_list_free(). On X11, will just be wrappers to
13571         XListFonts() and XFreeFontNames(). On Win32, the code previously
13572         in gtkfontsel.c is now here.
13573
13574         New function gdk_font_xlfd_create(). On X11 will get the FONT
13575         property of the font (for GDK_FONT_FONTs), or call
13576         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13577         builds a XLFD style name from the font information in the LOGFONT
13578         struct(s).
13579
13580         New function gdk_font_xlfd_free(), which correspondingly frees the
13581         string returned by gdk_font_xlfd_create().
13582
13583         Implement fontsets on Win32. Add a function that iterates over a
13584         wide char string and calls a callback function for each substring
13585         of wide chars from the same Unicode subrange (and thus probably
13586         available in the same real font).
13587
13588         Improve the XLFD emulation a bit.
13589
13590         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
13591
13592         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
13593         Beta3, WM_IME_CHAR messages don't seem to contain the composed
13594         multi-byte char as with the Active IMM on Win9x. Oh well, handle
13595         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
13596         ImmGetCompositionStringW() to get the composed Unicode chars.
13597
13598         * gdk/win32/gdkgc.c
13599         * gdk/win32/gdkdraw.c: Changes needed because of the font private
13600         struct changes.
13601
13602         * gdk/win32/gdk.def: Add the new functions.
13603
13604 1999-11-04  Tor Lillqvist  <tml@iki.fi>
13605
13606         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
13607         get the Platform SDK to get <dimm.h>.
13608
13609         * gdk/win32/gdkevents.c: More event handling fixes and
13610         simplification. Never generate motion events with is_hint true. We
13611         used to do that on bogus grounds earlier. Windows sends
13612         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13613         moved, ignore these.
13614
13615         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13616
13617         * gdk/win32/gdkglobals.c
13618         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13619         the TrackMouseEvent function, and use it.
13620
13621         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13622         char before calling WideCharToMultiByte in order to get a string
13623         for the window title.
13624
13625         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13626
13627         * gdk/win32/gdk.def: Remove obsolete functions.
13628
13629         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13630         /nodefaultlib and /defaultlib switches.
13631
13632         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13633
13634 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13635
13636         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13637         EuroSign).
13638
13639         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13640         same type as GdkWChar, especially on Win32.
13641
13642         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13643
13644         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13645         before passing to Windows GDI for drawing etc. Convert to the
13646         system default codepage before passing to Windows as window
13647         titles.
13648
13649         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13650         support changing input locale on the fly.
13651
13652         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13653         on-the-fly changes. Convert incoming characters from the current
13654         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13655         on the current input language. Use keysym<->Unicode mapping tables
13656         and functions borrowed from xterm sources.
13657
13658         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13659         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13660         Manager) if available. IMEs and the Active IMM are available under
13661         the disguise of Chinese, Korean and Japanese support for IE and
13662         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13663         support is present in all editions (as long as you install it).
13664
13665         Call DispatchMessage from gdk_events_queue() (and thus
13666         gdk_WindowProc()), instead of duplicating the code in
13667         gdk_WindowProc().
13668
13669         Reworked the grab handling and propagation code, factored out
13670         duplicated code snippets into separate functions. Other cleanups,
13671         too.
13672
13673         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13674         the <dimm.h> header describing the Active IMM.
13675
13676         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13677         just do the same as for "single" fonts.
13678
13679         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13680         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13681         the new keysyms from gdkkeysyms.h.
13682
13683         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13684         fontset, so that gtkentry uses wide characters.
13685
13686         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13687         GTk+'s system directory "gtk+", not "gtk".
13688
13689 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13690
13691         * docs/gtkfaq.sgml: FAQ update
13692
13693 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13694
13695         * gdk/win32/gdkprivate.h: Add more font private data.
13696
13697         * gdk/win32/gdkfont.c
13698         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13699         fonts and strings. Now works much better. You still have to
13700         have a correct font selected, though. No fontset emulation yet.
13701
13702 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13703
13704         * gtk/maketypes.awk: Use G_OS_WIN32.
13705
13706         * gtk/gtk.def: Add some missing entry points. Also some non-public
13707         ones, but PyGTK porter claims to need them.
13708
13709         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13710         built-in type generation.
13711
13712 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13713
13714         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13715         GDK_FONT_FONT fonts (which is all we have for now, we don't
13716         emulate fontsets). The X11 version uses plain XDrawString in that
13717         case, too. The string passed to gdk_draw_text_wc seems to be in
13718         fact (at least, when used by gtkentry and gtktext) either in a
13719         single-byte charset, or a DBCS. Not Unicode.
13720
13721         This fixes the problem in gtkfontsel, where even if you had
13722         selected a font with a non-Latin1 charset (windows-greek, for
13723         instance), the preview still used Latin-1 glyphs.
13724
13725         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13726         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13727         (gdk_font_load): Recognize the demibold etc weights, even if we
13728         don't have the corresponding constants in the headers.
13729         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13730         version. Should save font resources a bit, when we don't have
13731         multiple HFONTs for the same font.
13732
13733         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13734         version.
13735
13736 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13737
13738         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13739         X values
13740
13741 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13742
13743         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13744         layout support (as mentioned on
13745         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13746
13747 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13748
13749         * gtk/fnmatch.c
13750         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13751
13752 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13753
13754         * configure.in (ALL_LINGUAS): Added Galician (gl)
13755
13756 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13757
13758         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13759
13760         * gdk/win32/gdkcompat.c: New file, actually provide an
13761         implementation for the deprecated functions. (Just temporarily.)
13762
13763         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13764
13765         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13766
13767         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13768
13769 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13770
13771         * configure.in: Added "uk" to ALL_LINGUAS.
13772         
13773 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13774
13775         * configure.in: correct checking for BeOS check
13776
13777         * gdk/gdktypes.h
13778         * gtk/fnmatch.c
13779         * gtk/gtkfilesel.c
13780         * gtk/gtkitemfactory.c
13781         * gtk/gtkmain.[ch]
13782         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
13783
13784 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13785
13786         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
13787         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
13788         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
13789         by Bulgarian). 
13790
13791 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
13792
13793         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
13794         Fix a reference to window_private->destroyed.   
13795
13796         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
13797         (ugly) setting of an internal GdkWindow member to use
13798         a _slightly_ cleaner macro.
13799
13800         * gdk/gdkprivate.h: Split GdkWindowPrivate into
13801         GdkDrawablePrivate and GdkWindowPrivate.
13802         Add extra macros for accessing GDK_DRAWABLE_ components.
13803
13804         * *.[ch]: Massive adjustments for the above, use the
13805         new macros in a lot of places.
13806
13807 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
13808
13809         * gdk/gdktypes.h: Make GdkDrawable the base type,
13810         not GdkWindow.
13811
13812 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
13813
13814         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
13815
13816 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
13817
13818         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
13819
13820 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
13821
13822         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
13823         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
13824
13825         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
13826
13827         * docs/gtk-config.1: Now autogenerated.
13828         * docs/Changes-1.4.txt: started
13829         
13830 1999-10-03  Tor Lillqvist  <tml@iki.fi>
13831
13832         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
13833         to #ifdef also here.
13834
13835         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
13836         Owen did to the X11 backend.
13837
13838         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
13839         ScrollWindowEx when blitting inside a window, it can't be correct
13840         in the general case.
13841
13842         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
13843         WM_GETMINMAXINFO is easier.
13844
13845         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
13846         depth equal to the bitspixel value, not the visual's depth.
13847
13848         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
13849         to 24 even if the bitspixel value is 32.
13850
13851         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
13852         need to check for depth==32 when bpp==32, depth will always be 24.
13853
13854 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
13855
13856         * docs/Changes-1.4.txt: Started
13857         
13858         * gtk/Makefile.am (gdk_headers): Include all the new headers.
13859
13860         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
13861         
13862         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
13863         into C file.
13864         
13865         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
13866         header to gdkinputprivate.h.
13867
13868         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
13869         unused since before 1.2.
13870
13871 1999-09-30  Tor Lillqvist  <tml@iki.fi>
13872
13873         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
13874         expand possible hex escapes in the font family (put there by
13875         logfont_to_xlfd if the font name isn't a legal XLFD font family,
13876         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
13877         On Win32, add hex escapes here, too.
13878
13879 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
13880
13881         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
13882         to #ifdef GDK_WINDOWING_X11.
13883
13884 [ Merges from gtk-1-2 ]
13885
13886 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
13887
13888         * configure.in: fixed "GNU Make" check to pass with new make version
13889         3.77.95.
13890
13891 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
13892
13893         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
13894         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
13895         AM_PATH_GTK() macros don't get confused by the -pre1.
13896
13897 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13898
13899         * configure.in (REBUILD): Change check for perl5
13900           to check explicitely for v >= 5.002. (5.001
13901           does not work with our scripts.)
13902
13903 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
13904
13905         * configure.in: evaluate $PERL for the perl version check. added
13906         --disable-rebuilds to give the user an option to completely disable
13907         any source autogeneration rules.
13908
13909 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
13910
13911         * configure.in: evaluate $ac_make when checking for GNU Make.
13912
13913 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13914
13915         * docs/Makefile.am: added generation.txt.
13916
13917         * Makefile.am: require automake 1.4, build README from README.in and
13918         INSTALL from INSTALL.in in dist-hook.
13919         
13920         * README.in:
13921         * INSTALL.in: new files to autogenerate README and INSTALL from.
13922
13923         * configure.in: figure whether we have GNU Make
13924
13925         * docs/generation.txt: minor additions/corrections.
13926
13927 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13928
13929         * docs/gtkfaq.sgml: FAQ Update
13930
13931 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13932         
13933         * configure.in: Fix autoconf warnings about cross compilation by
13934         trying to provide sane defaults for AC_TRY_RUN.
13935
13936 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
13937
13938         * ltconfig
13939         * ltmain.sh: upgrade to libtool 1.3.3
13940
13941 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
13942
13943         * INSTALL: Indicate that the --with-glib= configure
13944         time flag is unsupported.
13945
13946 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
13947
13948         * docs/generation.txt: Added a file that gives
13949         documenation about the autogeneration process for
13950         various autogenerated files.
13951         
13952 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13953
13954         * configure.in (LIBS): Look for libgmodule in the
13955         right location.
13956
13957 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
13958
13959         * docs/gtk_tut.sgml: Removed references to
13960         code examples in my directory on gtk.org as
13961         they should all be in the tutorial now.
13962
13963         * docs/gtk_tut.sgml: Added sources for dial-test
13964         and scribble-xinput programs that were previously
13965         missing.
13966
13967 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
13968
13969         * TODO: Added entry about menu keyboard navigation, removed
13970         some finished items.
13971
13972 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
13973
13974         * acinclude.m4: Standardize on func_dgettext
13975         not func_gettext, so that the checks for dgettext
13976         actually are paid attention to.
13977
13978 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
13979
13980         * configure.in (LIBS): Add $INTLLIBS into $LIBS
13981         directly, rather than repeating the checks for
13982         gettext.
13983
13984         * INSTALL: Added information about gettext and
13985         NLS support.
13986
13987         * acinclude.m4 (LIBM): Check for dgettext, not
13988         just gettext. This should hopefully fix things wrt
13989         systems with old versions of GNU gettext installed.
13990
13991 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13992
13993         * configure.in (LIBS): Look for libgmodule in the
13994         right location.
13995
13996 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13997
13998         * autogen.sh: add --enable-maintainer-mode
13999
14000         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
14001
14002 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
14003
14004         * docs/gtk-config.1.in:
14005           docs/Makefile.am:
14006           configure.in: gtk-config is now generated.
14007
14008         * docs/gtk-config.1: Removed, now generated.
14009
14010 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
14011
14012         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
14013         handle CreateNotify itself, still put out a debuging message for
14014         --gdk-debug=events. made the ReparentNotify debugging message more
14015         verbose.
14016         wrap xcoords translation for ConfigureEvents into an error trap,
14017         a destroy event may already be pending, and in that case, the
14018         actuall coordinate values are not at all critical.
14019
14020 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
14021
14022         * gdk/gdkcc.c: Stop leaking the color_hash all over
14023         the place. Simplify and improve the logic.
14024
14025 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
14026
14027         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
14028         for prototypes and function implementations consistent (reported
14029         by Tomas Ogren).
14030
14031 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
14032
14033         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
14034         send_event set in debugging output.
14035         (gdk_compress_exposures): default initialize the event so we don't
14036         operate on bogus values (namely send_event).
14037
14038 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
14039
14040         * gdk/gdkwindow.c: When we receive an unexpected
14041         destroy notify on one of our windows, don't just
14042         warn about it, also mark our windows as destroyed.
14043
14044 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
14045
14046         * gdk/gdkfont.c (gdk_font_hash_insert): Add
14047           name => font and name => fontset hashes. The 
14048           name => fontset hash is a _big_ win since we
14049           weren't previously caching fontsets at all and loading
14050           fontsets is expensive. The name => font hash
14051           is less of a win, but it does save us from doing
14052           repeated XQueryFont calls on the same font.
14053
14054         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
14055           list so we can remove font/fontset from hash.
14056
14057 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
14058
14059         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
14060           and slightly confusing test. [ XInternAtom (,,TRUE)
14061           will never return None ].
14062
14063 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
14064
14065         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
14066           gdk/gdkwindow.c (gdk_window_set_hints):
14067
14068         Don't omit setting the properties if flags == 0 -
14069         there may be an existing set of properties there
14070         already. (Very old bug. Would it be better to
14071         delete the property instead?)
14072
14073         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
14074           spelling error in comment.
14075
14076 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14077
14078         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14079           to avoid stomping over gdk_error_warnings.
14080
14081         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14082           as (bits_per_pixel + 7) / 8. This gives the same
14083           result as before for multiples of 8, but actually
14084           a "reasonable" value for 1bit or 4bit displays.
14085
14086 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14087
14088         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14089         GNU Make.
14090
14091 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14092
14093         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14094         discarding configure events.
14095
14096 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14097
14098         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14099         refcount is greater than zero.
14100
14101         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14102
14103         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14104
14105         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14106
14107         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14108
14109 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14110
14111         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14112         that format 32 => sizeof(item) == 4. It really is
14113         sizeof(long).
14114
14115 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14116
14117         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14118         core dump at all on X IO errors, only core dump
14119         if --enable-debug for X errors.
14120
14121 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14122
14123         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14124         unknown window:" message. disabled ConfigureNotify discarding code,
14125         because it led to events being processed out of order.
14126
14127 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14128
14129         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14130
14131         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14132         we export this function, supress error warnings and don't reset the
14133         error code in the first half of this function.
14134
14135         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14136         code (instead of just -1) so gdk_error_trap_pop() reveals something
14137         actually informative about the error that happened.
14138
14139         * gdk/*.c:
14140         don't rely on gdk_error_code being -1 if an error occoured, but just
14141         gdk_error_code != 0.
14142
14143 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14144
14145         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14146         pointer *before* invoking the filter function, so we at least don't
14147         crash if a filter is removed that is currently executed. window filters
14148         *really* need to be made truely reentrant at some point.
14149
14150 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14151
14152         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14153         PropertyNotify debug messages.
14154
14155 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14156         
14157         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14158         
14159         * gdk/gdkim.c: Fix cut-and-paste errors for 
14160         x/y and PreeditAttributes/StatusAttributes.
14161
14162 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14163
14164         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14165         G_MAXINT to 2^16 to alleviate overflow problems in
14166         various window managers.
14167
14168 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14169
14170         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14171         for fontsets.
14172
14173 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14174
14175         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14176         Initialize size_hints.x and size_hints.y because kwm
14177         brokenly pays attention to them.
14178         (Bug #1181 -  Lars Heete <hel@admin.de>)
14179
14180 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14181
14182         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14183         return value of gdk_list_visuals(). 
14184         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14185
14186 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14187
14188         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14189         XSetIMValues to (void *) when comparing to NULL, to workaround
14190         the problem of some compilers barfing since older X headers don't
14191         have the prototype for it.
14192
14193 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14194
14195         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14196         for pseudocolor where colormap->colors was double
14197         allocated.
14198
14199         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14200         color value in the hash table with the pixel filled
14201         in so when we do later hash table lookups, the color
14202         value is correct.
14203         
14204 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14205
14206         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14207         making the call
14208
14209 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14210
14211         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14212         pointed out by Morten Welinder <terra@diku.dk>.
14213
14214 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14215
14216         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14217           default filter from the list
14218
14219 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14220
14221         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14222           default filter from the list
14223
14224 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14225
14226         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14227
14228         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14229         g_strdup_printf instead of calcing the length separately
14230
14231 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14232
14233         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14234         that we don't do in many other places. (Fixing duplicate 
14235         #include of config.h)
14236
14237         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14238         Otherwise, #ifndef XINPUT_NONE check in the latter
14239         doesn't work. (Bug #546)
14240
14241 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14242
14243         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14244         "None" case insensitive.
14245
14246 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14247
14248         * gdk/gdkselection.c: 
14249         Add error traps so if the other end of the connection
14250         dies, we survive.
14251
14252 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14253
14254         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14255         dest_xid field into two fields - one for the window
14256         to send in messages, one to indicate the last looked
14257         up window for caching purposes. This is needed, so
14258         that Leave messages get the correct window.
14259
14260 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14261
14262         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14263         Fix warning created by people mucking around
14264         with the gsource API.
14265
14266         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14267         Change mapping between GIOCondition and GdkInputCondition
14268         to match the way the Linux kernel does it. This should
14269         fix problems where closed pipes were no longer signalling
14270         GDK_INPUT_READ on systems with a native poll().
14271
14272 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14273
14274         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14275         explicitly for the string "None" - it is in the XPM
14276         spec and some servers treat unknown colors in odd ways
14277         (like asking the user!)
14278
14279 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14280
14281         * gdk/gdkevents.c: made "->" into a "." of previous change so
14282         it compiles
14283
14284 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14285
14286         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14287         window field of the event structure before calling
14288         user filters.
14289
14290 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14291
14292         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14293         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14294
14295 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14296
14297         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14298         intermediate text property - prevents major memory
14299         leak when gdk_use_mb.
14300         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14301
14302 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14303
14304         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14305         gtk-a-higuti-990322-[0-3]
14306
14307         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14308         sizeof(wchar_t) != sizeof (GdkWChar)
14309
14310         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14311         that was causing -DX_LOCALE not to work.
14312
14313         * gtk/gtkrc.c (gtk_rc_init):
14314         X_LOCALE will never have LC_MESSAGES defined
14315
14316         * gdk/gdk.c (gdk_init_check):
14317         Remove --xim-preedit and --xim-status from argv properly.
14318
14319         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14320         that the client window is present on the X server
14321         before we pass it to the input method.
14322
14323 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14324
14325         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14326         if --display is specified on the command line, than
14327         the drag window will not be created on that display.
14328         
14329 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14330
14331         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14332         lookups with only_if_exists == TRUE were inserting
14333         bogus values into the atom cache.
14334
14335 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14336
14337         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14338         then reset it to NULL.
14339
14340         * gdk/gdkcolor.c:
14341         (gdk_colors_free): 
14342         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14343         key for g_hash_table_remove() in both functions, this prevents us
14344         from accessing possibly uninitialized portions of a GdkColor structure
14345         where we are only interested in its pixel value.
14346
14347 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14348
14349         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14350         font hash table, if we have a GdkFontPrivate entry for this font
14351         already, simply increment its reference count, provided by Olaf Dietsche
14352         <olaf.dietsche+list.gtk@netcologne.de>.
14353
14354 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14355
14356         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14357         just to be sure.
14358
14359         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14360         unused variables, leftovers from the X11 version.
14361
14362         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14363
14364         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14365         downcase fields on X11.
14366
14367 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14368         
14369         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14370         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14371
14372 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14373
14374         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14375
14376         * gtk/makefile.msc: Correct path to libintl.
14377
14378         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14379         use of gint vs. int, and gint vs. gboolean in headers and
14380         definitions. Use GtkType for the *_get_type functions. Note that
14381         these changes preserve binary compatibility.
14382
14383         * gdk/gdk.c
14384         * gdk/win32/gdk.c
14385         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14386
14387         * gtk/gtkmain.c
14388         * gtk/gtkclist.c
14389         * gtk/gtkmenufactory.c
14390         * gtk/gtknotebook.c
14391         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14392         vs. gboolean.
14393
14394         * gtk/gtkcolorsel.[ch]
14395         * gtk/gtkcombo.[ch]
14396         * gtk/gtkdrawingarea.[ch]
14397         * gtk/gtkgamma.[ch]
14398         * gtk/gtkhandlebox.[ch]
14399         * gtk/gtkhpaned.[ch]
14400         * gtk/gtkhruler.[ch]
14401         * gtk/gtkplug.[ch]
14402         * gtk/gtkpreview.[ch]
14403         * gtk/gtkruler.[ch]
14404         * gtk/gtksocket.[ch]
14405         * gtk/gtkstatusbar.[ch]
14406         * gtk/gtktoolbar.[ch]
14407         * gtk/gtkvbbox.[ch]
14408         * gtk/gtkvpaned.[ch]
14409         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14410         functions.
14411
14412         * gtk/gtkgamma.h: Fix bug, missing () in call of
14413         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14414
14415 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14416
14417         * gdk/gdkcolor.c (gdk_colormap_new)
14418         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14419         colormap->colors was allocated twice.
14420
14421         * gdk/win32/gdk.c: Remove some unused stuff.
14422
14423         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14424         colormap.
14425
14426         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14427         * gtk/gtklabel.h (gtk_label_get_type)
14428         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14429         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14430         in a couple of places, not guint.
14431
14432 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14433
14434         * configure.in,po/et.po: added Estonian language file
14435
14436 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14437
14438         * configure.in,po/da.po: added Danish file
14439
14440 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14441
14442         * docs/gtkfaq.sgml: Minor FAQ Update
14443
14444 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14445
14446         * docs/gtkfaq.sgml: FAQ update
14447
14448 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14449
14450         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14451         way to get window contents continually refreshed while resizing. I
14452         didn't like the effects myself, so it's not on by default.
14453
14454         * gdk/win32/gdkprivate.h: New flag variable
14455         gdk_event_func_from_window_proc, FALSE by default.
14456
14457         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14458         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14459         are passed --gdk-event-func-from-window-proc.
14460
14461         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14462         and we have am event_func, call it instead of enqueing the event.
14463
14464 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14465
14466         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14467         Kelley: Set expose_count in GdkEventExposes correctly.
14468
14469         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14470         MULTIPLE_WINDOW_CLASSES).
14471
14472         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14473         for bug in NT, apparently NT *does* draw the end pixel, too, in
14474         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14475
14476 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14477
14478         Improvements by Hans Breuer: 
14479
14480         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14481
14482         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14483         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14484         window contents while dragging" is turned on. Allocate at least
14485         one unique class for every GdkWindowType. If support for single
14486         window-specific icons is ever needed (eg. Dialog specific), every
14487         such window should get its own class.
14488
14489 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14490
14491         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14492         error that caused crashes.
14493
14494 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14495
14496         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14497         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14498         bugs when for instance part of the window was outside the
14499         display. Thanks to Philippe Colantoni for finding and fixing this.
14500
14501 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14502
14503         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14504         endpoint calculations which were totally wrong. (A little RTFMing
14505         helps a lot ;-)
14506
14507         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14508         from a separate directory, not from gettext, because of licensing
14509         issues (we want to use the LGPL version).
14510
14511         * README.win32: Mention the intl from glibc vs from gettext issue.
14512
14513 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14514
14515         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14516         in the key event handling: Now AltGr chars work again. Also,
14517         now Alt-digits are passed up as well as Control-digits.
14518         Pass keypad plus and minus as normal plus and minus.
14519
14520 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14521
14522         * docs/gtkfaq.sgml: FAQ Update
14523
14524 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14525
14526         * README.win32
14527         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14528         the Wintab SDK.
14529
14530         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14531         OK, but getting closer. Guard against bogus tilt data from Wacom
14532         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14533         enable easier building without Wintab.
14534
14535         * gdk/win32/gdkinput.h
14536         * gdk/win32/gdkevents.c 
14537         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14538         
14539         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14540         code. As we have just one visual on Win32, no sense to have it in a
14541         table, and no need for the hash table.
14542
14543         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14544         better on white background.
14545
14546 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14547
14548         * README.win32: Update gcc build instructions. Mention gettext is
14549         GPL.
14550
14551         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14552         supported cursor size with GetSystemMetrics.
14553
14554         * gdk/win32/gdkfont.c
14555         * gtk/gtkfontsel.c: Guard against some font weight and charset
14556         symbols being undefined (in mingw32 headers).
14557
14558         * gdk/win32/makefile.cygwin
14559         * gtk/makefile.cygwin
14560         * gtk/gtkthemes.c: No longer need to have differently named
14561         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14562
14563 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14564
14565         * docs/gtkfaq.sgml: Long awaited FAQ update.
14566
14567 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14568
14569         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14570         it. Obscure bit manipulation needed.
14571
14572         * gdk/win32/gdkevents.c: Logging.
14573         
14574         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14575         style (file name include compiler name) for theme engines.
14576
14577 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14578
14579         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14580
14581         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14582         events. The key.string wasn't zero-terminated, still we strdup'ed
14583         it in gdk_event_copy(). Synthesize crossing events for button
14584         events before possible propagation.
14585
14586         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
14587
14588         * gdk/win32/makefile.cygwin
14589         * gtk/makefile.cygwin: Use new DLL naming style for the
14590         GCC-compiled ones.
14591
14592         * gdk/win32/makefile.msc
14593         * gtk/makefile.msc: Cosmetics mostly.
14594
14595         * gtk/gtk.def: Add missing entry points.
14596
14597         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
14598
14599 1999-07-09  Tor Lillqvist  <tml@iki.fi>
14600
14601         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
14602         or height is zero. Don't print a warning if Pie or Arc fails, they
14603         always fail (?) for very narrow ellipses.
14604
14605         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
14606         the part or the destination window corresponding to source area
14607         outside of the source drawable's boundary.
14608
14609         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14610         anything if less than two points.
14611
14612         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14613         return NULL. Gtk cut-and-paste inside a single program works
14614         better this way. (It always gets the clipboard contents from
14615         Windows, not from its own copy, which is cleared anyway. I can't
14616         say I fully understand what happens... Emulating the X selection
14617         and property stuff is a bit of a mess.)
14618
14619         * gdk/win32/gdkevents.c
14620         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14621
14622         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14623         that never got deleted). Revamp gdk_region_shrink.
14624
14625         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14626         after use.
14627
14628         * gtk/gtk.def: Add some missing entry points.
14629
14630         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14631         component.
14632
14633 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14634
14635         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14636         Control-digits specially.
14637
14638 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14639
14640         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14641
14642 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14643
14644         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14645         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14646         finding this.)
14647
14648 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14649
14650         * gtk+.spec.in: Corrected some typos in files section.
14651         
14652 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14653
14654         * README.win32: Mention using GNU gettext.
14655         * config.h.win32: Enable NLS stuff.
14656         * gtk/makefile.msc: Use GNU gettext.
14657         * gdk/win32/gdkdnd.c: Minor header reorg.
14658         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14659         cosmetics.
14660         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14661         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14662
14663 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14664
14665         * acinclude.m4
14666         * config.guess
14667         * config.status
14668         * ltconfig
14669         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14670
14671 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14672
14673         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14674         SafeAdjustWindowRectEx. Don't override all calls to
14675         AdjustWindowRectEx by it, but use it only in two places: When
14676         creating a new top-level window and when moving a top-level
14677         window.
14678
14679         Use screen coordinate rectangle, not client rectangle, in
14680         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14681         when we try to place a window so that the decoration (mainly,
14682         title bar) isn't visible.
14683
14684         These changes fix the bug that showed up for instance as the
14685         GIMP's saved top-level windows moving right and down (by an amount
14686         equal to the window decoration) for each session. This bug showed
14687         up also in testgtk's "Saved Position".
14688
14689         gdk_window_resize also redone a bit.
14690
14691 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14692
14693         * gtk/testgtkrc: Add (commented out) Windows-style theme
14694         include line.
14695
14696         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14697
14698 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14699
14700         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14701         gdkx.h to a gdk subdirectory, so that applications can include
14702         these with <gdk/*.h> without trouble.
14703
14704         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14705         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14706         have their bitmap destroyed.
14707
14708         * gdk/win32/gdk.def: Add gdk_root_parent.
14709
14710 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14711
14712         * configure.in
14713           gtk-config.in
14714           ltconfig
14715           ltmain.sh     
14716           gtk/Makefile.am: changes to compile nicely (with xlib) 
14717           on BeOS
14718
14719 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14720
14721         * acinclude.m4
14722         * config.guess
14723         * config.sub
14724         * ltconfig
14725         * ltmain.sh: upgrade to libtool 1.3
14726
14727 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14728
14729         * gtk/gtkclist.c:
14730         * gtk/gtkctree.c: merges from gtk-1-2
14731
14732 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14733
14734         Support added for building using a GNU toolchain on Win32,
14735         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14736
14737         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14738         * config.h.win32: Changes for gcc.
14739         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14740         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14741         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14742         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14743         Protect shl stuff unavaiilable with mingw32 headers.
14744         * gdk/win32/gdkevents.c: Fix typo.
14745         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14746         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14747         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14748         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14749         the mingw32 headers.
14750         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14751         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14752         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14753         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14754         Test for NATIVE_WIN32, not _MSC_VER.
14755         * gtk/gtkmain.c: No use warning about developer version on Win32,
14756         there aren't any non-developer versions anyhow.
14757         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14758         * gtk/makefile.msc: Use pthread from another directory. Minor other
14759         changes. 
14760
14761 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14762
14763         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14764           default filter from the list
14765
14766 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14767
14768         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14769          when gtk_widget_grab_default() is called for a widget that
14770          is not within a GtkWindow.
14771
14772 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14773
14774         * docs/gtk_tut.sgml, examples/clist.c: use a
14775           scrolled window in the clist example. Minor
14776           tutorial fixes.
14777
14778 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14779
14780         * docs/gtk_tut.sgml: Style check from David King
14781           <dking@youvegotmail.net>
14782
14783 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
14784
14785         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
14786         compile with unknown value of GDK_WINDOWING
14787
14788 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
14789
14790         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
14791         after the rule is fired.
14792         (install-exec-local): Install gdkconfig.h only if the contents are
14793         different from the currently installed gdkconfig.h.
14794
14795 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
14796
14797         * gdk/Makefile.am (configexecincludedir): Rename from 
14798         configincludedir so that gdkconfig.h will be installed 
14799         as part of `make install-exec'. 
14800
14801 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
14802
14803         * acinclude.m4
14804         * config.guess
14805         * config.sub
14806         * ltconfig
14807         * ltmain.sh: upgrade to libtool 1.2f
14808
14809         * autogen.sh: libtool is not required to autogen gtk+
14810
14811         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
14812         needed)
14813
14814 1999-03-18  Tor Lillqvist  <tml@iki.fi>
14815
14816         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
14817         declaring gdk variables exported/imported from the DLL. New image
14818         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
14819         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
14820         GDK_DRAG_PROTO_OLE2.
14821
14822         * gdk/gdk.h: Merge in Win32 version: Two new functions,
14823         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
14824         declared only for the Win32 version, but could be in the X11
14825         version as well. (Needed for a Xlib-less gdk_imlib.)
14826         gdk_color_hash should have only one parameter. Declare
14827         gdk_threads_mutex with GDKVAR.
14828         
14829         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
14830         just one parameter.
14831
14832         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
14833         per pixel, not bits.
14834
14835         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
14836         Fetch bpp (which means bits-per-pixel here) from another place on
14837         Win32. Accept also depth==32 (which we might get on Win32) with
14838         bpp==32.
14839
14840         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
14841         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
14842         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
14843         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
14844         in the backend-dependent directory, not in the common gdk
14845         directory.
14846
14847         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
14848         headers.
14849
14850 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
14851
14852         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
14853         want to use the Gtk+ devel version (which is true, and yes - even i am
14854         currently working with the 1.2.x branch). so everyone reading this, you
14855         probably want to issue
14856         cvs checkout -r glib-1-2 glib
14857         and
14858         cvs checkout -r gtk-1-2 gtk+
14859         as your next two comands.
14860
14861 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
14862
14863         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
14864         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
14865
14866         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
14867         file. strongly deprecated the GTK_HAVE_* macros, we provide
14868         GTK_CHECK_VERSION() for people that need to check for certain
14869         Gtk+ versions.
14870
14871         * gtk/gtkcompat.h: removed this from CVS.
14872         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
14873         idea right from the start, it just didn't seem like that back then.
14874
14875 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
14876
14877         * merges from gtk-1-2:
14878
14879 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
14880
14881         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
14882         item factory class has been created.
14883         (gtk_item_factory_parse_rc): likewise.
14884
14885         * gtk/gtkmenu.c:
14886         keep proper references for old_active_menu_item.
14887         (gtk_menu_reparent): unset the usize of the new parent,
14888         so the menu can sanely be size requested and we don't get nasty screen
14889         artefacts upon next reparentation.
14890         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
14891         enter notify. only synthesize enter notifies if the pointer really is
14892         inside the event window.
14893         (gtk_menu_popdown): use gtk_menu_shell_deselect().
14894         (gtk_menu_popup): move the background setting stuff into
14895         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
14896
14897         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
14898         gtk_menu_shell_select_item() to select the new item.
14899         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
14900         do the right thing for deselection as well.
14901
14902 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
14903
14904         * gtk/gtkwidget.[hc]:
14905         (gtk_widget_accelerators_locked): return whether a widget's accelerators
14906         are locked.
14907
14908         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
14909         existing accelerators if the widget's accelerators are locked.
14910
14911 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
14912
14913         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
14914
14915         * gtk/gtkmenu.c: truely forward key press and key release events to
14916         the menu widget from the toplevel or tearoff window. we can't simply
14917         connect to that, we need to stop further processing of the events as
14918         well.
14919
14920 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
14921
14922         * gtk/gtkmenu.c:
14923         (gtk_menu_key_press): pass event->keyval, event->state to
14924         gtk_accelerator_valid, instead of event->keyval twice.
14925         refuse to install single letter accelerators for menus that use
14926         single letter shortcuts.
14927
14928         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
14929         gtk_menu_ensure_uline_accel_group().
14930
14931         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
14932         which will always return an uline accel group, made
14933         gtk_menu_get_uline_accel_group() return NULL if the group isn't
14934         yet created.
14935
14936 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
14937
14938         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
14939
14940         * gtk/gtkclist.c (gtk_clist_column_title_passive):
14941         Leave button sensitive, trap  button_press, button_release,
14942         motion_notify, enter_notify and leave_notify events instead.
14943         (gtk_clist_column_title_active): disconnect event handler.
14944         (gtk_clist_drag_data_get): fixed memory leak. Reported by
14945         Guillaume Laurent <glaurent@worldnet.fr>
14946
14947 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
14948
14949         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
14950         width/height mixups.
14951
14952         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
14953         if needed.
14954
14955 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
14956
14957         * gtk/testgtk.c (create_item_factory): unref the item factory after
14958         window's destruction.
14959
14960         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
14961         count on the menu shell around the menu item's activation, since the
14962         signal emission may cause menu shell destruction.
14963
14964         * gtk/gtkitemfactory.c:
14965         the previous code leaked one accel group per menu. we use
14966         gtk_menu_get_uline_accel_group() now to fix that, and with that
14967         also create the underline accelerator group of the menus only if
14968         required (i.e. an underline accelerator has been specified).
14969         (gtk_item_factory_construct):
14970         (gtk_item_factory_create_item): removed code that would create an
14971         extra accel group for the menu (and leak references).
14972         (gtk_item_factory_create_item): adapted the underline accelerator
14973         installation code to properly feature gtk_menu_get_uline_accel_group().
14974
14975         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
14976         menu->accel_group, this may return NULL if the accelerator group
14977         hasn't been set yet.
14978         added gtk_menu_get_uline_accel_group() to retrive the underline
14979         accelerator group of the menu, this will be created on demand
14980         and proper care is taken about its reference count.
14981
14982         * gtk/gtkitemfactory.h:
14983         * gtk/gtkitemfactory.c:
14984         dumped the approach of keeping a widgets by action list on the
14985         factory since the factory<->widget destroy negotiation didn't work
14986         and would be hard to get going at all. instead we keep a list of
14987         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
14988         persistant throughout a program's life time).
14989         also, i removed the static const gchar *key_* variables, and made
14990         them inline strings (they weren't actually used anyways).
14991         (gtk_item_factory_add_item): update ifactory->items.
14992         (gtk_item_factory_destroy): destroy ifactory->items (and remove
14993         the item factory pointer from the remaining ifactory widgets).
14994         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
14995         list to find the widget.
14996         (gtk_item_factory_get_item): new function that works around
14997         gtk_item_factory_get_widget() limitations, this function will only
14998         return menu items, even for <Branch> entries.
14999
15000 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15001
15002         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15003         font hash table, if we have a GdkFontPrivate entry for this font
15004         already, simply increment its reference count, provided by Olaf Dietsche
15005         <olaf.dietsche+list.gtk@netcologne.de>.
15006
15007         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15008         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15009
15010 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
15011
15012         * gtk/gtkcontainer.c:
15013         (gtk_container_add_with_args):
15014         (gtk_container_addv):
15015         (gtk_container_add): before adding a child to a conatiner, make sure
15016         it is (default) constructed, this is neccessary because under certain
15017         circumstances the child will get relized and mapped immediatedly, in
15018         which case it has to be constructed already.
15019
15020 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
15021
15022         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
15023         values > 1 as TRUE also.
15024
15025 1999-03-16  Tor Lillqvist  <tml@iki.fi>
15026
15027         * README.win32: New file.
15028                 
15029         * configure.in: Check for lstat.
15030
15031         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
15032         completeness.
15033
15034         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
15035
15036         * gtk/gtk.def: Removed CRs.
15037
15038         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
15039         ..\gdk\win32).
15040
15041         * gdk/win32/makefile.msc: Correct upwards relative paths.
15042         
15043 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
15044
15045         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
15046           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
15047           it was connecting a void function to expose_event and the int
15048           returning function to the draw signal
15049
15050 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
15051
15052         * configure.in:
15053         Use correct path to libgmodule.la when ref'ing uninstalled copy
15054         of glib.  (Already in stable branch, Bug #417)
15055
15056 1999-03-15  Tor Lillqvist  <tml@iki.fi>
15057
15058         Win32 merge and general portability stuff:
15059                 
15060         * acconfig.h,configure.in: Check for <sys/time.h>.
15061
15062         * gdk/win32: New directory (actually, been there for a while).
15063         
15064         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
15065         NATIVE_WIN32, and use these. Always case fold on Win32. No
15066         backslashed escapes on native Win32.
15067
15068         * gtk/{gtk.def,makefile.msc}: New files.
15069
15070         * gtk/Makefile.am: Add above new files.
15071         
15072         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
15073         instead of <strings.h>.
15074
15075         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15076         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15077         <unistd.h> appropriately.
15078
15079         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15080         Use ABS() (from <glib.h>) instead of abs().
15081         
15082         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15083         of gtk (and thus glib) headers, so that WIN32 will be
15084         defined. With MS C, include <direct.h> for mkdir prototype.
15085
15086         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15087         some casts, needed by MS C.
15088
15089         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15090         implemented).
15091
15092         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15093         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15094         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15095
15096         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15097                 
15098         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15099         the event is not a hint, or its window is not the slider. Needed
15100         on Win32, at least.
15101
15102         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15103         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15104         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15105         a subdirectory of the Windows directory as gtk system
15106         configuration directory.
15107
15108         * gtk/gtkselection.c: No chunks on Win32.
15109
15110         * gtk/gtksocket.c: Not implemented on Win32.
15111
15112         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15113
15114         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15115
15116         * gtk/maketypes.awk: Declare variables with a macro that expands to
15117         necessary export/import magic in the case of Win32.
15118                 
15119         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15120
15121 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15122
15123         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15124         since those were meant only for gdki18n.h.  
15125         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15126         for widechar tests.
15127         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15128
15129 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15130
15131         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15132         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15133
15134         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15135         installed) to CFLAGS.
15136
15137         * gdk/Makefile.am: Add rules for gdkconfig.h.
15138
15139         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15140         APIs.
15141
15142         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15143         gdkx.h anyway when compiling for X11.
15144         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15145         general): Merge in Win32 version.
15146         
15147         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15148         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15149         expansion (if we don't have HAVE_PWD_H), allow for drive
15150         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15151         included code from Craig Setera's port to Win32 (the one that uses
15152         X11, and the cygwin dll), even if it probably will be abandoned.
15153
15154         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15155         the user entered one herself.  This way one can complete *.h and
15156         don't get matches on any .help files, for instance.
15157         
15158 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15159
15160         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15161         font hash table, if we have a GdkFontPrivate entry for this font
15162         already, simply increment its reference count, provided by Olaf Dietsche
15163         <olaf.dietsche+list.gtk@netcologne.de>.
15164
15165         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15166         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15167
15168 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15169
15170         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15171         the number of calls to gdk_draw_point() (and thus to X) by
15172         clipping the points by hand.
15173
15174         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15175         the clip parameter.
15176         (gtk_handle_box_paint): Only paint the handle if the expose area
15177         intersects it.
15178
15179 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15180
15181         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15182
15183 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15184
15185         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15186         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15187
15188 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15189
15190         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15191          textmode (O_TEXT) for OS/2 version.
15192
15193 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15194
15195         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15196         GtkSpinButton, "input" and "output", to make the output more flexible.
15197         The user has to provide a mapping between adjustment->value and the
15198         output string (and vice versa, if the spin button is editable). 
15199         See testgtk for examples.
15200
15201 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15202
15203         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15204         new one.
15205         
15206         * configure.in: set gtk+ version to 1.3.0.