]> Pileus Git - ~andy/gtk/blob - ChangeLog
Reference param spec when caching property values, since we unref it later
[~andy/gtk] / ChangeLog
1 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4         param spec when caching property values, since we unref it
5         later when we free the style.
6
7         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
8         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
9
10 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
11
12         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
13         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
14         stupidity.
15
16 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
17
18         [ First pass at adding style properties. Still needs some definite
19         fine-tuning. ]
20
21         * gtk/gtkbutton.c: Add ::default_spacing style property.
22          
23         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
24         ::indicator_spacing style properties.
25
26         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
27         style properties.
28
29         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
30         rather than a normal property.
31
32         * gtk/gtkwidget.c: Add an ::interior_focus style property to
33         draw focus inside buttons, in the Windows/Java Metal/etc. style.
34
35         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
36         Honor ::interior_focus.
37         
38         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
39         TRUE.
40
41         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
42         Add ::slider_width, ::trough_border, ::stepper_size,
43         ::stepper_spacing style properties.
44
45         * gtk/gtkscale.[ch] Add ::slider-length style property.
46
47 2001-04-02 Alexander Larsson   <alexl@redhat.com>
48
49         * gdk/linux-fb/gdkwindow-fb.c:
50         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
51         warnings that were spewed on startup.
52
53         * gtk/gtkwindow-decorate.c:
54         gtk_window_reposition -> _gtk_window_reposition
55
56 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
57
58         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
59         Add boxed type for GtkRequistion. Use it for ::size-request.
60
61         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
62         Add a new GtkBorder structure useful for geometry properties
63         for widgets. Add corresponding GTK_TYPE_BORDER.
64         
65         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
66         Support automatic parser selection like
67         gtk_settings_install_property_parser().
68
69         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
70         functionality for use by gtk_widget_class_install_style_property.
71         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
72
73 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
74
75         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
76         g_param_spec_unichar(). 
77
78 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
79
80         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
81         _NET window managers.
82
83         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
84
85 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
86
87         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
88         bad needs to be nuked, not just deprecated.
89
90         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
91         gtk_widget_popup().
92
93         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
94         
95         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
96         widget.
97         
98         * docs/Changes-2.0.txt: updates.
99         
100 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
101
102         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
103         for (i = 0; i < 100; i ++)
104           g_print ("I will confirm it compile before committing\n");
105
106 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
107
108         * gtk/gtktreestore.c: Initial work on implementing the
109         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
110
111 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
112
113         * gtk/gtkwidget.c: fixed a bunch of notifications, added
114         reference counts around emissions where the widget is used afterwards.
115         added freeze/thaws around multiple properties being notified.
116         (_gtk_widget_get_aux_info): cleanups.
117         
118         * gtk/gtksettings.c (gtk_settings_install_property): provide
119         default parsing functions for gdkcolor, enums and flags.
120
121         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
122         applied by owen.
123         backed out gtk_window_get_location(), gtk_window_set_location(),
124         gtk_window_get_size() and gtk_window_set_size(), these
125         have to be sorted out wrg x/y/width/height/default_with/default_height
126         properties.
127         kept a flag in GtkWindowGeometryInfo to handle user
128         resetting default sizes.
129         cleaned up ZVT comments.
130         bunch of assorted bug fixes, notification fixes.
131         (_gtk_window_reposition): make this a really internal function.
132         
133         * gtk/testgtk.c: fixups.
134         
135 2001-03-31  Hans Breuer  <hans@breuer.org>
136
137         * config.h.win32.in : disable USE_MMX for msvc build cause
138         the assembler doesn't fit and is out of my scope. Disable
139         USE_GMODULE for msvc build as wel. The right way to share
140         binaries on win32 would be to use libtiff.dll etc. To reduce
141         installation hassles IMO it's better to include all fileformats
142         builtin to gdk-pixbuf
143
144         * gdk-pixbuf/makefile.msc : new file
145
146         * gdk/gdk.def : updated
147
148         * gdk/win32/gdkevents-win32.c : don't erase the background if
149         .no_bg is set. It improves the scrolling (e.g. of testgtk main
150         buttons
151         * gdk/win32/gdkgeometry-win32.c : added comment about the above
152
153         * gdk/win32/gdkwindow-win32.c : added three new functions like
154         the X version. Only one is implemented, because the other two
155         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
156         be default behaviour on win32 anyway ...
157
158         * gtk/gtk.def : updated
159
160         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
161         from where it was built and add an additional rule to automagically
162         build gtkmarshal.[hc]
163
164         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
165         before array access for the current entry isn't finished
166
167         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
168         use g_return_val_if_fail
169
170         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
171         for the static array, but let the compiler calculate it. It
172         makes me wonder if gcc isn't capable to catch bugs like this ...
173
174 2001-03-31  James Henstridge  <james@daa.com.au>
175
176         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
177         constant "-1" in the aux info structure.
178
179 2001-03-30  Alexander Larsson  <alexl@redhat.com>
180
181         * gtk/gtkbutton.c (gtk_button_get_property):
182         * gtk/gtklabel.c:
183         Remove leaks.
184         
185         * gtk/gtkcontainer.c:
186         * gtk/gtkhscale.c:
187         * gtk/gtkhscrollbar.c:
188         * gtk/gtklayout.c:
189         * gtk/gtkmisc.c:
190         * gtk/gtkprogress.c:
191         * gtk/gtkprogressbar.c:
192         * gtk/gtkrange.c:
193         * gtk/gtktable.c:
194         * gtk/gtkviewport.c:
195         * gtk/gtkvscale.c:
196         * gtk/gtkvscrollbar.c:
197         * gtk/gtkwidget.c:
198         Property patches, based on patches from John Margaglione and Lee Mallabone.
199
200 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
201
202         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
203         adjustment. Cleaned redundant preconditions (spin != NULL). Added
204         inline API function docs.
205         (gtk_spin_button_new_with_range): New convenience constructor.
206         (gtk_spin_button_set_increments): New adjustment helper.
207         (gtk_spin_button_set_range): New adjustment helper.
208
209         * gtk/testgtk.c : added test of the new convenince constructor and
210         value_changed signals.
211
212 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
213
214         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
215         listen to the reorder signal.
216
217 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
218
219         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
220         to get the aux info structure fo the widget.
221
222         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
223         above function.
224
225         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
226
227         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
228         to get the size of the window manager frame, basically the same
229         code that gdk_window_get_root_origin() had
230         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
231
232         * gtk/gtkwindow.c (gtk_window_set_default_size): use
233         gdk_window_resize() if the window is realized and resizeable
234
235         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
236         typo so that setting gravity works
237
238         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
239         allocation if auto_shrink is on, even if the default size
240         has not changed.
241
242         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
243         g_return_if_fail
244
245 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
246
247         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
248         reordering/sorting work.  Now pretty much works.
249
250         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
251         reorder mostly work.  Still need to get the parity correct.
252
253         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
254         signal, so I can listen for the sort_column_changed signal so I
255         can change my "sort_indicator" property.  Cool.
256
257 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
258
259         [ Patch from Havoc Pennington, hp@redhat.com ]
260
261         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
262         Add functions gdk_window_begin_resize_drag/begin_move_drag
263         to start resizing or moving a toplevel window. This
264         is done either using the _NET_WM_MOVERESIZE protocol,
265         or, if that isn't present, by emulation.
266
267         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
268         to export the above to GTK+-land.
269
270         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
271         
272         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
273         Move this function into gdkwindow, since we need it
274         when implementing fallback resizing.
275
276         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
277         Fix typo when setting gravity.
278
279         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
280         Add an optional (but on by default) resize grip for resizing 
281         the parent window.
282
283 01-03-29  Alexander Larsson  <alexl@redhat.com>
284
285         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
286         Don't return TRUE from the event handler, that blocks all
287         event signals on the tooltip widget. Now you can press buttons
288         in toolbars again.
289
290 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
291
292         * gtk/testtext.c (create_buffer): Add missing NULL on
293         valist.
294
295         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
296         c-n-p problem with INCONSISTENT property.
297
298         [ Patch from Havoc Pennington  <hp@redhat.com> ]
299
300         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
301         hook.
302
303         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
304         signal as a hook for extending the default popup menu
305
306         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
307         use radio menu items for the input method menuitems
308
309         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
310         inserted unicode from Ctrl-Shift-hex input method
311
312         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
313         validatation here, already done at GtkTextBuffer level.
314
315         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
316         popup_menu run action signal and Shift+F10 and Menu keybindings.
317
318         * gtk/gtkentry.c: implement a default handler for popup_menu
319
320         * gtk/gtktextview.c: implement a default handler for popup_menu
321
322         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
323         from a key event
324         
325         * gtk/gtklabel.c: remove "trailer" cruft
326
327 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
328
329         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
330         handle reordering of trees.  Seems to mostly work w/ the exception
331         of the parity flag.
332
333         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
334         signal.
335
336 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
337
338         * gtk/gtkwidget.h: c++ fixes.
339
340 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
341
342         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
343         memory.
344
345 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
346
347         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
348         Nils Barth fixing event return values. (#51041)
349
350         * gtk/gtkwidget.c: Fix some return values for default
351         functions.
352
353         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
354         return values for trough_keys functions.
355
356         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
357         value for add_accelerator (shoudl have been a void
358         return.)
359
360         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
361         Fix return type of EVENT.
362
363         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
364         signal return a boolean.
365
366 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
367
368         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
369         reordered signal.
370
371         * tests/testtreesort.c (main): fix spelling.
372
373 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
374
375         * gtk/gtkliststore.c: More work on implementing sortable
376         interface.
377
378 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
379
380         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
381         reference the widgets in the resulting list. (#11821)
382         This makes this consistent with gtk_container_children.
383
384         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
385         uses of gtk_window_list_toplevels.
386
387 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
388
389         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
390         a virtual function to set whether the IM context should use 
391         the preedit string. (#51922)
392         
393 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
394
395         * gdk/gdkpango.h: Remove stale FIXME comment.
396
397 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
398
399         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
400         Fixed bug that returned NULL if a filename was selected.
401
402 2001-03-24  Havoc Pennington  <hp@pobox.com>
403
404         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
405         to contain the word "theme"
406
407 2001-03-24  Havoc Pennington  <hp@pobox.com>
408
409         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
410         slower but finer-grained
411         (gtk_hsv_focus): get initial focus on the ring or triangle 
412         according to tab direction
413
414         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
415
416 2001-03-23  Havoc Pennington  <hp@pobox.com>
417
418         * gtk/gtkhsv.c: make this somewhat key-navigable
419
420         * gtk/gtkfontsel.c: mnemonics
421
422         * gtk/gtkgamma.c: mnemonics
423
424         * gtk/gtkcolorsel.c: add mnemonics to labels
425
426 2001-03-22  Havoc Pennington  <hp@pobox.com>
427
428         Applied big patch from Seth Lytle to fix event handler return
429         values, slightly modified.
430
431         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
432         handled.
433         (gtk_calendar_key_press): return TRUE for GDK_space triggers
434         select_day
435
436         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
437         (gtk_clist_button_release): return TRUE if handled
438
439         * gtk/gtkcolorsel.c (mouse_release):
440         (palette_activate): 
441         (palette_press): 
442         (palette_new): 
443         (mouse_press): 
444         (get_screen_color): 
445         fixed return type (void to gboolean), return TRUE,
446         added GTK_SIGNAL_FUNC cast
447
448         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
449         (void to gboolean), and return TRUE
450         (gtk_combo_button_release): changed return value to TRUE after
451         gtk_grab_add on combo->popwin
452
453         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
454         collapse or expand
455
456         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
457         button/motion
458
459         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
460         press/release and motion that trigger act
461
462         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
463
464         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
465         for GDK_Return
466         
467         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
468         (gtk_list_button_release): return TRUE if selection
469
470         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
471         press
472
473         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
474         (gtk_menu_shell_button_release): chain parent_menu_shell retval
475
476         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
477         nothing triggered
478         (gtk_notebook_button_release): return TRUE if we do anything
479
480         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
481         (gtk_spin_button_button_release): return TRUE or chained retval
482
483         * gtk/gtktext.c (gtk_text_button_press): 
484         (gtk_text_button_release): return TRUE
485         (gtk_text_key_press): remove redundant retval code
486         
487         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
488         and sensitive
489         (gtk_tree_item_subtree_button_click): changed type to gint, and return
490         TRUE if sensitive
491
492         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
493         return TRUE
494
495 2001-03-23  Havoc Pennington  <hp@redhat.com>
496
497         * gtk/testgtk.c: fix warnings
498
499         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
500
501         * gtk/gtktextview.c: fix warnings
502
503         * gtk/gtktext.c (find_cursor_at_line): fix warning
504
505         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
506
507         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
508         of this function
509
510         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
511         fix warning
512
513         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
514
515         * gtk/gtkfontsel.c: fix warning
516
517         * gtk/gtkcolorsel.c: fix warnings
518
519 2001-03-23  Havoc Pennington  <hp@redhat.com>
520
521         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
522
523         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
524
525         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
526         and deprecated gtk_check_menu_item_set_show_toggle().
527         
528         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
529
530         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
531
532         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
533
534 2001-03-23  Havoc Pennington  <hp@redhat.com>
535
536         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
537         some docs
538
539 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
540
541         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
542         this.
543
544         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
545         set_cell to set_value
546
547         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
548         set_cell to set_value
549
550 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
551
552         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
553         fix braino.
554         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
555         support.
556
557         * gtk/gtktreeview.c: Addition of initial sortable support.
558
559         * gtk/gtktreestore.c: Addition of initial sortable support.
560
561         * gtk/gtkliststore.c: Addition of initial sortable support.
562
563         * gtk/gtkmarshal.list: yet another marshaller.
564
565         * gtk/gtktreedatallist.[ch]: shared code between the store models
566         for handling sorting headers.
567
568 2001-03-22  Havoc Pennington  <hp@redhat.com>
569
570         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
571         (gtk_container_unset_focus_chain): Add ability to override the 
572         focus chain for a container explicitly
573
574 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
575
576         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
577         added PROP_MNEMONIC_WIDGET.
578
579         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
580         (gtk_window_remove_mnemonic): 
581         (gtk_window_add_mnemonic): fixed assertions.
582         (gtk_window_activate_mnemonic): constrain modifier checks to those
583         permitted by gtk_accelerator_get_default_mod_mask().
584         got rid of gtk_window_get_default_accel_group().
585
586         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
587         activatable widgets either by focussing or a warning.
588         added a signal accumulator to ::activate_mnemonic which stops the
589         emission once a handler returned TRUE.
590
591 2001-03-22  Havoc Pennington  <hp@pobox.com>
592
593         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
594         the stock item label
595
596         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
597
598         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
599
600         * demos/gtk-demo/*.c: Add mnemonics all over the place
601
602         * gtk/gtklabel.h: mark parse_uline deprecated
603
604 2001-03-21  Alexander Larsson  <alexl@redhat.com>
605
606         * gtk/gtkitemfactory.[ch]:
607         Add support for stock and normal imagemenuitems.
608         
609         * gtk/testgtk.c:
610         Add some tests for mnemonics, stock toolbars, stock
611         and image menuitems in itemfactory and gdk_window_scroll.
612
613 2001-03-21  Alexander Larsson  <alexl@redhat.com>
614
615         * gtk/gtkbutton.[ch]:
616         * gtk/gtkdialog.c:
617         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
618         removed accel_group argument. Renamed gtk_button_new_accel() to
619         gtk_button_new_with_mnemonic() and removed accel_group argument.
620
621         * gtk/gtkcheckbutton.[ch]:
622         New function gtk_check_button_new_with_mnemonic().
623
624         * gtk/gtkentry.c:
625         Override activate_mnemonic and just grab focus.
626
627         * gtk/gtkitemfactory.c:
628         Don't add menu uline accel group, instead use mnemonics support.
629
630         * gtk/gtklabel.[ch]:
631         New support for mnemonics.
632
633         * gtk/gtkmarshal.list:
634         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
635
636         * gtk/gtkmenu.[c]:
637         * gtkmenushell.c:
638         Use mnemonics instead of accel groups for uline
639         support in menu items.
640         Removed gtk_menu_get_uline_accel_group() and
641         gtk_menu_ensure_uline_accel_group().
642
643         * gtk/gtkmenuitem.c:
644         Override activate_mnemonic to handle switching between
645         menu items if there are collisions.
646         
647         * gtk/gtknotebook.c:
648         Connect to activate_mnemonic on the tab_label, so that
649         activating it switches to that notebook page.
650
651         * gtk/gtkwidget.[ch]:
652         Add activate_mnemonic signal. New function
653         gtk_widget_activate_mnemonic() to emit it.
654         Default implementation does activate/grab_focus.
655
656         * gtk/gtkwindow.[ch]:
657         Add support for mnemonics in windows.
658         New functions:
659         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
660         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
661
662         * gtk/testgtk.c:
663         Update to function name changes.
664         
665 2001-03-21  Alexander Larsson  <alexl@redhat.com>
666
667         * gtk/gtkimagemenuitem.[c]:
668         Add gtk_image_menu_item_new_from_stock()
669
670 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
671
672         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
673         Fix buglet in meeting.
674
675 2001-03-19  Havoc Pennington  <hp@redhat.com>
676
677         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
678         add a bunch of accessor functions. This is because we have
679         reasonable expectations of extending what fields it contains in
680         the future.
681
682         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
683         changes
684
685         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
686         GtkIconSource   
687
688 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
689
690         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
691         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
692
693         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
694           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
695           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
696           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
697         Change float to double everywhere with the exception of 0<->1.0 alignment
698         and GtkCurve.
699
700 2001-03-19  Tor Lillqvist  <tml@iki.fi>
701
702         * gdk/win32/gdkdrawable-win32.c
703         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
704         output.
705
706         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
707         gdkwin32.h.
708
709 2001-03-18  Tor Lillqvist  <tml@iki.fi>
710
711         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
712         print_event_state, print_event): Use preprocessor macro to make
713         code more compact. Print also GDK_WINDOW_STATE events.
714         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
715         
716         * gtk/gtk.def
717         * gtk/makefile.mingw.in: Update.
718
719         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
720         to catch also Cygwin.
721
722 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
723
724         * gtk/gtkspinbutton.[hc]: added rc-style argument
725         GtkSpinButton::shadow_type.
726         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
727         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
728         rc-style settings.
729
730         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
731
732         * gtk/gtkwidget.c: quark cleanups.
733
734         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
735         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
736         to create_rc_style() (we don't do cloning in standard OO sense).
737         added per rc style properties.
738         
739         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
740         property values and for caching those. some cleanups.
741         
742         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
743         
744         * gtk/gtksettings.[hc]: new file for global rc-file properties
745         (at least currently, should get extended to support X properties
746         and other communication mechanisms).
747         
748         * gtk/gtkwidget.[hc]: added style property support:
749         (gtk_widget_class_install_style_property_parser): install style
750         property pspec with parser function for rc-file values other
751         than LONG, DOUBLE or STRING.
752         (gtk_widget_class_install_style_property): same as above without
753         parser (parsers are going to be needed quite infrequently).
754         (gtk_widget_style_get_property): retrive style property value.
755         (gtk_widget_style_get_valist): same as above with varargs support,
756         has NOCOPY semantics.
757         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
758
759 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
760
761         * demos/gtk-demo/main.c (row_activated_cb): modified to use
762         "row_activated" signal.
763
764         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
765         stupidity.  Lets actually pass in the row with this signal...
766
767 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
768
769         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
770
771         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
772
773         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
774         everything into the ::destroy function, and freed a lot more.
775
776 2001-03-16  Havoc Pennington  <hp@redhat.com>
777
778         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
779         instead of gint16, to avoid overflow issues, since sizes > 16-bit
780         are now allowed.
781
782 2001-03-16  Havoc Pennington  <hp@redhat.com>
783
784         * Applied patch from Nils Barth (bug # 51041) to 
785         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
786         in various places.
787
788 2001-03-15  Havoc Pennington  <hp@redhat.com>
789         
790         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
791         for properties to set on the tag.
792
793         * gtk/testtext.c: fixups to reflect create_tag change
794         
795         * gtk/gtktexttag.c (gtk_text_tag_set_property):
796         background/foreground stipple are objects, not boxed.
797
798         * demos/gtk-demo/textview.c: intellihancing
799
800 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
801
802         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
803         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
804
805 2001-03-16  Alexander Larsson  <alexl@redhat.com>
806
807         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
808         Fix sign error with queued region translations.
809
810 2001-03-15  HideToshi Tajima  <tajima@happy>
811
812         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
813         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
814         * gtk/gtkentry.c (update_im_cursor_location): 
815         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
816         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
817         set_cursor_pos to set_cursor_location in GtkInputContext class
818
819 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
820
821         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
822         the location of the cell relative to its area.
823         * gtk/gtkcell*: modified for above change
824         * gtk/gtktreeview.c: modified for above change.
825
826 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
827
828         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
829          (gtk_tree_view_finalize): actually unref the model.  Thanks to
830         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
831
832 2001-03-14  Havoc Pennington  <hp@redhat.com>
833
834         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
835         
836         * gtk/gtk.h: remove gtkdata.h
837
838         * gtk/Makefile.am: remove gtkdata
839         
840         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
841         not "disconnect" on the adjustments.
842         
843         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
844         GtkData
845
846         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
847         not GtkData
848
849         * configure.in: handle case where X render exists, but Pango lacks
850         Xft support.
851
852 2001-03-15 Alexander Larsson  <alexl@redhat.com>
853
854         * gtk/gtktoolbar.[ch]:
855         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
856         to add stock items to toolbars.
857
858         * gtk/Makefile.am:
859         Remove ../gdk/gdkim.h from gdk_headers.
860
861 2001-03-15  Sven Neumann  <sven@gimp.org>
862
863         * gdk/gdkim.h: removed
864         
865         * gdk/gdkprivate.h
866         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
867
868 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
869
870         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
871         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
872         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
873         set_cursor_pos() virtual method
874
875         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
876         (gtk_im_context_xim_set_cursor_pos): add implementation for
877         set_cursor_pos() method
878
879         * gtk/gtkentry.c (recompute_idle_func): set current cursor
880         position to input methods
881
882 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
883
884         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
885         code a lot.
886
887         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
888         g_mem_chunk.
889         (_gtk_tree_data_list_alloc): use g_mem_chunk.
890         (_gtk_tree_data_list_node_to_value): Fix to switch on
891         G_TYPE_FUNDAMENTAL.
892         (_gtk_tree_data_list_value_to_node): Fix to switch on
893         G_TYPE_FUNDAMENTAL.
894         (_gtk_tree_data_list_node_copy): Fix to switch on
895         G_TYPE_FUNDAMENTAL.
896
897 2001-03-12  Havoc Pennington  <hp@redhat.com>
898
899         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
900         to convert to new property API. Also, change default_width and
901         default_height get_property to return 0 as the flag value for
902         "unset"; -1 is not a valid value for these fields.
903
904 2001-03-12  Havoc Pennington  <hp@redhat.com>
905
906         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
907         enum with registration for icon sizes, instead of strings.
908
909         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
910         gtkwidget.c: Fix to reflect GtkIconSize
911         
912 2001-03-12  Alexander Larsson  <alexl@redhat.com>
913
914         Make GtkFB compile and link.
915         
916         * gdk/linux-fb/gdkdrawable-fb2.c:
917         window->mapped to GDK_WINDOW_IS_MAPPED(). 
918         
919         * gdk/linux-fb/gdkwindow-fb.c:
920         window->mapped to GDK_WINDOW_IS_MAPPED(). 
921         Added gdk_window_shape_combine_region.
922         Added assorted placeholders for unimplemented new GdkWindow API calls.
923
924 2001-03-12  Alexander Larsson  <alexl@redhat.com>
925
926         * gtk/gtkfilesel.c:
927         Add more test when converting filenames from/to utf-8.
928         Don't allow entering text in the filename entry which isn't allowed in
929         a filename. Just beep instead.
930
931 2001-03-12  Alexander Larsson  <alexl@redhat.com>
932
933         * gtk/gtkclist.c:
934         Scroll using gdk_window_scroll(). Don't wait for exposes.
935         Move the column headers in an order that makes them flash less.
936
937 2001-03-10  Hans Breuer  <hans@breuer.org>
938
939         * gdk/gdk.def : updated
940
941         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
942         to offseting the clip_mask at the right place
943
944         * gdk/win32/gdkwindow-win32.c : don't create background brushes
945         for all the gdkClasses, especially not for the input_only case.
946         Otherwise flickering wont be avoidable, because we don't get
947         WM_ERASEBKGND message for these windows.
948
949         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
950         and fixed massive redraw problems apparently triggered by Alexanders 
951         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
952         but it seems to work quite well :-)
953
954         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
955         prototype
956
957 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
958
959         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
960         (gtk_list_store_set_cell): Fix a stupid typo.
961
962 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
963
964         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
965         select_all not work if you're in SINGLE mode (it doesn't make that
966         much sense, anyway.)
967
968         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
969         handle types more sanely.
970         (_gtk_tree_data_list_value_to_node): handle types more sanely.
971         (_gtk_tree_data_list_node_copy): handle types more sanely.
972
973         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
974         GValue better. Converts the type as well.
975
976         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
977         GValue better. Converts the type as well.
978
979 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
980
981         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
982         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
983         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
984         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
985
986         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
987         gdk_im/gdk_ic.
988
989 2001-03-09  Hans Breuer  <hans@breuer.org>
990
991         * gdk/gdk.def : updated
992
993         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
994         for their palette
995
996         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
997         removing
998
999         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
1000         removing and implemented Havoc's GdkWindow state functions; 
1001         stick/unstick only as no-op, cause I don't know how to emulate 
1002         on win32 ...
1003
1004         * gtk/gtk.def : updated
1005
1006         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
1007
1008         * gtk/gtktypeutils.c : #include <string.h>
1009
1010         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
1011
1012 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
1013
1014         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
1015         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
1016         not a boxed.
1017
1018 2001-03-09  Alexander Larsson  <alexl@redhat.com>
1019
1020         * docs/Changes-2.0.txt:
1021         Document expose event->region change and that gtk_widget_event
1022         doesn't allow passing expose events.
1023
1024         * gdk/gdkevents.h:
1025         Add region to expose event.
1026         
1027         * gdk/gdkevents.c:
1028         Handle event->region in gdk_event_copy() and gdk_event_free().
1029
1030         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
1031         Generate expose_event->region when creating expose events.
1032
1033         * gdk/x11/gdkevents-x11.c:
1034         Generate expose events with regions when translating X events.
1035
1036         * gtk/gtkcontainer.[ch]:
1037         Default expose handler that propagates expose events to NO_WINDOW
1038         children. New function gtk_container_propagate_expose()
1039
1040         * gtk/gtkwidget.[ch]:
1041         Moved gtk_widget_event implementation to gtk_widget_event_internal.
1042         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
1043         expose events. New function gtk_widget_send_expose() to send expose
1044         events. New function gtk_widget_region_intersect() to calculate
1045         window/region intersections.
1046         
1047         * gtk/gtkmain.c (gtk_main_do_event):
1048         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
1049         Use gtk_widget_send_expose() to send expose events.
1050         
1051         * gtk/gtkbin.c:
1052         * gtk/gtkbox.c:
1053         * gtk/gtkfixed.c:
1054         * gtk/gtkimagemenuitem.c:
1055         * gtk/gtklist.c:
1056         * gtk/gtkpacker.c:
1057         * gtk/gtktable.c:
1058         * gtk/gtktree.c:
1059         Remove expose handler, using the default container implementation
1060         instead.
1061         
1062         * gtk/gtkbutton.c:
1063         * gtk/gtkcheckbutton.c:
1064         * gtk/gtkeventbox.c:
1065         * gtk/gtkfixed.c:
1066         * gtk/gtkhandlebox.c:
1067         * gtk/gtklayout.c:
1068         * gtk/gtklistitem.c:
1069         * gtk/gtkmenu.c:
1070         * gtk/gtkmenubar.c:
1071         * gtk/gtkmenuitem.c:
1072         * gtk/gtknotebook.c:
1073         * gtk/gtkoptionmenu.c:
1074         * gtk/gtkpaned.c:
1075         * gtk/gtkscrolledwindow.c:
1076         * gtk/gtktogglebutton.c:
1077         * gtk/gtktoolbar.c:
1078         * gtk/gtktreeitem.c:
1079         * gtk/gtkviewport.c:
1080         Chain expose handler to parent class handler. Use
1081         gtk_container_propagate_expose() to propagate exposes.
1082
1083         * gtk/gtkclist.c (check_exposures):
1084         * gtk/gtktext.c (process_exposes):
1085         Use gtk_widget_send_expose instead of gtk_widget_event.
1086
1087 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
1090
1091 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
1092
1093         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
1094         unref the nodes.   Fixes bug #50058.
1095
1096         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
1097         "::ref_iter" to "::ref_node".
1098         (gtk_tree_model_unref_node): change "::unref_iter" to
1099         "::unref_node". Fixes bug #50064.
1100
1101 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
1102
1103         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
1104         support for invisible cells.
1105          (gtk_tree_view_bin_expose): ditto
1106
1107 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
1108
1109         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
1110         on gobjects.
1111
1112         * tests/testtreefocus.c (main): New test file.
1113
1114         * tests/testtreeview.c: update to latest glib changes.
1115
1116         * tests/testtreecolumns.c: update to latest glib changes.
1117
1118 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
1119
1120         * gtk/testgtk.c: re-enabled event watcher emission hooks.
1121
1122 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
1123
1124         * *.c: added accumulator data argument to g_signal_newc()
1125         functions.
1126
1127         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
1128         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
1129         * gtk/treestoretest.c (make_window):
1130         s/g_signal_connect/g_signal_connectc/.
1131
1132         * gtk/gtktextbuffer.c: completed signal arg fixups,
1133         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
1134
1135 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
1136
1137         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
1138         G_CONST_RETURN.
1139
1140         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
1141         ::hierarchy-changed signal when a widget changes
1142         from anchored to unanchored or vice versa.
1143         (anchored means 
1144          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
1145         Use a private flag to keep track of this efficiently.
1146
1147 2001-03-07  Havoc Pennington  <hp@redhat.com>
1148
1149         * gtk/testgtk.c (create_spins): uglify so that size request gets
1150         tested.
1151
1152         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
1153         request on values for upper/lower, completes #6152
1154
1155 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
1156
1157         * Makefile.am: Remove gtk-config-2.0 again.
1158         (Grrrr, pkg-config. And stops make loops.)
1159
1160 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
1161
1162         * gtk/gtksignal.[hc]: removed old emission hook API.
1163         
1164         * docs/Changes-2.0.txt: fixed sections.
1165         
1166         * gtk/gtktextbuffer.c: signal arg fixups.
1167
1168 2001-03-07  Havoc Pennington  <hp@redhat.com>
1169
1170         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
1171
1172         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
1173         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
1174         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
1175         validation and the redraw which is higher priority than the
1176         validation.
1177
1178 2001-03-07  Havoc Pennington  <hp@redhat.com>
1179
1180         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
1181         (gtk_entry_set_property): remove trailer
1182
1183         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
1184         (gtk_entry_get_width_chars): new functions, to set size request to 
1185         a given number of characters
1186
1187         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
1188
1189         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
1190         (gtk_dialog_get_has_separator): new function
1191         (run_delete_handler): fix to not emit "response" signal
1192         because we already did in the delete event handler installed
1193         at dialog creation time.
1194         
1195         * gtk/gtkdialog.h: add a has_separator property,
1196         add GTK_DIALOG_NO_SEPARATOR flag
1197
1198 2001-03-07  Havoc Pennington  <hp@redhat.com>
1199
1200         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
1201         off decorations for a window.
1202
1203         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
1204         changes
1205
1206         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
1207         to get location of PangoLayout inside the label, closes #51198
1208
1209         * gtk/testgtk.c (create_bbox): fix up button box usage
1210
1211         * gtk/testcalendar.c (create_calendar): fix up button box usage
1212
1213         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
1214
1215         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
1216
1217         * gtk/gtkhbbox.h: deprecations
1218
1219         * gtk/gtkvbbox.h: deprecations
1220
1221         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
1222         emulate deprecated gtk_button_box_get_spacing
1223
1224         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
1225         the "set global default" functions
1226         (struct _GtkButtonBox): remove "spacing" field, use the one from 
1227         GtkBox base class
1228
1229         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
1230
1231         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
1232         render the icon, return the missing image icon.
1233
1234         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
1235         image icon if the load fails.   
1236
1237         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
1238         when no image is found; should be the Netscape "missing image"
1239         icon eventually but for now is a random image
1240
1241         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
1242         role for the session manager
1243
1244         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
1245
1246         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
1247         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
1248
1249         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
1250
1251 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
1252
1253         * gtk/*.c: marshaller fixes.
1254         
1255         * gtk/gtkmarshal.list: extreme cleanup.
1256
1257         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
1258         param spec for now.
1259
1260         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
1261         where appliable.
1262
1263         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
1264         special cased autogenerated boxed types from gtktypebuiltins_ids.c
1265         which are not reference counted:
1266         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
1267         PangoFontDescription, GtkTreeIter and GtkTreePath.
1268
1269 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
1270
1271         * gtk/gtktreeselection.h: 
1272         * gtk/gtktreemodel.c:
1273         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
1274         file should be included directly, and gobject/gmarshal.h
1275         as well as gtk/gtkmarshal.h even can't be included directly.
1276
1277         * Makefile.am: grr, install gtk-config-2.0.
1278
1279         * gtk/testgtk.c:
1280         * gtk/simple.c:
1281         * gtk/gtkmenu.c:
1282         * gtk/gtkitemfactory.c: use g_object_connect() instead of
1283         passing "*signal*::*" args to gtk_widget_set().
1284         
1285         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
1286         
1287         * gtk/*.c: removed trailer arg from property setters and getters.
1288         macro fixups.
1289
1290 2001-03-07  Alexander Larsson  <alexl@redhat.com>
1291
1292         * gtk/gtklabel.c (set_markup): Removed warning
1293
1294 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
1295
1296         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
1297         field to allow you to hide cell renderers.
1298
1299         * gtk/gtkcellrenderer.c: Add support for invisible cells.
1300
1301         * gtk/gtktreeview.c: Add support for invisible cells.
1302
1303 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
1304
1305         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
1306         Add "clicked" signal back to columns.
1307
1308         * ChangeLog: remove conflict markers.
1309
1310 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
1311
1312         * gtk/gtkbutton.c: Add animation of activation by, on 
1313         activate, pressing the button, and adding a timeout that 
1314         releases the button after 250ms or on key release and
1315         emits ::clicked. (#51501)
1316
1317         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
1318         action area, we connect to ::clicked instead of ::activate
1319         so the dialog stays up through the animation.
1320
1321 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
1322
1323         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
1324         check the ignore_enter flag for the menu shell that
1325         the item is actually a child of, not for attached
1326         submenus. (#51536)
1327
1328 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1329
1330         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1331         special key-press grab handling for widgets within
1332         GtkWindows. Otherwise, fall through to normal case.
1333
1334         This prevents key events being sent twice to GtkInvisible
1335         widgets, which can cause all sorts of mischief.
1336
1337 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1338
1339         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1340         widget is in effect, give the grab widget a first
1341         crack at KEY_PRESS/RELEASE events. (#424)
1342
1343 2001-03-06  James Henstridge  <james@daa.com.au>
1344
1345         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
1346         offset for the window_state_event to point at window_state_event
1347         rather than no_expose_event.
1348
1349 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
1350
1351         * gtk/gtkimmodule.h: fix busted /* comment */
1352
1353 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
1354
1355         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
1356         object properties.
1357
1358 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
1359
1360         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
1361         add object properties.
1362
1363         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
1364         to add object properties.
1365
1366         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
1367         object properties.
1368
1369         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
1370         add object properties.
1371
1372         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
1373         object properties.
1374
1375 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
1376
1377         * gtk/gtktreemodel.c: renamed "child_toggled" to
1378         "has_child_toggled".
1379
1380         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
1381         handle new signal name.
1382
1383         * gtk/gtktreestore.c: Updated to handle new signal name.
1384         * gtk/gtklisttore.c: Updated to handle new signal name.
1385         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
1386
1387 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1388
1389         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
1390         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
1391
1392 2001-03-05  Michael Natterer  <mitch@gimp.org>
1393
1394         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
1395         pixbuf-engine coincidentially also failed to make one of it's
1396         parent_class pointers static, causing overwriting of GtkLabel's
1397         parent_class pointer in pixbuf_style_class_init().
1398         (Will commit the fix to the pixbuf-engine too).
1399
1400 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1401
1402         * gdk/gdkwindow.h:
1403         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
1404         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
1405         gdk_window_set_icon_list for net wmspec functionality.
1406
1407         * gdk/x11/gdkwindow-x11.c:
1408         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
1409         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
1410         gdk_window_set_icon_list.
1411         Added gdk_wmspec_change_state helper function and used it in the code.
1412         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
1413
1414         * gtk/gtkdialog.c (gtk_dialog_init):
1415         Set GDK_WINDOW_TYPE_HINT_DIALOG.
1416
1417         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
1418         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
1419
1420         * gtk/gtkwindow.c:
1421         new function gtk_window_set_type_hint.
1422         On realize, set type hint and modal hint.
1423
1424         * gtk/gtkwindow.h:
1425         Added type_hint field and gtk_window_set_type_hint.
1426
1427 2001-03-05  Alexander Larsson  <alexl@redhat.com>
1428
1429         * gtk/gtklabel.[ch]:
1430         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
1431         New function gtk_label_get_accel_keyval () to get the underline accelerator
1432         of the label. Setting the label pattern overrides other attributes.
1433
1434 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
1435
1436         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
1437         Added missing initializers to gtk_rc_style_init().
1438
1439 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
1440
1441         * gtk/gtktextview.c: fixed bug #51097 about setting 
1442         gtk_text_view_set_border_window_size() if the widget is 
1443         already realized.
1444
1445 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
1446
1447         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
1448
1449         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
1450         comment. Won't do to have duplicated doc comments between
1451         the platform subdirs.
1452
1453 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
1454
1455         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
1456           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
1457
1458         Detectable auto-repeat - make a repeating key generate
1459         press/press/press/release instead of press/release pairs.
1460
1461         If we have Xkb and XkbSetDectableAutoRepeat supports
1462         that, we do it that way. Otherwise, when we get
1463         a release event, we check ahead with XPending to see
1464         if the next key is a KeyPress with the same keycode
1465         and timestamp. (Not 100% reliable, but pretty close.)
1466           
1467 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
1468         
1469         * gtk/gtkmain.c (gtk_propagate_event): Only do special
1470         special key-press grab handling for widgets within
1471         GtkWindows. Otherwise, fall through to normal case.
1472  
1473         This prevents key events being sent twice to GtkInvisible
1474         widgets, which can cause all sorts of mischief.
1475  
1476 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
1477  
1478         * gtk/gtkmain.c (gtk_propagate_event): When a grab
1479         widget is in effect, give the grab widget a first
1480         crack at KEY_PRESS/RELEASE events. (#424)
1481  
1482 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
1483
1484         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
1485         to extend the selection. (Roughly based on patch
1486         from Jay Cox, #50939)
1487
1488         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
1489         to properly handle previous GDK_BUTTON_PRESS. 
1490         (Patch from Jay Cox, #50938)
1491
1492         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
1493         '\0' back along with the deleted text. (#51148)
1494
1495 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
1496
1497         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
1498         the group when extracting it from the X keyboard event.
1499
1500         * modules/input/Makefile.am modules/input/imipa.c: 
1501         Simple module for entering IPA. (Do we need a 
1502         gtk-stupid-input-tricks CVS module?)
1503
1504 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
1505
1506         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
1507         const.
1508
1509         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
1510
1511         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
1512         is no focus widget for the dialog currently, grab the focus as well
1513         as the default.
1514
1515         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
1516         the action area's children to iterate through, not the
1517         dialog's children.
1518
1519 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
1520
1521         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
1522         Add plug-socket tests. (Won't work worth a darn until I commit
1523         the rest of the plug-socket changes, but no reason these
1524         can't go into CVS now.)
1525
1526 2001-03-02  Havoc Pennington  <hp@redhat.com>
1527
1528         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
1529         _gdk_region_get_xrectangles()
1530
1531         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
1532
1533         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
1534
1535         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
1536         function, contributed by Ron Steinke    
1537
1538         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
1539         gdk_net_wm_supports
1540
1541         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
1542         New function, contributed by Ron Steinke
1543
1544         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
1545         used to line up the text in the entry when using the entry for
1546         editable sheet cell hacks
1547
1548         * gtk/testgtk.c (create_entry): test the activate_default setting
1549         on GtkEntry
1550
1551         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
1552         cause the entry to activate the default button for a dialog when 
1553         activated
1554         (gtk_entry_get_activates_default): new function
1555
1556 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
1557
1558         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
1559         Hwang to move call to sync_selection() up a few lines
1560         to before the row list is modified, to fix crash when
1561         removing rows in the undo_selection list.
1562
1563         (Test case provided by Daniel Elstner:
1564
1565         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
1566
1567 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
1568
1569         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
1570         of tree->root_tree in parent_set rather than _map(), 
1571         fixing #50892 in a bit better manner.
1572
1573 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
1574
1575         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
1576
1577 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
1578
1579         * gtk/gtkstyle.c : Remove duplicate fwd decl for
1580         gtk_default_draw_shadow.
1581
1582 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1583
1584         * gdk/gdkimage.c (gdk_image_new): Remove excess 
1585         warning, make warnings more verbose, treat a error
1586         in shmat as permanent, and don't try again.
1587         (#51163, Ed Randall.)
1588
1589 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
1590
1591         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
1592         delay for the first click before starting to scroll.
1593         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
1594
1595         * gtk/gtktext.c: GtkText should have I-beam cursor. 
1596         (based on gtk-enf-990513-1.patch, Eric Fisher.)
1597
1598 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
1599
1600         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
1601         cleanup to remove some references to unused
1602         ->xoffset, ->yoffset.
1603
1604 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
1605
1606         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
1607         mask. (#51039, fix from Martin Maierhofer)
1608
1609 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
1610
1611         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
1612         for unshifted + and shifted = for non-us keyboards.
1613         Make <Control>+ and <Control>- work as well as 
1614         <Control>KP_Plus, <Control>KP_Minus for recursive
1615         open/close.  (#2682, René Seindal)
1616
1617 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1618
1619         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
1620         the active menu item before deactivating the menu,
1621         so gtk_menu_popdown doesn't change the history. (#50964)
1622         
1623 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
1624
1625         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
1626         draw lines with text_gc rather than black_gc.
1627         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
1628
1629 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
1630
1631         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
1632         Move handling of buttons fully in gtktreeviewcolumn.  This code is
1633         less interrelated then it was, but it still requires the
1634         GtkTreeView to map it.
1635
1636         * test/testtreecolumn.c: Now I can add a column to one view,
1637         remove it, add it to the another view, remove it, then re-add it
1638         to the first.  Nifty.
1639
1640 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
1641
1642         * docs/tutorial/gtk-tut.sgml: Minor corrections
1643
1644 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
1645
1646         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
1647         GtkRowReference.
1648
1649 2001-02-28  Havoc Pennington  <hp@redhat.com>
1650
1651         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
1652         draw_default
1653         (gtk_widget_draw_focus): remove this function; we could instead
1654         make it just gtk_widget_draw(), but in most cases I think the
1655         result would be broken user code, so think it's better to have
1656         that code not compile and get fixed
1657         (gtk_widget_draw_default): ditto
1658
1659         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
1660         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
1661         
1662         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
1663         widgets lose/get the default, instead of calling draw_default
1664         
1665         * docs/Changes-2.0.txt: note about all this
1666
1667         Then fixed every widget in GTK, I won't list all the filenames.
1668
1669 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
1670
1671         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
1672         _gtk_tree_row_reference_deleted.
1673         (inserted_callback): Proxy out to
1674         _gtk_tree_row_reference_inserted.
1675         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
1676         get around signal emission ordering problem.
1677
1678         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
1679         fix to work with SINGLE 
1680         (_gtk_tree_selection_internal_select_node): Major sanitization on
1681         selections.  SINGLE now seems to work.
1682
1683         * tests/Makefile.am: add testtreecolumn.c:
1684
1685         * tests/testtreecolumn.c: New test.  Mostly points out selection
1686         bugs currently, but will test columns later.
1687
1688         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
1689         selection bug.  I hate touching this code -- it's scary.
1690
1691 2001-02-26  Havoc Pennington  <hp@redhat.com>
1692
1693         * gtk/testgtk.c: test the window state stuff
1694
1695         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
1696         window come to the user's attention as if it were just created
1697         (gtk_window_iconify): new function
1698         (gtk_window_deiconify): new function
1699         (gtk_window_stick): new function
1700         (gtk_window_unstick): new function
1701         (gtk_window_maximize): new function
1702         (gtk_window_unmaximize): new function
1703
1704         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
1705
1706         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
1707
1708         * gdk/x11/gdkevents-x11.c: create window state events when
1709         appropriate
1710         (gdk_wmspec_supported): new function
1711
1712         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
1713         iconification before showing the window
1714         (gdk_window_deiconify): new function
1715         (gdk_window_stick): new function
1716         (gdk_window_unstick): new function
1717         (gdk_window_maximize): new function
1718         (gdk_window_unmaximize): new function
1719
1720         * gdk/gdkwindow.c: store the window state in the window; 
1721         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
1722         window->mapped.
1723         (gdk_window_get_state): return the current window state
1724
1725         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
1726         (gdk_event_get_state): handle GDK_WINDOW_STATE
1727         (gdk_synthesize_window_state): function to create the window state
1728         events
1729
1730         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
1731         event, for changes to "window state" such as maximized, sticky, 
1732         etc.
1733         
1734         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
1735         focuses a window
1736
1737         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
1738         finds out if we support a given WM spec hint
1739
1740 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
1741
1742         * docs/faq/gtk-faq.sgml: New question re memory leaks.
1743
1744 2001-02-25  Hans Breuer  <hans@breuer.org>
1745
1746         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
1747         cause we want to loose those prototypes only in the latter case
1748
1749         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
1750         GdkPixmapImplWin32 because it itsn't derived from it. Use the
1751         impl member variable instead
1752
1753         * gtk/gtk.def : updated
1754
1755         * gtk/gtklist.c : 
1756         * gtk/gtkmenus.c : include <string.h> for memset ()
1757
1758         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
1759         for everthing built here, but for gtk-x.x.dll only. This solves
1760         problem of indifferent gtk type definitions
1761
1762 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
1763
1764         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
1765
1766 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
1767
1768         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
1769         column that is exposed.
1770
1771         (_gtk_tree_view_update_size): Changed name from set_size, and
1772         changed function to do more work, and not force people calling it
1773         to figure out the size.  Simplifies a lot of code elsewhere.
1774
1775 2001-02-23  Alexander Larsson  <alexl@redhat.com>
1776
1777         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
1778         return solid masks for xpms that have no transparent color.
1779         This makes the ..._create_from_xpm... API backwards
1780         compatible.
1781
1782 2001-02-23  Tor Lillqvist  <tml@iki.fi>
1783
1784         * README.win32: Update. Mention the gtk-1-3-win32-production
1785         branch.
1786
1787         * gdk/win32/bdfcursor.c: New file. A program that generates
1788         xcursors.h. Thanks to Stefan Ondrejicka.
1789
1790         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
1791         compact format.
1792
1793         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
1794
1795         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
1796         function, uses xcursors.h.
1797         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
1798         cursor from inline data instead of using LoadCursor() to generate
1799         it from a resource.
1800
1801         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
1802         event, must check the Windows message for mouse button state, as
1803         the GDK event state might not have been built if it is
1804         undelivered. Remove one goto.
1805
1806         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
1807         SetCursor() if the current cursor as returned by GetCursor() is
1808         the window's previous cursor. The ChildWindowFromPoint() test
1809         apparently didn't work correctly.
1810
1811         * gdk/win32/rc/*.cur: Remove.
1812
1813         * gdk/win32/rc/gdk.rc.in: Remove cursors.
1814
1815         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
1816
1817         * gtk/makefile.{mingw,msc}.in: Updates.
1818
1819 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
1820
1821         * gtk/gtktreemodel.h: add functions for signal emission.
1822
1823         * gtk/gtktreestore.c: move to use above functions instead of
1824         g_signal_emit.
1825
1826         * gtk/gtkliststore.c: ditto
1827
1828 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
1829
1830         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
1831         GObject instead of GtkObject.
1832
1833         * gtk/gtkliststore.c: ditto.
1834
1835         * gtk/gtktreemodelsort.c: ditto.
1836
1837         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
1838         GtkTreeModelIface, instead of in each model.
1839
1840 2001-02-21  Havoc Pennington  <hp@redhat.com>
1841
1842         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
1843         unbreak this function
1844
1845         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
1846         properties
1847
1848         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
1849         properties
1850
1851         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
1852         properties
1853
1854         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
1855         mean unset the max length
1856
1857 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
1858
1859         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
1860         Changed name to be set_cell_data_func to make it clear what
1861         the functino does.  Close bug #51069.
1862
1863 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
1864
1865         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
1866         have memory actually freed.  Keeps box running longer.
1867
1868 2001-02-21  Alexander Larsson  <alexl@redhat.com>
1869         
1870         * gtk/gtkseparatormenuitem.[ch]:
1871         Added new menu separator item. The drawing and size handling
1872         is still done in GtkMenuItem, but the API is a bit more sane.
1873         
1874         * gtk/Makefile.am:
1875         Add gtkseparatormenuitem.[ch].
1876
1877         * gtk/gtk.h:
1878         Add gtkseparatormenuitem.h.
1879         
1880         * gtk/gtkentry.c:
1881         * gtk/gtkmenufactory.c:
1882         * gtk/gtktextview.c:
1883         Use the new API for menu separators.
1884         
1885         * demos/gtk-demo/menus.c (create_menu):
1886         Add some GtkSeparatorMenuItem demo code.
1887
1888 2001-02-20  Havoc Pennington  <hp@redhat.com>
1889
1890         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
1891         Lee Mallabone
1892
1893         * gtk/gtkarrow.c: Convert to new property API, patch from 
1894         Lee Mallabone
1895
1896 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
1897
1898         * tests/testtreeview.c (toggled_callback): fix to reflect change
1899         in GtkTreeModelStore.
1900
1901 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
1902
1903         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
1904         function to create an icon set from a pixbuf.
1905
1906 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1907
1908         * gtk/gtkcellrenderertext.[ch]:
1909         Add a "markup" property.
1910
1911         * gtk/treestoretest.c:
1912         Use the markup property, remove some leftover stuff from
1913         GtkTreeModelMapping.
1914
1915 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1916
1917         * gtk/gtklabel.c (gtk_label_set_selectable):
1918         Queue a redraw if the selectable setting was changed.
1919
1920 2001-02-20  Alexander Larsson  <alexl@redhat.com>
1921
1922         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1923         Actually copy the whole gc, not just the public parts.
1924         
1925         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
1926         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
1927         labels.
1928
1929 2001-02-19  Havoc Pennington  <hp@pobox.com>
1930
1931         * gdk/gdkwindow.c: docs
1932
1933         * gdk/gdkrgb.c: docs
1934
1935         * gdk/gdkregion-generic.c: docs
1936
1937         * gdk/gdkgc.c (gdk_gc_set_values): docs
1938
1939         * gdk/gdkdraw.c: docs
1940
1941         * gdk/gdkdrawable.h: deprecate drawable get/set data
1942
1943 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
1944
1945         * demos/gtk-demo/dialog.c: Add simple new demo.
1946
1947 2001-02-19  Havoc Pennington  <hp@redhat.com>
1948
1949         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
1950         insert_child_anchor signal, bug #50245
1951
1952         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
1953         from create_child_anchor, so the anchor is passed in
1954
1955         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
1956         (_gtk_widget_segment_new): have the child anchor object passed in, 
1957         instead of creating it.
1958
1959         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
1960         to gtk_text_buffer_get_modified
1961
1962 2001-02-19  Havoc Pennington  <hp@redhat.com>
1963
1964         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
1965         changed GLib without fixing GTK
1966
1967         * gtk/gtkrange.h: Rename all the stupid implementation detail 
1968         functions to have an underscore in front. Most of them should 
1969         probably just go away, but for starters don't export them.
1970         Bug #50482
1971
1972 2001-02-19  Havoc Pennington  <hp@redhat.com>
1973
1974         * gdk/gdkcolor.h: test was backward, so deprecated functions were
1975         excluded by default
1976
1977         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
1978         clean up the old code a bit
1979
1980         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
1981         inconsistent state
1982
1983         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
1984         draw inconsistent state
1985
1986         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
1987         (create_menu): add inconsistent test
1988
1989         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
1990         new function
1991         (gtk_check_menu_item_get_inconsistent): new function
1992         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
1993         state (using etched in for now)
1994
1995         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
1996         draw inconsistent state
1997
1998         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
1999         function, used when the user has selected a range of stuff in
2000         different states
2001         (gtk_toggle_button_get_inconsistent): accessor for that
2002         (gtk_toggle_button_paint): draw inconsistent state (etched in?
2003         don't know what else to do)
2004
2005 2001-02-19  Hans Breuer <hans@breuer.org>
2006
2007         * gtk/gtk.def : updated exported symbols
2008
2009         * gtk/makefile.msc.in : updated
2010
2011         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
2012         a colormap, when invoked from testgtk::entry. I'm not sure where
2013         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
2014         avoids immediate crashing ...
2015
2016         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
2017         any objections ?
2018
2019         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
2020         0 parameter. At least msvc doesn't like macros with var args. 
2021         I simply removed the extra 0, was it a feature or a typo ?
2022
2023         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
2024         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
2025         because the value assignment to the internal struct wasn't working.
2026         I'm not absolutely sure. The problem could have been resolved by
2027         changing the "func" declartion in the struct, but was the pointer
2028         to the function pointer intended ?
2029
2030         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
2031
2032         * gdk/gdk.def : updated exported symbols
2033
2034         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
2035         only use SetDIBitsToDevice if there is a palette at the drawable
2036         and the image is GDK_VISUAL_PSEUDO_COLOR
2037
2038         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
2039
2040         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
2041
2042         * gdk/*/makefile.msc : updated
2043
2044 2001-02-19  Havoc Pennington  <hp@redhat.com>
2045
2046         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
2047         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
2048
2049         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
2050         (gdk_key_repeat_restore): nuke
2051
2052         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
2053         (gdk_init_check): no atexit func
2054
2055         * gdk/gdkrgb.h: mark some stuff deprecated
2056
2057         * gdk/gdkcolor.h: mark some stuff deprecated
2058         
2059         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
2060
2061         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
2062
2063 2001-02-16  Havoc Pennington  <hp@redhat.com>
2064
2065         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
2066         scroll steps.
2067
2068         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
2069         steps, and add Ctrl-arrow shortcuts for paging visually as with
2070         HScale, since Page Up and Page Down move logically.
2071
2072         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
2073         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
2074         
2075         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
2076         steps
2077         (gtk_range_scroll): handle the visual steps
2078
2079         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
2080         scroll steps
2081
2082         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
2083         steps, not the logical ones.
2084
2085         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
2086         (scroll_vertical): handle up/down steps
2087
2088 2001-02-19 Alexander Larsson  <alexl@redhat.com>
2089
2090         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
2091         Copy data and free data with free().
2092
2093         * gdk-pixbuf/gdk-pixbuf.c:
2094         * gdk-pixbuf/io-jpeg.c:
2095         * gdk-pixbuf/io-png.c:
2096         Use g_try_malloc/g_free instead malloc/free.
2097         
2098         * gdk-pixbuf/test-gdk-pixbuf.c:
2099         Must... initialize... gobject...
2100         
2101         * gdk-pixbuf/pixops/timescale.c:
2102         * gtk/gtkcalendar.c:
2103         Use g_malloc instead of malloc.
2104         
2105 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
2106
2107         * gtk/testgtkrc:
2108         Comment out property assignments, these don't work yet.
2109
2110 2001-02-17  Havoc Pennington  <hp@pobox.com>
2111
2112         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
2113         bit.
2114
2115 2001-02-17  Havoc Pennington  <hp@pobox.com>
2116
2117         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
2118         shadowed variables that had broken size request in some cases,
2119         leading to bogus tooltips (#50996)
2120
2121 2001-02-06  Jon K Hellan  <hellan@acm.org>
2122
2123         Implement fast browsing of tooltips, bug #50619
2124         
2125         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
2126         and last_popdown
2127         
2128         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
2129         use_sticky_delay and last_popdown.
2130         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
2131         time of popdown.
2132         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
2133         is NULL.
2134         (gtk_tooltips_recently_shown): New static function.  Return true
2135         if < sticky_delay has elapsed since last popdown.
2136         (gtk_tooltips_event_handler): Display window after sticky_delay
2137         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
2138         since last popdown.
2139         
2140 2001-02-17  Havoc Pennington  <hp@pobox.com>
2141
2142         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
2143         instead of (). #6394
2144
2145         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
2146         G_CONST_RETURN, make it return by reference, #50473
2147         
2148 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
2149
2150         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
2151         generated ENTER_NOTIFY event with 0, otherwise not explicitely
2152         setup fields contain garbage (e.g. subwindow, breaking
2153         gdk_drawable_ref() upon event copy).
2154         (gtk_menu_stop_navigating_submenu_cb): same here.
2155
2156         * gtk/gtklist.c (gtk_list_vertical_timeout): 
2157         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
2158         * gtk/gtkclist.c (vertical_timeout): 
2159         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
2160         default-zero-intialization for unions to memset(,0,), as unions are
2161         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
2162         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
2163
2164         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
2165         g_closure_sink() warning.
2166
2167         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
2168         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
2169         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
2170         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
2171         
2172 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
2173
2174         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
2175         gtk_*_store_get, and moved to GtkTreeModel.
2176
2177         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
2178
2179         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
2180
2181         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
2182
2183         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
2184         set the func.
2185
2186         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
2187         freeze/thaw notify between setting all the properties for a cell.
2188
2189         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
2190
2191 2001-02-15  Havoc Pennington  <hp@redhat.com>
2192
2193         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
2194         the X coordinates so they're with respect to the line, rather than 
2195         with respect to the layout.
2196
2197         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
2198         Mallabone
2199
2200         * gtk/testgtk.c (create_range_controls): add vscale tests, 
2201         and inverted test
2202
2203         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
2204         #50806
2205
2206         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
2207
2208         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
2209         gtk_text_iter_is_end
2210
2211         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
2212         rename gtk_text_buffer_get_end_iter
2213
2214         * gtk/testgtk.c (create_labels): Add test for selectable
2215
2216         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
2217         the selection stuff. This code is kind of broken since it doesn't 
2218         use the theme engine.
2219
2220         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
2221         fix infinite loop and y offset problem
2222         (gdk_draw_layout_line_with_colors): fix foreground color handling
2223
2224         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
2225         that makes the label selectable.
2226         
2227         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
2228         layout when the style is set, since fonts etc. could have changed.      
2229
2230 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
2231
2232         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
2233
2234         * gtk/gtktreemodelsimple.[ch]: removed.
2235
2236 2001-02-16  Alexander Larsson  <alexl@redhat.com>
2237
2238         * gtk/gtktreemodelmapping.[ch]:
2239         New files. Implement GtkTreeModelMapping.
2240         
2241         * gtk/Makefile.am:
2242         Add gtktreemodelmapping.[ch].
2243         
2244         * gtk/gtk.h:
2245         Add gtktreemodelmapping.h
2246
2247         * gtk/treestoretest.c:
2248         Test the GtkTreeModelMapping
2249
2250 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
2251
2252         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
2253         have a demo, we might as well pass in real values.  Thanks to
2254         clahey for pointing this out.
2255
2256 2001-02-14  Havoc Pennington  <hp@pobox.com>
2257
2258         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
2259         "static" to a private function
2260         (gtk_image_menu_item_class_init): remove destroy handler,
2261         add "image" object property
2262
2263 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
2264
2265         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
2266         Add a shortcut if the window and the current clip_region doesn't
2267         overlap. This is needed when there are a lot of windows in a
2268         window. The layout test in testgtk is a good test.
2269
2270         * gdk/linux-fb/gdkwindow-fb.c:
2271         Whitespace fix.
2272
2273 2001-02-13  Sven Neumann  <sven@convergence.de>
2274
2275         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
2276
2277 2001-02-13  Alexander Larsson  <alexl@redhat.com>
2278
2279         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
2280         Don't reference last_cursor if it is null. Fixes crash when rotating
2281         the screen before having moved the mouse.
2282
2283         * gdk/linux-fb/gdkcc-fb.c: Zapp!
2284
2285         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
2286
2287         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
2288         when using 90 or 270 degrees rotation.
2289
2290 2001-02-12  Havoc Pennington  <hp@pobox.com>
2291
2292         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
2293         it always set the foreground, even if we were only using
2294         a stipple.
2295         (gdk_draw_layout_line_with_colors): new function, allow
2296         override colors
2297         (gdk_draw_layout_with_colors): new function, allow override
2298         colors
2299         (gdk_pango_layout_line_get_clip_region): function to get the clip
2300         region for a logical text range
2301         (gdk_pango_layout_get_clip_region): get the clip region for a
2302         logical text range
2303
2304         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
2305         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
2306         the right number of arguments.
2307
2308         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
2309         enhance the function to check that node data corresponds to a 
2310         view still belonging to the tree.
2311
2312         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
2313         GtkTreePath
2314         (gtk_tree_view_inserted): ditto
2315         (gtk_tree_view_child_toggled): ditto
2316
2317         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
2318         simplify this code.
2319
2320         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
2321         a PangoAttrList
2322
2323         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
2324
2325         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
2326
2327         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
2328         size in the size request 
2329         (gtk_menu_bar_size_allocate): consider toggle size here
2330
2331         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
2332         that displays a widget in the toggle slot
2333
2334         * gtk/testgtk.c: test GtkImageMenuItem
2335
2336         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
2337         
2338         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
2339         request and allocation
2340
2341         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
2342
2343         * gtk/gtkcheckmenuitem.c
2344         (gtk_check_menu_item_toggle_size_request): ditto
2345         
2346 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
2347
2348         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
2349         reference.
2350
2351         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
2352         and refuse to initialize GTK+ if they fail.
2353
2354 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
2355
2356         * configure.in: Add check for gtk-doc version.
2357
2358 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
2359
2360         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
2361         where the xpad/ypad was only being used on one side!
2362
2363 2001-02-11  Tor Lillqvist  <tml@iki.fi>
2364
2365         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
2366         function, copied from X11 version.
2367
2368         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
2369         DestroyCursor failures. The reason for the problem (despite the
2370         inconsistent messages from GetLastError()) was that
2371         DestroyCursor() cannot be called while a cursor is set in a
2372         window. Set the new cursor first and then destroy the old one.
2373         Thanks to jpe@archaeopteryx.com.
2374
2375         * gdk/win32/gdkcc-win32.c: Remove.
2376
2377         * gdk/win32/Makefile.am: Remove from here, too.
2378         
2379         * gdk/gdk.def
2380         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
2381
2382         * gtk/gtk.def
2383         * gtk/makefile.mingw.in: Updates.
2384
2385 2001-02-08  Havoc Pennington  <hp@redhat.com>
2386
2387         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
2388         add a widget to a bin that already has a child.
2389
2390         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
2391
2392         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
2393         
2394         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
2395
2396         * gdk/gdk.h: remove gdkcc.h
2397
2398         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
2399
2400         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
2401         GdkPixbuf, since the previous implementation was GdkColorContext
2402         dependent.
2403
2404         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
2405         
2406 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
2407
2408         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
2409         a sane value!
2410
2411 2001-02-08  Havoc Pennington  <hp@redhat.com>
2412
2413         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
2414         lighten them.
2415
2416 2001-02-08  Havoc Pennington  <hp@redhat.com>
2417
2418         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
2419         validation idle
2420
2421         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
2422         cell renderer
2423
2424         * demos/pixbuf-demo.c (timeout): remove deprecated
2425         gtk_widget_draw
2426
2427         * demos/testpixbuf-save.c (main): remove deprecated
2428         gtk_drawing_area_size
2429
2430         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
2431         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
2432         at the start of the allocation.
2433         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
2434         unsetup or NULL model.
2435
2436         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
2437         even/odd/sorted cells in the tree view.
2438
2439         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
2440         bugfixes
2441
2442         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
2443         backgrounds with draw_flat_box using different detail for even/odd
2444         rows.
2445
2446         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
2447         row, so we can draw the alternating colors thing
2448
2449         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
2450         property from a synonym property, notify for the synonym.
2451         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
2452         (gtk_text_tag_get_property): Always return the font, even if
2453         all its fields aren't set
2454
2455         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
2456         store the attr list; it leaves us with no way to change attributes
2457         in _render according to the render flags, and no way to implement
2458         get_property. Instead store all the specific text attributes. 
2459         Separate whether an attribute is enabled from its value. Sync all
2460         properties with GtkTextTag, make them all consistent, etc.
2461
2462         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
2463         renderers can highlight the sort row/column     
2464
2465         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
2466         accessor functions to get values; this has the side effect of
2467         showing up which accessor functions were missing. Added those.
2468
2469         * gtk/gtktreeviewcolumn.h: Replace set_justification with
2470         set_alignment, to be consistent with GtkLabel, GtkMisc
2471
2472         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
2473         arrow.
2474
2475         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
2476
2477         * gtk/gtktreesortable.h: updates in here
2478
2479 2001-02-07  Sven Neumann  <sven@convergence.de>
2480
2481         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
2482         pango dimensions after painting the background. We used to draw
2483         gigantic flat boxes here.
2484
2485 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
2486
2487         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
2488         error introduced with earlier commit) (pointed out by
2489         Ollie Lho)
2490
2491 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
2492
2493         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
2494         which are no longer necessary.
2495
2496 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
2497
2498         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
2499
2500 2001-02-04  Tor Lillqvist  <tml@iki.fi>
2501
2502         * gdk/gdk.def
2503         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
2504         Provide dummy implementations.
2505
2506 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
2507
2508         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
2509
2510         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
2511         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
2512         deprecated this function.
2513
2514         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
2515         argument.
2516
2517 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
2518
2519         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
2520
2521 2001-02-03  Havoc Pennington  <hp@pobox.com>
2522
2523         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
2524         Mikael Hermansson with patch from Mikael (if there was a toggle
2525         start one after the first character in the range, this function
2526         was broken). Bug #50380
2527
2528 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
2529
2530         * configure.in: Remove confusing comment about X11.
2531
2532 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
2533
2534         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
2535         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
2536         
2537 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
2538
2539         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
2540         it breaks things on BSD. If you want to compile GTK+ with
2541         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
2542         when configuring, since GTK+ simply can't be "pure ANSI" 
2543         in the header files it uses. (#8170, Greg Hudson)
2544
2545 2001-02-02  Havoc Pennington  <hp@redhat.com>
2546
2547         * gtk/gtkwindow.c: docs
2548
2549         * gtk/gtkwidget.c: docs
2550         (gtk_widget_set_colormap): add a reference to the colormap
2551         (gtk_widget_get_default_colormap): add a reference to the colormap
2552
2553         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
2554
2555         * gtk/gtktextiter.c: docs
2556
2557         * gtk/gtkmain.c (gtk_propagate_event): docs
2558
2559         * gtk/gtkpaned.c (gtk_paned_get_position): docs
2560         (gtk_paned_set_position): docs
2561
2562         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
2563         sort interface, no implementation yet.
2564
2565         * demos/testpixbuf.c (new_testrgb_window): replace
2566         gtk_drawing_area_size() with gtk_widget_set_usize()
2567
2568         * demos/testpixbuf-drawable.c (main): ditto
2569         
2570         * gtk/testgtk.c: remove use of GtkStatusbarMsg
2571
2572         * gtk/gtktextbuffer.c: docs
2573
2574         * gtk/gtkstock.c: docs
2575
2576         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
2577
2578         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
2579
2580         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
2581         
2582         * gtk/gtkimage.c: add some docs in here
2583         (gtk_image_size_request): change name of
2584         gtk_widget_render_stock_icon
2585         (gtk_image_get_icon_set): don't dup returned string
2586         (gtk_image_get_icon_set): don't dup returned string
2587
2588         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
2589         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
2590         and gtkiconfactory.h functions
2591
2592         * gtk/gtkiconfactory.c: add some docs in here
2593
2594         * gtk/gtkmain.c (gtk_get_default_language): document
2595         (gtk_get_current_event): document
2596         (gtk_get_current_event_state): document
2597         (gtk_get_event_widget): document
2598
2599         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
2600
2601         * gtk/gtkcontainer.c: Add some documentation
2602         (gtk_container_add): give a more explanatory warning on adding an
2603         already-parented widget, this is kind of a FAQ and also a common
2604         typo that's easier to debug with a nice warning 
2605
2606         * gtk/gtkcellrenderertoggle.c
2607         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
2608         adding this, it's useless
2609         (gtk_cell_renderer_toggle_set_active): remove
2610         (gtk_cell_renderer_toggle_get_radio): add
2611
2612         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
2613         the NULL cell renderer, that doesn't make any sense to me. 
2614
2615         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
2616         demo code should never use deprecated features.
2617
2618         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
2619         code should never use deprecated features.
2620
2621         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
2622         gtk_widget_queue_clear_area deprecated
2623
2624         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
2625         deprecated
2626
2627         * gtk/gtklabel.h: mark gtk_label_get() deprecated
2628
2629         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
2630         a GdkImage deprecated, replaced by new consistently-named
2631         functions       
2632
2633         * gtk/gtkmain.h: Mark gtk_exit() deprecated
2634
2635         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
2636
2637         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
2638         deprecated
2639
2640         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
2641         so it won't appear in docs and confuse people.
2642
2643         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
2644
2645         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
2646         macros deprecated. (can't mark the type itself deprecated, since
2647         GtkProgressBar is not deprecated and we need the type decl to use
2648         GtkProgressBar)
2649
2650         * gtk/gtkpixmap.h: Mark deprecated
2651
2652         * gtk/gtkoldeditable.h: Mark deprecated
2653
2654         * gtk/gtklist.h: Mark deprecated
2655
2656         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
2657         for anything anymore.
2658
2659         * gtk/gtkctree.h: Mark deprecated
2660
2661         * gtk/gtkclist.h: Mark deprecated
2662
2663         * gtk/gtkpreview.h: Mark deprecated
2664
2665         * gtk/gtkpacker.h: Mark deprecated
2666
2667         * gtk/gtktipsquery.h: Mark deprecated
2668
2669         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
2670
2671         * gtk/gtkvruler.h: Add comment that it will move out of GTK
2672
2673         * gtk/gtkhruler.h: Add comment that it will move out of GTK
2674
2675         * gtk/gtkruler.h: Add comment that it will move out of GTK
2676
2677         * gtk/gtkgamma.h: Add comment that it will move out of GTK
2678
2679         * gtk/gtkcurve.h: Add comment that it will move out of GTK
2680
2681 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
2682
2683         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
2684         gdk_colormap_sync private since it was never exported
2685         in a header file.
2686
2687         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
2688         colormap->colors[] for StaticGray, StaticColor colormaps.
2689
2690         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
2691         was being used as if it was image->bits_per_pixel.
2692
2693         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
2694         for the image in the GdkImage structure since it isn't
2695         reconstructable, and we need it to handle packed types
2696
2697         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
2698         the assumption that on Win32 image->bits_per_pixel == image->depth,
2699         always.
2700
2701         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
2702
2703         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
2704         warning message if no converter can be found. 
2705
2706 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
2707
2708         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
2709         chars to isupper() / tolower(). (#567)
2710
2711         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
2712         to clear up 64-bit warnings. (#567)
2713
2714 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
2715
2716         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
2717         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
2718
2719         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
2720         since some people set $(libdir) separately. (#1290, David Kaelbling)
2721
2722 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
2723
2724         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
2725         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
2726         MAXPATHLEN, but the code here depends on a fixed value.)
2727         (#4524)
2728
2729 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
2730
2731         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
2732         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
2733
2734 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
2735
2736         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
2737         viewable there is no way that moving the node will cause the 
2738         focus row to become not viewable, so omit check on the visibility
2739         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
2740
2741 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
2742
2743         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
2744         selection before inserting new text.
2745
2746 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
2747
2748         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
2749         Make the sensitivity of the reparented child track that of
2750         the original parent menu item. (#34218, David Hodson)
2751
2752         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
2753         the case where the current item is destroyed properly.
2754
2755         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
2756         some edge cases with child-less menuitems.
2757         
2758 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
2759
2760         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
2761         key pop down window. (#12074, Jon K Hellan)
2762
2763 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
2764
2765         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
2766         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
2767         The solution here isn't perfect - you get an extraneous
2768         emission of "toggle", which could conceivably confuse an app,
2769         but better than the current situation. LXR search seems to
2770         indicate that no apps in GNOME CVS connect to "toggle".
2771
2772 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
2773
2774         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
2775         gtk_public_h_sources to directly here to avoid warning when
2776         building srcdir != builddir. (#9656)
2777
2778 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
2779
2780         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
2781         handlers in gtkrange.c return the proper values (TRUE == handled)
2782         (#10316).
2783
2784         This is just the tip of the iceberg, but gtkrange.c is the
2785         most common place where the propagation is problematical,
2786         and also a place where it is almost certainly safe to change
2787         this in the stable branch.
2788
2789         (You don't want right click popups on a range control or anything...)
2790
2791 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
2792
2793         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
2794         area on focus out, even if a background pixmap isn't set.
2795         (#13941)
2796         
2797 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
2798
2799         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
2800         to deal with setting the shape properly when scrolling arrows are
2801         turned on, but not visible because there is sufficient space.
2802         (#13432)
2803
2804 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
2805
2806         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
2807         items with submenus, destroy the item along with the submenu.
2808         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
2809         properly.
2810
2811         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
2812         later.
2813
2814 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
2815
2816         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
2817         the focus widget sometimes wasn't drawn with the default if there
2818         was no default widget.
2819
2820         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
2821         unreference pixmaps. 
2822
2823         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
2824         for some extra safety.
2825
2826 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
2827
2828         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
2829         the text of a cell to the old pointer value better, by
2830         copying the new text before freeing the old text. Some code
2831         cleanup. (#8079, Karl Nelson)
2832
2833 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
2834
2835         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
2836         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
2837
2838 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
2839
2840         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
2841         item from a menu, check to see if it matches 
2842         menu->old_active_menu_item, and if so, unref and clear
2843         old_active_menu_item (Patch from Pavel Cisler)
2844
2845         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
2846         menu_shell->active_menu_item, if it is the child being
2847         removed. (Patch based on that of Gene Ragan, #50337)
2848
2849 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
2850
2851         * gdk/linux-fb/gdkselection-fb.c: 
2852         * gdk/linux-fb/gdkcolor-fb.c: 
2853         * gdk/linux-fb/gdkdrawable-fb2.c: 
2854         * gdk/linux-fb/gdkfont-fb.c: 
2855         * gdk/linux-fb/gdkim-fb.c: 
2856         * gdk/linux-fb/gdkinput.c: 
2857         * gdk/linux-fb/gdkkeyboard-fb.c: 
2858         * gdk/linux-fb/gdkmain-fb.c: 
2859         * gdk/linux-fb/gdkrender-fb.c: 
2860         A bunch of whitespace cleanup.
2861         
2862 2001-01-30  Havoc Pennington  <hp@pobox.com>
2863
2864         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
2865         #ifdef GTK_ENABLE_BROKEN.
2866
2867         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
2868         GTK_ENABLE_BROKEN just before including the broken headers.
2869         
2870         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
2871         deprecated types registered.
2872
2873         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
2874         we have to test the broken stuff.
2875
2876         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
2877         
2878 2001-01-30  Havoc Pennington  <hp@redhat.com>
2879
2880         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
2881         here where prev pointer was set to the wrong thing
2882
2883         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
2884         (gtk_tree_path_is_descendant): new function
2885
2886         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
2887         cached length
2888         (gtk_list_store_get_iter): don't modify iter if we can't get the
2889         path.
2890
2891         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
2892         
2893         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
2894         GtkTreeDragDest
2895
2896         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
2897         was causing segfault
2898
2899         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
2900         pointer to NULL
2901
2902         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
2903
2904         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
2905         on returning FALSE
2906         (gtk_list_store_iter_children): ditto
2907         (gtk_list_store_iter_nth_child): ditto
2908         (gtk_list_store_iter_nth_child): ditto
2909         (gtk_list_store_iter_parent): ditto
2910
2911         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
2912         on iter->user_data != NULL instead of silently accepting it.
2913         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
2914         we are returning TRUE.
2915         (gtk_tree_store_iter_children): ditto
2916         (gtk_tree_store_iter_nth_child): ditto
2917         (gtk_tree_store_iter_parent): ditto
2918         (gtk_tree_store_insert): remove handling of parent->user_data ==
2919         NULL, replace with parent == NULL       
2920
2921         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
2922         and a comment explaining things
2923
2924         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
2925         interface support to GtkTreeStore.
2926
2927         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
2928         FALSE if no prev, fix
2929
2930         * gtk/gtktreeview.c (set_source_row): use a row reference
2931         (set_dest_row): use a row reference
2932
2933 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
2934
2935         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
2936         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
2937         (gtk_tree_selection_select_iter): The same as above.
2938
2939 2001-01-26  Havoc Pennington  <hp@redhat.com>
2940
2941         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
2942         which holds a handle to a specific row (particular set of values
2943         in the model, i.e. pointer-identity row).
2944
2945         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
2946         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
2947         Still need to use it for the src/dest row saved on the drag context.
2948
2949 2001-01-26  Havoc Pennington  <hp@redhat.com>
2950
2951         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
2952
2953         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
2954         not offset by TREE_VIEW_HEADER_HEIGHT
2955         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
2956         TREE_VIEW_HEADER_HEIGHT
2957
2958         * configure.in (included_loaders): for me, --with-included-loaders
2959         generates the error "the specified loader yes does not exist",
2960         i.e. the arg defaults to "yes", so change test for value ""
2961         to test for value "yes", and include all loaders in that case.
2962
2963         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
2964
2965         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
2966         handle TREE_VIEW_VERTICAL_SEPARATOR
2967         (gtk_tree_view_bin_expose): fix to consider the row offset as
2968         pointing halfway into vertical separator.       
2969         (gtk_tree_view_draw_node_focus_rect): ditto
2970
2971         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
2972         --gtk-debug=updates, which causes gdk_window_set_debug_updates
2973         (TRUE) to be called.
2974
2975         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
2976         debug mode where the invalid region is colored in on invalidate,
2977         so you can see the flicker and know whether your redraw code is 
2978         doing a good job.
2979
2980         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
2981         tree window coordinates (clip rect is in tree window coords)
2982
2983         * gtk/Makefile.am: add gtktreednd.[hc]
2984
2985         * gtk/gtkliststore.c: implement gtktreednd interfaces.
2986
2987         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
2988         drag-and-drop data operations on a model (so we can set up tree
2989         drag-and-drop automatically)
2990
2991         * gtk/testgtk.c: Add a window to change sensitivity in the
2992         GtkLabel test; add a way to change the entry frame in GtkEntry
2993         test
2994
2995         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
2996         (gtk_entry_get_has_frame): new functions to remove the frame
2997         around an entry
2998         (gtk_entry_size_request): shrink requisition if no frame
2999         (gtk_entry_draw_focus): don't draw frame if no frame
3000
3001         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
3002         checks inside a cell renderer
3003         (gtk_default_draw_option): ditto for options
3004
3005         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
3006         children from the alignment, not the button
3007         (gtk_tree_view_column_init): ref/sink the column, to emulate
3008         GObject refcounting.
3009
3010         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
3011         
3012         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
3013         Use theme functions to draw the toggles 
3014
3015         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
3016
3017         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
3018         GdkPangoAttrEmbossed to use in rendering insensitive text
3019
3020         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
3021
3022         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
3023         using new GDK features
3024         
3025 2001-01-24  Alexander Larsson  <alexl@redhat.com>
3026
3027         * gtk/gtkimage.c:
3028         Splitted gtk_image_clear into gtk_image_clear() and
3029         gtk_image_reset(). Call gtk_image_clear() in ::destroy
3030         to avoid leaks.
3031
3032         * gtk/gtklabel.c (set_markup):
3033         Don't leak text.
3034
3035         * gtk/gtktextlayout.c:
3036         Always free display->shaped_objects.
3037
3038         * gtk/testgtk.c (create_clist):
3039         Don't leak custom style.
3040
3041 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3042
3043         * gtk/gtkcolorsel.c (grab_color_at_mouse):
3044         Don't leak image. Simplify using gdk_colormap_query_color().
3045         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
3046
3047         * linux-fb/gdkcolor-fb.c:
3048         Implemented gdk_colormap_query_color.
3049
3050 2001-01-23  Alexander Larsson  <alexl@redhat.com>
3051
3052         * linux-fb/gdkcursor-fb.c:
3053         Don't leak built-in cursors.
3054
3055         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
3056         Don't leak tmp_points.
3057
3058         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
3059         Don't modify desc. Don't leak font if the PangoFont
3060         isn't found.
3061         
3062         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
3063         Free dash_list.
3064
3065         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
3066         Don't leak string.
3067         
3068 2001-01-20  Havoc Pennington  <hp@pobox.com>
3069
3070         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
3071         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
3072         me, matches Pango
3073
3074 2001-01-22  Havoc Pennington  <hp@redhat.com>
3075
3076         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
3077
3078         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
3079
3080         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
3081         Remove, move back to gdk-pixbuf
3082
3083         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
3084         to all the word functions
3085
3086         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
3087         before doing anything on NULL layout or if we don't have the focus
3088
3089         * gtk/testtext.c (fill_example_buffer): "justification"
3090
3091         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
3092         to be called "justification" not "justify"
3093
3094         * demos/gtk-demo/textview.c (create_tags): "justification"
3095         
3096         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
3097
3098 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3099
3100         * gdk/gdkwindow.c (gdk_window_invalidate_region):
3101         Don't leak visible_region. Use visible_region instead of region.
3102         
3103         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
3104         Don't do extra gdk_drawable_ref(). This is not X.
3105         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
3106         gdk_fb_focused_window is ref:ed.
3107         (gdk_fb_window_send_crossing_events): Watch out for destroyed
3108         windows.
3109
3110 2001-01-22  Alexander Larsson  <alexl@redhat.com>
3111
3112         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
3113         Don't leak the PangoFontDescriptor.
3114
3115 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
3116
3117         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
3118         when not realized.
3119         (gtk_tree_view_scroll_to_cell): Make work when not realized.
3120         (gtk_tree_view_realize): add scroll_to support
3121         (gtk_tree_view_finalize): add a finalize method.  Populate.
3122         (gtk_tree_view_insert_column): ref and sink the column.
3123         (gtk_tree_view_append_column): ref and sink the column.
3124         (gtk_tree_view_queue_draw_node): New function to handle redrawing
3125         individual nodes.  Should make the code much more efficient, if
3126         actually used.
3127
3128 2001-01-19  Havoc Pennington  <hp@redhat.com>
3129
3130         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
3131         byte_offset variable was being used to mean both "offset into
3132         layout" and "offset into buffer line" which was no longer true
3133         with addition of preedit string; fix
3134
3135 2001-01-19  Havoc Pennington  <hp@redhat.com>
3136
3137         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
3138
3139         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
3140         function
3141
3142         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
3143         implement
3144
3145         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
3146         scroll_to_cell, matches TextView scroll functions better
3147         (gtk_tree_view_tree_to_widget_coords): new function
3148         (gtk_tree_view_widget_to_tree_coords): new function
3149         (gtk_tree_view_get_visible_rect): new function
3150         (gtk_tree_view_get_path_at_pos): accept negative coordinates
3151         (gtk_tree_view_draw_node_focus_rect): new function moved from
3152         draw_focus, also, use width of bin_window as width of the focus
3153         rect
3154         (gtk_tree_view_expand_row): fix bug where it didn't recognize
3155         already-expanded rows
3156         (gtk_tree_view_get_cell_rect): new function
3157         (gtk_tree_view_get_path_at_pos): return the click position
3158         relative to the passed-in cell
3159         (gtk_tree_view_set_expander_column): new function
3160
3161         * configure.in: remove gtk-config-2.0 chmod
3162
3163         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
3164         and properly handle drags with targets we don't understand
3165         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
3166         scrolling anyway
3167         (gtk_text_view_drag_drop): stop scrolling here though, and set the
3168         mark invisible
3169
3170         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
3171         function
3172         (gtk_drag_dest_get_target_list): new function
3173         (gtk_drag_dest_set_target_list): new function
3174         
3175         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
3176
3177         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
3178         related to drag-and-drop
3179
3180 2001-01-19  Alexander Larsson  <alexl@redhat.com>
3181
3182         * gdk/linux-fb/gdkprivate-fb.h:
3183         Define EMULATE_GDKFONT.
3184         Add extra pango_font stuff to GfkFontPrivate.
3185         
3186         * gdk/linux-fb/gdkdrawable-fb2.c:
3187         * gdk/linux-fb/gdkfont-fb.c:
3188         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
3189         emulation using PangoFont.
3190
3191 2001-01-17  Havoc Pennington  <hp@pobox.com>
3192
3193         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
3194         all the non-deprecated set_foo functions. Added missing object
3195         properties, and added g_object_notify() to setters. 
3196         Wrote docs.
3197         
3198 2001-01-18  Tor Lillqvist  <tml@iki.fi>
3199
3200         * gtk/gtkmain.c
3201         * gtk/gtkrc.c: (Win32) Use the new
3202         g_win32_get_package_installation_(sub)directory() functions.
3203
3204         * config.h.win32.in: New file.
3205         
3206         * config.h.win32: Removed.
3207
3208         * configure.in: Output config.h.win32.
3209
3210         * Makefile.am: Add it to EXTRA_DIST.
3211
3212         * gtk/gtk.def: Update.
3213
3214 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
3215
3216         * gtk/gtklabel.c (gtk_label_size_request): Set the
3217         attributes onto the PangoLayout even if they are newly
3218         created from label->pattern.
3219
3220 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
3221
3222         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
3223
3224         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
3225         structures in functions. Fixes bug where gtk_dataset_*
3226         was accidentally still being used in one place, causing
3227         every dest side event to be treated independently.
3228
3229         * gtk/gtkdnd.c: Remove last vestages of handling
3230         ::draw (fixes warning)
3231         
3232         * gtk/gtkentry.[ch]: Add drag and drop support.
3233
3234         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
3235         new function gtk_check_drag_threshhold() for checking
3236         to check if (dx,dy) has exceeded the threshhold for starting
3237         a drag and use it everywhere.
3238
3239 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
3240
3241         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
3242         add -I{includedir}/gtk-2.0.
3243
3244         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
3245         gdk/gdk-pixbuf.h: Doc fixups.
3246         
3247         * gtk/gtkobject.h: Remove trailing , from enum
3248
3249 2001-01-17 Alexander Larsson <alexl@redhat.com> 
3250
3251         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
3252         Doh! Mixed up x and y.
3253
3254         * gdk/linux-fb/gdkglobals-fb.c:
3255         Removed gdk_fb_pointer_grab_window_events,
3256         added _gdk_fb_pointer_grab_owner_events and
3257         _gdk_fb_keyboard_grab_owner_events.
3258
3259         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
3260         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
3261         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
3262         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
3263         Send crossing events after ungrab finished.
3264         (gdk_keyboard_grab): Set ..._owner_events
3265         (type_masks): Move out of function.
3266         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
3267         gdk_fb_keyboard_event_window): New functions, return the
3268         window an event should be targeted at. Handles grabs and
3269         event propagation. Can return NULL.
3270         (gdk_event_make): Remove event_mask checking. Now always
3271         returns an event.
3272                 
3273         * gdk/linux-fb/gdkkeyboard-fb.c:
3274         * gdk/linux-fb/gdkproperty-fb.c:
3275         * gdk/linux-fb/gdkselection-fb.c:
3276         Use new event_window/gdk_event_make() behaviour.
3277         
3278         * gdk/linux-fb/gdkmouse-fb.c:
3279         Use new event_window/gdk_event_make() behaviour.
3280         Only send motion events if in the same window.
3281         If grabbed, use cursor from window if sibling of grabbed
3282         window, and cursor from grabbed window otherwise.
3283
3284         * gdk/linux-fb/gdkprivate-fb.h:
3285         Update gdk_fb_window_send_crossing_events, gdk_event_make
3286         and grab varaible declarations. Add gdk_fb_*_event_window().
3287
3288         * gdk/linux-fb/gdkwindow-fb.c:
3289         Use new event_window/gdk_event_make() behaviour.
3290         Keep correct track of focus window.
3291         (gdk_window_set_events): Set all specific button motion masks
3292         if GDK_BUTTON_MOTION_MASK set.
3293
3294         * gtk/gtkdnd.c (gtk_drag_update):
3295         Free info->last_event if gdk_drag_motion returned FALSE.
3296
3297 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3298
3299         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
3300         Eliminate redraws when input-only windows are shown or
3301         hidden. Thanks to jpe@archaeopteryx.com.
3302
3303 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
3304
3305         * docs/faq/gtk-faq.sgml: FAQ update:
3306           - Update to bugzilla
3307           - Add GTK+ and security/SUID/SGID
3308           - Add DnD question
3309
3310 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
3311
3312         * gdk/linux-fb/gdkdnd-fb.c:
3313         Some cleanups.
3314         
3315 2001-01-15  Havoc Pennington  <hp@pobox.com>
3316
3317         * tests/testtreeview.c: add test stuff for CellRendererToggle
3318
3319         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
3320         accessor
3321
3322         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
3323         only toggle on button press (would do release like GtkButton, but
3324         we'd need implicit grab code for treeview cells)
3325
3326 2001-01-16  Tor Lillqvist  <tml@iki.fi>
3327
3328         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
3329
3330         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
3331         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
3332
3333         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
3334         to g_{locale,filename}_{to,from}_utf8 to match current API.
3335
3336         * gtk/makefile.msc.in (gtk_OBJECTS)
3337         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
3338
3339         * gtk/gtk.def: Update.
3340
3341 2001-01-15  Tor Lillqvist  <tml@iki.fi>
3342
3343         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
3344         implementaion that more closely mimics the events that an X server
3345         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
3346         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
3347         with nested preview widgets, for instance, more responsive when
3348         you move the mouse quickly into them.
3349         (find_window_for_pointer_event): Make it actually compile.
3350         (gdk_event_translate): Set send_event to the value of
3351         InSendMessage (). This doesn't really mean the same as X11's
3352         send_event flag, but is close enough, says jpe@archaeopteryx.com
3353
3354 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3355
3356         * gdk/linux-fb/gdkdnd-fb.c:
3357         Implemented drag and drop.
3358         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
3359         when it tries to free and then copy the same event (info->last_event).
3360         I am not sure about why this happens, but will continue looking.
3361
3362 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3363
3364         * gdk/linux-fb/gdkwindow-fb.c:
3365         Use gdk_window_invalidate_rect instead of
3366         gdk_window_invalidate_rect_clear to minimise flashing.
3367         When hiding windows you need to clear the root window though.
3368
3369 2001-01-15  Alexander Larsson  <alexl@redhat.com>
3370
3371         * gdk/linux-fb/gdkdrawable-fb2.c:
3372         For optization, add an full_shapes argument to gdk_fb_clip_region.
3373         If this is false, only the cliprects of the shapes are used.
3374
3375         * gdk/linux-fb/gdkprivate-fb.h:
3376         Export gdk_fb_window_peek_shape.
3377         Add full_shapes to gdk_fb_clip_region.
3378
3379         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
3380         When moving a window, don't clear everything under the it, just the
3381         root window. Makes stuff faster and flash less.
3382         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
3383         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
3384         offset of the shape.
3385         
3386
3387 2001-01-12  Havoc Pennington  <hp@redhat.com>
3388
3389         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
3390         current invalid region, fixes redraw bug while scrolling the 
3391         text widget
3392
3393         * gtk/gtktextview.c, gtk/gtktextview.h:
3394         Rearrange the scrolling/validation/etc. code in a major way, 
3395         so it seems to make sense to me. Probably isn't genuinely that
3396         much better, but...
3397
3398         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
3399         notifies
3400
3401         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
3402
3403 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
3404
3405         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
3406         Hide mouse pointer while rotation. Show it afterwards.
3407
3408 2001-01-12  Alexander Larsson  <alexl@redhat.com>
3409
3410         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
3411         windows in consideration when generating clip region.
3412
3413         * gdk/linux-fb/gdkfb.h:
3414         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
3415
3416         * gdk/linux-fb/gdkprivate-fb.h:
3417         Add shape to GdkWindowFBDatat.
3418         exported gdk_fb_window_get_abs_shape().
3419         removed gdk_fb_draw_lines declaration.
3420
3421         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
3422         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
3423         send focus changes when there is a grabbed window.
3424         (gdk_window_get_pointer): Handle shaped windows.
3425         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
3426         (gdk_fb_window_peek_shape): Returns the shape for a window,
3427         handles GDK_FB_USE_CHILD_SHAPE.
3428         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
3429         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
3430         (gdk_window_shape_combine_mask): Implement.
3431
3432         * gtk/gtkwindow-decorate.c:
3433         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
3434         setting the shape of a window makes the window transparent.
3435
3436 2001-01-11  Havoc Pennington  <hp@redhat.com>
3437
3438         * gtk/gtktreemodelsimple.h: Oops, broke some macros
3439
3440 2001-01-10  Havoc Pennington  <hp@redhat.com>
3441
3442         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
3443         add this function, bug 40251
3444
3445         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
3446         of type macro   
3447
3448 2001-01-11  Alexander Larsson  <alexl@redhat.com>
3449
3450         * acconfig.h:
3451         Added ENABLE_SHADOW_FB
3452
3453         * configure.in:
3454         Added --disable-shadowfb
3455
3456         * gdk/linux-fb/gdkcursor-fb.c:
3457         Update shadowfb when updating cursor
3458
3459         * gdk/linux-fb/gdkdrawable-fb2.c:
3460         Added wrappers for shadowfb that calls  the normal drawable
3461         methods, but calls gdk_shadow_fb_update(bounding box) when
3462         GdkWindows are drawed to.
3463         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
3464         which also returns the bounding box.
3465
3466         * gdk/linux-fb/gdkfb.h:
3467         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
3468
3469         * gdk/linux-fb/gdkgeometry-fb.c:
3470         Update shadowfb when scrolling window.
3471
3472         * gdk/linux-fb/gdkglobals-fb.c:
3473         Add _gdk_fb_screen_angle.
3474         
3475         * gdk/linux-fb/gdkkeyboard-fb.c:
3476         Test code for screen rotation. Shift-F2 in the xlate driver
3477         rotates the screen.
3478
3479         * gdk/linux-fb/gdkmain-fb.c:
3480         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
3481
3482         * gdk/linux-fb/gdkmouse-fb.c:
3483         Use fb_width/height instead of modeinfo.xres/yres.
3484
3485         * gdk/linux-fb/gdkprivate-fb.h:
3486         Added fb_men, fb_width, fb_height & fb_stride. When using
3487         shadow fb these can differ from the framebuffer stuff.
3488         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
3489         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
3490         _gdk_fb_screen_angle. Removed CM, RP.
3491
3492         * gdk/linux-fb/gdkrender-fb.c:
3493         Added code for shadowfb handling and screen rotation using
3494         shadowfb.
3495
3496         * gdk/linux-fb/gdkwindow-fb.c:
3497         Use fb_mem, fb_stride, fb_width, fb_height.
3498         Added recompute_rowstride to reset the rowstride of all windows.
3499         Added gdk_fb_recompute_all() which recomputes rootwindow size,
3500         window abs positions and window rowstrides. Usefull when the
3501         rotation has changed.
3502
3503 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
3504
3505         * docs/faq/gtk-faq.sgml: update to make web site updating easier
3506
3507 2001-01-10  Havoc Pennington  <hp@redhat.com>
3508
3509         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
3510         where sibling == iter
3511         (gtk_tree_store_insert_after): handle sibling == iter
3512         (gtk_tree_store_prepend): remove stamp checks
3513         (gtk_tree_store_insert_before): ditto
3514         (gtk_tree_store_append): ditto
3515         (gtk_tree_store_get_path): ditto
3516         (gtk_tree_store_get_value): ditto
3517         (gtk_tree_store_iter_has_child): ditto
3518         (gtk_tree_store_iter_n_children): ditto
3519         (gtk_tree_store_iter_nth_child): ditto
3520         (gtk_tree_store_insert_after): ditto
3521         (gtk_tree_store_is_ancestor): ditto
3522         (gtk_tree_store_iter_depth): ditto
3523         (gtk_tree_store_insert_before): assert that sibling's parent is
3524         the same as the passed-in parent
3525         (gtk_tree_store_insert_after): assert that sibling's parent is
3526         the same as the passed-in parent
3527
3528         
3529         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
3530         function to get the first iterator in a model
3531         
3532         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
3533         conventionally the "root" in this sense is just NULL afaict.
3534
3535         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
3536         where sibling == iter
3537         (gtk_list_store_insert_after): handle case where sibling == iter
3538
3539         * tests/testtreeview.c (run_automated_tests): fairly lame basic
3540         automated tests for ListStore, TreeStore
3541
3542         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
3543         (gtk_list_store_insert): update tail pointer, and fix it to work
3544         (gtk_list_store_insert_before): update tail pointer, and fix it to work
3545         (gtk_list_store_append): use tail to be faster
3546         (gtk_list_store_prepend): fix it, update tail pointer
3547         (gtk_list_store_insert_after): fix it, update tail pointer
3548
3549         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
3550         the list
3551
3552 2001-01-09  Havoc Pennington  <hp@redhat.com>
3553
3554         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
3555         is NULL due to a pending resize
3556
3557         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
3558         column width to values less than 1
3559
3560         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
3561         width to be between min/max width, and still set the width 
3562         even if autosize is turned on, so the tree view can use this 
3563         function in order to autosize.
3564         (gtk_tree_view_column_init): set initial width to 1 not 0
3565
3566         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
3567         setter function to modify column width, so we get notification
3568         (gtk_tree_view_insert_iter_height): ditto
3569         (gtk_tree_view_calc_size): ditto
3570         (gtk_tree_view_check_dirty): ditto
3571
3572         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
3573         properties to change all the interesting attributes of the tree
3574         view column.
3575         (gtk_tree_view_column_set_header_clickable): rename set_clickable
3576         (gtk_tree_view_column_get_clickable): add
3577         (gtk_tree_view_column_set_cell_renderer): don't unset the current
3578         attributes; assume a cell renderer with equivalent object
3579         properties has been swapped in. Do g_object_notify().
3580         (gtk_tree_view_column_set_visible): g_object_notify
3581         (gtk_tree_view_column_get_sizing): rename from get_col_type
3582         (gtk_tree_view_column_set_sizing): g_object_notify
3583         (gtk_tree_view_column_set_width): add g_object_notify
3584         (gtk_tree_view_column_set_min_width): ditto
3585         (gtk_tree_view_column_set_max_width): ditto
3586         (gtk_tree_view_column_set_title): ditto
3587         (gtk_tree_view_column_set_clickable): ditto
3588         (gtk_tree_view_column_set_widget): ditto
3589         (gtk_tree_view_column_set_justification): ditto
3590
3591 2001-01-09  Havoc Pennington  <hp@redhat.com>
3592
3593         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
3594         there are no rows in the model
3595
3596         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
3597         NULL, then return the start of the list
3598
3599         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
3600         if we can't get any rows from an empty model 
3601
3602         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
3603         extraneous * after function pointer typedef usage
3604
3605         * Makefile.am: don't specify full path to cp and rm
3606
3607         * gtk/gtkcellrenderertextpixbuf.c
3608         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
3609         NULL before dereferencing, fixes a segfault that happened from
3610         time to time
3611
3612         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
3613         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
3614         and reindent the function
3615         (gtk_cell_renderer_pixbuf_get_size): indentation
3616
3617         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
3618         we quit it
3619         (gtk_dialog_add_buttons_valist): add g_return_if_fail
3620         (gtk_dialog_set_default_response): New function, to set default
3621         button
3622         (gtk_dialog_set_response_sensitive): New function, to set 
3623         sensitivity of buttons
3624
3625         * gtk/gtkcellrendererpixbuf.c
3626         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
3627         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
3628
3629         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
3630         handle any G_TYPE_OBJECT subclass, not just the base class, and 
3631         also boxed types.
3632         (_gtk_tree_data_list_value_to_node): ditto
3633
3634         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
3635         --gtk-debug=tree
3636
3637         * gtk/gtkmain.c: add GTK_DEBUG_TREE
3638
3639         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
3640
3641 2001-01-09  Tor Lillqvist  <tml@iki.fi>
3642
3643         * gdk/win32/gdkevents-win32.c: Implement better mouse
3644         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
3645         (find_window_for_pointer_event): New function.
3646         (gdk_event_translate): Use it when handling mouse events.
3647
3648 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
3649
3650         * configure.in:
3651         Added --with-included-loaders option
3652
3653         * gdk-pixbuf/Makefile.am:
3654         * gdk-pixbuf/gdk-pixbuf-io.c:
3655         Add support for including selected gdk-pixbuf loaders only.
3656
3657         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
3658         gtk_window_set_has_frame):
3659         Added inline documentation.
3660
3661         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
3662         * docs/reference/gdk/tmpl/windows.sgml:
3663         Added inline documentation.
3664
3665 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
3666
3667         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
3668         realizing buttons that have already been realized.
3669
3670 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
3671
3672         * tests/testtreeview.c (main): Show menu items before adding to
3673         option menu.
3674
3675         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
3676         around if we kill them.
3677
3678         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
3679         Return if we pass in a NULL model.
3680
3681 2001-01-08  Havoc Pennington  <hp@redhat.com>
3682
3683         * tests/testtreeview.c: hack on this some
3684
3685         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
3686         gtk_tree_store_set_valist, v is for arrays, valist for varargs
3687         list
3688         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
3689
3690         * gtk/gtkliststore.h: Add varargs set() and get() convenience
3691         functions
3692
3693 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3694
3695         * gtk/gtkwindow-decorate.[hc]:
3696         * gtk/Makefile.am:
3697         New files. Contains an implementation of a minimal WM for
3698         linux-fb.
3699
3700         * gtk/gtkwindow.h:
3701         Add the possibility for GtkWindows to specify a frame. This
3702         is used for the window decoration code, but could concievably
3703         be used for X programs too (xmms style windows).
3704         GtkWindow->frame is the toplevel window if the window is framed.
3705         The signal frame_event gets all events that are targeted to
3706         GtkWindow->frame.
3707         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
3708         
3709         * gtk/gtkwindow.c:
3710         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
3711         Call out to gtkwindow-decorate.c for WM support in linx-fb.
3712
3713 2001-01-08  Alexander Larsson  <alexl@redhat.com>
3714
3715         * docs/README.linux-fb:
3716         Correct filename ~/.pangoft2_aliases
3717
3718         * gdk/gdkwindow.h:
3719         Added new function gdk_window_get_decorations.
3720
3721         * gdk/linux-fb/gdkfb.h:
3722         Removed _gdk_window_get_decorations declaration.
3723         Renamed _gdk_window_set_child_handler to
3724         gdk_fb_window_set_child_handler.
3725
3726         * gdk/linux-fb/gdkwindow-fb.c:
3727         Renamed _gdk_window_set_child_handler to
3728         gdk_fb_window_set_child_handler.
3729
3730         * gdk/x11/gdkwindow-x11.c:
3731         New function gdk_window_get_mwm_hints().
3732         Implemented gdk_window_get_decorations.
3733
3734         * docs/reference/gdk/tmpl/windows.sgml:
3735         * docs/reference/gdk/gdk-sections.txt:
3736         Added gdk_window_get_decorations docs.
3737         
3738 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
3739
3740         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
3741         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
3742         gdk_fb_window_send_crossing_events):
3743         Possibly send focus events when the mouse moves from one
3744         window to another.
3745
3746 2001-01-07  Tor Lillqvist  <tml@iki.fi>
3747
3748         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
3749         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
3750         to match current API.
3751
3752         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
3753         environment variable is set, don't call g_error when on a
3754         palettized (PseudoColor) display. Some people want to use GTK+ 
3755         in 256-colour mode even though works only partially.
3756
3757         * gdk/gdk.def
3758         * gtk/gtk.def
3759         * gtk/makefile.mingw.in: Update.
3760
3761 2001-01-05  Havoc Pennington  <hp@redhat.com>
3762
3763         * tests/testtreeview.c: hack on this a bit
3764
3765         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
3766         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
3767
3768         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
3769         was spelled incorrectly
3770         (GTK_IS_TREE_MODEL_SIMPLE): ditto
3771
3772         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
3773         from gtk_tree_view_set_headers_active   
3774
3775         * gtk/gtktexttag.c:
3776         (gtk_text_tag_get_property): handle PROP_DIRECTION
3777         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
3778         properties, bug 40235
3779
3780         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
3781         forward_to_line_end
3782
3783 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
3784
3785         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
3786         modules/input/gtkimcontextxim.c: Adapt to new prototypes
3787         for unicode,locale,filename conversion functions.
3788
3789 2001-01-05  Havoc Pennington  <hp@redhat.com>
3790
3791         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
3792         broken if called on the first position in the buffer.
3793
3794         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
3795         forward_to_delimiters to be called only if we aren't already at
3796         the delimiters.
3797
3798 2001-01-05  Havoc Pennington  <hp@redhat.com>
3799
3800         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
3801
3802 2001-01-05  Alexander Larsson  <alexl@redhat.com>
3803
3804         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
3805         colormap in here. Sync from X port.
3806         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
3807         Sync from X port.
3808         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
3809         This happens now and then, and i don't think it is a bug.
3810         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
3811         != endpoint.
3812         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
3813         GDK_LINE_SOLID.
3814
3815         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
3816         some of the fields filled in at least.
3817
3818         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
3819         miLineArcD is no more, remove it from the function definition.
3820
3821 2001-01-04  Havoc Pennington  <hp@redhat.com>
3822
3823         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
3824         this
3825
3826         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
3827         user_data instead of tree_node
3828
3829         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
3830         TREE_VIEW_COLUMN_SIZE
3831
3832         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
3833         "size" field to "width" finishes bug 40061
3834
3835         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
3836         for bitfields, bug 40268
3837
3838 2001-01-04  Havoc Pennington  <hp@redhat.com>
3839
3840         Rename some stuff:
3841         
3842         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
3843
3844         s/GtkModelSimple/GtkTreeModelSimple/g;
3845         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
3846         s/gtk_model_simple/gtk_tree_model_simple/g;
3847         s/gtkmodelsimple/gtktreemodelsimple/g;
3848
3849         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
3850
3851         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
3852         s/column_set_col_type/column_set_sizing/g;
3853
3854         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
3855         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
3856
3857         s/GtkCellRendererType/GtkCellRendererState/g;
3858         
3859         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
3860         (gtk_cell_renderer_toggle_class_init): change "state" property to
3861         "active", to match GtkToggleButton
3862         (gtk_cell_renderer_toggle_get_active): new function, bug
3863         40269
3864         (gtk_cell_renderer_toggle_set_active): new function
3865         (gtk_cell_renderer_toggle_set_property): route changes to toggle
3866         state through gtk_cell_renderer_set_active
3867
3868 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
3869
3870         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
3871         temporarily until they work again.  Brought up to date with
3872         changes in the model.
3873         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
3874         model.
3875
3876 2001-01-04  Havoc Pennington  <hp@redhat.com>
3877
3878         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
3879         equal to the line length, then position iterator before paragraph 
3880         separators. Fixes crash reported by Mikael Hermansson when
3881         pressing left arrow from the start of a line.   
3882
3883         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
3884         about byte indexes off the end
3885         (iter_set_from_char_offset): add g_error about char offsets
3886         off the end
3887
3888 2001-01-03  Havoc Pennington  <hp@redhat.com>
3889
3890         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
3891
3892         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
3893         of private functions; remove inclusion of private headers.
3894
3895         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
3896         function, so we don't need private functions in gtktextdisplay.c
3897
3898         * gtk/gtktextiterprivate.h: underscore-ification
3899
3900         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
3901         to instead say "only useful to implement widgets"
3902
3903         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
3904         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
3905         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
3906
3907         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
3908         This function was completely broken
3909
3910         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
3911
3912         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
3913
3914         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
3915
3916         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
3917
3918         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
3919
3920         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
3921
3922         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
3923         gtk_paint_layout
3924
3925         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
3926         gtk_paint_layout
3927
3928         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
3929         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
3930         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
3931         which were not implemented.     
3932
3933         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
3934         insert_pixbuf signal. Rename delete_text to delete_range since it
3935         also deletes pixbufs and child anchors. This almost closes bug
3936         40245 (still need to deal with child anchors)
3937
3938         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
3939         insert_pixbuf, change signal names as appropriate, change types of
3940         signals taking marks/tags to have the specific type, not just
3941         G_TYPE_OBJECT
3942         
3943         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
3944         closes bug 40051
3945
3946         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
3947         unnecessary remove_contents() call
3948         (gtk_option_menu_class_init): add a "changed" signal, closes
3949         bug 40039
3950         (gtk_option_menu_update_contents): emit "changed" if the 
3951         active menu item changes
3952
3953         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
3954         cast to GtkObject, reported by Jonas Borgstrom
3955         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
3956         we can't do stuff with side effects in finalize. Instead, spew a
3957         warning if the loader isn't closed.
3958
3959         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
3960         colormap in here, non-X ports probably need to sync to this change
3961
3962         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
3963         assertion that colormap != NULL, you can set the colormap to NULL
3964         if you like.
3965         
3966         * Makefile.am: remove gtk-config-2.0
3967
3968         * configure.in: Use pkg-config to locate GLib. Remove
3969         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
3970         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
3971         Use pkg-config to locate Pango. Output correct Pango libs to
3972         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
3973
3974         * Makefile.am (pkgconfig_DATA): install only target-specific pc
3975         files
3976         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
3977         X11 pc files
3978
3979         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
3980         unref from here
3981
3982 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
3983
3984         * configure.in:
3985         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
3986
3987 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
3988
3989         * gtk/gtktextlayout.c
3990         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
3991         variable when moving back onto a single line.
3992
3993 2001-01-01  Havoc Pennington  <hp@redhat.com>
3994
3995         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3996
3997         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
3998
3999         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
4000         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
4001
4002 2001-01-01  Havoc Pennington  <hp@redhat.com>
4003
4004         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
4005
4006         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
4007         GtkTextAttributes
4008
4009         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
4010         #40246
4011         (gtk_text_attributes_copy_values): rename from 
4012         gtk_text_attributes_copy
4013         (gtk_text_attributes_copy): a more standard GTK copy function, 
4014         which returns a new object
4015
4016 2001-01-01  Havoc Pennington  <hp@redhat.com>
4017
4018         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
4019         
4020         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
4021         don't fill in tree_view->priv->selection, kind of an unexpected
4022         side effect
4023
4024         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
4025         gtkintl.h
4026         
4027         * gtk/gtkcellrenderer.c: Remove definition of _ and include
4028         gtkintl.h
4029         (gtk_cell_renderer_get_property): remove calls to g_value_init
4030
4031         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
4032         gtkintl.h
4033
4034         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
4035         and include gtkintl.h
4036         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
4037         property names
4038
4039         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
4040         GtkTreeSelection
4041         (_gtk_tree_selection_new_from_with_view): rename, return
4042         GtkTreeSelection
4043         (_gtk_tree_selection_set_tree_view): rename with uscore
4044         (gtk_tree_selection_get_selected): fill in the "model" out param
4045         first, so it gets filled in even if we return at the top of the 
4046         function
4047         (gtk_tree_selection_real_select_all): add a comment and an else{}
4048         to clarify this a bit
4049         (gtk_tree_selection_real_unselect_all): add the same else{}
4050
4051         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
4052         set_tree_view to have underscore prefixes, move them to the
4053         private header, fix return type of new_with_tree_view
4054         (struct _GtkTreeSelection): mark struct
4055         fields private  
4056
4057         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
4058         GtkTreeModelFlags, not a guint
4059         (gtk_tree_path_prev): return gboolean not gint
4060         (gtk_tree_path_up): return gboolean not gint
4061
4062         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
4063         return GtkTreeModelFlags, not a guint
4064
4065         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
4066         that child model is non-null before unrefing it
4067         (g_value_int_compare_func): make this a qsort compare func, not 
4068         a boolean predicate
4069
4070         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
4071         (add -umn to the end), and mark it unimplemented
4072         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
4073         I don't see what it's for - doesn't the model always sort itself?
4074         (gtk_tree_model_sort_set_compare): this had the wrong signature
4075
4076         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
4077         Fix the docs to say that it destructively replaces existing
4078         attributes (previously said that it added attributes).
4079         (gtk_tree_view_column_set_visible): canonicalize bool before
4080         equality testing. Also, check for realization before
4081         hiding/showing the tree_column->window; if this window could exist
4082         before realization, then it's busted and needs fixing, we can't 
4083         create GDK resources pre-realization. Also, remove
4084         superfluous queue_resize(), since set_size() does that for us.
4085         (gtk_tree_view_column_set_col_type): check realization before 
4086         using tree_column->window
4087
4088         * gtk/gtktreedatalist.c: fix filename in copyright notice
4089
4090 2000-12-31  Havoc Pennington  <hp@pobox.com>
4091
4092         * gtk/gtktextview.c: Rearrange all the
4093         scroll-while-dragging-or-selecting code to be different, not
4094         necessarily better. ;-)
4095         (gtk_text_view_scroll_to_mark): Change this
4096         function to take within_margin as a fraction instead of a pixel
4097         value, and to take alignment arguments (indicating where to align 
4098         the mark inside the visible area)
4099         
4100         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
4101         to GtkObject
4102
4103         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
4104         behavior so that offsets past the end of the line are not 
4105         allowed, and an offset equal to the line length moves the iterator
4106         to the next line
4107         (gtk_text_iter_set_line_index): make parallel change
4108         (gtk_text_iter_get_bytes_in_line): add this function
4109         
4110         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
4111         of byte indexes off the end of the line; byte index at the end of
4112         the line now returns FALSE and doesn't fill in the requested
4113         values, byte index past the end of the line is an error.  Also,
4114         don't allow -1 offset anymore, since its meaning is unclear.
4115
4116         This change exposes some bug in visual cursor motion, where we
4117         end up with a huge invalid byte index; needs fixing. Symptom of 
4118         bug is a crash when you hit up arrow.
4119         
4120         (_gtk_text_line_char_locate): match the change to byte_locate
4121
4122         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
4123         from start of line properly. fixes bug reported by Mikael
4124         Hermansson where backspace would delete all text before the
4125         cursor.
4126
4127 2000-12-30  Tor Lillqvist  <tml@iki.fi>
4128
4129         * gdk/win32/gdkwindow-win32.c
4130         (gdk_window_impl_win32_get_visible_region): New function, as in
4131         the X11 backend.
4132         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
4133         instead of duplicating the same code here.
4134
4135         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
4136         GDK_COLORMAP macro.
4137
4138         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
4139         destroy function.
4140         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
4141         access that.
4142
4143         * gtk/gtk.def: Update.
4144
4145         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
4146
4147 2000-12-30  Havoc Pennington  <hp@pobox.com>
4148
4149         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
4150         colormap on input only windows, to avoid special cases all over
4151         the code for these windows.
4152
4153 2000-12-26  Tor Lillqvist  <tml@iki.fi>
4154
4155         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
4156         we are on a palettized display ("PseudoColor" in X11), as the code
4157         for that doesn't work anyway, and never has.
4158
4159 2000-12-22  Alexander Larsson  <alexl@redhat.com>
4160
4161         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
4162         Don't use isprint() for chars > 255.
4163
4164 2000-12-21  Havoc Pennington  <hp@redhat.com>
4165
4166         * tests/testtreeview.c: more work
4167
4168 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4169
4170         * docs/README.linux-fb:
4171         Update the docs to the new pangoft2 way.
4172
4173 2000-12-21  Alexander Larsson  <alexl@redhat.com>
4174
4175         * configure.in:
4176         For linux-fb get the pangoft2 cflags and libs. This needs a recent
4177         pango version.
4178         Remove modules/linux-fb/Makefile.
4179
4180         * gdk/linux-fb/gdkdrawable-fb2.c:
4181         Render glyphs using freetype.
4182
4183         * gdk/linux-fb/gdkfb.h:
4184         Add new fb-specific functions needed for managing windows.
4185
4186         * gdk/linux-fb/gdkmain-fb.c:
4187         Remove gdk_font_init/fini() calls.
4188
4189         * gdk/linux-fb/gdkpango-fb.c:
4190         Remove old implementation. Use pangoft2 instead.
4191
4192         * gdk/linux-fb/gdkprivate-fb.h:
4193         Remove PangoFBFont and related stuff.
4194
4195         * gdk/linux-fb/gdkwindow-fb.c:
4196         Implement drawable->get_visible_region.
4197         Implement support for _gdk_window_set_child_handler () and
4198         _gdk_window_get_decorations().
4199
4200         * modules/Makefile.am:
4201         Remove linux-fb subdir.
4202
4203         * modules/linux-fb/*:
4204         Removed all.
4205         
4206 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
4207
4208         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
4209         calls, as they are no longer needed.
4210
4211         * gtk/gtktreemodelsort.c: Fix up the comparison code.
4212         
4213         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
4214         figure out how to emit a signal on an interface.
4215
4216 2000-12-20  Havoc Pennington  <hp@redhat.com>
4217
4218         * tests: new directory to contain tests, gtk/test* should move
4219         here sometime (with appropriate on-cvs-server hackery)
4220
4221         * tests/testtreeview.c, tests/Makefile.am: a test
4222         
4223         * configure.in (AC_OUTPUT): add tests/Makefile
4224
4225         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
4226         and "invisible_set" which were missing
4227
4228         * gtk/gtkrbtree.h: some cheesy indentation fix
4229         
4230 2000-12-20  Alexander Larsson  <alexl@redhat.com>
4231
4232         * gtk/gtkinvisible.c (gtk_invisible_realize):
4233         Attach the style to the window so that the style it is not
4234         leaked when unrealizing the window.
4235
4236 2000-12-18  Havoc Pennington  <hp@redhat.com>
4237
4238         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
4239         begin/end user action where appropriate
4240         (gtk_text_view_commit_handler): add begin/end user action
4241
4242         * gtk/gtktextbuffer.c: add begin/end user action signals, and
4243         bracket interactive operations with begin/end user action pair.
4244         
4245         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
4246         "interactive" arg from insert_text and delete_text signals.
4247         Add begin_user_action, end_user_action signals
4248         (gtk_text_buffer_begin_user_action): 
4249         (gtk_text_buffer_end_user_action): New functions to delimit 
4250         a user-visible action
4251
4252         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
4253         signals.
4254         
4255 2000-12-18  Havoc Pennington  <hp@redhat.com>
4256
4257         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
4258         was pretty non-working.
4259
4260         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
4261         by passing the length to g_utf8_validate().
4262
4263 2000-12-16  Havoc Pennington  <hp@pobox.com>
4264
4265         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
4266         Port to GObject, can go back in gdk-pixbuf after setting up 
4267         a gdk-pixbuf-marshal.h header over there.
4268
4269         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
4270         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
4271         args
4272         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
4273         set
4274         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
4275         here, do it when we create the buttons later
4276         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
4277         (gtk_tree_view_map): paranoia checks that column->button is shown 
4278         and unmapped
4279         (gtk_tree_view_size_request): only request visible children.
4280         Move header size calculation in here, for cleanliness, and 
4281         to maintain invariants for child widgets if we eventually 
4282         let users set different children inside the buttons
4283         (gtk_tree_view_map_buttons): factor out code to map buttons,
4284         since it was being called several times
4285         (gtk_tree_view_size_allocate_buttons): move_resize the drag
4286         windows instead of just moving them; their height may change 
4287         if we allow random widgets in there, or the theme changes.
4288         (gtk_tree_view_size_allocate): move button size allocation 
4289         above emitting the scroll signals, to ensure a sane state when we
4290         hit user code
4291         (gtk_tree_view_button_release): remove queue_resize after
4292         tree_view_set_size(), set_size() will handle any resize queuing
4293         that's needed
4294         (gtk_tree_view_focus_in): just queue a draw, don't fool with
4295         draw_focus goo
4296         (gtk_tree_view_focus): use gtk_get_current_event() and
4297         gdk_event_get_state()
4298         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
4299         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
4300         semicolon
4301         (gtk_tree_view_create_button): show the button here
4302         (gtk_tree_view_button_clicked): actually emit the clicked signal
4303         on the column
4304         (_gtk_tree_view_set_size): return right away if the size is
4305         unchanged, as a cheesy optimization
4306         (gtk_tree_view_setup_model): rename set_model_realized to 
4307         setup_model to match the flag that indicates whether we've 
4308         called it
4309         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
4310         exist, because set_scroll_adjustment does that and it shouldn't
4311         matter what order you call these in
4312         (gtk_tree_view_get_vadjustment): ditto
4313         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
4314         for paranoia
4315         (gtk_tree_view_set_headers_visible): call
4316         gtk_tree_view_map_buttons() instead of using cut-and-paste code
4317         (gtk_tree_view_append_column): clarify whether the return value
4318         is the count of columns before or after, and do the increment 
4319         separately from the return statement so you can tell from the code.
4320         (gtk_tree_view_remove_column): ditto
4321         (gtk_tree_view_insert_column): ditto
4322         (gtk_tree_view_get_column): remove g_return_if_fail for columns
4323         outside the existing range, the docs say that outside-range
4324         columns are allowed, so we handle them as documented. (Presumably
4325         this allows a nice loop with column != NULL as test.)
4326         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
4327         mean (left/right/center etc.).
4328         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
4329         (gtk_tree_view_expand_row): add docs
4330         (gtk_tree_view_collapse_row): add docs
4331
4332         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
4333         function to emit the clicked signal on a column
4334         
4335         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
4336         state of an event
4337         (gdk_event_get_time): don't treat GDK_SCROLL 
4338         as a button event, remove default case from switch so gcc 
4339         will whine if we don't explicitly handle all event types
4340
4341         * gtk/gtktreeselection.h: added some FIXME 
4342         
4343         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
4344         "columns" to "n_columns" and "column" to "columns" for clarity
4345
4346 2000-12-16  Havoc Pennington  <hp@pobox.com>
4347         
4348         * gtk/gtktextiter.c: General cleanup of the log attr iteration
4349         stuff. This should make e.g. the delete key work again in the
4350         text widget...
4351         (gtk_text_iter_forward_cursor_positions): handle negative count
4352         (gtk_text_iter_backward_cursor_positions): handle negative count
4353         (gtk_text_iter_forward_word_ends): handle negative count
4354         (gtk_text_iter_backward_word_starts): handle negative count
4355
4356         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
4357         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
4358         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
4359         GObject. No doubt will cause breakage.
4360
4361         * demos/gtk-demo/textview.c: remove hacks around
4362         non-GObject-ification of the text objects
4363
4364         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
4365         the text tag
4366         
4367 2000-12-14  Havoc Pennington  <hp@pobox.com>
4368
4369         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
4370         that we have Xrender
4371
4372 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
4373
4374         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
4375         Add two virtualized functions gdk_drawable_get_clip_region - to
4376         get the clip region when drawing.
4377         
4378         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
4379         use invalidate_region.
4380
4381         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
4382         region.
4383
4384         * acconfig.h configure.in: Check for Xft. For now, assume
4385         that if Xft is found, Pango was compiled with Xft support
4386         as well.
4387
4388         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
4389         gdk_colormap_query_color().
4390         
4391         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
4392         with Xft if appropriate.
4393
4394         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
4395         a pangoxft context if we have XFT and the environment
4396         variable GD_USE_XFT is set.
4397         
4398         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
4399         and also possibly an XftDraw structure.
4400
4401         * gtk/gtkfontsel.c: Handle the case where the font from the
4402         style doesn't match any of the fonts a bit better.
4403         
4404         * gtk/testgtk.c: Add tabs between directional segments for
4405         hebrew/arabic test. (Not really necessary, just a little
4406         prettier.)
4407
4408 2000-12-14  Havoc Pennington  <hp@redhat.com>
4409
4410         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
4411         reading a file
4412
4413 2000-12-14  Havoc Pennington  <hp@redhat.com>
4414
4415         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
4416         unused call to get_last_line()
4417
4418         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
4419         here until boxed is working (and maybe after that - we should
4420         really not gratuitously break old code)
4421
4422         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
4423         specific types for font_desc and tabs args, move them to
4424         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
4425         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
4426
4427         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
4428         use GTK_TYPE_POINTER for signal signatures as a hack-around
4429
4430         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
4431         PangoTabArray
4432
4433         * gtk/gtktextlayout.c (line_display_iter_to_index): 
4434         make static
4435         (line_display_index_to_iter): make static
4436
4437         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
4438         to marshal a string not a boxed
4439
4440         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
4441
4442         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
4443         since the UTF-8 isn't validated yet
4444
4445         * gtk/gtktextsegment.c (char_segment_check_func): don't require
4446         lines to end in '\n'
4447         
4448         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
4449         forward_to_delimiters, and grapheme boundaries
4450         (gtk_text_view_delete_from_cursor): properly handle non-newline
4451         delimiters, and grapheme boundaries
4452
4453         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
4454         to gtk_text_iter_forward_to_delimiters, and make it work properly
4455         if empty lines end with a character other than '\n'
4456
4457         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
4458         position
4459
4460 2000-12-15  Tor Lillqvist  <tml@iki.fi>
4461
4462         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
4463
4464         * gtk/gtk.def
4465         * gdk/gdk.def: Update.
4466
4467         * gdk/win32/gdkmain-win32.c
4468         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
4469         gdkmain-win32.c here.
4470
4471         * gdk/win32/makefile.mingw.in (all): No need to make
4472         gdk-win32res.o here, the makefile one step up will call us to make
4473         it.
4474
4475         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
4476         gdkkeys-win32.
4477
4478         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
4479
4480         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
4481         call to g_source_add().
4482
4483         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
4484         leak. Thanks to Andreas Kemnade.
4485
4486 2000-12-13  Havoc Pennington  <hp@pobox.com>
4487
4488         * gtk/gtktextbtree.h: Remove double _ in front of some functions
4489
4490         * gtk/gtktext*.[hc]: update accordingly
4491         
4492 2000-12-13  Havoc Pennington  <hp@pobox.com>
4493
4494         * gtk/gtktextbtree.h: Put _ in front of every function in this 
4495         header file
4496
4497         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
4498
4499 2000-12-13  Alex Larsson  <alexl@redhat.com>
4500
4501         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
4502         Add support for ps2 intellimouse.
4503
4504         * gdkkeyboard-fb.c:
4505         Move shift-F1 repaint handling to xlate handler only.
4506         
4507         * docs/README.linux-fb:
4508         Add imps2 to docs.
4509         Document the new refresh keys.
4510         
4511 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
4512
4513         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
4514
4515         * gtk/gtkbox.c: change property types from (u)long to (u)int for
4516         ::position and ::padding.
4517
4518         * gtk/gtkcontainer.c: make ::border_width an INT property.
4519
4520         * gtk/gtkpacker.c: make ::position an INT property.
4521
4522         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
4523         guard against NULL h/v scrollbars, since this is used at construction
4524         time.
4525
4526         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
4527         internal gtk_clist_constructor().
4528
4529         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
4530         gtk_ctree_constructor().
4531
4532         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
4533         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
4534
4535         * docs/reference/Makefile.am: fun stuff, disabled docs generation
4536         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
4537
4538         * gtk/gtkwidget.[hc]:
4539         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
4540         and gtk_widget_get().
4541         (gtk_widget_new): use g_object_new_valist().
4542         (gtk_widget_set): use g_object_set_valist().
4543
4544         * gtk/gtkobject.[hc]:
4545         removed gtk_object_arg_get_info(), gtk_object_getv(),
4546         gtk_object_query_args(), gtk_object_newv(),
4547         gtk_object_class_add_signals(),
4548         gtk_object_class_user_signal_new(),
4549         gtk_object_class_user_signal_newv(),
4550         gtk_object_arg_set(), gtk_object_arg_get(),
4551         gtk_object_args_collect(),
4552         gtk_object_default_construct(),
4553         gtk_object_constructed(),
4554         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
4555         removed nsignals, signals and n_args members from GtkObjectClass.
4556         (gtk_object_new): use g_object_new_valist().
4557         (gtk_object_set): use g_object_set_valist().
4558         (gtk_object_get): use g_object_get_valist().
4559         
4560         * gtk/gtkcompat.h: define gtk_object_default_construct().
4561         
4562         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
4563         g_object_new().
4564
4565         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
4566         fucntions, cleaned up method assignments (make sure your structures
4567         are setup properly before calling out). removed all GTK_CONSTRUCTED
4568         hacks ;)
4569
4570 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
4571
4572         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
4573         off-by-one error in checks. (Dave Lambert)
4574
4575 2000-12-12  Alexander Larsson  <alexl@redhat.com>
4576
4577         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
4578         Don't free gdk_fb_keyboard twice.
4579
4580 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
4581
4582         * gtk/testgtk.c:
4583         (create_tooltips): 
4584         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
4585         use GObject swapped_signal:: properties instead.
4586
4587         * gtk/gtkcellrenderertoggle.c: 
4588         * gtk/gtkcellrenderertextpixbuf.c: 
4589         * gtk/gtkcellrenderertext.c: 
4590         * gtk/gtkcellrendererpixbuf.c: 
4591         * gtk/gtkcellrenderer.c:
4592         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
4593         missing warnings for invalid property ids, install properties
4594         with g_object_class_install_property() now.
4595         
4596         * gtk/gtksignal.c:
4597         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
4598         
4599 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
4600         
4601         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
4602         to determine if a window is the focus widget within
4603         its toplevel.
4604
4605         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
4606         to be boolean.
4607
4608         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
4609         of the case where the container CAN_FOCUS to here instead
4610         of having it in each individual move-the-focus place.
4611
4612         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
4613         focusing to be geometric in a much more obvious sense. Arrowing
4614         around is still non-intuitive because it isn't perfect and
4615         because entries, etc, grab the arrow keys, but it at least
4616         usually will do what you expect now.
4617         
4618         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
4619         file.
4620
4621         * gtk/gtknotebook.c: Change tabs to be a single item in
4622         the focus chain. Make movement of focus on tabs with arrow
4623         keys wrap around.
4624         
4625         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
4626         CHECK_FIND_CHILD macro to give informative error messages
4627         instead of silent returns.
4628
4629         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
4630         flag since we handle GdkReturn on the tabs.
4631
4632         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
4633         windows rather than sending expose events directly.
4634
4635         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
4636         definition for GtkNotebookPage into .c file, since it is private.
4637
4638         * gtk/testgtk.c (create_notebook): Add option for 
4639         testing borderless notebook.
4640
4641         * gtk/testgtk.c (page_switch): Removed egregious poking
4642         around in GTK+ internals.
4643
4644         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
4645
4646         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
4647         properly through gtk_clist_focus. Make the title headers a
4648         single item in the tab-focus chain, and make left-right wrap
4649         around.
4650
4651         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
4652         focus method so that wrapping around works properly.
4653
4654         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
4655         that is handled for the widget now. 
4656
4657 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
4658
4659         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
4660         widgets as TOPLEVEL.
4661
4662         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
4663         TOPLEVEL widgets are containers.
4664
4665         * gtk/gtkinvisible.h: Remove useless include.
4666
4667 2000-12-11  Havoc Pennington  <hp@redhat.com>
4668
4669         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
4670         Handle chopping off \r\n and 0x2029 in addition to \n before
4671         passing to PangoLayout
4672
4673         * gtk/gtkimcontextsimple.c
4674         (gtk_im_context_simple_get_preedit_string): 
4675         return an empty string if no match is pending
4676
4677         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
4678         assertion that the returned preedit string was sane
4679
4680         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
4681         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
4682         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
4683
4684 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
4685
4686         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
4687         Fix up finalizer to chain to its parent.
4688
4689 2000-12-11  Alexander Larsson  <alexl@redhat.com>
4690
4691         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
4692         Clearified the difference between the keyboard types. Wrote a note
4693         about the magic sysrq key to get out of raw mode.
4694
4695 2000-12-09  James Henstridge  <james@daa.com.au>
4696
4697         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
4698         member to hold masks for detecting the start of a protocol packet.
4699         (mouse_devs): add packet start masks for ps2 and ms device types.
4700         Left the mask for fidmour blank, as I have no idea what it should
4701         be.
4702         (handle_mouse_io): skip bytes until we get to the start of a
4703         packet.  My Logitech mouse seems to be passing an extra NULL pad
4704         byte, and GPM does a similar thing here.
4705         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
4706         this is the ms mouse driver.
4707         (gdk_fb_mouse_ms_packet): fix up button handling, which was
4708         completely broken except for button1.  It was checking the wrong
4709         bit in the packet for the status of the right mouse button, and
4710         wrongly assuming right == button2 rather than 3.  I fixed that and
4711         also added support for middle button (button2).
4712
4713 2000-12-08  Havoc Pennington  <hp@redhat.com>
4714
4715         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
4716         that cause a segfault on text insertion
4717
4718         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
4719         warning
4720
4721         * gtk/gtktextiter.c (test_log_attrs): use
4722         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
4723
4724         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
4725         Get log attrs for a line, using a cache stored on the buffer
4726         
4727         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
4728         reported by Jeff Franks
4729
4730 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4731
4732         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
4733         /dev/ttyS0 -> /dev/mouse
4734
4735 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4736
4737         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
4738         Added dummy gdk_fontset_load.
4739
4740 2000-12-08  Alexander Larsson  <alexl@redhat.com>
4741
4742         * docs/README.linux-fb:
4743         * docs/Makefile.am:
4744         Initial GtkFB docs.
4745         
4746         * gdk/linux-fb/Makefile.am:
4747         Define GDK_DATA_PREFIX.
4748
4749         * gdk/linux-fb/gdkmain-fb.c:
4750         Fix typo.
4751         Change default display to /dev/fb0.
4752
4753         * gdk/linux-fb/gdkpango-fb.c:
4754         Add $(prefix)/share/fonts/ to font path.
4755         
4756 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
4757
4758         * gdk/linux-fb/gdkkeyboard-fb.c:
4759         New file containing the abstracted keyboard driver. Most code
4760         taken from gdkinput-ps2.c
4761
4762         * gdk/linux-fb/gdkinput-ps2.c:
4763         Removed file.
4764         
4765         * gdk/linux-fb/Makefile.am:
4766         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
4767
4768         * gdk/linux-fb/gdkcolor-fb.c:
4769         display->fb was renamed to display->fb_fd.
4770
4771         * gdk/linux-fb/gdkcursor-fb.c:
4772         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4773
4774         * gdk/linux-fb/gdkinput.c:
4775         Moved gdk_input_init here from gdkinput-ps2.c
4776
4777         * gdk/linux-fb/gdkmain-fb.c:
4778         display->fb was renamed to display->fb_fd.
4779         Now the tty and the console is opened here instead
4780         of in the keyboard driver. Also check GDK_VT to see what
4781         tty to open.
4782         Move gdk_beep () here from gdkinput-ps2.c
4783         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4784
4785         * gdk/linux-fb/gdkmouse-fb.c:
4786         Add header.
4787         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4788         Return correct keyboard modifiers.
4789         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
4790
4791         * gdk/linux-fb/gdkprivate-fb.h:
4792         Add tty and vt info to display.
4793         Add orignal modeinfo storage to display
4794         Update global functions
4795
4796         * gdk/linux-fb/gdkwindow-fb.c:
4797         Added gdk_fb_window_find_focus().
4798         gdk_mouse_get_info -> gdk_fb_mouse_get_info
4799
4800 2000-12-07  Havoc Pennington  <hp@pobox.com>
4801
4802         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
4803         function, noticed by Alex
4804
4805 2000-12-06  Elliot Lee  <sopwith@redhat.com>
4806
4807         * configure.in: Detect freetype properly
4808
4809         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
4810         above.
4811
4812 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4813
4814         * gdk/linux-fb/Makefile.am:
4815         Add gdkmouse-fb.c
4816         
4817         * gdk/linux-fb/gdkmouse-fb.c:
4818         New file. Abstracted the mouse drivers a bit.
4819
4820         * gdk/linux-fb/gdkcursor-fb.c:
4821         The cursor hide/show functions was moved here from gdkinput-ps2.c.
4822
4823         * gdk/linux-fb/gdkinput-ps2.c:
4824         Removed old mouse handling code. Moved cursor handling code
4825         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
4826         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
4827         gdk_mouse_get_info.
4828
4829         * gdk/linux-fb/gdkmain-fb.c:
4830         Pass NULL pointers for x,y in gdk_mouse_get_info call.
4831
4832         * gdk/linux-fb/gdkprivate-fb.h:
4833         Removed public gdk_fb_find_common_ancestor, added and renamed
4834         functions for the new mouse handling code.
4835
4836         * gdk/linux-fb/gdkwindow-fb.c:
4837         Moved gdk_fb_window_send_crossing_events here. added global
4838         variable gdk_fb_window_containing_pointer. made
4839         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
4840         renamed to gdk_mouse_get_info.
4841
4842 2000-12-06  Alexander Larsson  <alexl@redhat.com>
4843
4844         * gdk/linux-fb/gdkevents-fb.c:
4845         Update to match latest gmain/gsource changes.
4846
4847         * gdk/linux-fb/gdkinput-ps2.c:
4848         Bogus gdk_keymap_get_entries_for_keycode implementation so that
4849         it links. Will be implemented later.
4850
4851 2000-12-03  Havoc Pennington  <hp@pobox.com>
4852
4853         * gdk/Makefile.am: add gdkkeys.[hc]
4854
4855         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
4856         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
4857
4858         * acconfig.h, configure.in: add checks and command line options
4859         for XKB
4860
4861         * gdk/x11/gdkkeys-x11.c: Implement the above functions
4862         
4863         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
4864         and group in the key event
4865
4866         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
4867         field with the low-level hardware key code, and a group
4868         field with the keyboard group
4869
4870         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
4871         and declare a couple globals used for keymap handling
4872         
4873         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
4874         hold down Shift-Control and type a hex number to get a Unicode 
4875         character corresponding to the hex number
4876         (gtk_im_context_simple_get_preedit_string): Fix cursor position
4877         (return bytes not chars)
4878
4879 2000-12-05  Elliot Lee  <sopwith@redhat.com>
4880
4881         * gdk/gdkcolor.h: Make GdkColor specify element sizes
4882         to avoid waste on 64-bit platforms.
4883
4884 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
4885
4886         * INSTALL: Fix link to PNG home, remove reference
4887         to fribidi.
4888
4889         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
4890         
4891         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
4892         tested.)
4893
4894         * gtk/gtkcheckmenuitem.c: Permanently turn on
4895         always_show_toggle.
4896
4897         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
4898         be NULL. (Vladimir Klebanov, #26545)
4899
4900         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
4901         some signed/unsigned comparison problems. (#6510,
4902         David Kaelbling)
4903
4904         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
4905         return type to boolean (Oskar Liljeblad, #18648)
4906
4907 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4908
4909         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
4910         Remove bogus colormap setting.
4911
4912 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4913
4914         * gdk/linux-fb/gdkcolor-fb.c:
4915         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
4916
4917         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
4918         Must set colormap.
4919         
4920 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
4921
4922         * docs/tutorial/gtk-tut.sgml: DND updates
4923
4924 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
4925
4926         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
4927         Remove old debug g_warning().
4928         (gdk_fb_draw_drawable): The src argument can be either a wrapper
4929         or an implementation, just pass the implementation to draw_drawable_2.
4930         
4931         * gdk/linux-fb/gdkprivate-fb.h:
4932         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
4933
4934         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
4935         clear and invalidate area when window is destroyed.
4936         (send_map_events): Remove old commented out code.
4937
4938 2000-12-05  Alexander Larsson  <alexl@redhat.com>
4939
4940         * gdk/linux-fb/gdkpango-fb.c:
4941         Use italic instead of oblique in font aliases.
4942         
4943         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
4944         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
4945         other unsupported functions.
4946
4947 2000-12-04  Havoc Pennington  <hp@redhat.com>
4948
4949         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
4950
4951         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
4952
4953         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
4954
4955         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
4956         hack to avoid infinite loops (synthetic expose event) - 
4957         Owen has more appropriate fixes in a branch he'll check in later.
4958
4959         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
4960         separator, CR, and CRLF as line ends
4961
4962         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
4963         into lines using pango_find_paragraph_boundary(); other bits of
4964         the widget are still going to be broken if the boundary isn't '\n'
4965         though
4966
4967 2000-12-04  Alexander Larsson  <alexl@redhat.com>
4968
4969         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
4970         multiply.
4971
4972         * gdk/linux-fb/gdkpango-fb.c:
4973         Copied some 26.6 scaling macros from pango to clean up the rounding.
4974         (pango_fb_font_get_glyph_info): Correct sign on x value.
4975
4976         * gdk/linux-fb/gdkprivate-fb.h:
4977         Removed unreferenced external functions.
4978
4979         * modules/linux-fb/Makefile.am: Use ` instead of '.
4980
4981         * modules/linux-fb/basic.c:
4982         Remove dead code. In particular the dummy lang engine which broke all
4983         pango layouts in GtkFB. Don't include tables-big.i anymore.
4984
4985         * modules/linux-fb/tables-big.i:
4986         Upgrade to latest version from pango. Left for reference, basic_ranges
4987         moved to basic.c.
4988         
4989 2000-12-04  Havoc Pennington  <hp@redhat.com>
4990
4991         Fix bugs Alex found:
4992         
4993         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
4994         to "draw"
4995
4996         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
4997
4998         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
4999
5000         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
5001         implementation in here, apparently the expose() implementation was
5002         dead code.
5003
5004 2000-12-04  Alexander Larsson  <alexl@redhat.com>
5005
5006         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5007         Return positive descent.
5008
5009 2000-12-02  Havoc Pennington  <hp@pobox.com>
5010
5011         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
5012         method and signal
5013         
5014         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
5015         calls gdk_window_process_updates() to push the exposes through
5016         (gtk_widget_class_init): No more draw signal, no
5017         gtk_widget_real_draw()  
5018         
5019         * gtk/gtkbin.c (gtk_bin_draw): remove
5020
5021         * gtk/gtkbox.c (gtk_box_draw): remove
5022
5023         * gtk/gtkbutton.c (gtk_button_draw): remove
5024
5025         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
5026
5027         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
5028
5029         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
5030
5031         * gtk/gtkclist.c (gtk_clist_draw): remove
5032
5033         * gtk/gtkentry.c (gtk_entry_draw): remove
5034
5035         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
5036
5037         * gtk/gtkfixed.c (gtk_fixed_draw): remove
5038
5039         * gtk/gtkframe.c (gtk_frame_draw): remove
5040
5041         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
5042
5043         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
5044
5045         * gtk/gtklayout.c (gtk_layout_draw): remove
5046
5047         * gtk/gtklist.c (gtk_list_draw): remove
5048
5049         * gtk/gtklistitem.c (gtk_list_item_draw): remove
5050
5051         * gtk/gtkmenu.c (gtk_menu_draw): remove
5052
5053         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
5054
5055         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
5056
5057         * gtk/gtknotebook.c (gtk_notebook_draw): remove
5058
5059         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
5060
5061         * gtk/gtkpacker.c (gtk_packer_draw): remove
5062
5063         * gtk/gtkrange.c (gtk_range_draw): remove
5064
5065         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
5066
5067         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
5068
5069         * gtk/gtktable.c (gtk_table_draw): remove
5070
5071         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
5072
5073         * gtk/gtktext.c (gtk_text_draw): remove
5074
5075         * gtk/gtktextview.c (gtk_text_view_draw): remove
5076
5077         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
5078
5079         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
5080
5081         * gtk/gtktree.c (gtk_tree_draw): remove
5082
5083         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
5084
5085         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
5086
5087         * gtk/gtkviewport.c (gtk_viewport_draw): remove
5088
5089         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
5090
5091         * gtk/gtkvscale.c (gtk_vscale_draw): remove
5092
5093         * gtk/gtkwindow.c (gtk_window_draw): remove
5094
5095 2000-20-01  Anders Carlsson  <andersca@gnu.org>
5096
5097         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
5098         a GtkToggleButton is both insensitive and active, it was being
5099         drawn by the GtkButton draw handler which doesn't check the
5100         state. Now it's calling gtk_toggle_button_paint instead.
5101         
5102 2000-12-01  Havoc Pennington  <hp@redhat.com>
5103
5104         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
5105         dangling pointers to the appearance attributes from the 
5106         line display
5107
5108         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
5109         width/height to mean "full width/height of drawable"
5110
5111         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
5112         click to select word/line
5113         
5114         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
5115         when getting log attrs. Get a slice, so that pixmaps and stuff
5116         are properly handled.
5117
5118         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
5119         paste into the selection (replaces selection now, previously
5120         crashed or added to selection). Reveals longstanding btree bug -
5121         select multiple lines, middle-click on the selection, boom. This
5122         isn't related to my changes though.
5123
5124         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
5125         PangoLogAttrs changes
5126         (gtk_entry_move_backward_word): ditto
5127
5128         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
5129         functions return bool whether the iter moved onto a
5130         dereferenceable position.
5131  
5132         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
5133         functions for motion in terms of display lines.
5134
5135         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
5136         get the buffer a mark is inside
5137         
5138 2000-12-01  Alexander Larsson  <alexl@redhat.com>
5139
5140         * gdk/linux-fb/Makefile.am:
5141         * modules/linux-fb/Makefile.am:
5142         Freetype 2 final uses freetype-config
5143
5144         * gdk/linux-fb/gdkpango-fb.c:
5145         Upgrade to use Freetype 2 final.
5146         More flexible support for font aliases, this also fixes a bug with
5147         GtkFontSelector, as the aliases must be visible in the font/family list,
5148         or GtkFontSelector reads uninitialized memory.
5149
5150 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
5151
5152         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
5153         XGetIMValues to properly terminate variable argument list, and do
5154         NULL return check for ic_values and xim_styles.
5155
5156         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
5157         Restore preedit state after XmbResetIC().
5158         
5159         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
5160         XvaCreateNestedList() should take XvaNestedList, but not
5161         XvaNestedList*.
5162
5163         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
5164         preedit_draw_callback, preedit_caret_callback): Match
5165         "preedit-changed" signal name to "preedit_changed" to be
5166         consistent to the spec.
5167
5168         * gtk/gtkimcontextsimple.c (check_table):
5169         Match "preedit-changed" to "preedit_changed" to be consistent
5170         to the spec.
5171
5172 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
5173
5174         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
5175         gc->clip_region == NULL>
5176
5177 2000-11-30  Tor Lillqvist  <tml@iki.fi>
5178
5179         Changes by Hans Breuer:
5180         
5181         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
5182         Dont't use negative width and height as max_hints. This fixes
5183         Owen's recent testgtk changes for win32.
5184
5185         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
5186         gdk_win32_hdc_release): These are exported and may be called with
5187         other drawable types than our GdkDrawableImplWin32 (?).
5188
5189         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
5190         so always #define USE_BACKING_STORE.
5191
5192         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
5193         of printf for debugging output.
5194
5195         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
5196         
5197         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
5198
5199         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
5200         declaration.
5201
5202         * gtk/gtktexttypes.h: Ditto.
5203
5204         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
5205         (GDK_VoidSymbol) also if in case of arg check failure.
5206
5207         * gtk/gtkimcontextsimple.c
5208         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
5209         position to the pointer, but to the variable it points to.
5210
5211         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
5212
5213         * gtk/gtk.def: Updates.
5214
5215 2000-11-29  Elliot Lee  <sopwith@redhat.com>
5216
5217         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
5218         GTK_TYPE_TREE_MODEL.
5219
5220 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5221
5222         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
5223         Set the size of the font from the description.
5224         (gdk_text_width): Gross hack that calculates the width
5225         of text by text_length * size/2. This is necessary because
5226         GtkLabel does some ugly gtk_string_width call to calculate
5227         an good size.
5228         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
5229
5230 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
5231
5232         * docs/tutorial/gtk-tut.sgml: DND updates
5233
5234 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5235
5236         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5237         If you pass width or height == 0 to gdk_window_clear_area they
5238         should be calculated from the window size.
5239
5240 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5241
5242         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
5243         a grab, but no grab-cursor, use the cursor from the grabbed
5244         window. (gdk_fb_window_send_crossing_events): Send normal
5245         enter/leave notifications if grab and owner_events == TRUE.
5246
5247 2000-11-29  Alexander Larsson  <alexl@redhat.com>
5248
5249         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5250         Do implicit button grabs, even if the window doesn't
5251         want the event.
5252         (gdk_fb_window_send_crossing_events): If there is a
5253         grab, only the grabbed window gets normal enter/leave
5254         notifications. On ungrab go from grabbed window to current.
5255         Don't send any notification to b when propagating from c -> b.
5256         If setting a grab on window, don't set prev_window.
5257         (handle_mouse_input): Send enter/leave events to the window the
5258         mouse is over, not the grabbed one.
5259         
5260 2000-11-28  Elliot Lee  <sopwith@redhat.com>
5261
5262         * gdk/gdkregion-generic.c: Zap warning.
5263         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
5264         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
5265
5266 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
5267
5268         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
5269         The cursor should be hidden if it is part of either the
5270         source or destination region. Not only if it is in both.
5271         (gdk_window_set_transient_for): Silence warnings.
5272
5273 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5274
5275         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
5276         The default mode in X is Pie Arcs, therefore that is
5277         what Gtk+ uses.
5278
5279 2000-11-28  Alexander Larsson  <alexl@redhat.com>
5280
5281         * gdk/linux-fb/gdkinput-ps2.c:
5282         Implement correct EnterNotify/LeaveNotify:
5283         (gdk_fb_window_send_crossing_events): New function that sends
5284         all GdkCrossingEvents from the last mouse-window to the specified
5285         destination.
5286         (gdk_fb_window_visibility_crossing): Removed function.
5287         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
5288         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
5289         instead of gdk_window_get_pointer() for better readability.
5290
5291         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
5292         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
5293
5294         * gdk/linux-fb/gdkprivate-fb.h:
5295         removed gdk_fb_window_visibility_crossing, added
5296         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
5297
5298         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
5299         New function that finds the least common ancestor of two windows.
5300         (gdk_window_show, gdk_window_hide):
5301         Use gdk_fb_window_send_crossing_events.
5302         (gdk_fb_window_move_resize): Send configure events to toplevel
5303         windows. Use gdk_fb_window_send_crossing_events.
5304
5305 2000-11-27  Havoc Pennington  <hp@redhat.com>
5306
5307         * gtk/gtkprivate.h (enum): Remove a trailing comma
5308
5309 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
5310
5311         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
5312         the "changed" callback of the adjustment.  We need to redraw the
5313         spin button's arrows when the adjustment's range changes.
5314         (adjustment_changed_cb): Draw the arrows.
5315         (gtk_spin_button_value_changed): Draw the arrows.
5316
5317 2000-11-23  Alexander Larsson  <alexl@redhat.com>
5318
5319         * gdk/linux-fb/gdkselection-fb.c:
5320         Initial selection implementation.
5321
5322         * gtk/gtkselection.c:
5323         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
5324         requestor in gtk_selection_request.
5325         
5326         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
5327         Added gdk_selection_property atom.
5328
5329         * gdk/linux-fb/gdkprivate-fb.h:
5330         Export _gdk_selection_window_destroyed.
5331         Removed mask_off_x/y from GdkCursorPrivateFB.
5332         Removed hbearing, added top, left to PangoFBGlyphInfo.
5333
5334         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
5335         Call _gdk_selection_window_destroyed
5336         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
5337         the root window has been created.
5338         (static_dx_hack, static_dy_hack, compare_draw_rects,
5339         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
5340         in region. They are already sorted. Instead just traverse them in
5341         reverse if draw_direction < 0.
5342         
5343         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
5344         Double-clicks must be sent after the normal button_press.
5345         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
5346         
5347         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
5348         Pass _gdk_fb_screen_gc instead of NULL.
5349
5350         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5351         Initialize gdk_selection_property.
5352         (gdk_event_make): Remove unused code.
5353
5354         * gdk/linux-fb/gdkcursor-fb.c:
5355         Make the pixmap for the cursor the same size as the mask. Also remove
5356         the mask_off_x/y fields in GdkCursorPrivateFB and combine
5357         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
5358         Now the whole cursor is visible.
5359
5360         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
5361         Fix bug where xdest+height instead of ydest+height was used
5362         to calculate if the source and dest overlapped. This fixes the
5363         redraw bug when the main window in testgtk was scrolled when
5364         partially covered by a tall window.
5365         Copy rectangles in region in order depending on draw_direction.
5366         Also moved the draw_direction flipping of start_y and end_y into
5367         the gc functions, as this might not be what all of them want.
5368         (gdk_fb_draw_lines): Support dashed lines.
5369         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
5370         so that the text is positioned correctly (was 1 pixel high).
5371
5372         gdk/linux-fb/gdkgc-fb.c:
5373         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
5374         all lines were drawn a pixel to short. Also checked the default of
5375         the rest of the values, and they're the same as X now.
5376
5377         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
5378         Clean up pixel positioning of the glyphs. Just use bgy->top and
5379         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
5380         to all divisions to get correct rounding behaviour.
5381
5382         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
5383         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
5384         Moved start_y/end_y flip into draw_drawable implementations.
5385         Flip also x rendering when draw_direction < 0.
5386         Remove unneccesary multiply with draw_direction.
5387
5388 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
5389
5390         * docs/tutorial/gtk-tut.sgml:
5391           - get rid of gtk_toggle_button_toggled FUD
5392           - start DND section - needs work - based on:
5393                 http://wolfpack.twu.net/docs/gtkdnd/
5394
5395 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5396
5397         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
5398         Correct calculation of font metrics. Now GtkEntrys have sane
5399         size.
5400
5401 2000-11-22  Alexander Larsson  <alexl@redhat.com>
5402
5403         * gdk/gdktypes.h:
5404         Add new type GdkSpan
5405         
5406         * docs/reference/gdk/gdk-sections.txt,
5407         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
5408         gdk/gdkregion.h:
5409         Implement and document gdk_region_spans_intersect_foreach.
5410
5411         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
5412         Add new file gdkrender-fb.c which contains all core
5413         rendering code.
5414         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
5415         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
5416         (optimized rectangle fillers).
5417
5418         * gdk/linux-fb/gdkdrawable-fb2.c:
5419         Move all rendering code to gdkrender-fb.c.
5420         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
5421         Use the new span intersection functions in gdk_fb_fill_spans.
5422         gdk_fb_draw_rectangle() clips filled rectangles and calls
5423         gc->fill_rectangle with the result.
5424         gdk_fb_fill_spans() gets extra argument "sorted".
5425
5426         * gdk/linux-fb/gdkevents-fb.c:
5427         Remove unused includes and defines.
5428         New function gdk_fb_get_time() to get correct time for events.
5429
5430         * gdk/linux-fb/gdkinput-ps2.c:
5431         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
5432         Make sure to set the time of all events.
5433
5434         * gdk/linux-fb/gdkmain-fb.c:
5435         Use gdk_fb_get_time ().
5436
5437         * gdk/linux-fb/gdkprivate-fb.h:
5438         New virtual GC calls: fill_span & fill_rectangle.
5439         Export gdk_fb_get_time().
5440         gdk_fb_fill_spans() gets extra argument "sorted".
5441
5442         * gdk/linux-fb/mi*.c:
5443         Use GdkSpan instead of GdkRectangle.
5444         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
5445         from XFree 4 source)
5446         
5447 2000-11-22    <jrb@redhat.com>
5448
5449         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
5450         reversing the order in an if statement will do.  Doing so managed
5451         to make the treemodelsort half work.  Other half will follow after
5452         I get the insert function fully fixed.
5453
5454 2000-11-21  Elliot Lee  <sopwith@redhat.com>
5455         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
5456         more than 2 bits. Besides, I need to implement an evil hack. :)
5457
5458 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
5459
5460         * docs/tutorial/gtk-tut.sgml: minor corrections
5461
5462 2000-11-20  Jonathan Blandford <jrb@redhat.com>
5463         * gtk/gtktreemodelsort.h: Add convertion functions to let you
5464           convert to and from relative path's and iters.
5465
5466         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
5467           testing sorting functions a bit better.  Currently broken -- will
5468           fix in morning.
5469
5470 2000-11-20  Havoc Pennington  <hp@redhat.com>
5471
5472         * gtk/gtkwidget.c: Documented a bunch of functions in here
5473         (gtk_widget_realize): Warn if you try to realize
5474         a widget with no parent that isn't a toplevel
5475         (gtk_widget_intersect): return a gboolean
5476
5477 2000-11-20  Havoc Pennington  <hp@redhat.com>
5478
5479         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
5480         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
5481         scrolling to be implemented in GDK to finish. Also, right now
5482         we just size_allocate all children on every layout change,
5483         which is pretty lame. Test commented out of testtext.c, 
5484         until it works better.
5485
5486 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
5487
5488         * gdk/linux-fb/gdkdrawable-fb2.c:
5489         Removed unused arguments from gdk_fb_drawable_get_pixel().
5490
5491         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
5492         Renamed fidur specific mouse packet data in MouseDevice to
5493         generic. Used it in ps2 mouse handling code to avoid blocking
5494         reads.
5495
5496 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
5497
5498         * demos/gtk-demo/main.c: Changed to have the list become
5499         non-italic when the demo window is destroyed through an external
5500         event (like a close button).  Doing so found three bugs in the
5501         widget.
5502
5503         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
5504
5505         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
5506         we actually set the cell.
5507
5508         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
5509
5510         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
5511         free a leaked path.  Thanks memprof.
5512
5513 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
5514
5515         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
5516         off-by-one error when destroying allocated segments
5517         on failure. (Elliot)
5518
5519 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
5520
5521         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
5522         memleaks found by Evan Martin.
5523
5524 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
5525
5526         * Released 1.3.2
5527         
5528         * NEWS: Updates for 1.3.2
5529
5530 2000-11-17  Tor Lillqvist  <tml@iki.fi>
5531
5532         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
5533         but in general for window system specific events.
5534
5535         * gtk/gtk.def
5536         * gtk/makefile.mingw.in
5537         * gtk/makefile.msc.in: Update.
5538         
5539         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
5540
5541 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
5542
5543         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
5544         distribute gtk.immodules.
5545
5546         * gtk/Makefile.am (install-data-local): Don't install the
5547         gtk.immodules file created for the uninstalled modules;
5548         instead run gtk-query-immodules after install
5549
5550 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
5551
5552         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
5553         -rpath to the right install location.
5554
5555         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
5556         -export-dynamic.
5557
5558         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
5559         properly.
5560
5561 2000-11-15  Havoc Pennington  <hp@pobox.com>
5562
5563         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
5564         patch from Mikael Hermansson to temporarily stop blinking while
5565         the user is using the keyboard to type or navigate. 
5566
5567         Also, when blinking, stay on for longer than we stay off. Also,
5568         return from start_cursor_blink if !cursor_visible, to save
5569         checking that flag all over the place before we call
5570         start_cursor_blink.
5571
5572 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
5573
5574         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
5575         only contain a "fontset" line, which is now ignored.
5576
5577         * gtk/gtkentry.c (gtk_entry_button_release): Make 
5578         double-click-to-select-word work.
5579         
5580 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
5581
5582         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
5583         Don't move back one char when we are actually at the end of the 
5584         paragraph.
5585
5586 2000-11-15  Robert Brady  <robert@suse.co.uk>
5587
5588         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
5589         'o' < 'p'.
5590         
5591         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
5592         bind_textdomain_codeset.
5593
5594         (gtk_init_check): Make the warning about translating default:LTR
5595         sterner.
5596         
5597 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
5598
5599         * **/Makefile.am : remove unecessary rules for win32-specific
5600         config-substituted targets. If you want these rules, use
5601         --enable-maintainer-mode (called automatically by autogen.sh).
5602         Stops a lot of unneccessary make-time warnings.
5603
5604         * gtk/gtktext{layout,display}.c: Factor in total width as
5605         well as screen when figuring alignment for word-wrap as well as
5606         no wrap; this is necessary to handle lines that cannot be wrapped
5607         at all.
5608
5609 2000-11-15  Havoc Pennington  <hp@redhat.com>
5610
5611         * gtk/testtext.c: Implement essential color cycling feature
5612
5613 2000-11-15  Havoc Pennington  <hp@redhat.com>
5614
5615         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
5616         when we invalidate the main window.
5617
5618         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
5619         GtkTextView will now invalidate the side windows for us when text
5620         changes.
5621
5622 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
5623
5624         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
5625         unconditionally, since we may need to update the horizontal
5626         scrollbars even if the height didn't change.
5627
5628         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
5629         the extra attrs, since some of them affect size.
5630
5631         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
5632         x_offset correctly.
5633
5634 2000-11-15  Havoc Pennington  <hp@redhat.com>
5635
5636         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
5637         don't move the first line out into the margin, instead move the
5638         whole paragraph in order to make space for the first line within 
5639         the margin
5640
5641 2000-11-15  Havoc Pennington  <hp@redhat.com>
5642
5643         * gtk/gtktextview.c (changed_handler): offset redraw rect by
5644         xoffset in addition to yoffset, so horizontal scrolling doesn't
5645         break redraws
5646
5647 2000-11-15  Havoc Pennington  <hp@redhat.com>
5648
5649         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
5650         from the cursor
5651         (render_layout_line): fix reversed test that caused weird
5652         underlines to get drawn
5653
5654 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5655
5656         * gdk/linux-fb/gdkprivate-fb.h:
5657         Fix debug macros.
5658         
5659 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
5660
5661         * gdk/linux-fb/gdkprivate-fb.h:
5662         Added virtual functions set_pixel, get_color,
5663         fill_span and draw_drawable to the GC.
5664         Added global _gdk_fb_screen_gc to use instead of
5665         NULL when drawing to the screen.
5666         Added _gdk_fb_gc_calc_state() prototype.
5667
5668         * gdk/linux-fb/gdkgc-fb.c:
5669         Call _gdk_fb_gc_calc_state() on any gc state change.
5670
5671         * gdk/linux-fb/gdkglobals-fb.c:
5672         Add _gdk_fb_screen_gc
5673                 
5674         * gdk/linux-fb/gdkdrawable-fb2.c:
5675         _gdk_fb_gc_calc_state() calculates best functions
5676         for the GC state and depth.
5677         Moved bpp specialized code to separate functions.
5678         Added optimized 24 bpp AA draw_drawable.
5679
5680         * gdk/linux-fb/gdkevents-fb.c:
5681         Silence gcc warning.
5682
5683         * gdk/linux-fb/gdkimage-fb.c:
5684         Use _gdk_fb_screen_gc
5685
5686         * gdk/linux-fb/gdkwindow-fb.c:
5687         Init and use _gdk_fb_screen_gc
5688
5689         * gdk/linux-fb/mitypes.h:
5690         Remove unused types.
5691
5692 2000-11-14  Havoc Pennington  <hp@pobox.com>
5693
5694         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
5695         to pixels
5696
5697 2000-11-14  Havoc Pennington  <hp@pobox.com>
5698
5699         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
5700
5701         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
5702         unknown char, no real reason we were using a variable. 
5703         Remove gtk_text_unknown_char variable. Fix all the text widget
5704         files accordingly.
5705
5706         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
5707         since the Unicode spec seems to prefer that character for our
5708         purposes.
5709
5710 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
5711
5712         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
5713         value of g_getenv() isn't freeable, so g_strdup it.
5714
5715         * modules/input/inuktitut.c: Inuktitut input method.
5716
5717         * modules/input/Makefile.am: Build this.
5718         
5719 2000-11-14  Elliot Lee  <sopwith@redhat.com>
5720
5721         * gtk/Makefile.am: Install gtk.immodules, needed for operation
5722         of gtk programs.
5723
5724 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
5725
5726         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
5727         reversed > that was causing Home to go to end of previous line.
5728
5729         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
5730         modified-keypresses (leave for bindings.)
5731
5732         * modules/input/Makefile.am: Remove useless -export-dynamic
5733         from module LDFLAGS.
5734
5735 2000-11-14  Havoc Pennington  <hp@redhat.com>
5736
5737         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
5738         higher.
5739
5740         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
5741         account. Also, render rise, underline, background, etc. for
5742         pixbufs as well as text. Also, draw underlines one pixel higher.
5743
5744         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
5745         PangoAttribute for the rise, so it gets drawn properly. Also,
5746         add the GtkTextAppearance attribute for pixbuf/widget segments
5747         as well; we should go ahead and have rise, underline, background,
5748         stipple work for those
5749
5750         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
5751         Pango
5752
5753 2000-11-15  Tor Lillqvist  <tml@iki.fi>
5754
5755         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
5756
5757         * gtk/gtk.def: Update.
5758
5759         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
5760         included.
5761         (gtk_rc_get_im_module_file): Use run-time installation directory
5762         on Win32.
5763
5764         * gdk/win32/rc/gdk.rc: Remove.
5765         * gdk/win32/rc/gdk.rc.in: New file.
5766         * gdk/win32/rc/Makefile.am: New file
5767         * gdk/win32/Makefile.am: Corresponding changes.
5768
5769         * gtk/gtk.rc: Remove.
5770         * gtk/gtk-win32.rc.in: New file.
5771         * gtk/Makefile.am: Corresponding changes.
5772
5773         * configure.in: Corresponding changes.
5774
5775         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
5776         has a built gtkcompat.h. Developers using CVS code on Win32 can
5777         hand-edit it from gtkcompat.h.in.
5778
5779         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
5780         gtkcompat.h from gtkcompat.h.win32.
5781
5782 2000-11-14  Havoc Pennington  <hp@redhat.com>
5783
5784         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
5785         to default to GDK_ACTION_MOVE if the drag is within a single
5786         widget. Defaults to GDK_ACTION_COPY between widgets.
5787
5788 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
5789
5790         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
5791
5792         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
5793
5794         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
5795         srcdir != builddir
5796
5797         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
5798
5799         * configure.in (GTK_VERSION): Up to 1.3.2
5800
5801         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
5802         gtkimcontextxim.h
5803
5804         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
5805         missing doc comment.
5806
5807 2000-11-14  Alexander Larsson  <alexl@redhat.com>
5808
5809         * modules/linux-fb/basic.c:
5810         Use the glib iconv wrappers.
5811
5812 2000-11-13  Havoc Pennington  <hp@pobox.com>
5813
5814         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
5815         still more bugs.
5816
5817         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
5818         scroll the GdkWindows before realization.
5819
5820 2000-11-13  Havoc Pennington  <hp@redhat.com>
5821
5822         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
5823         where GC didn't always get updated properly
5824
5825         * demos/gtk-demo/textview.c (create_tags): Use subattributes
5826         of fonts instead of setting the entire font
5827
5828         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
5829         setting entire font
5830
5831         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
5832
5833         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
5834         a bunch of individually-settable font attributes. You can still 
5835         use the "font" and "font_desc" args, they just set all the font
5836         attributes at once.
5837
5838 2000-11-13 Elliot Lee <sopwith@redhat.com>
5839
5840         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
5841
5842 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
5843
5844         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
5845         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
5846
5847         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
5848         work better.
5849
5850 2000-11-13  Havoc Pennington  <hp@redhat.com>
5851
5852         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
5853         the module file.
5854
5855         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
5856         dest->language
5857
5858         * gtk/testtext.c: Test pixels above/below/inside paragraphs
5859         settings
5860
5861         * gtk/gtktextview.c: Implement object args and setters/getters for
5862         all the aspects of the GtkTextAttributes that are not set from
5863         GtkWidget attributes. This is spacing, justification, margins,
5864         etc.
5865
5866         (gtk_text_view_set_arg)
5867         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
5868         args
5869         (gtk_text_view_class_init): Add args for justify, left_margin,
5870         right_margin, indent, and tabs
5871         
5872
5873         * gtk/gtktextlayout.c (set_para_values): fix to display indent
5874         attribute properly
5875
5876         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
5877         replace with indent attribute
5878
5879         * gtk/gtktextlayout.c (set_para_values): multiply indent by
5880         PANGO_SCALE
5881
5882         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
5883         rearranging code to do that
5884         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
5885         i.e. don't subtract the top_margin first, just to keep
5886         all margin-futzing in one place.
5887
5888         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
5889
5890         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
5891         special case of last line, Pango now handles this itself.
5892         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
5893         Y coordinate
5894         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
5895         (find_display_line_above): wasn't moving the byte index as it
5896         iterated over lines, so always returned byte 0. Also, port to use
5897         PangoLayoutIter.
5898         (find_display_line_below): same problem as
5899         find_display_line_above. Also, port to use PangoLayoutIter.
5900
5901 2000-11-13  Alexander Larsson  <alexl@redhat.com>
5902
5903         * gdk/linux-fb/*.[ch]:
5904         Massive reindent to gtk+ standard. My hands hurt.
5905
5906         * gdk/linux-fb/gdkcolor-fb.c:
5907         Move GdkColorPrivateFB from inherited to windowing_data
5908
5909         * gdk/linux-fb/gdkcursor-fb.c:
5910         _gdk_cursor_new_from_pixmap made static
5911
5912         * gdk/linux-fb/gdkdnd-fb.c:
5913         GdkDragContextPrivate moved to windowing_data
5914
5915         * gdk/linux-fb/gdkdrawable-fb2.c:
5916         Removed endian.h, use glib endianness macros instead
5917         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
5918         and GDK_DRAWABLE_IMPL_FBDATA
5919
5920         * gdk/linux-fb/gdkfont-fb.c:
5921         Add empty gdk_font_load(). Needed for linking of Gtk+.
5922
5923         * gdk/linux-fb/gdkimage-fb.c:
5924         Removed endian.h, use glib endianness macros instead
5925         Moved GdkImagePrivateFB to windowing_data
5926         gdk_image_new_bitmap didn't always allocate enough
5927         memory.
5928
5929         * gdk/linux-fb/gdkinput-ps2.c:
5930         Added semi-working support for MS serial mice.
5931
5932         * gdk/linux-fb/gdkprivate-fb.h:
5933         s/GdkWindowPrivate/GdkWindowObject/
5934         Removed GdkWindowPrivate typedef
5935         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
5936         Removed GDK_DRAWABLE_P
5937         Move GdkColorPrivateFB from inherited to windowing_data
5938         Moved GdkImagePrivateFB to windowing_data
5939
5940         * gdk/linux-fb/gdkvisual-fb.c:
5941         Removed some unused debug code.
5942
5943         * gdk/linux-fb/gdkwindow-fb.c:
5944         Use stock cursors instead of including X headers.
5945         s/GdkWindowPrivate/GdkWindowObject/
5946
5947         * gdk/linux-fb/mitypes.h:
5948         Removed unused types.
5949
5950         * modules/linux-fb/basic.c:
5951         Use the pango fribidi wrappers.
5952
5953 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
5954
5955         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
5956         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
5957         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
5958         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
5959         GEqualFunc where applicable.
5960         
5961         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
5962         pango_font_description_equal as changed in pango.
5963         
5964         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
5965
5966         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
5967
5968         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
5969
5970         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
5971
5972         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
5973
5974         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
5975
5976         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
5977         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
5978
5979         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
5980         gtk_rc_styles_compare -> gtk_rc_styles_equal.
5981
5982 2000-11-12  Havoc Pennington  <hp@pobox.com>
5983
5984         * demos/gtk-demo/Makefile.am (democodedir): change demo install
5985         dir to datadir/gtk+-2.0/demo
5986
5987         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
5988         sorts of text widget and Pango font bugs. Urgh.
5989
5990         * demos/gtk-demo/Makefile.am (demos): Add textview.c
5991
5992         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
5993         tree that you should double click to see the demo. Fix 
5994         types of variables to reflect changed return values from 
5995         GtkTreeStore and GtkTreeViewColumn constructors.
5996
5997         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
5998         newly-created buffer to prepare for GObject semantics
5999
6000         * gtk/testtext.c: don't leak the buffer with GObject semantics
6001
6002         * gtk/testtextbuffer.c: ditto
6003         
6004 2000-11-12  Havoc Pennington  <hp@pobox.com>
6005
6006         Rename this testgtk to gtk-demo to avoid confusion, and 
6007         install it so people can use it as a supplement to 
6008         the documentation.
6009         
6010         * demos/gtk-demo: Moved from demos/testgtk
6011
6012         * demos/testgtk: Removed
6013
6014         * configure.in: make Makefile in gtk-demo
6015         
6016         * demos/gtk-demo/Makefile.am: Install sample source to 
6017         datadir/gtk-demo (maybe there's a better place?), and 
6018         rename the binary to gtk-demo
6019         
6020         * demos/gtk-demo/main.c (load_file): Load installed sample
6021         source if source isn't found in pwd.
6022
6023 2000-11-09  Havoc Pennington  <hp@pobox.com>
6024
6025         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
6026         argument to set the char displayed when visibility == FALSE
6027         (gtk_entry_create_layout): If !entry->visible, replace 
6028         all chars with the "invisible char"
6029
6030         * gtk/testgtk.c: Test the invisible_char deal
6031         
6032 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
6033
6034         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
6035         can't get a native font in the right encoding.
6036
6037 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
6038
6039         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
6040         respectively.
6041
6042 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
6043
6044         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
6045         Fix warning when moving between paragraphs.
6046
6047         * gtk/gtkentry.[ch]: Change move => move_cursor, 
6048         delete => delete_from_cursor, insert => insert_at_cursor
6049
6050 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
6051
6052         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
6053
6054         * modules/input/imthai-broken.c: A Thai input method for use if
6055         Thai keys are really generating Latin1 keysyms.
6056
6057         * modules/input/Makefile.am: Build these.
6058
6059 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
6060
6061         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
6062         g_filename_{to,from}_utf8 now takes an extra parameter.
6063
6064         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
6065         strftime into UTF-8.
6066
6067         (column_from_x, gtk_calendar_paint_day_names): Support RTL
6068         calendars.
6069
6070         (gtk_calendar_paint_day_names): Draw day names in the right 
6071         place.
6072         
6073 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
6074
6075         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
6076         problem with using result of g_get_charset() backwards -
6077         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
6078
6079         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
6080         negative min_width/height and max_width/height to
6081         mean "requisition"; this allows setting a window
6082         to be user-resizable in only one direction easily.
6083
6084         * gtk/testgtk.c (create_main_window): Remove hard-coded
6085         usize - set a default size in the vertical direction.
6086
6087 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
6088
6089         * gtk/gtkrange.c: Add some missing casts. Support 
6090         2 and 3 button clicks on the arrows to mean 
6091         "move by pages" and "jump to end". (Like gtkspinbutton)
6092
6093 2000-11-12 Hans Breuer <Hans@Breuer.Org>
6094
6095         * gdk/win32/makefile.msc : reflect build module changes
6096
6097         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
6098         from GdkPixmap*, cast implementation member instead.
6099
6100         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
6101         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
6102         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
6103         more Gdi functions return value checking. 
6104         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
6105         GdkImagePrivateWin32 *.
6106
6107         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
6108         menus useable again. Add #pragma message to keep reminded on this issue.
6109         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
6110         windows. This allows to enable backing store on Win32!
6111
6112         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
6113         in drawable is of impl type. Correct specific type checks appropriate.
6114  
6115         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
6116         GDK_WINDOW_DESTROYED before allocating new resources.
6117
6118         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
6119
6120         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
6121         (gdk_window_foreign_new) initialize parent handle.
6122         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
6123
6124         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
6125         Let the GDI invalidate the window on MoveWindow call to fix scrolling
6126         problems (e.g. main buttons in testgtk). 
6127
6128 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
6129
6130         * gtk/gtkentry.c (gtk_entry_key_press): Call 
6131         gtk_widget_activate for GDK_Return.
6132
6133         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
6134         of preedit cursor position.
6135
6136 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
6137
6138         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
6139         static.
6140
6141 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
6142
6143         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
6144         out support for multiple locales; that simple doesn't
6145         work reliably with current Xlib
6146
6147         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
6148         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
6149         Add support for positioning the cursor within the preedit string.
6150
6151 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
6152
6153         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
6154         at XIM input method module.
6155
6156         * gtk/gtktextview.c: Check for bindings after passing
6157         events to im context filter.
6158
6159 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
6160
6161         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
6162         empty attribute lists properly.
6163
6164 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
6165
6166         * gtk/queryimmodules.c (main): Return non-zero exit
6167         status if errors were encountered querying any
6168         modules.
6169
6170         * modules/input/Makefile.am (moduledir): remove
6171         leftover bin program target.
6172
6173         * docs/make-todo: Fix typo in error message.
6174
6175 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
6176
6177         * configure.in: Add modules/input/Makefile
6178
6179 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
6180
6181         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
6182         don't include gtkthemes.h.
6183
6184         * gtk/testgtk.c gtk/testtext.c: Set environment variables
6185         to point
6186
6187         * gtk/Makefile.am: Add new .c and .h files, build 
6188         gtk-query-immodules and use it to create a gtk.immodules
6189         file for use of test programs.
6190
6191         * gtk/gtkpreview.c: remove extra blank line.
6192
6193 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
6194
6195         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
6196         Add the ability to add extra tables beyond the default
6197         one, and also the ability to have compose sequences 
6198         that are prefixes of other compose sequences. 
6199
6200         * gtk/gtkimcontextsimple.c: Export a preedit string which
6201         consists of possible candidates for keystrokes that have
6202         been entered but not yet committed.
6203
6204         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
6205         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
6206
6207         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
6208         Add a function to add input-method switching menu items
6209         to a menu.
6210
6211         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
6212         when switching input methods.
6213
6214         * gtk/gtkimcontextsimple.[ch]: Change the format of
6215         the compose table to allow compose tables of different
6216         lengths / sequence.
6217
6218 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
6219
6220         * gtk/gtkimmodule.[ch]: Support routines for loading
6221         GtkIMContext implementations dynamically at runtime.
6222
6223         * modules/input/imcyrillic-translit.c: A sample input
6224         method (based on GtkIMContextSimple with an extra table),
6225         which demonstrates preedit strings and the module
6226         system for input modules
6227
6228         * gtk/queryimmodules.c: Program to query the available
6229         input modules and write the results into a file.
6230          
6231         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
6232         extra config options "im_module_file" (cache file for
6233         input method modules), and "im_module_path" - path
6234         to look for modules when generating cache file.
6235
6236         This doesn't scale.
6237
6238 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
6239
6240         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
6241         generic code from gtkthemes into a new abstraction
6242         GtkModule which has the logic for implementing
6243         a loadable module which implements a number of 
6244         GObject types.
6245
6246 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
6247
6248         * gtk/gtkeditable.[ch]: Convert GtkEditable from
6249         a class into an interface  
6250         
6251         * gtk/gtkoldeditable.[ch]: Move the old editable
6252         implementation into here, so legacy widgets can
6253         still rely on the implemenation. GtkOldEditable
6254         exports GtkEditable. Make selection handling
6255         code use new text conversion functions (and
6256         handle UTF-8 as a side-effect). Use GtkClipboard
6257         for CLIPBOARD.
6258
6259         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
6260         Adopt to match above changes.
6261
6262         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
6263         avoid GtkOldEditable implementation. Restructure
6264         to reduce number of places that modify state directly.
6265         Move to GtkBindingSet. Display the preedit string.
6266         Queue recomputation of PangoLayout and scroll position
6267         to improve effiency of doing complex changes naively.
6268         Add a menu with cut/copy/paste and input method selection.
6269
6270 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
6271
6272         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
6273         to set preedit string and attributes; display preedit string by
6274         inserting string and attributes at cursor when creating the
6275         GtkTextLineDisplay.
6276
6277         * gtk/gtktextlayout.c: Move all conversions between byte
6278         positions in PangoLayout and GtkTextIter into new functions
6279         line_display_iter_to_index/index_to_iter that properly
6280         handle the preedit string.
6281
6282         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
6283         it to return const char * (eventually will end up
6284         as GCONST char *, most likely.)
6285
6286         * gtk/gtktextview.[ch]: Handle the preedit string, call
6287         gtk_im_context_reset() as necessary, add a menu to switch
6288         input methods.
6289         
6290         * gtk/gtktextlayout.[ch]: Remove useless
6291         gtk_text_layout_get_log_attrs() function.
6292
6293 2000-11-11  Tor Lillqvist  <tml@iki.fi>
6294
6295         * gdk/gdk.def
6296         * gtk/gtk.def: Update.
6297
6298         * gdk/win32/*.c: Add last argument to g_type_register_static()
6299         calls.
6300
6301         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
6302
6303         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
6304         generated by older wheel mouse drivers. Get the correct y
6305         coordinate from WM_MOUSEWHEEL messages.
6306
6307         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
6308         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
6309         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
6310         Debugging functions.
6311
6312         * gdk/win32/gdkprivate-win32.h: Declare them.
6313
6314         * gdk/win32/gdkinput-win32.h: Add declaration for
6315         gdk_input_window_destroy().
6316
6317         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
6318
6319 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
6320
6321         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
6322         function to help handle keeping things in sync.
6323
6324 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
6325
6326         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
6327         BOXED marshallers.
6328
6329         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
6330         (gtk_list_store_class_init): use the new BOXED marshallers.
6331
6332         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
6333         new_with_values to new_with_types.
6334         (gtk_tree_store_get_column_type): add this.
6335         (gtk_tree_store_class_init): use the new BOXED marshallers.
6336
6337         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
6338         mirror some POINTER marshallers.
6339
6340 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
6341
6342         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
6343         allow more interesting iterators.  Also, made the lifecycle of
6344         iterators more explicit.
6345
6346         * gtk/gtktreemodelsort.[ch]: New model for sorting.
6347
6348         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
6349         types.
6350
6351 2000-11-09  Alexander Larsson  <alexl@redhat.com>
6352
6353         * demos/testgtk/menus.c:
6354         Changes to make the new testgtk compile after
6355         gtk_menu_append was removed.
6356
6357         * gdk/linux-fb/gdkdrawable-fb2.c
6358         (gdk_fb_get_depth, gdk_fb_get_visual,
6359         gdk_drawable_impl_fb_class_init): Implement
6360         these drawable functions. Now GtkImages work again.
6361
6362         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
6363
6364         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
6365         
6366         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
6367         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
6368         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
6369         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
6370
6371 2000-11-08  Havoc Pennington  <hp@pobox.com>
6372
6373         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
6374         visible_set args, don't know where these had gone, I thought they
6375         used to be there
6376
6377         * gtk/testtext.c: Add a menu item to apply invisibility tag;
6378         now we can test the feature and see that it's totally broken.
6379
6380 2000-11-08  Havoc Pennington  <hp@pobox.com>
6381
6382         Make DND copy pixbufs and tags when source and target share a 
6383         tag table.
6384         
6385         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
6386         in-process GTK_TEXT_BUFFER_CONTENTS target
6387         (gtk_text_view_drag_data_received): Paste from
6388         GTK_TEXT_BUFFER_CONTENTS if we receive it.
6389
6390 2000-11-08  Alexander Larsson  <alexl@redhat.com>
6391
6392         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
6393         API changes.
6394
6395         * gtk/gtkmenu.c: Add support for scrolling menus.
6396         Remove gtk_menu_append/prepend/insert, these have been moved to
6397         gtkcompat.h as #defines.
6398
6399         * gtk/gtkcompat.h.in:
6400         Add compatibility #defines for gtk_menu_append/prepend/insert
6401
6402         * gtk/gtkmenu.h: Add data needed for scrolling menus.
6403         GtkMenuPositionFunc gets an extra argument push_in.
6404         gtk_menu_append/prepend/insert removed.
6405         
6406         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
6407         positioning behaviour to fit to scrolling menus.
6408
6409         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
6410         into menuitem->submeny. That is wrong, and broke torn
6411         off submenus of torn off menus, since they were unrealized
6412         when the first menu was unrealized.
6413
6414         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
6415         gtk_menu_shell_select_item() since these need to be overridden in
6416         GtkMenu.
6417
6418         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
6419         positioning behaviour to fit to scrolling menus.
6420         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
6421         the current item so that it is prelighted when the menu pops up.
6422         This is a workaround to the fact that the menu doesn't get the
6423         initial enter event (due to grabs).
6424
6425         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
6426         s/gtk_menu_append/gtk_menu_shell_append/
6427
6428         * gtk/gtknotebook.c:
6429         s/gtk_menu_insert/gtk_menu_shell_insert/
6430
6431         * gtk/testgtk.c (create_menu, create_menus):
6432         Create the first menu with 50 items so that menu scrolling
6433         can be tested.
6434         
6435         
6436         Patch from Jonathan Blandford  <jrb@redhat.com>
6437
6438         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
6439         system to handle size requests.  First, we ask what the size of
6440         the toggle is.  Then, when allocating the size, we allocate the
6441         toggle_size first.  This way we can have multiple menu-item
6442         classes w/o needing a seperate class for each.
6443
6444         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
6445         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
6446
6447         * gtk/gtkcheckmenuitem.c
6448         (gtk_check_menu_item_toggle_size_request): New function to handle
6449         the toggle size-request.
6450
6451 2000-11-07  Havoc Pennington  <hp@redhat.com>
6452
6453         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
6454         Half-ass somewhat fix this function, so that scrolling to the
6455         insertion point works. Pango hacking is in the future to really
6456         fix it.
6457
6458         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
6459         length of data, no longer used.
6460
6461         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
6462         method contents in here, get rid of destroy method
6463         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
6464         that were backward. Remove debug spew.
6465         (cut_or_copy): Make the clipboard work with insert_range to
6466         preserve tags and pixbufs, not just the primary selection.
6467
6468 2000-11-07  Havoc Pennington  <hp@redhat.com>
6469
6470         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
6471         to gtk_text_mark_get_visible
6472
6473         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
6474         bug that was generating an invalid iterator
6475
6476         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
6477         ensure_char_offsets() in front of code placing the iter in an
6478         invalid state.
6479
6480         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
6481         make override_location arg const
6482         (paste): Replace the selection if we paste into the 
6483         current selection
6484
6485         * gtk/gtkselection.h: Remove "GtkSelectioData"
6486         (struct _GtkSelectionData): move the definition here.
6487
6488         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
6489         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
6490
6491         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
6492
6493         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
6494         (gtk_text_buffer_insert_range_interactive): implement
6495         (gtk_text_buffer_get_tags): Remove, replaced by
6496         gtk_text_iter_get_tags()
6497
6498         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
6499         limit parameter, to avoid infinite linear scan.
6500         (gtk_text_iter_backward_search): Add search limit
6501         (gtk_text_iter_forward_find_char): Add search limit
6502         (gtk_text_iter_backward_find_char): Add search limit
6503
6504 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
6505
6506         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6507         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
6508         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
6509         gdk/linux-fb/gdkwindow-fb.c:
6510         use g_object_new() instead of g_type_create_instance() which
6511         is a private function for fundamental type implementations.
6512
6513         * gdk/linux-fb/gdkinput-ps2.c:
6514         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
6515         instead just store the current modifier state. Add a (somewhat broken)
6516         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
6517         Rename exported function gdk_input_ps2_get_mouseinfo to
6518         gdk_input_get_mouseinfo.
6519
6520         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
6521         gdk/linux-fb/gdkwindow-fb.c:
6522         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
6523         
6524
6525 2000-11-02  Havoc Pennington  <hp@redhat.com>
6526
6527         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
6528         use stock buttons. Should be 100% source compatible, appropriate
6529         filesel fields now point to dialog->vbox and dialog->action_area.
6530         On the bizarre side, dialog->action_area and filesel->action_area
6531         are not the same widget.
6532         (gtk_file_selection_init): Put some padding around the selection
6533         entry, so it isn't touching the GtkDialog separator.    
6534
6535         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
6536         use stock buttons, etc. Should also be source compatible.
6537         Set the dialog default title in _init not _new().
6538         
6539         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
6540         Use stock buttons; don't put a button box inside the existing
6541         dialog button box. Don't bother with push/pop colormap anymore.
6542
6543         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
6544         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
6545         for message dialog, and necessary for the font selection and color
6546         selection with help and apply buttons.
6547         
6548         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
6549         to the created button widget. Set GTK_CAN_DEFAULT on the button.
6550         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
6551         between buttons, put less padding around the action area.
6552         (gtk_dialog_run): Exit on unmap rather than on destroy. 
6553         This will also exit the loop if the widget is hidden.
6554         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
6555         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
6556         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
6557         special-case delete event.
6558
6559         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
6560         formatting
6561         
6562 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
6563
6564         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
6565         button to temporarily disable position recording in the
6566         "saved position" test.
6567
6568 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
6569
6570         * gtk/gtkthemes.c: added compat code that temporarily implements
6571         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
6572         going to be revamped by owen's upcoming GtkModule patches, but
6573         untill then people want gtk to build, right? ;)
6574
6575 2000-11-04  Havoc Pennington  <hp@pobox.com>
6576
6577         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
6578         list
6579
6580         * docs/Changes-2.0.txt: Add note about
6581         gtk_container_get_toplevels()
6582
6583         * gtk/gtktextview.h: formatting
6584         
6585         * gtk/gtktextview.c: don't start descriptions with "Returns",
6586         confuses gtk-doc
6587
6588 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
6589
6590         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
6591         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
6592
6593 2000-11-03  Havoc Pennington  <hp@redhat.com>
6594
6595         * gtk/gtktexttagtable.c: Docs
6596         (gtk_text_tag_table_size): return a signed int
6597
6598         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
6599         (gtk_text_tag_event): make the event_object a GObject
6600
6601         * gtk/gtktextview.c: Write API docs for all functions.
6602
6603         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
6604         for gtk_text_view_get_window_type() called on one of the private
6605         windows.
6606
6607         * gtk/gtktextview.c: Instead of accessing text_view->buffer
6608         directly, call get_buffer() which demand-creates a default
6609         buffer. So gtk_text_view_new() can be used to create a view with a
6610         default buffer in it, if you just want an empty text box users can
6611         put data in. Useful for GUI builders also.
6612
6613 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
6614
6615         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
6616         the charset encodign portion MUST be in lowercase.
6617         * gtk/gtkrc.az: added file for Azeri language
6618
6619 2000-11-03  Havoc Pennington  <hp@redhat.com>
6620
6621         Get widgets working on the btree/buffer side. Display of them 
6622         still doesn't work.
6623         
6624         * gtk/gtktextview.c: start implementing child widget stuff
6625
6626         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
6627
6628         * gtk/gtktextlayout.c: handle embedded widgets
6629
6630         * gtk/gtktextdisplay.c: handle embedded widgets
6631
6632         * gtk/gtktextchild.c: Implement all the child anchor goo
6633
6634         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
6635         function
6636
6637         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
6638         (insert_pixbuf_or_widget_segment): abstract out common portions of 
6639         creating a child anchor or a pixbuf segment.
6640         (gtk_text_btree_create_child_anchor): new function
6641         (gtk_text_btree_unregister_child_anchor): new function
6642
6643         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
6644         allocate_child signal on GtkTextLayout
6645
6646         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
6647         values
6648         (gtk_text_iter_get_child_anchor): new function
6649
6650         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
6651         default handler for the changed signal, which calls
6652         gtk_text_buffer_set_modified(), instead of just always emitting
6653         changed then calling set_modified() manually. I guess this is
6654         maybe more flexible. It seems logical.
6655
6656 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
6657
6658         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
6659         now.
6660
6661         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
6662
6663 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
6664
6665         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
6666         been marked static.
6667
6668 2000-11-02  Havoc Pennington  <hp@redhat.com>
6669
6670         * gtk/testgtk.c (create_labels): had a test backward
6671
6672         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
6673         fields, so the dest GC ends up with the correct clip origin, 
6674         etc. Fixes a bug where colored labels didn't redraw 
6675         properly.
6676
6677 2000-11-02  Alexander Larsson  <alexl@redhat.com>
6678
6679         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
6680         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
6681         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
6682         Add last argument to t_type_register_static call.
6683         
6684         * gdk/linux-fb/gdkdrawable-fb2.c:
6685         Add last argument to t_type_register_static call.
6686         export the get_image drawable virtual function.
6687
6688         * gdk/linux-fb/gdkimage-fb.c:
6689         Add last argument to t_type_register_static call.
6690         rename gtk_image_get to _gdk_fb_get_image and
6691         export it for use by gdkdrawable-fb2.
6692
6693         * gdk/linux-fb/gdkprivate-fb.h:
6694         export _gdk_fb_get_image.
6695
6696         * gdk/linux-fb/gdkselection-fb.c:
6697         Add new api call stubs.
6698
6699         * gtk/Makefile.am:
6700         Missing ( in linux-fb part.
6701
6702         * modules/linux-fb/Makefile.am:
6703         Must link with gdk_pixbuf or get unresolved symbol.
6704
6705 2000-11-01  Havoc Pennington  <hp@pobox.com>
6706
6707         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
6708         GTK_TYPE_TEXT_ITER and BOXED marshallers
6709
6710         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
6711
6712         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
6713         
6714         * gtk/gtk-boxed.defs: add GtkTextIter
6715
6716         * gtk/gtkmarshal.list: Add marshallers for text widget that 
6717         properly use OBJECT and BOXED
6718
6719 2000-11-01  Havoc Pennington  <hp@redhat.com>
6720
6721         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
6722
6723         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
6724         before returning it. 
6725         
6726 2000-11-01  Havoc Pennington  <hp@redhat.com>
6727
6728         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6729         Clip the rectangle to be rendered to the drawable, since
6730         get_from_drawable() requires a region within the drawable
6731
6732 2000-11-01  Havoc Pennington  <hp@redhat.com>
6733
6734         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
6735         from coordinates.
6736
6737 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
6738
6739         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
6740         it isn't NULL.
6741
6742 2000-11-01  Havoc Pennington  <hp@pobox.com>
6743
6744         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
6745         on a label
6746         (gtk_label_finalize): unref the attr list if any.
6747
6748         * gtk/testgtk.c (create_get_image): close test on second click
6749         (make_message_dialog): close dialog if it exists
6750
6751         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
6752
6753         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
6754         gdk-pixbuf
6755
6756         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
6757         from Pango markup format
6758         (gtk_label_set_markup_with_accel): ditto but with accelerator
6759         parsing
6760
6761         * gtk/gtkimage.c (gtk_image_expose): reformatting.
6762
6763         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
6764         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
6765         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
6766         call gdk_window_get_origin().
6767
6768         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
6769         implement GDK_PIXBUF_ALPHA_FULL
6770         
6771 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
6772
6773         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
6774         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
6775         g_signal_handlers_disconnect_matched to block/unblock and disconnect
6776         multiple handlers respectively, instead of only treating the
6777         first handler found (bug reported by owen).
6778
6779 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
6780
6781         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
6782
6783         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
6784
6785         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
6786         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
6787         gtk/gtktreeviewcolumn.h: Fixed inline docs.
6788
6789         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
6790         widget.  Needs writing someday.
6791
6792         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
6793         the docs.
6794
6795 2000-10-30  Havoc Pennington  <hp@redhat.com>
6796
6797         * gtk/gtktextview.h, gtk/gtktextview.c:
6798         Rename delete_at_cursor delete_from_cursor, and 
6799         move to move_cursor.
6800
6801 2000-10-30  Havoc Pennington  <hp@redhat.com>
6802
6803         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
6804         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
6805         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
6806         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
6807         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
6808         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
6809         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
6810         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
6811         gtktexttypes.h, gtktextview.c, gtktextview.h:
6812
6813         Massive reindentation and reformatting. Arg alignment and comments
6814         still need fixing in various places.
6815
6816 2000-10-30  Havoc Pennington  <hp@redhat.com>
6817
6818         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
6819         to be named insert_at_cursor and delete_at_cursor so C++ can
6820         handle them.
6821
6822 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6823
6824         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
6825         to get a double directory separator in case the home directory
6826         ends with one. This would cause trouble especially on Windows,
6827         where the path will be confused with the syntax for an an UNC
6828         (network share) path \\server\share\path.
6829         (gtk_rc_add_initial_default_files): Ditto.
6830
6831 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
6832
6833         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
6834
6835         * gtk/gtktextview.c: Use correct marshallers.
6836
6837 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
6838
6839         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
6840         use new iter stuff, and added all the appropriate signals et al.
6841
6842         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
6843         code is internal to gtk only.
6844
6845 2000-10-28  Tor Lillqvist  <tml@iki.fi>
6846
6847         * gtk/gtk.def
6848         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
6849         glib-genmarshal etc.
6850
6851 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
6852
6853         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
6854         parallel builds.
6855
6856 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
6857
6858         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
6859
6860 2000-10-27  Robert Brady  <robert@suse.co.uk>
6861
6862         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
6863         en_GB (British), ia (Interlingua).
6864
6865 2000-10-26  Havoc Pennington  <hp@redhat.com>
6866
6867         * gtk/gtktextiter.c (my_strrstr): fix constness warning
6868
6869         Fixed output of:
6870         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
6871         
6872         * gtk/gtktextsegment.c (char_segment_new): rename
6873         (_char_segment_new_from_two_strings): rename
6874         (_toggle_segment_new): rename
6875         
6876         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
6877         (make_clipboard_widget): make it static
6878         (text_get_func): static
6879         (text_clear_func): static
6880
6881         * gtk/gtkcolorsel.c (adjustment_changed): make this function
6882         static
6883         (hex_changed): make it static
6884         (hsv_changed): make it static
6885         (opacity_entry_changed): make it static
6886
6887         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
6888         (toggle_segment_check_func): rename with _gtk
6889
6890         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
6891         (_widget_segment_new): rename
6892         (_widget_segment_add): rename
6893         (_widget_segment_remove): rename
6894         (_widget_segment_ref): rename
6895         (_widget_segment_unref): rename
6896
6897         * gtk/gtktextmark.c (_mark_segment_new): Rename
6898         _gtk_mark_segment_new   
6899
6900 2000-10-26  Havoc Pennington  <hp@redhat.com>
6901
6902         * gtk/gtkmarshal.list: add new marshallers used by the text widget
6903         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
6904         types
6905
6906         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
6907         marshaller types
6908
6909         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
6910         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
6911         license on these files.
6912
6913         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
6914         work.
6915
6916         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
6917         runtime random number different for each tree, instead of 
6918         a constant I made up.
6919
6920 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
6921
6922         * gtk/Makefile.am: buncha cleanups, kludged build sources
6923         dependencies with a Makefile: oldest-source-stamp dependancy
6924         for the moment. automake is really fighting us here, with
6925         intentionally not allowing user-defined rules or dependancies
6926         prior to it's -include $(DEP_FILES) statement. sucks rocks!
6927
6928         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
6929         to public headers. tehy have a comment stating that they are
6930         "semi-public" aren't included by gtk.h and if enums popup there,
6931         they can be /*< skip >*/-ed.
6932
6933         * gtk/gtktextlayout.h: 
6934         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
6935         added LGPL... <SIGH>
6936
6937 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
6938
6939         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
6940         GtkTreeIter.  Added iterators everywhere.
6941
6942         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
6943
6944         * gtk/gtktreeviewselection.c: Changed to use the iterators.
6945
6946         * gtk/gtktreestore.c: Changed to use the iterators.
6947
6948         * gtk/gtkliststore.c: Commented out the code.  Will convert to
6949         iterators tomorrow.
6950
6951         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
6952         iterators tomorrow.
6953
6954         * gtk/treestoretest.c: Changed to use iterators.
6955
6956         * demos/testgtk/main.c: Moved to use the new iterator system.
6957
6958 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
6959
6960         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
6961         localization misbehaviour.
6962
6963         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
6964         a useless type without copy/free.
6965
6966         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
6967         of GTK_TYPE_CTREE_NODE.
6968
6969 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
6970
6971         * gtk/gtksignal.c:
6972         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
6973         applicable.
6974
6975         * gtk/gtk-boxed.defs (GtkSelectionData): specify
6976         gtk_selection_data_copy and gtk_selection_data_free
6977         do GtkSelectionData work as params in signals.
6978
6979 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
6980
6981         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
6982         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
6983         couldn't they at least give it a non-standard name?
6984         
6985         * gtk/gtktextlayout.c: arg! yet another implementation of
6986         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
6987
6988         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
6989         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
6990         home. now i know this _is_ a conspiracy.
6991
6992         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
6993         ::state-changed.
6994
6995         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
6996         (gtk_accel_group_create_add): marshaller signature fixups.
6997
6998         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
6999         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
7000
7001         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
7002         anymore.
7003
7004 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
7005
7006         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
7007         due to the signal system changes, it wouldn't build currently. to
7008         be fixed soon.
7009
7010         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
7011
7012         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
7013         so it needs gtk_marshal_VOID__ENUM() instead of
7014         gtk_marshal_NONE__UINT().
7015
7016         * gdk/gdk*.c: adapted type registration functions.
7017
7018         * gtk/gtkbindings.c:
7019         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
7020         gone.
7021
7022         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
7023
7024         * gtk/gtkobject.c:
7025         (gtk_object_destroy):
7026         (gtk_object_shutdown): fixed recursion guards. basically we have to
7027         catch the case where any of GObject.shutdown() or gtk_object_destroy()
7028         is called during ::destroy, and avoid recursion there.
7029
7030         * gtk/gtktypeutils.c:
7031         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
7032         boxed_copy/boxed_free. this needs a more general solution based on a
7033         publically installed code-generator utility.
7034
7035         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
7036         glib's gobject has support for that now.
7037         define GtkSignalMarshaller in terms of GSignalCMarshaller.
7038
7039 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
7040
7041         * gtk/gtksignal.[hc]:
7042         * gtk/gtkmarshal.[hc]:
7043         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
7044         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
7045         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
7046         care of that.
7047
7048         * *.c: marshaller name fixups.
7049
7050         * gtk/gtkmarshal.list: added a comment briefing the format.
7051
7052 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
7053
7054         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
7055         compatibility macros here now. more specifically, most of
7056         the API is preserved (yes, _most_, nonwithstanding the
7057         following exceptions listed, the API is stil lHUGE ;)
7058         things that got removed completely:
7059         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
7060         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
7061         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
7062         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
7063         gtk_signal_remove_emission_hook().
7064         non-functional functions variants:
7065         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
7066         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
7067         not supported anymore.
7068         (gtk_signal_compat_matched): new internal function to aid
7069         implementation of the compatibility macros, it  provides
7070         functionality to block/unblock/disconnect handlers based
7071         on func/data.
7072
7073         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
7074
7075         * *.c: adaptions to new type registration API signatures.
7076
7077 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
7078
7079         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
7080
7081 2000-10-25  Robert Brady  <robert@suse.co.uk>
7082
7083         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
7084         gdk_property_delete): If window == NULL, assume the root window.
7085         (restoring the behaviour that was in 1.2).
7086         
7087         * gtk/testtext.c (save_buffer): Allow creation of new files when
7088         saving.
7089
7090         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
7091         calls to read().
7092
7093 2000-10-25  Tor Lillqvist  <tml@iki.fi>
7094
7095         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
7096
7097         * gdk/win32/gdkdrawable-win32.c
7098         * gdk/win32/gdkimage-win32.c
7099         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
7100         X11 backend.
7101
7102         * gdk/win32/gdkcc-win32.c
7103         * gdk/win32/gdkcolor-win32.c
7104         * gdk/win32/gdkfont-win32.c
7105         * gdk/win32/gdkinput-win32.c
7106         * gdk/win32/gdkmain-win32.c
7107         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
7108
7109 2000-10-24  Havoc Pennington  <hp@redhat.com>
7110
7111         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
7112         it a static function
7113
7114         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
7115         redraw text when a tag is applied to it.
7116
7117         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
7118         (gtk_text_tag_affects_nonsize_appearance): private functions to
7119         see if a tag requires various kinds of redraw/layout to be queued
7120         up.
7121
7122         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
7123
7124         * gtk/testtext.c (fill_example_buffer): Put the cursor 
7125         at the start of the buffer, so search works by default
7126
7127         * gtk/gtktextiter.c (lines_match): init match_start always
7128
7129         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
7130         function, get iter at a line + a byte index
7131
7132         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
7133         to set byte position within a line
7134         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
7135
7136 2000-10-23  Havoc Pennington  <hp@redhat.com>
7137
7138         * gtk/testtext.c: Re-enable the "find" dialog
7139
7140         * gtk/testgtk.c: Add test for gdk_drawable_get_image
7141         
7142         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
7143         the arguments to gdk_draw_drawable were in the wrong order
7144         (gdk_window_paint_init_bg): This function was ignoring the
7145         init_region, instead of clipping to it, so the entire backing
7146         pixmap was cleared on every begin_paint()
7147         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
7148         was in here again, the loop kept using the same GtkWindowPaint
7149         over and over.
7150         (gdk_window_begin_paint_region): Fix a bug where we had two
7151         x_offset instead of x_offset and y_offset
7152
7153         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
7154         before we get the image.
7155         (gdk_draw_drawable): get the composite before we draw the drawable.
7156         (gdk_drawable_real_get_composite_drawable): default
7157         get_composite_drawable implementation that returns the drawable 
7158         itself
7159
7160         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
7161         get_composite_drawable virtual function
7162
7163         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
7164         list-walking bug
7165
7166         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
7167         make this work if the source drawable is a GdkDrawableImplX11
7168         instead of a public drawable type. This is really broken; the
7169         problem is that GdkDrawable needs a virtual method get_xid(), but
7170         of course that doesn't work in practice. Enter RTTI.
7171
7172         Also, improve mismatched depth message.
7173
7174         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
7175         GdkPixmap
7176
7177         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
7178         install _gdk_x11_get_image as our implementation of get_image
7179         
7180         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
7181         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
7182
7183         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
7184         gdk_drawable_get_image
7185
7186         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
7187
7188         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
7189         get_image
7190
7191         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
7192         trailing semicolon after for loop
7193
7194 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
7195
7196         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
7197         where font_desc for widget's context lagged widget's font_desc by
7198         one step.
7199
7200 2000-10-22  Tor Lillqvist  <tml@iki.fi>
7201
7202         * gdk/win32/gdkgc-win32.c
7203         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
7204
7205         * gtk/makefile.mingw.in
7206         * gtk/gtk.def: Updates.
7207
7208         * gtk/testgtk.c: sleep() is called _sleep in MS's C
7209         library.
7210
7211         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
7212
7213         * gtk/makefile.msc: Remove
7214
7215         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
7216
7217         * gtk/Makefile.am: Add it.
7218
7219         * configure.in: Generate it.
7220
7221         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
7222         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
7223         something even if not implemented, to satisfy picky MSVC.
7224
7225         Patches by Hans Breuer:
7226         
7227         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
7228         SetBkMode() and SetTextAlign() before calling
7229         pango_win32_render().
7230
7231         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
7232         Set hcliprgn to NULL after destroying it.
7233         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
7234
7235         * gdk/win32/gdkgeometry-win32.c
7236         (_gdk_windowing_window_queue_antiexpose): More effective
7237         implementation.
7238
7239         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
7240         depth as default, not the visual's.
7241
7242         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
7243         against empty title.
7244
7245         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
7246         IMAGE_PRIVATE_DATA.
7247
7248         * gdk/win32/gdkimage-win32.c: Use it.
7249
7250 2000-10-22  Robert Brady  <robert@suse.co.uk>
7251
7252         * configure.in: Check for bind_textdomain_codeset
7253
7254         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
7255         present, make use of it.
7256
7257         Add a translatable string "default:LTR" which, if translated
7258         to "default:RTL", will cause the default direction to be
7259         Right-to-Left.
7260
7261         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
7262         direction if marked as flippable.
7263
7264         * gtk/gtkhscale.c: Mark widget as flippable.
7265         
7266 2000-10-04  Havoc Pennington  <hp@redhat.com>
7267
7268         * gtk/testgtk.c (create_buttons): create some stock buttons
7269         with the default accel group
7270         (create_image): test some new GtkImage features
7271         (make_message_dialog): test GtkMessageDialog
7272         (create_modal_window): fix someone's bizzarro indentation
7273
7274         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
7275         GTK_WIN_POS_CENTER_ON_PARENT. 
7276         Add "destroy with parent" setting, which means the window goes
7277         away with its transient parent.
7278         (gtk_window_get_default_accel_group): get the default accel group
7279         for the window.
7280         (gtk_window_set_destroy_with_parent): set/unset destroy with
7281         parent flag
7282         (gtk_window_read_rcfiles): invalidate icon set caches
7283         after reloading rcfiles 
7284
7285         * gtk/gtkenums.h (GtkWindowPosition): add
7286         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
7287         on its parent window when the dialog is mapped for the first time.
7288
7289         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
7290         a simple message dialog class
7291         
7292         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
7293         handler to emit response signal, and maybe later it would
7294         honor a hide_on_delete flag - though that isn't there yet.
7295         Set border width on the vbox to 2, so we get some padding.      
7296         Use a button box for the action area.
7297         (gtk_dialog_key_press): synthesize a delete event if Esc
7298         is pressed and the GtkWidget key press handler didn't 
7299         handle the escape key.
7300         (gtk_dialog_new_with_buttons): new function creates a dialog
7301         with some default buttons in it.
7302         (gtk_dialog_add_action_widget): add an activatable widget
7303         as a button in the dialog - you can also add a non-activatable
7304         widget by accessing the action area directly.
7305         (gtk_dialog_add_button): add a simple button - stock ID or 
7306         label - to the action area
7307         (gtk_dialog_response): emit response signal
7308         (gtk_dialog_run): block waiting for the dialog, return 
7309         the response. Override normal delete_event behavior, so that 
7310         delete_event does nothing inside gtk_dialog_run().
7311
7312         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
7313         emitted when an action widget is clicked or the dialog gets
7314         delete_event
7315
7316         * gtk/gtk.h: add gtkmessagedialog.h
7317
7318         * gtk/Makefile.am: add gtkmessagedialog.[hc]
7319
7320 2000-10-18  Havoc Pennington  <hp@redhat.com>
7321
7322         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
7323         where any number of empty lines would get skipped
7324
7325         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
7326         edge.
7327
7328         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
7329         warning about invalid iterators (explain more thoroughly)
7330         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
7331
7332         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
7333         big
7334
7335         * demos/*.c: Add error handling
7336
7337         * gtk/gtktextbuffer.c: don't modify const iterators
7338
7339         * gtk/gdk-pixbuf-loader.c: Add full error handling here
7340
7341         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
7342         on file load
7343
7344         * gtk/gtkiconfactory.c: Update to reflect addition of error
7345         handling to gdk-pixbuf loaders
7346
7347 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
7348
7349         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
7350         move to new modularized testgtk.
7351
7352 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
7353
7354         * gtk/gtktreeview.c: Draw the arrows correctly.
7355
7356         * gtk/gtktreemodel.c: Added user docs.
7357
7358         * gtk/gtk.h: remove gtktreedatalist.h.
7359
7360         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
7361         parent when generating my type.
7362
7363         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
7364         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
7365
7366 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7367
7368         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
7369         GtkTreeModel from object to interface.
7370
7371 2000-10-16  Havoc Pennington  <hp@redhat.com>
7372
7373         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
7374         compilation
7375
7376 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
7377
7378         * gtk/gtktreeselection.c: Add API documentation to all public
7379         functions.
7380
7381         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
7382         functions.
7383
7384 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
7385
7386         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
7387         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
7388         docs to all public functions.
7389
7390         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
7391         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
7392         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
7393         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
7394         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
7395         issue.
7396
7397 2000-10-14  Robert Brady  <robert@suse.co.uk>
7398
7399         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
7400
7401 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
7402
7403         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
7404         values other then G_TYPE_STRING.
7405         * gtk/gtktreeselection.c: Minor commenting updates.
7406         * gtk/gtktreeview.c: Format updates.
7407
7408 2000-10-09  Tor Lillqvist  <tml@iki.fi>
7409
7410         * README.win32: Update.
7411
7412         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
7413         lines that had been deleted by mistake (?).
7414
7415         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
7416         also the case fg==white and bg==black (but still not randomly
7417         coloured cursors). Thanks to Wolfgang Sourdeau.
7418
7419         * gdk/win32/*.c: Silence gcc -Wall.
7420
7421         * gtk/gtk.def: Add missing entry points.
7422
7423         Fixes by Hans Breuer:
7424
7425         * gdk/makefile.msc
7426         * gdk/win32/makefile.msc: Update.
7427
7428         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
7429         some MSVC thing, presumably), cause breakpoint on failures. Add
7430         GDK_NOR case. Call g_log_set_always_fatal.
7431
7432         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
7433         should be pased by reference.
7434         
7435         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
7436         
7437         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
7438
7439         * gdk/win32/gdkevents-win32.c
7440         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
7441
7442         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
7443         implementation object.
7444
7445         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
7446         not just windows.
7447         
7448         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
7449         Use the wrapper object.
7450         
7451 2000-10-06  Havoc Pennington  <hp@redhat.com>
7452
7453         * Makefile.am (SRC_SUBDIRS): contrib subdir
7454
7455         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
7456         so it can be used in Xlib version
7457
7458         * demos/testpixbuf.c (update_timeout): error checking from 1.0
7459         tree
7460
7461         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
7462         change from 1.0 tree that returns first frame of animation
7463         if the loaded file is an animation.
7464
7465         * contrib: add new directory to hold stuff that comes with GTK+
7466         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
7467         
7468         * configure.in: add contrib/*
7469
7470 2000-10-05  Havoc Pennington  <hp@redhat.com>
7471
7472         * demos/testpixbuf-save.c: add pixbuf save test
7473
7474         * demos/Makefile.am: add testpixbuf-save.c
7475
7476 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
7477
7478         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
7479         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
7480         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
7481         * gtk/gtktreeselection.[ch]: Replaced
7482         "node_selected"/"node_unselected" signal with "selection_changed"
7483         signal.
7484
7485 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7486
7487         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
7488         tree widget.
7489
7490 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
7491
7492         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
7493         drawing.
7494
7495 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
7496
7497         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
7498         Move list pointer forwards before removing item from
7499         list. (Crash reported by Salmaso Raffaele)
7500
7501         * gdk/gdkwindow.h: Remove spurious trailing ,
7502
7503         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
7504         dependencies on uninstalled libraries, sorry folks.
7505
7506 2000-10-04  Havoc Pennington  <hp@redhat.com>
7507
7508         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
7509         gtk/gtkiconfactory.c: Fix copyrights    
7510
7511         * demos/testpixbuf.c: add inline pixbuf test
7512         
7513 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
7514
7515         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
7516         Add gdk_window_iconify.
7517
7518         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
7519         (gdk_window_set_geometry_hints): Add win_gravity
7520         to geometry structure.
7521
7522         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
7523         Implement _NET_WM_PING.
7524
7525         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
7526         Set _NET_WM_PID on the client leader.
7527
7528         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
7529         Handle UTF-8 better.
7530
7531         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
7532         UTF-8 better, set _NET_WM_NAME as well. Only set
7533         icon name if it hasn't previously been explicitely 
7534         set.
7535
7536 2000-10-03  Havoc Pennington  <hp@redhat.com>
7537
7538         * gtk/testtextbuffer.c: clean up trailing whitespace,
7539         add extensive tests for tag toggle iteration.
7540         
7541         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
7542         distance
7543
7544         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
7545         optimize case where the tag root is on level 1
7546         (gtk_text_line_previous_could_contain_tag): attempt to implement
7547         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
7548         functionality
7549
7550         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
7551         Implement this, though not very efficiently.
7552
7553         * gtk/gtktextiterprivate.h: reformat
7554
7555         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
7556         iterator
7557
7558         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
7559         this to properly revalidate the iterators.
7560
7561         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
7562         properly at the end of the line (and therefore on empty lines)
7563
7564         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
7565         maybe we should return a value...
7566
7567 2000-10-03  Tor Lillqvist  <tml@iki.fi>
7568
7569         * config.h.win32: Guard definition of alloca(). glib.h now handles
7570         that.
7571
7572         * gdk/gdk.def
7573         * gtk/gtk.def: Add new entry points.
7574
7575         Changes just to make GTK+ build without errors on Win32. No hope
7576         of it working in its current state, though...:
7577         
7578         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
7579         some functions from the X11 backend, just to make GTK+ build.
7580
7581         * gdk/makefile.mingw.in
7582         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
7583         number. Add new object files.
7584
7585         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
7586         GetMessageTime to get timestamp (where on X11 uses
7587         gdk_x11_get_server_time()).
7588
7589 2000-10-02  Havoc Pennington  <hp@pobox.com>
7590
7591         * gtk/gtktextview.c: text_window_* weren't static and should have
7592         been.
7593         Start work on child widgets; not yet complete, syncing to 
7594         office computer.
7595
7596         * gtk/gtktextchild.h: change this to contain a public interface,
7597         starting work on child interfaces.
7598         * gtk/gtktextchildprivate.h: move private interfaces here
7599
7600         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
7601
7602         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
7603         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
7604         gtk/gtktextmark.c: copyright notices
7605
7606         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
7607         internal functions      
7608
7609         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
7610         internal function
7611
7612         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7613         Reformatting    
7614
7615 2000-09-30  Havoc Pennington  <hp@pobox.com>
7616
7617         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
7618         NULL start/end pointers
7619
7620         * gtk/gtktextbuffer.c: Write some docs
7621         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
7622         NULL, so you can just check whether there's a selection.        
7623
7624         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
7625         cleanup_line or segments_changed ourselves, it gets done 
7626         in unlink_segment
7627
7628         * gtk/gtktextmark.h:
7629         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
7630         
7631         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
7632
7633         * gtk/gtktextmark.c: delete some more old Tk cruft
7634
7635         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
7636         mark before removing it, so we can emit MARK_DELETED with a valid
7637         pointer.
7638         (gtk_text_buffer_mark_set): hold ref across signal emission
7639
7640         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
7641         whining about attempts to delete special marks
7642
7643         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
7644         underscore, since it's internal.
7645
7646         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
7647         now implemented in terms of iterators in gtktextiter.h
7648
7649         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
7650         New function, destructively sets contents of buffer. Also 
7651         a convenient way to clear the buffer by setting text to ""
7652
7653         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
7654         multiline string literal
7655
7656         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
7657         text changes.
7658
7659         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
7660         is not dereferenceable
7661         (gtk_text_iter_forward_lines): fix return value
7662
7663 2000-09-29  Havoc Pennington  <hp@redhat.com>
7664
7665         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
7666
7667         * gtk/gtktextview.c: Implement drag thresholding; change functions 
7668         that set border window size to have nicer name
7669         (gtk_text_view_mark_set_handler):  Fix this to have the 
7670         right signature.
7671
7672         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
7673
7674         * gtk/testtext.c: Update with API changes, put line numbers on 
7675         both sides.
7676         
7677         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
7678         with this
7679
7680         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
7681         pixbuf; delete a big block of #if 0 Tk code
7682
7683         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
7684         insert_pixmap with insert_pixbuf
7685
7686 2000-09-29  Martin Baulig  <baulig@suse.de>
7687
7688         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
7689         confusion with the GdkPixbuf of the GNOME 1.x platform.
7690
7691 2000-09-29  Havoc Pennington  <hp@pobox.com>
7692
7693         * gtk/gtktextview.c: Implement the side windows.
7694
7695         * gtk/testtext.c: Implement simple line numbering in the 
7696         left side window; seems to make scrolling sloooow. Oops.
7697         Also, cursor blink is for some reason causing redraws
7698         of the line numbers. Should investigate...
7699
7700 2000-09-28  Havoc Pennington  <hp@redhat.com>
7701
7702         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
7703         scrolling child windows, and draw focus rectangle properly.
7704         
7705         (gtk_text_view_buffer_to_window_coords):
7706         Coordinate transformation to deal with all these freaking windows
7707         and offsets
7708         (gtk_text_view_window_to_buffer_coords): transform the other way
7709
7710         * gtk/testtext.c (create_buffer): Update to match Pango API change
7711
7712         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
7713         anonymous tags
7714         (foreach_unref): don't emit remove signal from finalize, just
7715         set tag's parent to NULL
7716
7717 2000-09-26  Havoc Pennington  <hp@redhat.com>
7718
7719         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
7720         Fix some warnings       
7721
7722 2000-09-26  Havoc Pennington  <hp@redhat.com>
7723
7724         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
7725         headers into the private header list
7726
7727         * Makefile.am (pkgconfig_DATA): install pkg-config files
7728
7729         * configure.in: add pkg-config files
7730
7731         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
7732
7733         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
7734         outstanding icon caches on theme change.
7735
7736         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
7737         important types:
7738
7739         (GtkIconSource): Specification for creating a pixbuf 
7740         appropriate for a direction/state/size triplet from 
7741         a source pixbuf or filename
7742
7743         (GtkIconSet): List of GtkIconSource objects that are used to
7744         create the "same" icon (e.g. an OK button icon), and cache for
7745         rendered icons
7746
7747         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
7748         up the icon set for a given stock ID.  GTK maintains a stack of
7749         GtkIconFactory to search, and applications or libraries can add
7750         additional icon factories on top of the stack
7751         
7752         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
7753         the set of GtkIconSource specified for a given stock ID into 
7754         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
7755         RcStyle, under the specified stock ID.
7756
7757         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
7758         render_icon used to derive a GdkPixbuf from a GtkIconSource.
7759         This allows people to theme how prelight, insensitive, etc. are
7760         done.
7761
7762         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
7763         icon factories for a style, and return the resulting 
7764         icon set if any.
7765
7766         (gtk_style_render_icon): Render an icon using the render_icon 
7767         method in the GtkStyleClass.
7768
7769         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
7770         Use the style for a given widget to look up a stock ID, get the
7771         icon set, and render an icon using the render_icon method 
7772         of the style
7773
7774         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
7775         (contains information about a stock item), the built-in stock item
7776         IDs, and functions to add/lookup stock items.
7777
7778         * gtk/stock-icons/*: Stock icons that come with GTK
7779
7780         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
7781         a button based on a GtkStockItem
7782         (gtk_button_new_accel): Takes a uline string and accel group, and
7783         installs the accelerator.
7784
7785         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
7786         image-display widget.
7787
7788 2000-09-25  Havoc Pennington  <hp@redhat.com>
7789
7790         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
7791
7792         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
7793         Fix a bug when removing node data, we didn't properly 
7794         re-splice the linked list after removing the data.
7795
7796         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
7797         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
7798
7799         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
7800
7801         * gtk/gtktextlayout.c (set_para_values): Set tab array 
7802         for the layout from the GtkTextTag.
7803
7804         * gtk/gtktexttypes.h: delete tab and search cruft, 
7805         remove g_convert() in favor of GLib version
7806
7807         * gtk/gtktexttypes.c: remove tab implementation from here,
7808         move to Pango
7809
7810         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
7811         tab stuff using new PangoTabArray from Pango
7812
7813         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
7814         unused border_width stuff
7815
7816 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
7817
7818         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
7819         glib) and now useless utf_to_latin1() latin1_to_utf()
7820
7821         * gtk/gtktextview.[ch]: Change ::move_insert and
7822         ::delete_text action signals to ::move and ::delete;
7823         create the signals with the right enumeration type,
7824         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
7825         C-v bindings, change Home, End to move to beginning/end
7826         of line, Add C-Home C-End to move to beginning/end
7827         of buffer. Change ::cut_text to ::cut_clipboard, etc;
7828         combine ::scroll_text into ::move; use new GtkSelectionData
7829         functions to simplify DND text handling.
7830         
7831         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
7832         deletion enumerations here, rename enumeration values to 
7833         be consistently plural.
7834
7835         * gtk/gtktextbuffer.c: Use new clipboard interfaces
7836         for cut/copy/paste and primary selection.
7837
7838         * gtk/gtktextbuffer.[ch]: Remove excess time and
7839         'interactive' arguments from cut/copy/paste;
7840         rename cut to cut_clipboard, etc; remove
7841         gtk_text_buffer_get_clipboard_contents().
7842
7843         * gtk/gtktextlayout.[ch]: Add 
7844         gtk_text_layout_move_iter_to_line_end() to move the iter to 
7845         line ends.
7846
7847         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
7848         Functions to set or get a UTF-8 string on the selection
7849         data.
7850
7851         * gtk/gtkclipboard.[ch]: New, simplified selection handling
7852         interfaces.
7853
7854         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
7855         created widgets - one of these is useless if we don't.
7856
7857         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
7858         a public function clear all targets registered for the
7859         widget.
7860
7861         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
7862         Never call gtk_widget_realize() - that was just asking
7863         for bizarre side-effects.
7864
7865         * gtk/gtkselection.c (gtk_selection_owner_set): Call
7866         gdk_selection_owner_set even if the widget is the
7867         same so that we reliably update the timestamp on
7868         the server.
7869
7870         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
7871         gdk_x11_get_server_time() function.
7872         
7873         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
7874         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
7875         Add some tricky filtering on serial numbers for
7876         selection clear events to fix up long-standard
7877         race condition FIXME's in gtkselection.c.
7878
7879         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
7880         routines to convert from utf8 to compound text or
7881         STRING and from a text property to UTF-8.
7882
7883         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
7884         a convenience function gdk_get_current_event_time().
7885
7886         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
7887         and free selection_data->data properly
7888
7889 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
7890
7891         * gtk/gtkthemes.c: Remove some unecessary includes.
7892
7893 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
7894
7895         * gtk/gtktextdisplay.c
7896         * gtk/gtktextlayout.c
7897         * gtk/gtktexttag.c
7898         * gtk/gtktexttag.h
7899         * gtk/testtext.c: Change the overstrike property to strikethrough,
7900         to closer match pango.
7901
7902 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
7903
7904         * gtk/gtktextview.c: Fix up visibility so that focus,
7905         cursor_visible and blink interact properly.  Reenable cursor blink
7906         which had been roughly disabled. Make blink and focus
7907         properly per-view.
7908
7909         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
7910         Add a flag for whether to display insertion cursor and
7911         a function to set the flag.
7912
7913         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
7914         get_line_y() to get_line_yrange(), to be a bit more generally
7915         useful.
7916
7917 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
7918
7919         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
7920           do stop_navigating_submenu, to clear last timeout properly.
7921           Also in gtk_menu_motion_notify move ignore_enter above
7922           the conditional to make it always happen as suggested by Owen
7923
7924 2000-09-07  Tor Lillqvist  <tml@iki.fi>
7925
7926         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
7927
7928         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
7929         w32api headers.
7930
7931         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
7932         declarations.
7933
7934         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
7935         (gdk_win32_get_colormap): A line had been deleted by mistake.
7936
7937         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
7938         (gdk_event_translate): Handle more virtual keycodes to be able to
7939         generate GDK events for Control-comma, Control-period, etc.
7940
7941         * gtk/gtk.def: Add some missing entry points.
7942
7943 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
7944
7945         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
7946         Doc comment fixing. (Mostly non-matching parameter names.)
7947
7948         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
7949         comments a little to avoid looking like a doc comment.
7950
7951         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
7952         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
7953         conversions be changed to GError?)
7954
7955         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
7956         Move private #defines into .c file.
7957
7958         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
7959         order of argument addition, remove duplicates.
7960
7961         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
7962         parent class is FrameClass, not BinClass.
7963
7964         * gtk/gtk.h: Add gtkinvisible, which was missing.
7965         (It's occasionalyl useful for client apps, if seldom.)
7966
7967         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
7968         #define.
7969
7970 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
7971
7972         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
7973         coordinates when creating window, instead of GDK-space
7974         coordinates. (Avoid BadValue on too large windows.)
7975
7976 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
7977
7978         * configure.in (use_mmx_asm): Remove conftest* after use along the
7979         lines of AC_TRY_COMPILE.        
7980         
7981         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
7982         of g_dirname, which is deprecated.
7983         (gtk_rc_parse_any): Removed calls to
7984         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
7985
7986         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
7987         Removed calls to g_hash_table_{freeze,thaw}, as they are
7988         deprecated now.
7989
7990         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
7991         instead of g_basename.
7992         
7993 2000-09-04 Elliot Lee <sopwith@redhat.com>
7994         
7995         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
7996         ANSI warning.
7997
7998 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
7999
8000         * gtk/gtkwidget.h:  Add some documenting comments about 
8001           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
8002           just as owen said on irc.
8003
8004         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
8005           set HAS_DEFAULT.  Only set it if there isn't another window
8006           holding it (a focus window which RECEIVES_DEFAULT) and only unset
8007           it if the widget is not the focused window with RECEIVES_DEFAULT.
8008           This fixes weird double default bugs in dialogs which has things
8009           call gtk_window_set_default at times.
8010
8011 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
8012
8013         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
8014         Nils Barth and David Santiago to improve submenu
8015         navigation. The patch does this by creating a triangular
8016         region from the point where the pointer leaves the
8017         menu to the submenu.  While the pointer is in
8018         that region and a timeout has not expired, events 
8019         that would cause the active submenu to change are
8020         ignored.
8021
8022 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
8023
8024         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
8025         moving a toplevel window immediately after sizing it would
8026         result in it being sized back to the old size since 
8027         impl->width, impl->height aren't updated until we hear
8028         back from the server. There is still a (longstanding) bug
8029         here that gdk_window_get_size() will give the wrong size
8030         until we do hear back.
8031
8032 2000-08-31  Havoc Pennington  <hp@redhat.com>
8033
8034         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
8035         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
8036         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
8037         Rename GtkTextStyleValues to GtkTextAttributes
8038
8039 2000-08-31  Havoc Pennington  <hp@pobox.com>
8040
8041         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
8042         for rapid testing whether an iterator is the end iterator
8043         (gtk_text_btree_new): init end line cache
8044         (gtk_text_line_is_last): use fast cached line to 
8045         see if we're the last line.
8046         (get_last_line): use cached line here too, should 
8047         speed up some random unrelated code.
8048         
8049 2000-08-30  Havoc Pennington  <hp@pobox.com>
8050
8051         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
8052         signals.
8053
8054         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
8055         delete_text signals. This allows the signals to be used for
8056         implementing undo.
8057
8058         * gtk/gtktextbuffer.c: Change signal handler signatures; 
8059         provide "interactive" argument when emitting insert_text or
8060         delete_text signal.
8061         
8062 2000-08-30  Havoc Pennington  <hp@pobox.com>
8063
8064         * gtk/gtktextbuffer.c: Docs
8065
8066 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
8067
8068         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
8069         from switch statements, since Tor removed the enumeration
8070         value.
8071         
8072         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8073         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
8074
8075 2000-08-29 Elliot Lee <sopwith@redhat.com>
8076         * */*.h: Use G_GNUC_CONST.
8077
8078 2000-08-27  Havoc Pennington  <hp@pobox.com>
8079
8080         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
8081         minor indentation fixes, inserted some FIXME about stuff I
8082         realized was broken while documenting it.
8083         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
8084         GTK convention  
8085
8086 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
8087
8088         * gtk/testgtk.c (create_styles): Fix double free of
8089         font desc.
8090
8091 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
8092
8093         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
8094         
8095         * gtk/testgtk.c (create_styles): Add a test for modifying
8096         the style through gtk_widget_modify_*.
8097
8098         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
8099         a function to get the current modifier style.
8100
8101         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
8102         of the passed in GtkRcStyle instead of ref'ing it.
8103
8104         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
8105
8106 2000-08-20  Tor Lillqvist  <tml@iki.fi>
8107
8108         * gdk/gdkimage.h
8109         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
8110         shared memory image+pixmap GdkImage type, or
8111         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
8112         I am dropping that.
8113
8114         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
8115         actually call gtk_init_abi_check(), passing also
8116         sizeof(GtkWindow). Ditto for gtk_init_check(). 
8117
8118         * gtk/gtk.def
8119         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
8120         New functions, used to check that the GTK+-using code has been
8121         compiled using the correct compiler and switches. In particular,
8122         with gcc one has to use the -fnative-struct switch as GTK+ is
8123         compiled with that.
8124
8125 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
8126
8127         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
8128         ->prev fields when merging lists. (Found simultaneously
8129         by Pawel Salek and Jakub Jelinek)
8130
8131 2000-08-12  Tor Lillqvist  <tml@iki.fi>
8132
8133         * gdk/gdk.def
8134         * gtk/gtk.def: Add missing entries.
8135
8136         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
8137         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
8138
8139         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
8140         function. Dummy implementation at this point.
8141
8142         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
8143         rules. Undefine GTK_COMPILATION when compiling the test programs.
8144         
8145         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
8146
8147 2000-08-11  Tor Lillqvist  <tml@iki.fi>
8148
8149         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
8150         to convert back and forth from UTF-8 and the "system" (or "current
8151         locale") charset when necessary. Indentation/spacing cleanup.
8152
8153 2000-08-10  Havoc Pennington  <hp@redhat.com>
8154
8155         * Makefile.am (snapshot): Change the format of the snapshot
8156         version to match glib
8157
8158         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
8159         from EXTRA_DIST since it doesn't seem to exist
8160
8161 2000-08-10  Tor Lillqvist  <tml@iki.fi>
8162
8163         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
8164         version of the directory name (not the UTF-8 one) when building
8165         the path name to stat().
8166
8167 2000-08-03  Elliot Lee  <sopwith@redhat.com>
8168
8169         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
8170         PANGO_ATTR_SHAPE set.
8171
8172 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
8173
8174         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
8175         Peter Osterlund to simplify the code while keeping the
8176         functionality the same.
8177
8178 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
8179
8180         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
8181         is_viewable() test further inside the function, since removing the 
8182         window from the redraw list without clearing ->update_area
8183         was also very broken.
8184
8185 2000-08-02  Tor Lillqvist  <tml@iki.fi>
8186
8187         * configure.in: Check for <unistd.h>.
8188
8189 2000-08-01  Martin Baulig  <baulig@suse.de>
8190
8191         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
8192         to display the message that this is a development version of GTK+.
8193
8194 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
8195
8196         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
8197         was depending on widget->allocation instead of the width of text_area,
8198         which was incorrect for subclasses like GtkSpinButton.
8199
8200         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
8201         with width == 1 tests that should be width == -1.
8202
8203 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
8204
8205         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
8206         (broken, Elliot, every single window blank on X) custom code with call
8207         to gdk_window_is_viewable() which a) prevents code duplicate and
8208         b) works. 
8209
8210 2000-07-31  Elliot Lee  <sopwith@redhat.com>
8211
8212         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
8213         to get the GDK_PARENT_ROOT() macro to work.
8214         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
8215         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
8216         of, windows that aren't shown.
8217         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
8218         pointer grab stuff.
8219
8220 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
8221
8222         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
8223           s/gtk_main_iteration/g_main_iteration/
8224
8225           Did this already in change:
8226                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
8227           don't know how it got reverted.
8228
8229 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
8230
8231         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
8232         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
8233
8234         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
8235         not gdk_pixbuf.
8236
8237 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
8238
8239         * configure.in,po/{sp,sr}.po: Added Serbian files
8240
8241 2000-07-30  Tor Lillqvist  <tml@iki.fi>
8242
8243         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
8244
8245         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
8246         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
8247         GIOChannel implementation.
8248
8249         * gdk/win32/gdkinput.c
8250         * gdk/win32/gdkpango-win32.c: Update license name here, too.
8251
8252         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
8253         definition to match prototype.
8254
8255         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
8256
8257 2000-07-27  Elliot Lee  <sopwith@redhat.com>
8258
8259         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
8260         function, to allow handling image formats that cannot be detected
8261         by looking at content alone.
8262
8263 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
8264
8265         * docs/tutorial/*.gif *.jpg *.eps
8266           Update these to the same look-n-feel.
8267           Why does including images in DocBook suck so badly?
8268
8269 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
8270
8271         * gtk/gtktable.c: applied patch from Phil Thompson
8272         <phil@river-bank.demon.co.uk> that enables space settings for
8273         the last row/columns as well.
8274
8275 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
8276
8277         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
8278         updates the license headers to the GNU Lesser General Public License,
8279         as well as updating the copyright year to 2000.
8280
8281 2000-07-26  Robert Brady  <rwb197@zepler.org>
8282
8283         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
8284           and po/Makefile, was installing and looking for them under gtk20
8285           and gtk2 respectively.
8286
8287 2000-07-25  Havoc Pennington  <hp@redhat.com>
8288
8289         * gtk/testtext.c: Comment out some stuff that depends on the rest
8290         of my patches.
8291
8292 2000-07-25  Havoc Pennington  <hp@redhat.com>
8293
8294         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
8295         buffer
8296
8297 2000-07-25  Havoc Pennington  <hp@redhat.com>
8298
8299         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
8300         widget changes.
8301
8302         * gtk/gtktextview.h: To be consistent with usage of "line"
8303         throughout the API to mean "newline-terminated thingy", change
8304         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
8305         to MOVEMENT_LINE.
8306
8307         (GtkTextView): Add flags for default editability, and whether to
8308         show the cursor. Add functions to get/set that. Add 
8309
8310         (gtk_text_view_get_iter_location): new function
8311
8312         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
8313         gtktextlayout.h
8314         (g_convert): Add g_convert temporarily, will go in glib in a bit
8315         
8316         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
8317         GtkTextTagTableForeach instead of brokenly using GHFunc.
8318         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
8319
8320         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
8321         moved to public header.
8322
8323         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
8324         "invisible", since "elide" was a bad name.
8325         (gtk_text_tag_get_priority): Added
8326
8327         (GtkTextStyleValues): put this in public header, along with
8328         functions to use it.
8329
8330         * gtk/gtktextmarkprivate.h: Include more headers, since we no
8331         longer include gtktextbtree.h.
8332
8333         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
8334         gtk_text_mark_deleted
8335
8336         * gtk/gtktextlayout.h: Don't include the "really private" headers,
8337         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
8338         to make this possible. Now we only need to install
8339         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
8340         (However the Makefile.am isn't changed yet because of the
8341         logistics of merging gtk-hp-patches piecemeal)
8342
8343         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
8344         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
8345         gtk_text_iter_get_line is now used in the public API for a
8346         different purpose.
8347
8348         * gtk/gtktextiter.h: Clean up function names to be more
8349         consistent. Always call char offset "offset" and byte index
8350         "index". A "line" is always a line number. 
8351
8352         (gtk_text_iter_is_last): new function, more efficient than 
8353         the existing way to check
8354         (gtk_text_iter_is_first): new function, also more efficient
8355
8356         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
8357
8358         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
8359         gtk_text_iter_forward_char, etc.
8360
8361         (gtk_text_iter_forward_to_tag_toggle): Renamed from
8362         forward_find_tag_toggle, since this isn't a linear search
8363
8364         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
8365
8366         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
8367         New functions, search for a buffer substring.
8368
8369         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
8370         interactive and default editable (since we need to store that info
8371         until we receive the selection data).
8372
8373         Remove all the _at_char and at_line etc. versions of functions;
8374         only have iterator versions.
8375
8376         Add _interactive() versions of functions, that consider the
8377         editability of text. (FIXME add interactive flag to the 
8378         insert/delete signals per Darin's suggestion)
8379
8380         (gtk_text_buffer_get_tag_table): new function, demand-creates the
8381         tag table if necessary
8382
8383         Remove declaration of gtk_text_buffer_get_iter_from_string
8384
8385         (_gtk_text_buffer_get_btree): private/internal function, added.
8386         
8387
8388         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
8389         (gtk_text_line_is_last): new function
8390
8391 2000-07-25  Havoc Pennington  <hp@redhat.com>
8392
8393         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
8394         using GtkProgressBar. See Changes-2.0.txt for details.
8395
8396         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
8397         "pulse_step" which are the equivalent of
8398         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
8399         Implement new API.
8400         
8401         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
8402         (use_text_format) to mark whether text set on the progress bar is
8403         a format string. Deprecate entire GtkProgress interface.
8404
8405         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
8406         (gtk_progress_build_string): make this a no-op if use_text_format
8407         is FALSE
8408
8409         * docs/Changes-2.0.txt: Describe progress bar changes.
8410
8411 2000-07-25  Tor Lillqvist  <tml@iki.fi>
8412
8413         * Makefile.am: Include the build directory.
8414
8415         * configure.in: Generate build/Makefile, build/win32/Makefile,
8416         gdk/, gdk/win32/, and gtk/makefile.mingw.
8417
8418         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
8419         Add GETTEXT_PACKAGE.
8420         
8421         * gdk/gdk.def
8422         * gtk/gtk.def: Updates.
8423
8424         * gdk/gdkfont.h
8425         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
8426         need them any longer.
8427
8428         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
8429
8430         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
8431         PANGOWIN32_LIBS and gdk_pixbuf.
8432
8433         * gdk/win32: Compiles, but no doubt doesn't work at all.
8434
8435         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
8436
8437         * gdk/win32/gdkinput.c: New file, temporarily.
8438         
8439         * gdk/win32/gdkinput-win32.h: New file
8440
8441         * gdk/win32/gdkinputprivate.h: Remove.
8442
8443         * gdk/win32/gdkpango-win32.c: New file.
8444
8445         * gtk/makefile.mingw.in: New file
8446
8447         * gtk/makefile.cygwin: Removed
8448         
8449         * gtk/Makefile.am: Update accordingly.
8450
8451         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
8452         made externally visible.
8453
8454         * gtk/gtkmain.c: Use it.
8455         
8456         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
8457         is enough.
8458
8459         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
8460
8461 2000-07-24 Elliot Lee <sopwith@redhat.com>
8462         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
8463         individual backends already.
8464         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
8465         again. Yes, there really is a good reason for this, if you are using the gdkregion
8466         internals, and if you're not, why do you care?
8467         * gdk/gdkwindow.c: Fix inverted condition
8468         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
8469         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
8470         * gtk/gtkrange.c: Redraw trough when moving.
8471         * gtk/gtktypeutils.c: Fix warning by adding const cast.
8472         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
8473
8474 2000-07-23  Tor Lillqvist  <tml@iki.fi>
8475
8476         * configure.in: Check for mkstemp and sigsetjmp. Output
8477         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
8478
8479         More work on GDK for Win32. Still in an intermediate state.
8480
8481         * gdk/makefile.cygwin
8482         * gdk/win32/makefile.cygwin: Removed.
8483         
8484         * gdk/makefile.mingw.in
8485         * gdk/win32/makefile.mingw.in: New files.
8486
8487         * gdk/Makefile.am
8488         * gdk/win32/Makefile.am: Generate and distribute them.
8489
8490         * gdk/win32/gdkwindow-win32.h
8491         * gdk/win32/gdkdrawable-win32.h
8492         * gdk/win32/gdkpixmap-win32.h: New files.
8493
8494         * gdk/win32/gdkcolor-win32.c
8495         * gdk/win32/gdkcursor-win32.c
8496         * gdk/win32/gdkdrawable-win32.c
8497         * gdk/win32/gdkgc-win32.c
8498         * gdk/win32/gdkimage-win32.c
8499         * gdk/win32/gdkprivate-win32.h
8500         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
8501         Rename fields and variables called xcursor, xid, etc (these names
8502         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
8503
8504 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
8505
8506         * gtk/gtkentry.[ch]: Fix some problems with vertical
8507         alignment.
8508
8509         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
8510         char/byte confusion.
8511
8512 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
8513
8514         * gtk/gtktextview.c (changed_handler): Fix bug where
8515         redraw wasn't being done properly when height of
8516         dirty region changed.
8517
8518         * demos/Makefile.am: Remove various references to
8519         -lgmodule
8520
8521 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
8522
8523         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
8524         PangoAttrShape to reserve space for pixmaps, add 
8525         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
8526         in the display functions.
8527         
8528         * gtk/testgtk.c (create_layout): Set some more exotic
8529         scrolled window options
8530
8531         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
8532         Add function to set the shadow type of a window, to allow
8533         putting a shadow around widgets such as GtkLayout or GnomeCanvas
8534         which don't draw their own frame.
8535
8536 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
8537
8538         * docs/tutorial/package-db-tutorial.sh: New file for
8539           packaging DocBook format tutorial
8540
8541 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
8542
8543         * docs/tutorial/gtk-tut.sgml: Minor updates
8544
8545         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
8546
8547 2000-07-19  Tor Lillqvist  <tml@iki.fi>
8548
8549         * gtk/gtksignal.c: Fix C++ comment.
8550
8551         * gtk/gtkimmulticontext.c
8552         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
8553         don't return value from void functions.
8554
8555         * gtk/gtk.def: Add gtk_rc_style_unref.
8556
8557 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
8558
8559         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
8560         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
8561         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
8562         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
8563         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
8564         gtk/gtktypeutils.h: Include files outside of the extern "C"
8565         block. Makes some C++ compiler happy. Reported by Denis Vakatov
8566         <vakatov@peony.nlm.nih.gov>.
8567
8568 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
8569
8570         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
8571           Completes first pass. Hurrah!
8572
8573 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
8574
8575         * docs/tutorial/gtk-tut.sgml: More clean ups.
8576
8577 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
8578
8579         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
8580         paint the background of the text area which was accidentally
8581         removed at some point.
8582
8583         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
8584           
8585          - Move most of the functionality from the theme vtable
8586            into GtkRcStyleClass and GtkStyleClass. The moved
8587            vtable functions were changed a bit in the move to
8588            work better in their new home.
8589
8590          - Get rid of the engine and engine_data fields from
8591            GtkRcStyle and GtkStyle; instead the theme
8592            engine derives theme-specific subclasses of GtkRcStyle
8593            and GtkStyle
8594
8595          - Add extra dlsym() found entry point to themes,
8596            theme_create_rc_style().
8597
8598         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
8599         in gtk_style_real_copy.
8600
8601         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
8602         to register a type associated with an engine. (The engine
8603         won't be unloaded as there is an instance of the type.)
8604
8605
8606 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
8607
8608         * docs/tutorial/gtk-tut.sgml: Clean ups.
8609
8610 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
8611
8612         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
8613           of cleaning up to do.
8614
8615 2000-07-15  Tor Lillqvist  <tml@iki.fi>
8616
8617         * gdk/testgdk.c: New file, quick hack to test backends for
8618         pixel-by-pixel correctness of the most simple graphic operations.
8619
8620 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
8621
8622         * Really release 1.3.1
8623         
8624         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
8625         include structure.
8626
8627 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
8628
8629         * Released 1.3.1
8630
8631 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
8632
8633         * gtk/gtktextlayout.c: use FALSE for size_only most
8634         of the time when calling gtk_text_layout_get_line_display()
8635         to avoid causing double reshapes when a redraw follows
8636         immediately after.
8637
8638 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
8639
8640         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
8641         appropriate region and gdk_window_process_updates() so trough
8642         updating doesn't lag behind the window being scrolled.
8643
8644         * gdk/gdkgc.c: Make parent_class pointer static.
8645          
8646 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
8647
8648         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
8649         include <string.h>.
8650          
8651         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
8652         cut-and-paste error in computing memory offset for 4 channels.
8653
8654 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
8655
8656         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
8657         gtk_rc_append_default_pixmap_path(), since it wasn't
8658         adding an interesting path and we don't have a meaningful
8659         default for this value.
8660
8661 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
8662
8663         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
8664         gtk-config to gtk-config-2.0 move gtk_.m4 to
8665         gtk-2.0.m4
8666
8667         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8668         gdk/Makefile.am demos/Makefile.am: Change 
8669         library names to libgtk-1.3.la, etc, so that we
8670         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
8671
8672         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
8673         gdk/Makefile.am gdk/x11/Makfile.am
8674         Move include files into /usr/include/gtk-2.0, 
8675         /usr/lib/gtk-2.0/include/
8676          
8677         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
8678         gtk/gtkintl.h: Change package for gettext from 
8679         gtk+ to gtk20. Put hack in autogen.sh to modify
8680         po/Makefile.in.in after gettextize to make this
8681         possible.
8682
8683         * gtk+.spec: Some updates, not tested.
8684
8685         * gdk-pixbuf/Makefile.am: Move loaders into
8686         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
8687
8688         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
8689         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
8690         to THEMENAME/gtk-2.0/. Move engine directory  to
8691         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
8692         
8693 2000-07-12  Tor Lillqvist  <tml@iki.fi>
8694
8695         Win32 changes, still doesn't build though.
8696
8697         * gdk/makefile.cygwin
8698         * gdk/win32/makefile.cygwin
8699         * gtk/makefile.cygwin: Updates.
8700
8701         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
8702         default values for fg and bg pixel as X11 does (0 and 1), not
8703         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
8704         Use 0 for pen width by default (treated as 1 anyway later, but for
8705         apps that might check the value in the GdkGC).
8706         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
8707         interface to gdk_gc_predraw and _postdraw.
8708
8709         * gdk/win32/gdkwin32.h
8710         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
8711
8712         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
8713         extraneous semicolon.
8714
8715         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
8716
8717         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
8718         not the Win32 bitspixel value.
8719
8720         * gdk/win32/gdkcc-win32.c:
8721         * gdk/win32/gdkcolor-win32.c 
8722         * gdk/win32/gdkprivate-win32.h
8723         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
8724         GDK object structure.
8725
8726 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
8727
8728         * docs/tutorial/gtk_tut_12.es.sgml (name): 
8729         * docs/tutorial/gtk_tut_it.sgml (name): 
8730         * docs/tutorial/gtk_tut_fr.sgml (name): 
8731         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
8732         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
8733
8734 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
8735
8736         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
8737           small changes.
8738
8739 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
8740
8741         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
8742         a bug here, never been here and never fixed anything ;(
8743         (don't segfault if tree->root_tree is NULL, which happens prior
8744         to widget realization, but puke instead).
8745
8746 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
8747
8748         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
8749         add the necessary tokens.
8750
8751         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
8752         (gtk_rc_style_to_style): copy thicknesses.
8753         (gtk_rc_init_style): apply thicknesses.
8754         (gtk_rc_parse_style): parse xthickness and ythickness.
8755
8756         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
8757
8758         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
8759         (gdk_window_new): 
8760         (_gdk_windowing_window_init): 
8761         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
8762         (gdk_pixmap_create_from_data): 
8763         (gdk_bitmap_create_from_data): 
8764         (gdk_pixmap_new): 
8765         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
8766         (gdk_image_new): 
8767         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
8768         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
8769         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
8770         (gdk_colormap_get_system): 
8771         (gdk_colormap_new): 
8772         * gdk/gdkwindow.c (gdk_window_init): 
8773         * gtk/gtkstyle.c (gtk_style_new):
8774         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
8775         * gdk/gdkpixmap.c (gdk_pixmap_init): 
8776         * gtk/gtkrc.c (gtk_rc_style_new):
8777         use g_object_new() instead of g_type_create_instance() which
8778         is a private function for fundamental type implementations.
8779
8780 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
8781
8782         * configure.in: Add check for db2html
8783
8784 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
8785
8786         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
8787         hack to set glib_debug_objects based on gtk_debug_flags.
8788
8789 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
8790
8791         * INSTALL.in: Update the Prerequisites section.
8792
8793         * Makefile.am demos/Makefile.am docs/Makefile.am
8794         docs/tutorial/Makefile.am gdk/x11/Makefile.am
8795         gdk/linux-fb/Makefile.am: Dist fixes
8796
8797 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
8798
8799         * NEWS: 10,000 foot view of 1.3.1 changes.
8800
8801 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
8802
8803         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
8804         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
8805         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
8806         gdk/x11/gdkmain-x11.c: 
8807
8808         Patch from George Lebl to add a GdkGrabStatus enumeration to use
8809         as a return value of gdk_*_grab(). Previously, we just
8810         returned the X11 values directly.
8811
8812 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
8813
8814         * gdk/x11/Makefile.am: Patch from George Lebl to 
8815         install all the headers in the right place.
8816
8817 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
8818
8819         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
8820           initial conversion to DocBook.
8821
8822 2000-07-04  Tor Lillqvist  <tml@iki.fi>
8823
8824         * README.win32: Improve a bit.
8825
8826         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
8827         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
8828         Alt+0nnn on the numpad (used to enter characters by numeric code
8829         from current DOS or ANSI codepage) working correctly, as in other
8830         Windows apps.
8831
8832         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
8833         same argument validity tests as in X11 version.
8834         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
8835
8836         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
8837         definitions in case missing from headers.
8838
8839         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
8840         destroy the window-specific cursor.
8841         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
8842         calling GetModuleHandle(NULL).
8843         (gdk_window_set_cursor): Reworked to always copy the passed cursor
8844         with CopyCursor before setting it as the window-specific
8845         cursor. It is OK for the caller to destroy the GdkCursor (and thus
8846         also its Windows cursor) after calling this function. Destroy any
8847         previous window-specific cursor.
8848
8849 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
8850
8851         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
8852         font charset is iso8859-1, not iso-8859-1.
8853
8854 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
8855
8856         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
8857         Use g_get_charset() instead of g_get_codeset().
8858
8859         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
8860         Comment out some strdup'ing functions to keep timj
8861         happy until we finish fighting this out.
8862
8863 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
8864
8865         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
8866         <= width or height.
8867
8868         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
8869         from 1.2 for parent/child states.
8870
8871         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
8872         of typos.
8873
8874         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
8875         event structures, replace with a generic axes field. Replace 
8876         deviceid/sourec with GdkDevice *device.
8877
8878         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
8879         to extract particular axis use value from event. (Also
8880         can be used for normal X/Y.)
8881
8882         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
8883         allow for arbitrary number of axes, namespace everything
8884         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
8885         everywhere.
8886
8887         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
8888         Get rid of the gdk_input_vtable setup if favor of simply
8889         defining the functions in gdkinput-none/gxi/xfree.c in
8890         a similar fashion to the way that the port structure is 
8891         done.
8892
8893         * gtk/gtkdnd.c: Fix fields of synthesized button press event
8894         for new event structures. 
8895
8896         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
8897         new device interfaces.
8898
8899 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
8900
8901         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
8902         set the initial text.
8903
8904         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
8905         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
8906         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
8907         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
8908
8909         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8910         pango_layout_set_font_description to simplify.
8911
8912 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
8913
8914         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
8915         pango_layout_set_font_description to simplify.
8916
8917 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
8918
8919         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
8920         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
8921         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
8922
8923         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
8924         PANGO_PIXELS() macro.
8925
8926 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
8927
8928         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
8929         that returns a PangoContext owned by the widget and updated to
8930         match future changes in the widget. Also, make 
8931         gtk_widget_create_pango_layout() use this context. If we ever
8932         add a ::changed signal to PangoContext, this will make things
8933         much more convenient. 
8934
8935         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
8936         in the appropriate places instead of destroying the layouts and
8937         creating new ones.
8938
8939         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
8940         in a few strategic places.
8941
8942 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
8943
8944         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
8945         gtk_widget_size_request() on reparented child, if one. Otherwise,
8946         queue_resize() on the child never results in it getting size-requested
8947         at all.
8948
8949         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
8950         in option menus, so that (with luck) people won't copy it into
8951         their apps in the future.
8952
8953         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
8954         to gtk_option_menu_calc_size. This isn't perfect, but should fix
8955         a lot of problems with changing the size of the menu's menu
8956         items after adding it to the option menu.
8957
8958         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
8959
8960         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
8961         the text direction for a widget changes.
8962
8963         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
8964         ::direction_changed to get rid of various hacks.
8965
8966 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
8967
8968         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
8969         name.
8970
8971 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
8972
8973         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
8974         flag to the structure. Do not call XFreePixmap on pixmaps created
8975         by gdk_pixmap_foreign_new().
8976
8977 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
8978
8979         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
8980         value using GdkRGB functionality given GdkColormap and GdkColor.
8981         (name not final, waiting for inspiration.)
8982         
8983         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
8984         set the foreground/background of a GC using the GC's colormap
8985         and GdkRGB. (name not final, waiting for inspiration.)
8986
8987         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
8988         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
8989
8990         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
8991         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
8992         purely a function of the corresponding colormap. Make
8993         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
8994
8995         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
8996         gdk_pixbuf_*create_from_xpm_* in terms of
8997         gdk_pixbuf_new_from_xpm_data(), move into platform independent
8998         code.
8999
9000         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
9001         advantage of the new draw_rgb_32_image_dithalign.
9002
9003         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
9004
9005         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
9006         on each created GC.
9007
9008         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
9009
9010         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
9011         which we initialize from the drawable when the GC is created,
9012         if the drawable has a colormap.
9013
9014         * gdk/x11/gdkgc-x11.c: include string.h for memset.
9015
9016         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
9017
9018         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
9019
9020 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
9021
9022         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
9023         actually returning expose events, make sure to set
9024         the count field properly.
9025
9026         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
9027         accidentally reintroced bug which always cleared
9028         the graphics_exposures value. 
9029
9030 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
9031
9032         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
9033
9034 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
9035
9036         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
9037
9038 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
9039
9040         * docs/faq/gtk-faq.sgml: Start of Section 6.
9041
9042 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
9043
9044         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
9045         
9046         (Fixes problem with drawing childless frames. Pointed out
9047         by and a first patch from Anders)
9048         
9049         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
9050         compute a child_allocation, even if we don't have a child.
9051
9052         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
9053         Always chain to the parent's impl, even if we don't have a child.
9054
9055 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9056
9057         * gdk/gdkrgb.c: If possible, create only a single shm segment and
9058         use multiple parts of it instead of creating a bunch of separate
9059         segments, since the maximum number of segments per system is not
9060         large. (This might be worth backporting to GTK+-1.2.x if we make a
9061         new release )
9062
9063         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
9064         structure in preparation for per-colormap GdkRGB.
9065
9066         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
9067         to False when we get EINVAL from shmget so that the caller of
9068         gdk_image_new can retry with a smaller segment size.
9069
9070 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
9071
9072         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
9073
9074 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
9075
9076         * configure.in: make the current version number 1.3.1 (binary age 0,
9077         interface age 0).
9078         
9079         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
9080         gtkcompat.h is all we want.
9081
9082         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
9083         GLib primitive types. fixed g_type_register_fundamental() argument
9084         ordering.
9085
9086         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
9087         compiles.
9088
9089         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
9090         object code cleanup, comment trigraph fixes, etc...
9091
9092 2000-06-23  Havoc Pennington  <hp@redhat.com>
9093
9094         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
9095         instead of making up a bogus name for first_para_mark
9096
9097         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
9098         0 as a context ID
9099
9100 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
9101
9102         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
9103
9104 2000-06-21  Havoc Pennington  <hp@pobox.com>
9105
9106         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
9107         we didn't check window->bg_pixmap != GDK_NO_BG.
9108
9109         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
9110         gdk-pixbuf
9111
9112 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
9113
9114         * docs/faq/gtk-faq.sgm: Move file to here.
9115           TODO: Update Makfile.am 
9116
9117 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
9118
9119         * docs/gtk-faq.sgm: Add Section 2
9120
9121 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
9122
9123         * docs/gtk-faq.sgm: New file. Start of DocBook
9124           version of the FAQ.
9125
9126 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
9127
9128         * configure.in (GDK_PIXBUF_MAJOR): Define version
9129         numbers for GDK_PIXBUF_*, as they get substituted
9130         into a header file. Need to consider versioning
9131         for gdk-pixbuf more carefully later.
9132
9133 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
9134
9135         Work with srcdir != builddir.   
9136         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
9137         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
9138         * demos/testpixbuf.c: Likewise.
9139         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
9140         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
9141         <gdk/x11/gdkx.h>.
9142         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
9143         "gdk-pixbuf.h".
9144         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
9145
9146 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
9147
9148         * TODO.xml: Change 1.4 version numbers to 2.0.
9149
9150 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
9151
9152         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
9153         fixups to GTK+ standard.
9154
9155 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
9156
9157         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
9158         gdk-pixbuf.
9159
9160         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
9161         fixups for GObject.
9162
9163         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
9164         gdk-pixbuf with GDK dependencies moved into GDK.
9165         
9166         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
9167         move gdk-pixbuf-loader here until GObject has signals.
9168
9169         * demos/: New directory of demos. Move demos from
9170         gdk-pixbuf here.
9171
9172         * demos/pixbuf-init.c: Small bit of code to check for
9173         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
9174         set GDK_PIXBUF_MODULEDIR appropriately.
9175
9176         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
9177         define which no longer makes sense.
9178
9179 2000-06-21  Havoc Pennington  <hp@redhat.com>
9180
9181         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
9182         gtk_get_default_language
9183
9184         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
9185         new function to get the default language
9186
9187         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
9188         s/gtk_text_view_style_values/gtk_text_style_values/
9189
9190         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
9191         Add a "language" field to tags.
9192
9193         (gtk_text_tag_set_arg): Fix bug in setting
9194         "bg_full_height_set" tag.
9195
9196 2000-06-21  Havoc Pennington  <hp@redhat.com>
9197
9198         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
9199         in the interfaces
9200
9201         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
9202         stuff instead when possible.
9203
9204         * gtk/gtktexttypes.h: Delete some unused constants
9205
9206         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
9207         testtextbuffer.c: use glib instead of custom unicode routines
9208
9209 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
9210
9211         * docs/es/: Removed mistakenly added generated sgml
9212
9213         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
9214         Remove outdated info files.
9215
9216         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
9217         Moved tutorial files into subdir
9218
9219         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
9220         subdir.
9221
9222         * docs/man/gtk_button.pod: Remove. (contents will be
9223         integrated into gtk-reference button page.)
9224
9225         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
9226         docs/faq/Makefile.am: Adjust for new organization
9227
9228 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
9229
9230         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
9231         not $(MKINSTALLDIRS)
9232
9233 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
9234
9235         * gtk/testgtk.c (create_text): Finish the job Elliot started
9236         of removing font setting test for text widget. (Since text widget
9237         and GdkFont are not deprecated, and cause portability problems.)
9238
9239 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
9240
9241         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
9242         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
9243         Remove use of libunicode in favor of new GLib functions.
9244
9245         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
9246         nano-x, framebuffer. The X11 include is just a hack until we get
9247         the necessary functions in gdkcolor.h, so there is no reason to
9248         add other includes of platforms.
9249
9250         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
9251         window bigger than the screen change.
9252
9253         * gtk/testgtk.c: Revert some random changes from Elliot
9254         that had no particular point and were causing testgtkrc
9255         not to function correctly.
9256         
9257         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
9258         because GdkSegment and GdkRegionBox have the same fields,
9259         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
9260         results in clearer code.
9261
9262         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
9263         gdk_input_translate_coordinates): Fix missed GdkObjectification
9264
9265 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9266
9267         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
9268         * gtk/gtk{plug,socket}.h: Missed commits from previous.
9269
9270 2000-06-20  Havoc Pennington  <hp@redhat.com>
9271
9272         * modules/linux-fb/Makefile.am: Make this compile
9273         without framebuffer enabled
9274
9275         * gdk/linux-fb/Makefile.am: Add conditional to not build
9276         framebuffer unless specified in configure
9277
9278         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
9279         the size of the target instead of source if -1 was passed for
9280         width/height
9281
9282         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
9283         width/height confusion.
9284
9285 2000-06-19  Havoc Pennington  <hp@redhat.com>
9286
9287         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
9288         GDK_DRAWABLE_XID. In the future, we probably want to make it
9289         faster with G_DISABLE_CHECKS turned on.
9290
9291 2000-06-14  Havoc Pennington  <hp@redhat.com>
9292
9293         * gdk/Makefile.am: add gdkpixmap.c
9294
9295         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
9296         s/gdk_image_init/_gdk_windowing_image_init
9297
9298         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
9299         ref/unref
9300
9301         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
9302
9303         * gdk/gdkcompat.h: remove GdkWindowType compat, since
9304         GdkWindowType is now non-deprecated; 
9305         change gdk_window_get_type() compat to be
9306         gdk_window_get_window_type().
9307
9308         * gdk/gdkdnd.h: make GdkDragContext a GObject.
9309
9310         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
9311         virtual GObject. Make all functions call into the vtable.
9312         Move gdk_image_put() guts in here. Remove GdkDrawableType
9313         and gdk_drawable_get_type(), these are now GdkWindow-specific.
9314         draw_image, get_depth, get_size, set_colormap, get_colormap,
9315         get_visual added to the vtable.
9316         
9317         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
9318         GObject. Virtualize everything. 
9319         (gdk_gc_new_with_values): remove check for destroyed window,
9320         because now GdkWindow::create_gc will check this.
9321         (gdk_gc_set_values): New function to set GC values, this 
9322         was already implemented but wasn't in the header
9323
9324         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
9325
9326         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
9327         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
9328         remove _gdk_window_class; add _gdk_window_impl_get_type() and
9329         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
9330         _gdk_windowing_window_init, rename gdk_image_init to
9331         _gdk_windowing_image_init.
9332         
9333         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
9334         (gdk_draw_layout): Remove check for destroyed window, 
9335         because all the drawable methods already check it.
9336         
9337         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
9338         Add gdkpixmap.c which contains implementation of GdkDrawable
9339         virtual table (by chaining to a platform-specific implementation
9340         object).
9341         
9342         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
9343         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
9344         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
9345         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
9346         GdkColormapPrivate. 
9347
9348         * gdk/gdktypes.h: #include <glib-object.h>
9349
9350         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
9351         Move most functionality to platform-specific implementation
9352         object. GdkWindow itself now handles the backing store, then
9353         chains to the platform-specific implementation.
9354         (gdk_window_get_window_type): return GdkWindowType of the window.
9355         (gdk_window_peek_children): New routine, returns the children of 
9356         a GdkWindow
9357         (gdk_window_get_children): Was in X11-specific code and did 
9358         XQueryTree. Changed to simply return a copy of window->children; 
9359         so it can go in cross-platform code.
9360         
9361         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
9362
9363         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
9364         GdkColormap; just changed to use the new private data instead
9365         of casting to GdkColormapPrivate.
9366
9367         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
9368         gdk_cursor_new().
9369
9370         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
9371         (private data member in the GObject). 
9372         (xdnd_manager_source_filter): Function had broken 
9373         error handling, fix it (use gdk_error_trap_push).
9374
9375         * gdk/x11/gdkdrawable-x11.c: This file now implements
9376         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
9377         base class is purely for the convenience of the X port,
9378         and not part of the interface to cross-platform GDK.
9379
9380         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
9381         
9382         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
9383         specific to X, and returned by the create_gc virtual method
9384         of GdkDrawableImplX11. 
9385         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
9386         rather than gchar, this was also changed in the GdkGC vtable.
9387         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
9388         mask is 0, return immediately, instead of checking every flag.
9389         This is faster, and keeps us from segfaulting if values is NULL
9390         and the mask contains some nonzero flags.
9391
9392         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
9393         GdkWindow.
9394
9395         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
9396         GdkWindowPrivate is gone.
9397
9398         * gdk/x11/gdkim-x11.c: rename things that got renamed.
9399
9400         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
9401         remove the image_put stuff that got transferred to GdkDrawable.
9402         
9403         * gdk/x11/gdkinput.c: renamings
9404
9405         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
9406
9407         * gdk/x11/gdkpixmap-x11.c: GObject conversion
9408
9409         * gdk/x11/gdkprivate-x11.h: indentation fixes
9410
9411         * gdk/x11/gdkproperty-x11.c: renamings
9412
9413         * gdk/x11/gdkselection-x11.c: renamings
9414
9415         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
9416         implements the platform-specific "impl" object.
9417         Moved gdk_window_get_children to gdk/gdkwindow.c
9418
9419         * gdk/x11/gdkx.h: Remove all the private structs and private datas
9420         that no longer exist. Add declaration of GdkGCX11 object here.
9421         Fix all the macros to still work. 
9422
9423         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
9424         GdkDragContext from the boxed types since they are now GObjects.
9425
9426         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
9427         moved xthickness/ythickness into the instance. GtkStyleClass
9428         functions are now in the standard vtable for GtkStyle, so you have
9429         to create a GObject subclass to write a theme engine.
9430         (gtk_style_copy): fixed a leaked PangoFontDescription
9431         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
9432         can be the standard GObject function.
9433         
9434         * Throughout GTK:
9435         s/style->klass->[xy]thickness/style->[xy]thickness
9436         s/pango_layout_unref/g_object_unref/
9437
9438         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
9439         
9440         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
9441         accessing GDK internals.
9442
9443         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
9444         accessing GDK internals.
9445
9446 2000-06-18  Elliot Lee  <sopwith@redhat.com>
9447
9448         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
9449
9450         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
9451         problem by calculating event position relative to the trough
9452         rather than the slider.
9453         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
9454
9455         * gdk/gdkgc.h: Add GDK_NOR.
9456
9457         * configure.in, Makefile.am: Add modules top level dir
9458         * configure.in: Only use pangox library if building x11 target.
9459         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
9460
9461 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9462
9463         * gtk/gtkcolorsel.c: Change private class member to be named
9464         private_data throughout the file.
9465
9466         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
9467         private_data to avoid clashing with keyword.
9468
9469 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
9470
9471         * gdk/gdkdnd.h: Add comment to remove warning.
9472
9473 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
9474
9475         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
9476         Byelorussian language; changed the Makefile and file names 
9477         to reflect that.
9478
9479 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
9480
9481         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
9482         rather than gdk_window_hide; this makes things work
9483         correctly if the window is programmatically hidden while
9484         iconified.
9485
9486 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
9487
9488         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
9489         cut and paste typo where wrong pixmap was being
9490         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
9491
9492 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
9493
9494         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
9495         Add helper function to compute format / bytes 
9496         relationship. Use in a couple places to fix up
9497         errors which assume 8 * format.
9498
9499         * gtk/gtkselection.c (gtk_selection_request): Use 32
9500         rather than 8 * sizeof (GdkAtom), to work correctly
9501         on Alpha.
9502
9503 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
9504
9505         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
9506         libgtk.la
9507         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
9508         versions
9509
9510         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
9511         checking macros return NULL since the function has a return value.
9512
9513 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
9514
9515         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
9516         GTK+ from building at all.
9517
9518         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
9519
9520 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
9521
9522         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
9523         gtk/Makefile.am: make it possible to configure gtk for different
9524         targets on the same platform. The library name is now 
9525         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
9526         flag. Only the x11 target compiles right now.
9527         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
9528         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
9529         * gdk/nanox/gdk*generic*: delete generic region code.
9530         * gdk/linux-fb/gdk*generic*: delete generic region code.
9531         * README.nanox: update information.
9532         
9533 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
9534
9535         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
9536         prepend not append. (Pointed out by Brett Hall.)
9537
9538 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
9539
9540         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
9541
9542 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
9543
9544         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
9545         need this later, and this makes sure that the atexit for
9546         glib gets called after that for GDK, so atexits are
9547         properly ordered for object leak checking.
9548
9549         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
9550
9551         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
9552         pango_x_shutdown_display()
9553
9554         * gtk/simple.c (main): Close window on destroy.
9555
9556 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
9557
9558         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
9559         to treat initial creation different from setting with 
9560         regards to the graphics-exposures parameter, so add a parameter
9561         indicating whether this is initial or not.
9562
9563 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
9564
9565         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
9566         to sort of work by adding an extra return_exposes arg
9567         to gdk_event_translate() - it might be better to simply
9568         deprecate the function altogether and force people to rewrite
9569         without it. gdk_window_scroll() handles most of it, and where
9570         gdk_window_scroll() doesn't work, simply redrawing more does.
9571
9572         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
9573         assertion.
9574
9575         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
9576
9577         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
9578         bunch of pretty much useless /* Print debugging info */ comments 
9579         which had drifted away from the code they were commenting.
9580
9581 2000-06-02  Havoc Pennington  <hp@pobox.com>
9582
9583         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
9584         is in working order.
9585         
9586         * gtk/testtext.c: Change to reflect anonymous mark API
9587
9588         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
9589
9590         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
9591         field, which was unused.
9592
9593         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
9594         saves some typing.
9595
9596         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
9597
9598         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
9599         flag on the insertion point and selection bound
9600
9601         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
9602         make mark-manipulation functions take a GtkTextMark* instead of a
9603         mark name.
9604         
9605         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
9606         GtkTextMarkBody; will be used to detect attempts to delete
9607         the permanent marks (insert and selection bound)
9608
9609         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
9610
9611 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
9612
9613         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
9614         flag to on.
9615
9616         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
9617         Honor DOUBLE_BUFFRED_FLAG
9618
9619         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
9620         function to set the DOUBLE_BUFFERED flag.
9621
9622         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
9623         or not exposes done on the widget should be double-buffered.
9624
9625         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
9626         to be what would be expected. (Fixes problem with a
9627         g_return_if_fail() validating a TextDirection enumeration)
9628
9629 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
9630
9631         * gtk/gtkwidget.c: Remove all references to 
9632         offscreen flag which was no longer used.
9633
9634         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
9635
9636         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
9637         for non-null label_widget->parent.
9638
9639         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
9640         which no longer was used.
9641
9642         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
9643
9644         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
9645         for null arguments.
9646
9647         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
9648         check for destroyed windows.
9649
9650 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
9651
9652         * gtk/gtkimmulticontext.c: Add a finalize method and unref
9653         the slave context there.
9654
9655         * gtk/gtkinvisible.[ch]: Make reference counting behavior
9656         identical to GtkWindow.
9657
9658 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
9659
9660         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
9661         pangox to here, so we can write them independent of rendering
9662         system, using GDK primitives.
9663
9664         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
9665         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
9666         since we have a rendering-system independent implementation in
9667         terms of draw_glyphs().
9668         
9669         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
9670         function to render a single line.
9671
9672         * gdk/x11/gdkpango.c: Move the guts of this file mostly
9673         into ../gdkpango.c, which simplifies things, since we
9674         don't have to deal with raw X gc's.
9675
9676 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
9677
9678         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
9679         get the logical attributes for a given GtkTextLine.
9680
9681 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
9682
9683         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
9684         g_locale_get_codeset() to g_get_codeset() change.
9685
9686 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
9687
9688         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
9689         descriptions.
9690
9691         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
9692         the entry.
9693
9694         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
9695         redoing (vastly simplifying) for Pango. Still needs quite
9696         a bit of work. (Size selection is currently poor. List of 
9697         predefined sizes is not a good idea, since all of these
9698         sizes won't necessarily be distinct.)
9699
9700 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
9701
9702         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
9703         CODESET results for LANG=C.
9704
9705 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
9706
9707         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
9708         which takes a stringized pango font description;
9709         ignore the older 'font' and 'fontset' declarations.
9710
9711         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
9712         field with a GdkFont derived via gdk_font_from_description(),
9713         for compatibility. (Should we just remove it entirely?
9714         Probably too much compatibility breakage, but people
9715         should be migrating to the new Pango stuff as quickly
9716         as possible.)
9717
9718 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
9719
9720         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
9721
9722 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
9723
9724         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
9725         redoing; there are some bugs in size allocation right
9726         now, the semi-existant distinction between header / day
9727         fonts was removed, but, with Pango, could actually
9728         be made functional in a nice way.
9729         
9730         * gtk/testcalender: Move calender from examples into this
9731         directory as a test program. (We really need to restrcture
9732         testgtk into a whole directory full of tests for every
9733         widget or functionality group, separated into multiple .c
9734         files.)
9735
9736 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
9737
9738         * gtk/testgtk.c (file_exists): Fix stupid typo that
9739         was keeping RC file from being loaded.
9740
9741         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
9742         RC file font code.
9743
9744 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
9745
9746         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
9747         Add function to load a GdkFont from a PangoFontDescription.
9748
9749 2000-05-29  Tor Lillqvist  <tml@iki.fi>
9750
9751         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
9752         variable should be of type GdkEventPrivate.
9753
9754 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
9755
9756         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
9757         to have any widget for the label, use a GtkLabel widget
9758         to display the text. (Based partially on a patch from
9759         Anders Carlson.)
9760
9761         (Quite a bit of code reorganization - strip 90% of the
9762         guts out of gtkaspectframe and add a single virtual
9763         func to GtkFrameClass - compute_child_allocation.)
9764
9765 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
9766
9767         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
9768         (Removed clist->row_center_offset field because caching
9769         it wasn't saving time or code, added private function
9770         _gtk_clist_create_cell_layout()).
9771
9772 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
9773
9774         * gtk/gtkaccellabel.c: Pangoized.
9775
9776         * gtk/[hv]ruler.c: Pangoized
9777
9778 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
9779
9780         * gtk/gtkfilesel.c (gtk_file_selection_init):
9781         Use gtk_clist_set_column_auto_resize() to remove need
9782         need for manual column width computations.
9783
9784 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
9785
9786         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
9787         ensuring Pango correctness, and considerably simplifying the
9788         code.
9789         
9790         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
9791
9792         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
9793         getting of numbers of lines.
9794
9795         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
9796         to the actual requested width of the lable, not to the wrap
9797         width we set.
9798
9799         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
9800
9801         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
9802           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
9803
9804         * gtk/gtktextview.c: Fix structure inheritance.
9805
9806         * gtk/gtkprogressbar.c: Pangoize.
9807
9808 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
9809
9810         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
9811         in a function.
9812
9813         * gtk/gtktextlayout.c (find_display_line_above): Fixed
9814         bug with computing line tops.
9815
9816         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
9817
9818 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
9819
9820         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
9821         and y_offset coordinates to do what we need now. (The offset between
9822         buffer and layout coordinates has been reintroduced, but is a 
9823         bit different than before.)
9824
9825         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
9826         handle the adjustments ourselves, and scroll as necessary using
9827         the new gdk_window_scroll().
9828         
9829         The advantage of this is that when we are incrementally revalidating,
9830         we are essentially rearranging things around the visible portion
9831         of the screen. With the old setup, the visible portion of the
9832         screen was moved around in the layout, so scrolling and redrawing
9833         to track that caused jumping of the display. Since we now
9834         control the scrolling ourselves, we can suppress this and
9835         only redraw when things actually change.
9836
9837 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
9838
9839         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
9840         the region not just redisplay it after-all, since we store the
9841         cursors in the LineDisplay. (Ugly interactions here between
9842         GtkLayout and GtkTextBTree here.)
9843         
9844         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
9845
9846 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
9847
9848         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
9849         Added function to scroll contents of a window while keeping the
9850         window constant. Works by XCopyArea or guffaw-scrolling depending
9851         on the details of how the window is set up. (guffaw-scrolling
9852         still needs to be filled in.)
9853
9854 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
9855
9856         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
9857         move the debugging that was tied to a global variable
9858         to that.
9859
9860         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
9861
9862         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
9863         validated flag, in line data instead of setting height/width to
9864         -1. This allows us to perform operations with partially invalid
9865         buffer (using the old size for invalid lines) and thus to do
9866         incremental vaidation. Keep height/width aggregates up to date
9867         when deleting text and rebalancing the tree.
9868
9869         * gtk/gtktextbtree.[ch]: Add functions validate a line
9870         (gtk_text_btree_validate_line), and to validate up
9871         to a number of pixels (gtk_text_btree_validate).
9872
9873         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
9874         that indicates that something is changed and a revalidation
9875         pass is needed. Change ::need_repaint to ::changed, and
9876         make it take old and new yranges instead of a rectangle.
9877
9878         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
9879         the line_data_destroy() function from 
9880         gtk_text_btree_add_view() to a virtual function in 
9881         GtkTextLayout
9882
9883         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
9884         since we are handling partial repaints in a different fashion
9885         now.
9886
9887         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
9888         of the selection instead of queueing a repaint on the
9889         entire widget.
9890
9891         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
9892         get_selection_bounds() down to btree, make the function
9893         in buffer a wrapper around the btree function.
9894
9895         * gtk/gtktextlayout.[ch]: Add functions to check if the
9896         layout is valid and to recompute either a range of pixels
9897         aroudn a line or a certain total number of pixels.
9898
9899         * gtk/gtktextlayout.[ch]: Cache a single line display;
9900         now that we only redraw the needed portions, the hit rate
9901         for this cache is quite high.
9902         
9903         * gtk/gtktextview.[ch]: Keep track of the first paragraph
9904         on the screen so that when re-laying-out the buffer, we can
9905         keep the same place. This requires connecting to ::value_changed
9906         on the adjustments
9907
9908         * gtk/gtktextview.[ch]: Add idle functions to revalidate
9909         the buffer after we receive an ::invalidated signal.
9910         
9911 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
9912
9913         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
9914         to max of allocation and layout size, not just to the
9915         layout size.
9916
9917         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
9918         Invalidate window so it gets redrawn properly.
9919
9920         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
9921         to mean the entire window.
9922
9923         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
9924         into public header.
9925
9926 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9927
9928         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
9929         to get the name of a mark.
9930
9931         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
9932         to find the paragraph from a y position.
9933
9934 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
9935
9936         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
9937         nodes have width/height >= 0, not > 0.
9938
9939 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
9940
9941         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
9942         Add a size_only flag, so when we only need the size, we don't create
9943         useless appearance attributes.
9944
9945         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
9946         duplicate setting of font description.
9947
9948         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
9949
9950 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
9951
9952         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
9953         EXTRA_DIST. It does not work well when the file that
9954         everything depends on is not in the tarball.
9955
9956 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
9957
9958         * gtk/testgtk.c: Some hacks and fixes so that it basically
9959         works when not sitting in the GTK+ build tree.
9960
9961 2000-05-03  Havoc Pennington  <hp@redhat.com>
9962
9963         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
9964         Properly determine the ordering of the tag root and the current
9965         line within the tree. Previous algorithm only worked if the tag
9966         root's immediate parent was the common root of both the current
9967         line and the tag root.
9968
9969 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
9970
9971         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
9972         alignment.
9973
9974         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
9975         the widget text directional dynamically.
9976
9977         * gtk/gtktextview.[ch]: Added functions to get and set default
9978         wrap mode.
9979
9980 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
9981
9982         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
9983         in cursor location computation.
9984
9985 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
9986
9987         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
9988         vadjusment values properly when layout gets smaller.
9989
9990         * gtk/gtktextview.c (need_repaint_handler): Areas being
9991         passed in are far completely inaccurate, and sometimes
9992         too small, so, for now, just queue a redraw on the
9993         whole visible region.
9994
9995 2000-04-25  Havoc Pennington  <hp@redhat.com>
9996
9997         * gtk/gtktextbtree.c (summary_destroy): new function to 
9998         destroy tag summary nodes
9999         (gtk_text_line_next_could_contain_tag): this function was 
10000         totally broken if the line passed in wasn't below the tag
10001         root. Fix it.
10002         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
10003         "wildcard" case, we have to do a linear scan. Blah.
10004         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
10005         we have to do the linear scan
10006         (tag_removed_cb): When a tag is removed from the tag table, 
10007         remove the GtkTextTagInfo node from the btree.
10008         (gtk_text_btree_spew): Implement the spew function, for 
10009         our debugging pleasure.
10010
10011 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
10012
10013         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
10014         a problem with referring to the wrong buffer.
10015
10016         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
10017
10018         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
10019         font description to gtk_style_new() - otherwise things
10020         don't work without a .gtkrc file.
10021
10022         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
10023         tags table if we create it ourself, too.
10024
10025         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
10026         it was conflicting with XKB modifiers.
10027
10028         * gtk/gtktextview.[ch]: Add simple support for 
10029         GtkIMContext.
10030
10031 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
10032
10033         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
10034         with deletion from last commit.
10035
10036 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
10037
10038         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
10039         in the context from the current locale.
10040         
10041         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
10042         context, not hardcoded value.
10043
10044         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
10045         not logical.
10046
10047 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10048
10049         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
10050         attributes - that doesn't handle partial-glyph selection
10051         properly. Instead use new pango_layout_line_get_x_ranges()
10052         functionality to draw the selection.
10053
10054         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
10055         now properly handles out-of-range coordinates.
10056
10057         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
10058
10059         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
10060         public.
10061
10062         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
10063         for paragraphs opposite to the base direction of the widget.
10064
10065         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
10066
10067         * gtk/gtktextlayout.c: Don't split segments on marks, since that
10068         causes Arabic words to reshape as you cursor through.
10069
10070         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
10071         cursor position when moving vertically with the arrow keys and
10072         scrolling with page-up/page-down. (Arrow keys save only the X,
10073         scrolling saves both X and Y.)
10074
10075         This means you can line-up / line-down or page-up / page-down
10076         without losing your place, and also that moving vertically
10077         with the cursor keys keeps the same X position, not the same
10078         character count:
10079
10080         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
10081         arrow keys move by display lines, not paragraphs.
10082
10083 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10084
10085         * gtk/gtklayout.c: Make sure that the bin window is at least
10086         as big as the allocation. (Should we also make sure that the
10087         bin window is big enough to completely cover widget->window?)
10088
10089         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
10090         function to get the onscreen rectangle.
10091
10092         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
10093         for offsets in window coordinates.
10094
10095 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
10096
10097         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
10098         confusion.
10099
10100         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
10101         from the widget direction.
10102
10103         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
10104         Add a "direction" attribute.
10105
10106         * gtk/gtktextview.c: global s/tkxt/text_view/.
10107
10108         * gtk/testtext.c: Added long block of text in Arabic, to test out
10109         the direction attributes. (Some problems with the shaping system
10110         for arabic become obvious - like the fact the cursor splits words
10111         into unjoined pieces.)
10112
10113 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
10114
10115         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
10116
10117         * gtk/gtktextlayout.c: Fix up alignment.
10118
10119         * gtk/testtext.c: Add some tests for centering, wrapping.
10120
10121 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
10122
10123         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10124         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
10125         If we wrote GTK+-specific layout-render function this could just replace
10126         the draw_layout() operation in the vtable.
10127
10128         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
10129         pango_layout_get_cursor_pos() and use that function.
10130
10131         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
10132         is a non-static symbol.
10133
10134         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
10135         with gtk_text_btree_find_line_by_y()
10136
10137         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
10138         renderer that handles GtkTextAppearance attributes.
10139
10140         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
10141
10142           - Move the values in the style that don't affect geometry into a
10143             GtkTextAppearance structure.
10144           - Change underline to take a PangoUnderline and "font" a string
10145             representation of a font description
10146           - Add a "font_desc" attribute which takes a FontDescription structure.
10147
10148         * gtk/gtktextlayout.[ch]:
10149
10150           - Get rid of the display-line list per each line. Instead, we
10151             generate, on demand, a GtkTextLineDisplay structure which]
10152             contains a PangoLayout * and other necesary information
10153             (offsets, cursor locations) for displaying a paragraph.
10154           - Get rid of the code to wrap lines, create display chunks,
10155             etc. Instead, we just go through a paragraph and convert
10156             it into the necessary inputs to a PangoLayout.
10157           - Implement a new attribute type, GtkTextAttrAppearance. This
10158             holds a GtkTextAppearance, and is used to pass colors, 
10159             stipple, etc, through from the layout to the display without
10160             having to use lots and lots of individual attributes.
10161           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
10162             in terms of PangoLayout functions.
10163         
10164         * gtk/gtktextview.c: 
10165          
10166           - Handle passing the necessary PangoContext to the layout
10167           - Some fixups in painting to deal with the automatic backing store
10168             and offsetting of GTK+-1.4
10169           - Add a style_set handler so that the default style reacts
10170             properly to theme changes.
10171         
10172         * gtk/gtktext?*.[ch]: Random code-style fixes.
10173
10174         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
10175
10176 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
10177
10178         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
10179         in original form preparatory to Pango-ization and gdkimcontext-ization.
10180
10181 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
10182
10183         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
10184         so that we can derive from gtkimcontext in language bindings properly.
10185
10186 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
10187
10188         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
10189         Add a compose table including (almost) all the compose combinations
10190         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
10191         data in the XIM implementation.
10192
10193         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
10194         Moved functions to convert keyvalues from and to unicode here from
10195         the win32 port and made them public.
10196
10197 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
10198
10199         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
10200
10201 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
10202
10203         * gtk/gtkimcontext.[ch]: Base class for new input context system
10204
10205         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
10206         the real input context implementation to be loaded from modules
10207         and switched on the fly.
10208
10209         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
10210         context that just does direct keysymbol => unicode translation.
10211
10212         * gtk/gtkentry.[ch]: Start switching editing over to using
10213         GtkInputContext. (No handling of preedit yet.)
10214
10215 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
10216
10217         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
10218         many substitutions. (klass should not be subsituted.)
10219
10220 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
10221
10222         * configure.in: Add checks for Pango
10223
10224         * configure.in docs/Makefile.am: Add test for sgml2html
10225         and allow 'make dist' without building html, but print out
10226         warnings in that case. (For making snapshots)
10227
10228         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
10229         Add Pango libraries and C flags
10230
10231         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
10232         Add function (gdk_draw_layout) to draw a pango layout.
10233
10234         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
10235         for getting Pango contexts for GDK.
10236
10237         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
10238
10239         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
10240         editing.
10241
10242         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
10243         keysym => unicode translations. More languages can be added
10244         here, but real input-method support is needed.
10245
10246         * docs/Changes-1.4.txt: Added note about entry behavior.
10247         
10248         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
10249         to set the reading direction for a widget and the global direction.
10250         Add test which allows toggling the global direction. Two private
10251         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
10252
10253         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
10254           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
10255
10256         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
10257
10258         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
10259         underlining now handled by Pango.
10260
10261         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
10262         to RCStyle and Style. (Having both this and the old font name and GdkFont 
10263         is temporary.)
10264
10265         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
10266         convenience functions for creating contexts and layouts for widgets.
10267
10268         * gtk/testgtk.c: Enhance label tests with multilingual labels.
10269
10270 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
10271
10272         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
10273         titles to be active, even if they aren't visible.
10274         (gtk_clist_column_titles_passive):  Ditto.
10275
10276 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
10277
10278         * gtkmenu.c:
10279         * gtkmenu.h:
10280         * gtktypeutils.h: Spelling/grammar fixes in comments.
10281
10282 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
10283
10284         * gdk/nanox/*.h: add missing header files.
10285
10286 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
10287
10288         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
10289         send_event to TRUE.
10290         (gtk_drawing_area_size): queue a resize.
10291
10292 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
10293
10294         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
10295         the handlers, also invalidate them. bug nailed down by Karl Nelson
10296         <kenelson@ece.ucdavis.edu>.
10297
10298 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
10299
10300         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
10301         "(nil)" foundries, patch from Grigorios Magklis.
10302
10303         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
10304         on non-available fonts, based on a patch by Grigorios Magklis
10305         <maglis@cs.rochester.edu>.
10306
10307 2000-05-18  Elliot Lee  <sopwith@redhat.com>
10308
10309         * gdk/x11/gdkregion-generic.c: If a region does not have any
10310         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
10311         instead of GDK_OVERLAP_RECTANGLE_IN.
10312
10313 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
10314
10315         * gtk/gtklayout.c (gtk_layout_map): Remove references to
10316         OFFSCREEN, as it is no longer necessary.
10317
10318 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
10319
10320         * gtk/gtkcolorsel.c: Patch from David Santiago
10321         <mrcooger@cyberverse.com> to change things so that the 
10322         indicator of the active palette entry is done independently,
10323         not via the focus, since it should always be visible.
10324
10325 2000-05-17  Tor Lillqvist  <tml@iki.fi>
10326
10327         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
10328         refcount leaks as in the X11 backend.
10329
10330         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
10331         cosmetics.
10332
10333         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
10334         backend. Add _gdk_windowing_window_destroy().
10335
10336         * gtk/gtkcolorsel.c: Include correct backend-specific header.
10337         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
10338         either, but these probably do exist on nanox?)
10339         
10340         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
10341         which isn't necessarily defined by <math.h>.
10342
10343         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
10344         ancestry past GtkObject.
10345
10346         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
10347         from DLL on Win32.
10348
10349         * gtk/gtk.def: Update corresponding to recent changes.
10350
10351         * gtk/makefile.{cygwin,msc}: Updates.
10352
10353 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
10354
10355         * docs/Changes-1.4.txt: A bit of editing.
10356
10357         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
10358         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
10359         to clear the update area for the window, and clear it
10360         when hiding a window.
10361
10362         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
10363         if window destroyed.
10364
10365         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
10366
10367         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
10368         gdk_window_destroy() to the generic code, since there was a lot of 
10369         window-system-independent logic it in. Add a function:
10370         
10371          _gdk_window_destroy() 
10372
10373         to the internal API to destroy a window without unreferencing it.
10374         Add a function:
10375
10376          _gdk_windowing_window_destroy()
10377
10378         That does the windowing-system-dependent part of destroying 
10379         the window.
10380
10381 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
10382
10383         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
10384
10385 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
10386
10387         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
10388         Make gtk_widget_shape_combine_mask() keep a reference count on
10389         the pixmap since it keeps it around.
10390
10391 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
10392
10393         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
10394         leak.
10395
10396         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
10397         leak with event filters.
10398
10399 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
10400
10401         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
10402         signal handlers with the right data arguments. (Fixes
10403         some warnings when a widget was repeatedly set as a drag
10404         destination.)
10405
10406         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
10407         window so we can avoid avoid setting the DND properties on the
10408         toplevel window repeatedly.
10409
10410 2000-05-13  Tor Lillqvist  <tml@iki.fi>
10411
10412         * gdk/win32/gdkwin32.h: Define more message types missing from
10413         mingw headers.
10414
10415         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
10416         call gdk_window_destroy_notify(). It was never called. This
10417         probably meant that the GdkWindow was never freed. Thanks Owen for
10418         noticing (!).
10419
10420         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
10421         window as destroyed before calling DestroyWindow(). DestroyWindow()
10422         causes a call to the window procedure (gdk_WindowProc), which
10423         calls gdk_event_translate(), which calls
10424         gdk_window_destroy_notify(), which gets confused unless the window
10425         is set as destroyed.
10426
10427         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
10428         this function to indicate it's win32 only. Put inside #ifdef
10429         G_ENABLE_DEBUG.
10430
10431         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
10432         debugging function. (gdk_event_translate:) Add a default branch
10433         that uses the above function to print debug messages with all
10434         Windows messages symbolically.
10435
10436         * gdk/win32/gdkprivate-win32.h: Declare it, and
10437         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
10438
10439 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
10440
10441         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
10442         public header file.
10443
10444 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
10445
10446         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
10447
10448         * gtk/gtktext.c: made the adjustments no-construct args, simply
10449         provide default adjustments.
10450         (gtk_text_destroy): release adjustments.
10451
10452         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
10453         adjustment argument non-construct.
10454
10455         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
10456         instead of in finalize.
10457         (gtk_progress_get_text_from_value): 
10458         (gtk_progress_get_current_text): 
10459         (gtk_progress_set_value): 
10460         (gtk_progress_get_percentage_from_value): 
10461         (gtk_progress_get_current_percentage): 
10462         (gtk_progress_set_percentage): 
10463         (gtk_progress_configure): ensure an adjustment is present.
10464
10465 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
10466
10467         * gtk/gtkcolorsel.[hc]:
10468         * gtk/gtkcolorseldialog.[hc]:
10469         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
10470         their parent implementation, use bit fields for boolean values, don't
10471         create unused widgets, usage of glib types, braces go on their own
10472         lines, function argument alignment, #include directives etc. etc. etc..
10473
10474         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
10475
10476 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
10477
10478         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
10479
10480         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
10481         of NULL.
10482
10483         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
10484         to freed data.
10485         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
10486
10487         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
10488         to NULL when the toplevel is getting destroyed.
10489         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
10490         (gtk_menu_destroy): 
10491         (gtk_menu_init): store the information of whether we have to
10492         readd the initial child ref_count during destruction in a new
10493         GtkMenu field needs_destruction_ref_count.
10494
10495         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
10496         here, those reading: learn from my mistake! ;)
10497         in order for set_?adjustment to support a default adjustemnt if
10498         invoked with an adjustment pointer of NULL, the code read (pseudo):
10499         if (v->adjustment) unref (v->adjustment);
10500         if (!adjustment) adjustment = adjustment_new ();
10501         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
10502         now imagine the first unref to actually free the old adjustment and
10503         adjustment_new() creating a new adjustment from the very same memory
10504         portion. here, the latter comparision will unintendedly fail, and
10505         all hell breaks loose.
10506         (gtk_viewport_set_hadjustment):
10507         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
10508         after unreferencing it.
10509
10510         * gtk/gtkcontainer.[hc]: removed toplevel registration
10511         functions: gtk_container_register_toplevel(),
10512         gtk_container_unregister_toplevel() and
10513         gtk_container_get_toplevels() which had wrong semantics
10514         anyways: it didn't reference and copy the list.
10515
10516         * gtk/gtkwindow.c: we take over the container toplevel registration
10517         bussiness now. windows are registered across multiple destructions,
10518         untill they are finalized. the initial implicit reference count
10519         users are holding on windows is removed with the first destruction
10520         though.
10521         (gtk_window_init): ref & sink and set has_user_ref_count, got
10522         rid of gtk_container_register_toplevel() call. add window to
10523         toplevel_list.
10524         (gtk_window_destroy): unref the window if has_user_ref_count
10525         is still set, got rid of call to
10526         gtk_container_unregister_toplevel().
10527         (gtk_window_finalize): remove window from toplevel list.
10528         (gtk_window_list_toplevels): new function to return a newly
10529         created list with referenced toplevels.
10530         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
10531
10532         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
10533         adjustment a non-construct arg.
10534         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
10535         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
10536         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
10537
10538         * gtk/gtkrange.c: added some realized checks.
10539         (gtk_range_destroy): get rid of the h/v adjustments in the
10540         destroy handler instead of finalize. remove timer.
10541         (gtk_range_get_adjustment): demand create adjustment.
10542
10543         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
10544         we simply create them on demand now and get rid of them in
10545         the destroy handler.
10546         (gtk_viewport_destroy): get rid of the h/v adjustments in the
10547         destroy handler instead of finalize.
10548         (gtk_viewport_get_hadjustment): 
10549         (gtk_viewport_get_vadjustment): 
10550         (gtk_viewport_size_allocate): demand create h/v adjustment
10551         if required.
10552
10553         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
10554         gtk_widget_real_destroy () functionality.
10555         (gtk_widget_real_destroy): reinitialize with a new style, instead
10556         of setting widget->style to NULL.
10557
10558 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
10559
10560         * gtk/gtkcalendar.c:
10561         * gtk/gtkbutton.c: ported _get_type() implementation over to
10562         GType, either to preserve memchunks allocation facilities,
10563         or because Gtk+ 1.0 GtkTypeInfo was still being used.
10564
10565         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
10566         over. prepare for ::destroy to be emitted multiple times.
10567         removed reference tracer magic. chain into GObjectClass.shutdown()
10568         to emit ::destroy signal.
10569
10570         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
10571         fundamental.
10572
10573         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
10574         cludge.
10575
10576         * gtk/gtksocket.c:
10577         * gtk/gtkplug.c:
10578         * gtk/gtklayout.c:
10579         * gtk/gtklabel.c:
10580         * gtk/gtkargcollector.c:
10581         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
10582         not being a fundamental anymore, and to work with the new
10583         type system (nuked fundamental type varargs clutter).
10584
10585         * gtk/*.c: install finalize handlers in the GObjectClass
10586         part of the class structure.
10587         changed direct GTK_OBJECT()->klass accesses to
10588         GTK_*_GET_CLASS().
10589         changed direct object_class->type accesses to GTK_CLASS_TYPE().
10590
10591         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
10592         GType. made most of the GTK_*() type macros and Gtk* typedefs
10593         simple wrappers around macros and types provided by GType.
10594         most notably, a significant portion of the old API vanished:
10595         GTK_TYPE_MAKE(),
10596         GTK_TYPE_SEQNO(),
10597         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
10598         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
10599         GTK_TYPE_ARGS,
10600         GTK_TYPE_CALLBACK,
10601         GTK_TYPE_C_CALLBACK,
10602         GTK_TYPE_FOREIGN,
10603         GtkTypeQuery,
10604         gtk_type_query(),
10605         gtk_type_set_varargs_type(),
10606         gtk_type_get_varargs_type(),
10607         gtk_type_check_object_cast(),
10608         gtk_type_check_class_cast(),
10609         gtk_type_describe_tree(),
10610         gtk_type_describe_heritage(),
10611         gtk_type_free(),
10612         gtk_type_children_types(),
10613         gtk_type_set_chunk_alloc(),
10614         gtk_type_register_enum(),
10615         gtk_type_register_flags(),
10616         gtk_type_parent_class().
10617         replacements, where available are described in ../docs/Changes-1.4.txt.
10618         implemented compatibility functions for the remaining API.
10619
10620         * configure.in: depend on glib 1.3.1, use gobject module.
10621
10622 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
10623
10624         * TODO.xml: Various updates to current status.
10625
10626 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
10627
10628         * gtk.m4: Print out version when test succeeds.
10629
10630 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
10631
10632         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
10633         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
10634         
10635         (Original triangle color selector from Simon Budig
10636         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
10637         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
10638         Santiago <mrcooger@cyberverse.com>)
10639
10640         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
10641         out into a separate widget.
10642
10643         * gtk/testgtk.c: Add some checkbuttons for toggling palette
10644         and opacity controls.
10645
10646 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
10647
10648         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
10649         snuck in prematurely.
10650
10651 2000-05-07  Tor Lillqvist  <tml@iki.fi>
10652
10653         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
10654         had deleted a ! operator by mistake, which caused
10655         GDK_SELECTION_CLEAR events never to be generated, which caused
10656         only the first copy to the clipboard from an gtkeditable to
10657         actually cause a copy to the Windows clipboard.
10658
10659 2000-05-06  Tor Lillqvist  <tml@iki.fi>
10660
10661         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
10662         compilation, too. Current mingw gcc distributions include the
10663         necessary headers. Also the necessary IIDs are now in mingw
10664         headers/libraries, and own definitions unnecessary.
10665
10666         More hacking on OLE2 DND, still doesn't work though, and thus
10667         ifdeffed out.
10668
10669         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
10670         here, too.
10671
10672 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
10673
10674         * gdk/nanox/*: nano-X port work in progress.
10675         * gdk/simple.c: simple test for Gdk.
10676         * README.nanox: notes about the port: read this first!
10677         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
10678         with nano-X.
10679
10680 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
10681
10682         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
10683         gdk_window_clear() into common code, implement in terms of
10684         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
10685         not redirected to the backing rectangle.
10686
10687 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
10688
10689         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
10690         EXTRA_DIST. It does not work well when the file that
10691         everything depends on is not in the tarball.
10692
10693 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
10694
10695         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
10696         with recursion where process_updates() is called from
10697         an expose handler. (GtkTextView is highly broken in
10698         doing this, but it should work, so it is a nice test
10699         case.)
10700
10701 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
10702
10703         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
10704         handle the case where updates are queued during processing of
10705         updates.
10706
10707 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
10708
10709         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
10710         window is on gdk_display - use that instead of segfaulting.
10711
10712 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
10713
10714         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
10715         broken and require an empty arg, give it to them.
10716
10717 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
10718
10719         * gtk/gtklabel.h: indentation fixes.
10720
10721 2000-05-02  Tor Lillqvist  <tml@iki.fi>
10722
10723         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
10724         draw too narrow or too low arcs, they seem to fail, at least with
10725         some display drivers.
10726
10727         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
10728
10729         Large changes to the Win32 backend, partially made necessary by
10730         the changes to the backend-independent internal
10731         structures. Attempts to implement similar backing store stuff as
10732         on X11. The current (CVS) version of the Win32 backend is *not* as
10733         stable as it was before the no-flicker branch was merged. A
10734         zipfile with that version is available from
10735         http://www.gimp.org/win32/. That should be use by "production"
10736         code until this CVS version is usable. (But note, the Win32
10737         backend has never been claimed to be "production quality".)
10738
10739         * README.win32: Add the above comment about versions.
10740
10741         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
10742
10743         * gdk/gdk.def: Update.
10744
10745         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
10746         presumably be replaced by some more better mechanism as 1.4 gets
10747         closer to release shape.
10748
10749         * gdk/makefile.{cygwin,msc}: Update.
10750
10751         * gdk/win32/*.c: Correct inclusions of the backend-specific and
10752         internal headers. Change code according to changes in these. Use
10753         gdk_drawable_*, not gdk_window_* where necessary.
10754
10755         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
10756         our old DND.
10757
10758         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
10759         to interpret single characters as UTF-8. Thanks to Hans Breuer.
10760         Use correct function name in warning messages.
10761
10762         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
10763         GSourceFuncs gdk_event_prepare and gdk_event_check.
10764         (gdk_event_get_graphics_expose): Do implement, use
10765         PeekMessage. Thanks to Hans Breuer.
10766         (event_mask_string): Debugging function to print an GdkEventMask.
10767         (gdk_pointer_grab): Use it.
10768
10769         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
10770         (old) book I used claimed was Hangul actually is CJK Unified
10771         Ideographs Extension A. Also, Hangul Syllables were missing.
10772         Improve logging.
10773
10774         * gdk/win32/gdkgc-win32.c: Largish changes.
10775
10776         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
10777         g_win32_getlocale() from GLib, and not setlocale() to get current
10778         locale name.
10779
10780         * gdk/win32/gdkprivate-win32.h
10781         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
10782         gdkwin32.h, similarily as in the X11 backend.
10783
10784         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
10785         assignment was used instead of equals in if test. Thanks to Hans
10786         Breuer.
10787
10788         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
10789         the X11 version.
10790
10791         * gdk/win32/makefile.{cygwin,msc}
10792         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
10793         path to the Win32 headers that works also with the mingw compiler.
10794
10795         * gtk/gtkstyle.c: Include <string.h>.
10796
10797 2000-04-26  Havoc Pennington  <hp@redhat.com>
10798
10799         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
10800         replacing the broken gtk_label_get ()
10801
10802 2000-04-15  Havoc Pennington  <hp@pobox.com>
10803
10804         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
10805         this keeps scanner scripts from getting confused.
10806
10807         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
10808         data, rather than void
10809
10810 2000-04-15  Tor Lillqvist  <tml@iki.fi>
10811
10812         * gtk/gtkclist.c (gtk_clist_motion)
10813         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
10814         with is_hint FALSE, get x and y from the event. They used to be
10815         used uninitialised. The Win32 backend never sends motion events
10816         marked as hints. This for instance fixes the annoying file and
10817         font selector behaviour in the Win32 version.
10818
10819 2000-04-14  Tor Lillqvist  <tml@iki.fi>
10820
10821         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
10822         gtk_private_n_signals variables, they are used by some software,
10823         sigh.
10824
10825         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
10826         installation directory from the Registry, where the installer
10827         should have put it.
10828
10829 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
10830
10831         * gdk/x11/Makefile.am: Fix problem with installation directory for
10832         gdkx.h
10833
10834         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
10835         <mrcooger@cyberverse.com> so that when selecting menus with the
10836         mouse, the first item will not be selected, but when selecting
10837         with an accelerator, or navigating left-right on a menubar with
10838         the menus popped up, the first item will be selected.
10839
10840 2000-04-05  Dan Damian  <dand@dnttm.ro>
10841
10842         * configure.in: Added "ro" to ALL_LINGUAS.
10843
10844 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
10845
10846         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
10847         indentation.
10848
10849         * Makefile.am (EXTRA_DIST): Fix typo.
10850
10851         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
10852         to catch gdkconfig.h
10853
10854         * gtk/gtkitemfactory.c: Added FIXME.
10855
10856 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
10857
10858         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
10859         s/return_if_fail/return_val_if_fail/g and add a return value.
10860
10861 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
10862
10863         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
10864         merge slipup.
10865
10866         * gdk/gdkinput.h: Fix missing line from merge.
10867
10868 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
10869
10870         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
10871         instead of gdkprivate.h.
10872
10873 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
10874
10875         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
10876         parent class to correctly be GtkDialogClass.
10877
10878 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
10879
10880         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
10881         toplevel windows and their immediate children by their parents,
10882         since the size of toplevel windows is out of our immediate
10883         control and we don't get any real benefit from trying to track
10884         this size for clipping.
10885
10886         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
10887         for input_only windows.
10888
10889         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
10890         to fix some hacks and make sure that we don't try to set the
10891         background of input only windows.
10892
10893 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
10894
10895         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
10896         the _really_ internal stuff, and leave gdkprivate.h for the fake private
10897         stuff that we've traditionally exposed.
10898
10899         * gdk/**.c: Use gdkinternals.h where appropriate.
10900
10901         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
10902         not include gdkprivate-x11.h, move all stuff of conceivable public
10903         interest into gdkx.h; keep all really private stuff in
10904         uninstalled header gdkprivate-x11.h.
10905
10906         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
10907         image->image_put on windows through a new function _gdk_window_draw_image()
10908         to allow us to do backing store for images. (Sort of ugly)
10909
10910         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
10911         contexts locally so that we can offset them properly when drawing 
10912         onto backing pixmaps.
10913
10914         * gdk/gdkinput.h: Reindented
10915
10916         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
10917         pixmap or color for the window, so we can properly initialize
10918         our double-buffer pixmaps, and also so that we temporarily set
10919         a background of None while scrolling.
10920
10921         * gdk/gdkregion.h: Revise region boolean operators to have an
10922         interface that is actually convenient - switch from creating new
10923         regions on every op, to "methods" that modify existing regions
10924         (A = A OP B). 3 argument forms which allow dest == src, would also
10925         be possible, but the current interfaces seem to map nicely
10926         onto what needs to be done. (There is quite a lot of region
10927         code in GDK now.)
10928
10929         * gdk/gdkregion.h: Add constructor from rectangle and a copy
10930         operator.
10931
10932         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
10933         gdkpoly-generic.h: Copy region code from Xlib, switch it over
10934         to 32 bit coordinates, modify it to be mostly GTK+ style
10935         and to have interfaces that match gdkregion.h.
10936
10937         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
10938         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
10939         create a backing pixmap and redirect all drawing to
10940         that backing pixmap until a matching gdk_window_end_paint().
10941
10942         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
10943         Create a special drawable class for GtkWindow's that 
10944         redirects the drawing to the backing pixmap as necessary
10945         and then calls the real operations in _gdk_windowing_window_class.
10946
10947         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
10948         Store invalid region for each window. Generate expose events for invalid
10949         region in an idle. This replaces both the expose compression
10950         and the redrawing queuing in GTK+. It is both more efficient and
10951         simpler than either one individually and far more so then the
10952         combination.
10953
10954         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
10955         Emulate 32 bit coordinates for windows with 16 bit coordinates
10956         by offsetting drawing, guffaw scrolling techniques and
10957         mapping/unmapping child windows as necessary.
10958
10959         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
10960         where, when invalid regions are processed, the region is stored,
10961         and if expose events come in that are detectably duplicate
10962         the processed exposes (by comparison of event serial numbers),
10963         the stored region is subtracted out of those exposes.
10964
10965         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
10966         regions newly exposed when scrolling or resizing windows.
10967         This, combined with forcing processesing of queued invalidated
10968         regions, gives nice flicker-free scrolling.
10969
10970         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
10971         invalidated regions after every scroll.
10972
10973         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
10974         emulation in GDK. Its, for all practical purposes just a
10975         GtkViewport/GtkFixed hybrid now.
10976
10977         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
10978         (16-bit) structures as necessary instead of just casting.
10979
10980         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
10981         in terms of the structures from gdkregion-generic.c, using appropriate
10982         offsets from GDK to X11 coordinates. Cache clip mask and
10983         origin and ts origin locally and only flush to the server
10984         when drawing, to avoid constantly setting and resetting these
10985         values when offsetting GC's for scrolling and backing pixmaps.
10986
10987         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
10988
10989         * gtk/gtkcontainer.c: Call process_all_updates at end
10990         of resizing to reduce flicker. (Avoids having redraw
10991         lag arbitrarily behind resize under some circumstances)
10992
10993         * gtk/gtkentry.c: Remove old backing store code, and simply take
10994         advantage of the new backing store capabilities of GDK.
10995
10996         * gtk/gtkmain.c: Simple implementation of widget backing
10997         store - simply push a paint while handling each expose.
10998         (Should really be configurable widget for widget.)
10999         
11000         * gtk/gtkwidget.c: Remove all the old complicated redraw
11001         code, and simply invalidate the GDK windows from
11002         gdk_window_queue_clear(), etc. (Sigh, so much carefully
11003         debugged complexity ... gone to the winds.)
11004
11005         Remove all the code for suppressing expose events while
11006         resizes are pending; this isn't needed since the invalid
11007         areas won't be processed until after the resizes are
11008         processed, since they are in a lower priority idle.
11009
11010 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
11011
11012         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
11013         and height of dest rectangle for non-intersecting rectangles.
11014
11015 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
11016
11017         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
11018         for GdkRectangle.
11019
11020 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
11021
11022         * gdk/gdk{events,image,private,types,window}.h
11023          gdk/x11/gdkinputprivate.h: Change all coordinates
11024          from int16 to int. Also, Change width and height from
11025          unsigned to signed to avoid all the stupid C 
11026          signedness bugs.
11027
11028 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
11029
11030         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
11031         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
11032         Add some more detailed checking.
11033
11034         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
11035         New function to retrieve the depth of a drawable.
11036
11037         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
11038         field, reorder fields to save memory. 
11039
11040 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
11041
11042         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
11043         of the background image instead of scaling the background down to
11044         a line.
11045
11046         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
11047         which temporarily set slider to wrong size.
11048
11049         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
11050         queue_clear().
11051
11052 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
11053
11054 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
11055
11056         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
11057
11058 2000-03-17  Tor Lillqvist  <tml@iki.fi>
11059
11060         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
11061         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
11062
11063         * gdk/win32/gdkfont-win32.c
11064         * gdk/win32/gdkproperty-win32.c
11065         * gdk/win32/gdkselection-win32.c
11066         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
11067         now declared such.
11068
11069 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
11070
11071         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
11072
11073 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
11074
11075         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
11076         is called without trapping X errors.
11077
11078 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
11079
11080         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
11081         way into the fontset lists.
11082
11083 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
11084
11085         * gtk/gtkthemes.h: add extern "C" scope.
11086
11087 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
11088
11089         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
11090         to make appends to the list constant. (gtk-guy-990901-0.patch)
11091
11092 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
11093
11094         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
11095         for the typename hash table.
11096
11097 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
11098
11099         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
11100         to make sure we never divide by zero. 
11101         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
11102
11103 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
11104
11105         * gtk/gtkfontsel.c: Apply patch from
11106         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
11107         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
11108
11109         Also, some cleanups in atom handling.
11110
11111 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
11112
11113         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11114         not GtkWidget.
11115
11116 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
11117
11118         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
11119         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
11120         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
11121         more guint wrap-around bugs before going to bed.
11122
11123 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
11124
11125         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
11126         guint wrap arounds in allocation.width.
11127
11128         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
11129         process untill we fit the allocation given.
11130
11131 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
11132
11133         * gtk/gtkwidget.c:
11134         (gtk_widget_unrealize): guard widget access with ref/unref
11135         around signal emission.
11136         (gtk_widget_hide): same here, but also check its destroyed
11137         state before queueing a resize.
11138
11139 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
11140
11141         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
11142         of gtk_default_insensitive_bg as insensitive base color.
11143
11144         * gtk/gtktext.c (gtk_text_style_set): set the background color according
11145         to the widget's state.
11146         (gtk_text_realize): same here.
11147         (gtk_text_state_changed): same here.
11148         (draw_bg_rect): compare background color against base[] from
11149         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
11150
11151 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
11152
11153         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
11154         grabs are active, unless a delete event is send to the toplevel
11155         of the currently grab holding widget.
11156
11157 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
11158
11159         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
11160         debugging g_print's.
11161
11162 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
11163
11164         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
11165         ever make the scrolled-window requisition ever depend on the 
11166         visibility state of the scrollbars for the AUTOMATIC policy. 
11167         This breaks the GTK+ requisition model, and causes loops.
11168
11169 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
11170
11171         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
11172         the default font to avoid problems with XFree86-4.0 where the
11173         default charset is iso10646-1, not iso8859-1.
11174
11175 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
11176
11177         * acinclude.m4
11178         * config.guess
11179         * config.sub
11180         * ltconfig
11181         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
11182
11183         * gtk/Makefile.am: minor cosmetic consistency tweak
11184
11185 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
11186
11187         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
11188         the activate_time to 0, so that we handle a quick
11189         press/release press/release properly and don't suppress
11190         the second release. (Red Hat bug #7545)
11191
11192 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
11193
11194         * gtk/gtkctree.c (row_delete):
11195         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
11196         bugs with destruction notifier, *always* update internal
11197         structures *before* calling user code.
11198
11199 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
11200
11201         A few more fixes for bug #5487, #2051, #2677.
11202         * gtk/gtkclist.c : 
11203         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
11204         not GDK_BUTTON_PRESS.
11205         (resync_selection): resync only if selection_mode is
11206         GTK_SELECTION_EXTENDED
11207         * gtk/gtkctree.c (resync_selection): same here
11208
11209 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
11210
11211         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
11212         gdk_drag_get_selection() and gtk_menu_detach().
11213
11214         [ From Jeroen Ruigrok/Asmodai ]
11215
11216 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
11217
11218         * gtk/gtknotebook.c (gtk_notebook_size_request): 
11219         page->tab_label can be NULL.
11220
11221 2000-01-25  Havoc Pennington  <hp@pobox.com>
11222         
11223         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
11224         arg is boolean
11225
11226         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
11227
11228         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
11229
11230         * gdk/gdkproperty.c (gdk_property_get): return boolean
11231
11232         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
11233
11234         * gdk/gdkim.c (gdk_im_ready): return boolean
11235
11236         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
11237
11238         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
11239         glib clash, should fix glib)
11240
11241         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
11242         (gdk_get_show_events): return gboolean, and canonicalize 
11243         to TRUE/FALSE
11244
11245         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
11246         colormap is private
11247         (gdk_colors_alloc): gboolean whether to be contiguous
11248         (gdk_color_equal): return gboolean since we are a predicate
11249         and not a qsort() (this looks semi-wrong due to glib breakage,
11250         IMO glib should be fixed)
11251         
11252         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
11253         (gdk_get_use_xshm): return gboolean
11254         (gdk_pointer_is_grabbed): return gboolean
11255
11256         * gdk/gdk.h: Change prototypes to match all the above changes,
11257         and re-run egtk-format-protos as required.
11258
11259 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
11260
11261         * gtk/gtkctree.c (resync_selection): 
11262         * gtk/gtkclist.c (resync_selection):
11263
11264         Return immediately if clist->drag_pos < 0. This is a workaround
11265         for the corrupt state that the clist gets into when a
11266         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
11267
11268         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
11269         
11270         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
11271         variable from recent commit.
11272
11273 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
11274
11275         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
11276
11277 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
11278
11279         * gtk/Makefile.am: prefix all autogenerated source that get build in
11280         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
11281         in builddir. since we subsequently cd into srcdir for autogeneration,
11282         the paths have to be stripped from the target file names, thusly we
11283         use $(@F) as target names now.
11284         put a comment about configure.in's --disable-rebuilds option,
11285         which can be used for non-writable source directories, for development
11286         setups though, srcdir has to be *writable*.
11287
11288 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
11289
11290         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
11291           Finish the job of allowing event to be NULL.
11292           (Fixes bug #4283, reported by Chris Blizzard)
11293
11294         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
11295           things so that the cursor appears on screen, properly
11296           take into account INNER_BORDER.
11297           (Fixes bug #4754, reported by Antonio Campos)
11298
11299 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
11300
11301         * gtk/gtknotebook.c (gtk_notebook_map): Don't
11302           show the tab_label unless it itself is visible.
11303
11304           gtk/gtknotebook.c (gtk_notebook_size_request):
11305           Do a better job of making sure that the visibility
11306           of the tab label corresponds to whether it should
11307           be mapped or not.
11308
11309 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
11310
11311         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
11312           Use the requisition, not the allocation, since the
11313           allocation has not necessarily been computed yet.
11314           (Pointed out by Eugene Osintsev)
11315
11316 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
11317
11318         * gtk/gtkstyle.c (gtk_style_new): Dont' set
11319           style/base[GTK_STATE_INSENSITIVE] both to
11320           gtk_default_insensitive_bg!
11321           (Bug #2187, reported by Jonathan Blandford)
11322
11323         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
11324           Add Alt_L, Alt_R to list of invalid accelerators.
11325           (Bug #3736, reported by Vlad Harchev)
11326
11327 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
11328
11329         * gtk/gtkfilesel.c (open_ref_dir): Fix several
11330         bugs which occured after an attempt to open 
11331         invalid home directory left cmpl_state->reference_dir == NULL.
11332
11333          - completion on files in home directory didn't work
11334          - completion on an empty string caused  segfault
11335
11336          (Bug #3678, reported by Steve Ratcliffe)
11337
11338         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
11339         cut and paste error that was causing scales to
11340         be incorrectly positioned.
11341         (Bug #2956,
11342          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
11343
11344 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
11345
11346         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
11347         when checking for dcgettext, if we've found we needed
11348         it for dgettext.
11349 +
11350 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
11351
11352         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
11353         queue_clear on NO_WINDOW widgets during a reparent,
11354         since at that point the window and widget heirarchies
11355         are out of sync. This stops crashing in some cases
11356         (the scrolled window reparent test, for instance), and
11357         _probably_ won't cause drawing errors.
11358
11359         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
11360         test do what it was supposed to do and be robust against
11361         window closings, etc. (Bug #2443)
11362
11363 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
11364
11365         * gtk/gtkentry.c: Fix return values on mouse events.
11366         (Bug #2686, Sky <seb_sky@yahoo.com>)
11367
11368         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
11369         (pointed out by George Lebl)
11370
11371         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
11372         (From Ettore Perazzoli  <ettore@helixcode.com>)
11373  
11374 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
11375
11376         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
11377         clicks between rows or outside calender area correctly.
11378         (Patch from Damon Chaplin)
11379
11380         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
11381         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
11382           Call destroy function when overwriting existing data. 
11383           (Pointed out by Damon Chaplin)
11384
11385 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
11386
11387         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
11388           which was causing problems on various systems with Xmu.
11389           This hasn't been needed for a very long time.
11390           (Fixes #1185 3167)
11391
11392 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
11393
11394         * gdk/gdki18n.h: Include <ctype.h> when defining
11395           gdk_isw* in terms of is* as a fallback.
11396           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
11397
11398 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
11399
11400         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
11401           realize the widget when it is size allocated!
11402           (old, old bug)
11403
11404         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
11405           Removed unused call to gdk_window_get_size() that
11406           showed up when the above was fixed.
11407
11408 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
11409
11410         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
11411           fix up widget->window when the widget is a
11412           NO_WINDOW container widget.
11413
11414 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
11415
11416         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
11417           to account for the fact that feof() does _not_ 
11418           return TRUE on errors, and thus avoid infinite loops
11419           when trying to use gdk_pixmap_create_from_xpm()
11420           on unreadable values.
11421
11422 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
11423
11424         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
11425
11426 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
11427
11428         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
11429           gdk_gc_set_dashes to take gint8 instead of gchar to
11430           make it clearer that it is _not_ a NULL terminated string.
11431
11432         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
11433           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
11434           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
11435           arguments.
11436
11437 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
11438
11439         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
11440         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
11441         background size relative to our allocation, guard against small
11442         allocations, we may have not yet been size allocated.
11443
11444 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
11445
11446         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
11447         not just version == 3. We implement all 3 + most of 4 - 
11448         (we don't support matching text/plain;charset=iso-8859-1
11449         to a dest that expects text/plain). We'll still advertise
11450         3 to be safe, but any client implementing version >= 3
11451         must interoperate with 3.
11452         
11453 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
11454
11455         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
11456         background and gc members, add a warning in gtk_tooltips_set_color()
11457         indicating that this function is deprecated.
11458
11459 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
11460
11461         * docs/gtkfaq.sgml: FAQ Update:
11462           - Minor cleanups (Emmanuel, me)
11463           - New questions:
11464                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
11465                 How can I retrieve the text from a GtkMenuItem? (timj)
11466                 How do I validate/limit/filter the input to a GtkEntry? (me)
11467                 Memory does not seem to be released when I free the list
11468                         nodes I've allocated (timj)
11469
11470 2000-03-07  Tor Lillqvist  <tml@iki.fi>
11471
11472         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
11473         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
11474         for which it is no use to call GetLastError onWin9x.
11475         (gdk_other_api_failed) New function, for general error
11476         reporting without calling GetLastError.
11477         (gdk_win32_api_failed) OTOH, this function always calls
11478         GetLastError. (gdk_win32_last_error_string) Remove this function,
11479         GLib has the equivalent now.
11480
11481         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
11482         call them with function name, file name and line number in the
11483         arguments.
11484
11485         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
11486         functions.
11487         
11488         * gtk/gtk.def: Add some missing entry points.
11489
11490         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11491         gtk_paned_set_gutter_size, which don't exist any longer, as void.
11492         
11493         Fixes by Hans Breuer:
11494
11495         * gdk/makefile.msc: Update for debugging.
11496
11497         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
11498         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
11499         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
11500         in the dash_list.
11501
11502         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
11503         the x11 backend.
11504
11505         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
11506
11507         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
11508
11509 2000-03-04  Tor Lillqvist  <tml@iki.fi>
11510
11511         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
11512         just pixel value of background colour.
11513
11514         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
11515         containing code snippet previously duplicated in a couple of
11516         places.
11517         
11518         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
11519         gdk_colormap_color.
11520
11521         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
11522         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
11523         events for autorepeated Shift, Control and Alt keys. Use
11524         gdk_colormap_color.
11525
11526         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
11527         pointer is inside the window the cursor of which we are setting,
11528         call SetCursor immediately.
11529
11530         * gdk/win32/makefile.cygwin
11531         * gtk/makefile.cygwin: If we don't have the build number stamp
11532         file, use zero.
11533
11534         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
11535         gtk_paned_set_gutter_size as empty.
11536
11537         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
11538         
11539 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
11540
11541         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
11542           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
11543           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
11544           docs/gtk_tut.sgml docs/gtk.texi TODO:
11545
11546           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
11547
11548 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
11549
11550         * gtk/gtkcalendar.c: Implement num_marked_dates,
11551           and don't emit mutiple day_selected signals on
11552           month_prev.
11553
11554 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
11555
11556         * docs/make-todo (lineno): let title and logo be configurable so
11557         that GNOME can use this script too.
11558
11559         * TODO.xml: added logourl and a title
11560
11561 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
11562
11563         * TODO.xml: Added some UI items, and an explanatory
11564         comment at the top of the file.
11565
11566 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
11567
11568         * TODO.xml: some updates, added abunch of new entries.
11569         a note for those fiddeling with this file, when done
11570         with it, invoke:
11571         $ ./docs/make-todo TODO.xml >/dev/null
11572         and correct output errors before comitting changes.
11573
11574 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
11575
11576         * TODO.xml: Added XML-structured TODO file.
11577         * docs/make-todo: python script to turn TODO.xml into
11578           pretty XML output. 
11579
11580 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
11581
11582         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
11583         the function to let it draw the seven dots, instead of the old,
11584         much maligned, method.
11585         (draw_dot): New function to draw a dot.
11586
11587         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
11588         to draw the handle inside the border width as opposed to outside.
11589         Use paint function instead of gdk_draw_point.
11590
11591         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
11592         to draw the handle inside the border width as opposed to outside.
11593         Use paint function instead of gdk_draw_point.
11594
11595         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
11596         Change indenting to be more GTK like.
11597
11598 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
11599
11600         * docs/gtk_tut.sgml: New section on GtkCalendar
11601         * examples/calendar: Update example code
11602
11603 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
11604
11605         * docs/gtkfaq.sgml: FAQ Update
11606
11607 2000-02-19  Anders Carlsson  <andersca@gnu.org>
11608
11609         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
11610         to prevent the scroll event to be propagated upwards.
11611
11612 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
11613
11614         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
11615         OwnerGrabButtonMask from button entries for
11616         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
11617
11618         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
11619         to the event mask (which will result in button/press release
11620         being added to the event mask on Unix) so scrolling works
11621         for layouts in scroll windows.
11622
11623         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
11624
11625         Patch from Anders Carlsson  <andersca@gnu.org> to add
11626         a scroll event.
11627
11628         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
11629         scrolling to the "Test Scrolling" part of testgtk.
11630  
11631         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
11632  
11633         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
11634         it against GDK_SCROLL.
11635  
11636         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
11637         way of mouse wheel scrolling.
11638  
11639         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
11640  
11641         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
11642  
11643         * gtk/gtkmain.c: Removed previous mouse wheel hack.
11644  
11645         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
11646         gdk_event_mask_table.
11647  
11648         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
11649         GdkEventScroll handler.
11650  
11651         * gdk/gdkevents.h: Added GdkEventScroll structure.
11652  
11653 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
11654
11655         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
11656         and Anders Carlsson to change the Paned widgets so that they
11657         can be dragged from anywhere along the length. Also change
11658         the way that this is drawn to make this apparent.
11659
11660         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
11661         from George Lebl to check that option_menu->menu is present
11662         before getting history.
11663
11664 2000-02-14  Tor Lillqvist  <tml@iki.fi>
11665
11666         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
11667         before the assertion for non-NULL segment list.
11668
11669         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
11670         Seems that pattern brushes *must* be 8x8 pixels! At least on my
11671         machine, but it might be display driver dependent. Sigh, so make
11672         sure the stipple is that size. Does Windows suck or what?
11673
11674         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
11675         places.
11676
11677 2000-02-13  Havoc Pennington  <hp@pobox.com>
11678
11679         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
11680         refcount to 1
11681         (gdk_cursor_new): init refcount to 1
11682
11683         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
11684
11685 2000-02-13  Tor Lillqvist  <tml@iki.fi>
11686
11687         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
11688         so that we don't have to do unnecessary settings to the HDC.
11689
11690         * gdk/win32/gdkdrawable-win32.c
11691         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
11692         gdk_gc_predraw.
11693
11694         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
11695         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
11696         GDI paths, call WidenPath to get the outline of the stroken path,
11697         and then fill the outline (with the brush that was built from the
11698         stipple).
11699
11700         * gdk/win32/gdkgc-win32.c: Factor out common code from
11701         _gdk_win32_gc_new and gdk_win32_gc_set_values into
11702         gdk_win32_gc_values_to_win32values. Use correct colour for
11703         SetBkColor() (Until now the code actually used a random colour in
11704         the call to SetBkColor()... but that didn't show up as not many
11705         GDI APIs use the background colour. Pattern (opaque stippled)
11706         brushes do.)
11707
11708         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
11709         gdk_win32_api_failed): New functions for error logging.
11710
11711         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
11712         WIN32_API_FAILED to call them, passing function or file name and
11713         line number.
11714
11715         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
11716
11717         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
11718         GdkColor for foreground and background in GdkGCWin32Data.
11719
11720         * gdk/makefile.cygwin: Link in the resource object separately.
11721
11722         * gdk/win32/rc/gdk.rc
11723         * gtk/gtk.rc (New file)
11724         * gdk/win32/makefile.cygwin
11725         * gtk/makefile.cygwin: Update build number in DLLs automatically,
11726         as in GLib.
11727
11728 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
11729
11730         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
11731         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
11732         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
11733         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
11734         parameters given and cursor->ref_count. coding style fixups.
11735
11736         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
11737         not GtkWidget.
11738         
11739         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
11740         fix up widget macros and add _GET_CLASS() variant.
11741         
11742         * gtk/*.c: some GtkType fixups.
11743
11744 2000-02-09  Tor Lillqvist  <tml@iki.fi>
11745
11746         * gdk/win32/gdkproperty-win32.c
11747         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
11748         were reversed.
11749
11750 2000-02-04  Tor Lillqvist  <tml@iki.fi>
11751
11752         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
11753         g_filename_to_utf8 to convert the font names Windows gives us from
11754         whatever is the default codepage to UTF-8.
11755         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
11756         in the other direction.
11757
11758         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
11759         error in debugging output.
11760
11761 2000-02-02  Tor Lillqvist  <tml@iki.fi>
11762
11763         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
11764         and height parameters to gdk_window_clear_area(). Not minus one.
11765
11766 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
11767
11768         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
11769         checks if the widget passed to gtk_drag_get_data() was not the
11770         dest widget.
11771
11772 2000-02-01  Tor Lillqvist  <tml@iki.fi>
11773
11774         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
11775         g_filename_from_utf8 functions (which were added a moment ago to
11776         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
11777         size buffers.
11778
11779         gtk_file_selection_get_filename returns the filename in the C
11780         runtime encoding. It calls g_filename_from_utf8, but copies the
11781         returned string to a static buffer, which is returned. I think
11782         this is better than returning the result from g_filename_from_utf8
11783         directly, which would mean all apps that use it would have to free
11784         the return value. Or should this function care about this issue at
11785         all? Maybe a new function with clearly defined semantics.
11786
11787         * gtk/gtkfilesel.h: Add comment about
11788         gtk_file_selection_get_filename returning the filename in the C
11789         runtime's encoding.
11790
11791         * README.win32
11792         * gdk/gdk.def
11793         * gdk/makefile.{cygwin,msc}
11794         * gtk/gtk.def: Updates.
11795
11796         * gdk/gdkcursor-win32.c: Initialise refcount.
11797
11798 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
11799
11800         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
11801
11802 2000-01-30  Havoc Pennington  <hp@pobox.com>
11803
11804         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
11805         destroy
11806
11807         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
11808
11809         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
11810         implemented in platform-specific code
11811
11812         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
11813
11814         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
11815         underscore in front
11816
11817         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
11818         put an underscore in front
11819
11820         * gdk/gdkcursor.c: new file, implements
11821         gdk_cursor_ref/gdk_cursor_unref
11822
11823         * gdk/gdkcursor.h: Refcount GdkCursor
11824
11825         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
11826
11827 2000-01-29  Tor Lillqvist  <tml@iki.fi>
11828
11829         * gdk/gdkwindow.h
11830         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
11831
11832 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
11833
11834         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
11835         structures to properly inherit from GtkWidget not GtkBin.
11836
11837 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
11838
11839         * gtk+.spec.in: Added lib/gtk+/include/* to %files
11840         (bug #5178 - Peter Wainright)
11841         
11842         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
11843         so that it will be installed.
11844         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
11845
11846 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
11847
11848         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
11849         for the GtkStyleClass vtable const.
11850
11851         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
11852         take a const string argument like GtkTranslateFunc. This will
11853         require changes in use code.
11854
11855 2000-01-19  Tor Lillqvist  <tml@iki.fi>
11856
11857         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
11858         semantics (to mimic the X11 backend, which just calls XClearArea)
11859         is to check for zero width (and height), and in that case use the
11860         window's width minus x (height minus y). This fixes for instance
11861         some redraw problems with gtkclist, which were easily noticeable
11862         in the gtk file selection widget.
11863
11864         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
11865         windows.
11866
11867 2000-01-13  Tor Lillqvist  <tml@iki.fi>
11868
11869         * configure.in
11870         * gdk/Makefile.am
11871         * gdk/x11/Makefile.am
11872         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
11873         (bug #5177).
11874         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
11875         out later.
11876
11877 2000-01-09  Tor Lillqvist  <tml@iki.fi>
11878
11879         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
11880         WM_MOVE for iconified or invisible windows. This fixes various
11881         problems when minimising windows. Thanks to Bernd Herd.
11882
11883 2000-01-05  Tor Lillqvist  <tml@iki.fi>
11884
11885         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
11886         backend's draw_lines method, not draw_points.
11887
11888 2000-01-02  Tor Lillqvist  <tml@iki.fi>
11889
11890         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
11891         before Owen's reorganisation: Don't have queued_events and
11892         queued_tail statics in this file, but use gdk_queued_events and
11893         gdk_queued_tail. This makes exposure event compression work again.
11894
11895         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
11896         seem to be needed?
11897
11898 1999-12-30  Tor Lillqvist  <tml@iki.fi>
11899
11900         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
11901         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
11902         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
11903         doesn't do anything.
11904
11905         * gdk/gdk.def: Add gdk_xid_table_insert.
11906
11907         * gdk/win32/gdkprivate-win32.h
11908         * gdk/win32/gdkevents-win32.c
11909         * gdk/win32/gdkinput-win32.c
11910         
11911         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
11912         extension_events field in the GdkWindowWin32Data struct. Use only
11913         the extension_events field in GdkWindowPrivate. Previously one was
11914         set, and the other one tested, which broke tablet
11915         functionality. Thanks to Keishi Suenaga for pointing this out.
11916
11917 1999-12-18  Tor Lillqvist  <tml@iki.fi>
11918
11919         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
11920         When handling a single character (text length == 1), don't handle
11921         it as if it was UTF-8.
11922
11923 1999-12-11  Tor Lillqvist  <tml@iki.fi>
11924
11925         * Makefile.am: Distribute README.win32.
11926         
11927         * gdk/Makefile.am
11928         * gdk/win32/Makefile.am: Distribute Win32 files.
11929
11930         * gdk/makefile.msc: New file.
11931
11932         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
11933         after label).
11934
11935         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
11936         gdk_error_code as GDKVAR, as they are referred outside GDK.
11937
11938         * gdk/win32/makefile.msc: Update.
11939
11940         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
11941         tweaks. Check only if at least one of those Unicode subrange bits
11942         we care for is set. If no code page bits are set, guess (wildly)
11943         based on the charset.
11944
11945         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
11946
11947         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
11948         non-NULL.
11949
11950         * gtk/gtkdnd.c
11951         * gtk/gtklayout.c
11952         * gtk/gtkplug.c
11953         * gtk/gtkselection.c
11954         * gtk/gtksocket.c
11955         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
11956         appropriate. There must be a cleaner way to handle this?
11957
11958         * gtk/gtkrc.c: Must include windows.h on Win32.
11959
11960         * gtk/testgtk.c: No need to include gdkx.h.
11961
11962         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
11963
11964 1999-12-07  Tor Lillqvist  <tml@iki.fi>
11965
11966         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
11967         the rbearing is set to the same as the width, but this should be
11968         fixed.
11969
11970 1999-12-06  Tor Lillqvist  <tml@iki.fi>
11971
11972         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
11973         function. If Windows doesn't tell us what Unicode subranges a font
11974         covers, guesstimate based on the codepages it covers. This will
11975         hopefully help those Windows versions or fonts that don't give us
11976         any useful Unicode subrange information with GetTextCharsetInfo.
11977         Call this function in gdk_font_load_internal.
11978
11979         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
11980         minor changes.
11981
11982 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
11983
11984         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
11985         New function, long needed.
11986
11987 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
11988
11989         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
11990         only_if_exists argument of gdk_atom_intern to
11991         bool.
11992
11993 1999-11-25  Tor Lillqvist  <tml@iki.fi>
11994
11995         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
11996         Fix two copy&paste errors.
11997
11998         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
11999         win32 has changed.
12000
12001         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
12002         GdkWin32SingleFont struct.
12003
12004         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
12005         subranges of loaded fonts. Clear font signature first, in case
12006         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
12007         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
12008
12009         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
12010         Unoffset clip region.
12011
12012 1999-11-23  Tor Lillqvist  <tml@iki.fi>
12013
12014         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
12015         event->any.window before calling filter functions.
12016
12017 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
12018
12019         * gtk/gtkgamma.h: Adapt cast macros to standard.
12020
12021 [ Merges from 1.2 ]
12022
12023 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
12024
12025         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
12026         If translation does not include a '/', use entire
12027         translation instead of crashing.
12028
12029 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
12030
12031         * docs/gtk_tut.sgml:
12032         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
12033
12034 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
12035
12036         * gtk/gtkselection.c (gtk_target_list_remove): Use
12037         g_list_remove_link, not g_list_remove.
12038
12039         [ From Geert Bevin <gbevin@thunderstorms.org> ]
12040         
12041 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
12042
12043         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
12044         statement upon unselection (how the heck did that slip in?).
12045
12046 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
12047
12048         * gtk/gtktext.c (gtk_text_freeze): 
12049         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
12050         in frozen state (and aparently crashes). patch provided by Anders
12051         Melchiorsen <and@kampsax.dtu.dk>.
12052
12053 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
12054
12055         * fix insensitive default/focus widget activation,
12056         reported by Matt Goodall <mgg@isotek.co.uk>.
12057
12058         * gtk/gtkwindow.c (gtk_window_key_press_event): 
12059         (gtk_window_activate_default):
12060         (gtk_window_activate_focus):
12061         return handled=FALSE for actiavtion of insensitive default
12062         widgets. return handled=TRUE for activation of insensitive
12063         focus widgets. don't activate in either case.
12064
12065 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
12066
12067         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
12068         and $glib_cflags to match library order and in the
12069         theory that an old version of GLib is more likely to
12070         be in the include directory for X then vice-versa.
12071         (Bug #2776)
12072
12073 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
12074
12075         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
12076         to determine the locale for fontsets, not LC_MESSAGES;
12077         the user may want English messages with a handling
12078         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
12079         will still be broken) (Bug #2891)
12080
12081 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12082
12083         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
12084
12085 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
12086
12087         * gtk/gtkrc.ko: Changed the Korean default fontset.
12088
12089 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
12090
12091         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
12092         where when scrolling to the left or top double exposes
12093         were done, causing major slowdowns.
12094
12095 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
12096
12097         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
12098         names to lowercase and alphanumeric, before looking
12099         them up.
12100
12101         * gtk/Makefile.am: Install codeset variant gtkrc files
12102         with normalized names.
12103
12104 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
12105
12106         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
12107         popup menus when the menu is already visible, but its parent
12108         is still hidden, (happens after tornoff window got hidden).
12109
12110 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
12111
12112         * gtk/Makefile.am (install-data-local): Fix
12113         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
12114         deleted, causing error messages on install.
12115
12116 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
12117
12118         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
12119         the handle as well, since we now sometimes ignore
12120         exposes on the handle while resizing.
12121
12122 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
12123
12124         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
12125         extra g_free introduced in one of the last one or two 
12126         commits.
12127
12128 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
12129
12130         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
12131         consistent, put each style that a gtkrc.* file creates
12132         in a unique namespace, remove old files before installing.
12133
12134 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
12135
12136         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
12137         gtk_rc_init is called multiple times. (Yes, people who
12138         do that have bugs in their code.)
12139
12140 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
12141
12142         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
12143         Remove it since it's generated by the Makefile anyway
12144
12145 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
12146
12147         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
12148         device->info.axes for core pointer.
12149
12150 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
12151
12152         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
12153         idle_id, to deal with obsolete, broken C libraries.
12154
12155 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
12156
12157         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
12158         allocation->x/y twice!
12159
12160         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
12161         consistent with gtk_vscale_pos_trough().
12162
12163 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
12164
12165         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
12166         be queueing a resize on a toplevel container between
12167         the time we show it and when we map it. So, we need
12168         to test GTK_WIDGET_VISIBLE() for toplevels, and only
12169         use GTK_WIDGET_DRAWABLE() for child windows.
12170
12171 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
12172
12173         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
12174         (fixes bug #2144)
12175
12176 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
12177
12178         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
12179         container DRAWABLE (instead of VISIBLE), so we don't queue
12180         resizes on non-toplevel containers.
12181
12182 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
12183
12184         * gtk/gtkselection.[ch]: Make the data argument
12185         const guchar *.
12186
12187 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
12188
12189         * gtk/gtkwindow.c: Try to behave sensibly if 
12190         the focus widget is the window itself. (Should
12191         we allow this at all?)
12192
12193 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
12194
12195         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
12196         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
12197         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
12198         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
12199         in prototypes and implementations consistent (Tomas Ogren).
12200
12201         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
12202         before the widget is unparented (reported by damon).
12203
12204         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
12205         since we provide unsigned data anyways.
12206
12207 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
12208
12209         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
12210         the call to gtk_tooltips_layout_text() until later.
12211
12212         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
12213         Call gtk_widget_ensure_style() before using the style.
12214
12215 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
12216
12217         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
12218         for old widgets that don't propagate draws to all
12219         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
12220
12221 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
12222
12223         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
12224         for a redraw but just the widget that requested the resize.
12225
12226 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
12227
12228         * gtk/gtkcontainer.c: added new widget level method
12229         gtk_container_set_reallocate_redraws() and a GtkContainer flag
12230         reallocate_redraws : 1 to reflect the setting, exported this through
12231         the argument system as a boolean ::reallocate_redraws.
12232
12233         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
12234         on the widget because the allocation changes, do so as well for
12235         widget->parent if the parent has reallocate_redraws set to TRUE.
12236         with that containers requesting reallocation redraws get automatically
12237         redrawn if their children changed allocation (this unfortunately
12238         affects also other children that didn't change allocation, but we
12239         cannot work around that before 1.3).
12240
12241 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
12242
12243         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
12244         _and_ height are >0 (not _or_).
12245
12246         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
12247         instead of gtk_container_queue_resize(), which is a core gtk internal
12248         function (must have been on crack when i queued that).
12249
12250         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
12251         we can check more reliably if we want to discard expose events.
12252         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
12253         flag.
12254         
12255         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
12256         we simply trust these events. for deciding whether to discard exposes,
12257         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
12258         
12259 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
12260
12261         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
12262         queues of areas that are completely off screen.
12263
12264         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
12265         logic for handleboxes.
12266
12267         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
12268         check on width/height.
12269
12270 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
12271
12272         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
12273         we are fine with using $@ the way we do (if we actually encounter
12274         brokeness with $@ in VPATH builds because of additional path prefixes,
12275         we need to use $(@F) actually).
12276
12277 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
12278
12279         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
12280         short lived bugs, that would allow language bindings to do surgeries
12281         to our guts.
12282
12283 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
12284
12285         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
12286         where comparison was being done against an uninitialized
12287         value causing intermittant results depending on
12288         compiler flags. Also make it clearer that we aren't
12289         ever initializing the child as 0x0 (though this will
12290         be caught in gtk_widget_size_allocate())
12291
12292 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
12293
12294         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
12295         gtk_window_unset_transient_for() call after we do checks
12296         involving the old transient parent.
12297         [ From Lance Capser <lmc@cyberhighway.net> ]
12298
12299 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
12300
12301         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
12302         an empty file.
12303
12304 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
12305
12306         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
12307         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
12308
12309 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
12310
12311         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
12312         `$@' is valid only in the build dir, not after we've done 
12313         `cd $srcdir'.  Also use `test -f' instead of less portable
12314         `test -e'.
12315
12316 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
12317
12318         * gtk/gtktext.c (correct_cache_insert): Rewrite
12319          for simplicity, and hopefully correctness.
12320          (Fixes bug #1322, which was a segfault when
12321           on some insertions with the properties around
12322           the insertion set up just wrong.)
12323
12324         * gtk/gtktext.c (gtk_text_adjustment): When we receive
12325          a "changed" signal, clamp the new value to the adjustment
12326          bounds to avoid segfaulting if someone tries to change
12327          the adjustment to a bogus value. (Bug #1795)
12328
12329 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
12330
12331         * gtk/gtkmain.c: Ignore unexpected destroy notifies
12332         for children, for toplevel windows handle them
12333         like delete_event.
12334
12335         * gtk/gtkplug.c: Add an unrealize handler so that
12336         we unref plug->socket_window when we are done
12337         with it.
12338
12339 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
12340
12341         * gtk/gtktext.c (clear_area): Fix stupid signedness
12342          problem that was causing background to sometimes
12343          be misaligned.
12344
12345 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
12346
12347         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
12348         
12349         * gtk/gtkmenu.c (gtk_menu_position): Make
12350          sure we never position menus with negative x, y,
12351          since gtk_widget_set_uposition() can't handle that.
12352
12353         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
12354          Modify the positioning code a bit so that we always
12355          put the top-left corner onscreen. (This is for
12356          UI reasons, gtk_menu_position() now takes care of
12357          gtk_widet_set_uposition() brokeness.)
12358
12359 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
12360
12361         * gtk/Makefile.am: fixed up things for -jx, x > 1.
12362
12363 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
12364
12365         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
12366           RC style that is passed in. The lack of the ref
12367           before was a bug. If people worked around this
12368           bug, this will introduce a slight memory leak
12369           in their code. The code should typically look like:
12370
12371             rc_style = gtk_rc_style_new ();
12372             [...]
12373             gtk_widget_modify_style (widget, rc_style);
12374             gtk_rc_style_unref (rc_style);
12375
12376         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
12377           the style if it was already set.
12378
12379         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
12380           style if it was set before.
12381
12382 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
12383
12384         * gtk/testgtk.c (main): Add a check to see if we
12385           are being run from the correct directory and
12386           to quit nicely if we are not.
12387
12388         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
12389           static.
12390
12391 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
12392
12393         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
12394
12395         * gtk/gtkwindow.c:
12396         queue resizes unconditionally (gtk_widget_queue_resize will figure
12397         what to do if the window is not realized).
12398         (gtk_window_move_resize): only recenter the window
12399         for GTK_WIN_POS_CENTER_ALWAYS.
12400         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
12401         the same way as GTK_WIN_POS_CENTER.
12402
12403 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
12404
12405         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
12406         with (!(info->last_flags & GDK_HINT_POS)) instead of
12407         (!info->last_flags & GDK_HINT_POS).
12408
12409         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
12410         new_height unconditionally, because we use these values even if
12411         !default_size_changed && !hints_changed.
12412         comented the (default_size_changed || hints_changed) case with
12413         respect to resize rejects from the window manager.
12414
12415         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
12416         in the zvt condition hack, since this includes the window hints, set
12417         the hints after the handling_resize case.
12418
12419         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
12420         window is initially shown with to the geometry.
12421
12422 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
12423
12424         * gtk/gtkwindow.c (gtk_window_move_resize):
12425         s/size_changed/default_size_changed/g so i know what's
12426         really going on (frying brain on smaller flame now).
12427
12428 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
12429
12430         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
12431         we have size_changed upon handling_resize. this is a gross
12432         workaround for the broken zvt widget and should be removed in
12433         1.3 again (search for FIXME).
12434         Owen provided an accurate comment for this:
12435
12436         /* We could be here for two reasons
12437          *  1) We coincidentally got a resize while handling
12438          *     another resize.
12439          *  2) Our computation of size_changed was completely
12440          *     screwed up, probably because one of our children
12441          *     is broken. It's probably a zvt widget.
12442          *
12443          * For 1), we could just go ahead and ask for the
12444          * new size right now, but doing that for 2)
12445          * might well be fighting the user (and can even
12446          * trigger a loop). Since we really don't want to
12447          * do that, we requeue a resize in hopes that
12448          * by the time it gets handled, the child has seen
12449          * the light and is willing to go along with the
12450          * new size. (this happens for the zvt widget, since
12451          * the size_allocate() above will have stored the
12452          * requisition corresponding to the new size in the
12453          * zvt widget)
12454          *
12455          * This doesn't buy us anything for 1), but it shouldn't
12456          * hurt us too badly, since it is what would have
12457          * happened if we had gotten the configure event before
12458          * the new size had been set.
12459          */
12460
12461 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
12462
12463         * gtk/gtkrc.c: deal properly with the fact that RC
12464           style lists may include rc styles more than once.
12465
12466         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
12467           unused static function.
12468
12469         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
12470           stack of directories of RC files currently being
12471           parsed and implicitely add them to pixmap path.
12472           
12473           This fixes a bug where the directory would get
12474           appended then overwritten by pixmap_path declarations.
12475
12476           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
12477
12478         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
12479           theme's exit function. (Patch from Peter Wainwright,
12480           bug #1454)
12481
12482         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
12483           Add a destroy() handler to take care of removing
12484           group for menu item. (Fixes bug #1197)
12485
12486         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
12487           in warning message.
12488
12489 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
12490
12491         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
12492         roundtrip to figure window's width and height, since we know that
12493         anyways from widget->allocation.
12494
12495 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
12496
12497         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
12498           the hints after we request the new size.
12499
12500 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
12501
12502         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
12503           GTK_WIDGET_REALIZED() assertion - we can compute the
12504           hints before we are realized.
12505
12506         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
12507           hint changing so that we have a value of hints_changed
12508           when we decide whether to constrain the window size.
12509
12510         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
12511
12512         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
12513         change back to G_MAXINT.
12514
12515 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
12516
12517         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
12518         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
12519         contain uncluttered values.
12520         (gtk_window_compute_hints): simply assert that window is realized
12521         and that geometry_info is valid, since we rely on this anyways.
12522         (gtk_window_constrain_size): major cleanups to the code.
12523         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
12524         for the base size, instead of the minimums. use 32767 as max width
12525         and height (like in gtkwindow.c) instead of G_MAXINT.
12526
12527 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
12528
12529         * cleaned up the GtkContainer.need_resize flag handling mess, we
12530         only need to force resize requests when we were prematurely
12531         realized, or our widget tree was modified when we were temporarily
12532         hidden. handling these cases directly upon showing the window (i.e.
12533         while the GdkWindow is still unmapped) avoids the need to wait for
12534         a configure event response and therefore makes the GUI more snappier
12535         and avoids blank windows during the roundtrip.
12536
12537         * gtk/gtkwidget.c:
12538         (gtk_widget_hide): 
12539         (gtk_widget_show): don't queue resizes on toplevels, they know how
12540         to deal with matters.
12541
12542         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
12543         flag directly for not visible resize containers and spare us unecessary
12544         signal emissions.
12545
12546         * gtk/gtkwindow.c:
12547         (gtk_window_realize): if we need to enforce premature size allocation,
12548         queue a container resize so we are correctly resized later on.
12549         (gtk_window_init):
12550         (gtk_window_size_request):
12551         don't freak around with the ->need_resize flag,
12552         gtk_container_queue_resize() will care about that.
12553         (gtk_window_show):
12554         handle initial resizing issues here, we can handle matters better in
12555         this place, especially since we know that our GdkWindow is still
12556         unmapped.
12557         (gtk_window_move_resize):
12558         don't care about ->need_resize at all.
12559         handle size changes properly that occoured while we waited for a
12560         configure event.
12561
12562 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
12563
12564         * gtk/gtkwidget.c (gtk_widget_set_uposition):
12565         * gtk/gtkwindow.[hc] (gtk_window_reposition):
12566         Move the hint setting code from gtk_widget_set_uposition
12567         to here; set the hints so that we respect any previously
12568         set geometry hints.
12569
12570         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
12571         change the window hints here or move the window here,
12572         let that happen in gtk_window_move_resize().
12573
12574 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
12575
12576         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
12577         to already queued resizes (and therefore redraws) on a widget, check
12578         its anchestry as well.
12579
12580         * gtk/gtkcontainer.c:
12581         (gtk_container_queue_resize): clear resize widgets for resize
12582         containers before aborting prematurely. this is especially important
12583         for toplevels which may need imemdiate processing or their resize
12584         handler to be queued.
12585         (gtk_container_dequeue_resize_handler): added new internal function for
12586         gtkwindow.c.
12587
12588         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
12589         configure event, take possible changes in window position into account
12590         as well.
12591         if we request a new window size, queue up a resize handler that will
12592         last until the configure event response arrives.
12593         combined the ->need_resize case (initial show) with the general size
12594         (hints) changed case and added even more comments.
12595         if !auto_shrink, only revert to the old allocation if the new size
12596         is smaller than the current allocation.
12597
12598 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
12599
12600         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
12601                            gtk_window_set_geometry_hints
12602                            gtk_window_set_default_size):
12603         When hints are set, queue a resize so that the hints will
12604         be eventually reset on the toplevel.
12605
12606         * gtk/gtkwindow.c (gtk_window_show): Use
12607         gtk_window_compute_default_size(). Clear the need_resize flag
12608         on the initail map so that we don't unnecessarily trigger the
12609         resize code.
12610
12611         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
12612         into separate functions. Compare the hints we are setting
12613         with what we set last time so that we can accurately
12614         tell when we need to reset the hints.
12615
12616         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
12617         function to figure out the size from requisition
12618         and default_size.
12619
12620         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
12621         from fvwm to constrain a size to the geometry hints.
12622
12623         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
12624         to compare two sets of geometry hints.
12625
12626         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
12627         from gtk_window_set_hints(), just compute the hints,
12628         don't set them.
12629
12630         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
12631         code from gtk_window_move_resize() to separate function,
12632         rationalize a bit.
12633
12634 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
12635
12636         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
12637         structure into a new private structure.
12638
12639         * gtkrc.c: Split GtkRcStyle into public/private.
12640         In the private part, add a list of pointers to the
12641         RcStyle lists this RcStyle participates in.
12642
12643         * gtkrc.c: When a RcStyle is free, remove all
12644         lists referencing it from the 
12645         realized_style_ht hash, and free those lists.
12646         
12647         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
12648         gtk_rc_init(), since that adds the default styles
12649         to the list of parsed RC files again.
12650
12651         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
12652         
12653 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
12654
12655         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
12656         checks that ensure that a widget's allocation is at least 1 in width
12657         and height. (GNOME note: this doesn't affect old panel code anymore,
12658         because GtkSocket will request width and height of at least 1 since
12659         Fri Jul 23).
12660
12661         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
12662         allocated yet (happens if the user realizes the window prematurely),
12663         size request and allocate it.
12664         (gtk_window_size_allocate): guard against guint underflows.
12665
12666 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
12667
12668         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
12669         in gtk_built_sources, so gtk.defs gets built prior to all other
12670         sources.
12671
12672 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
12673
12674         * gtk/Makefile.am:
12675         invoke indent on gtkmarshal.*. 
12676         rewrote source generation rules, use COPYING as oldest source tag for
12677         a piggyback rule to generate all sources from (don't touch it ;).
12678         major cleanups, strip spaces on build rules for GNU Make.
12679
12680         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
12681         source and target files from commandline arguments. don't invoke indent.
12682
12683 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12684
12685         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12686         notebook after switch to avoid drawing problems.
12687         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12688         
12689         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12690         show them instead. 
12691         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12692
12693 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
12694
12695         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
12696         notebook after switch to avoid drawing problems.
12697         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
12698         
12699         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
12700         show them instead. 
12701         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
12702
12703 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
12704
12705         * gtk/gtkwindow.c:
12706         we use window->need_resize from configure_event now, to indicate that
12707         the gtkwindow should keep its allocation (e.g. because the user resized
12708         the window through window manager handles). resize_count is now reliably
12709         used to figure whether we got the allocation we requested from the
12710         window manager.
12711         configure events get queued as resizes now, the real stuff (size
12712         computation and allocation) now only goes on in gtk_window_move_resize().
12713         GtkWindow's requisition now contains its *real* requisition (like all
12714         other widgets), *not* taking usize into account.
12715         geometry_info->last_{width|height} is now updated from set_hints() only
12716         so it always contains the last hints we set for the window manager.
12717         made some event handlers return TRUE instead of FALSE.
12718         the overall code should be much more straight forward now, and the
12719         significant code portions are accompanied by comments now.
12720         (gtk_window_set_hints):
12721         removed requisition argument and made it
12722         fetch the requisition through gtk_widget_get_child_requisition.
12723         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
12724         does that now.
12725         (gtk_window_show):
12726         ensure that the widget is realized before calling 
12727         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
12728         ensure that we got properly size requested and allocated before
12729         realization.
12730         (gtk_window_configure_event):
12731         ignore plain window moves, or reallocate the widget tree through the
12732         resize queue otherwise.
12733         (gtk_window_move_resize):
12734         mostly rewrote this function to figure window manager hints more
12735         reliably, coalesce window moves and resizes to reduce configure events
12736         and do actuall size allocations.
12737
12738 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
12739
12740         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
12741         that have a resize pending, because a redraw is already queued for them.
12742
12743         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
12744         hack to clear resize_widgets.
12745
12746         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
12747         for resize containers prior to size allocation. (this is also a bit
12748         ugly, but avoids side effects for stopped emissions and is thus more
12749         reliable).
12750         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
12751
12752         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
12753         function from gtk_tooltips_expose, as we connect to ::expose_event
12754         *and* ::draw now.
12755
12756 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
12757
12758         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
12759         checks.
12760         (gtk_target_list_unref): Likewise.
12761
12762         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
12763
12764 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
12765
12766         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
12767         guard against division by zero. (Fixes bug #1339)
12768
12769 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
12770
12771         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
12772         Prevent the trivial leak of information of allowing
12773         word motion when the entry is not visible.
12774
12775 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
12776
12777         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
12778         modality to error dialog as well as confirmation dialogs.
12779         (Bug #1803, reported by Rosanna Wing Sze Yuen)
12780
12781 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
12782
12783         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
12784         tree->view_lines.
12785         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
12786
12787         * gtk/Makefile.am (install-data-local): Solaris apparently
12788         has various troubles with ln -f; use rm first instead.
12789         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
12790
12791 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
12792
12793         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
12794         use `cp' followed by `rm' (the `rm' was already there).
12795
12796 July 30, 1999 Elliot Lee <sopwith@redhat.com>
12797         
12798         * configure.in: Fix autoconf warnings about cross compilation by
12799         trying to provide sane defaults for AC_TRY_RUN.
12800         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
12801         put them into $(srcdir) when generated. Also add a dependency of
12802         gtksignal.h on gtkmarshal.h for -j builds. 
12803         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
12804
12805 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
12806
12807         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
12808         GDK_THREADS_{LEAVE,ENTER} pair.
12809         (From Paul Fisher <pnfisher@redhat.com>)
12810
12811 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
12812
12813         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
12814         width and height are always >0 (owen).
12815
12816 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
12817
12818         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
12819         change that assured that a widget's allocated with and height are
12820         always >1, since this breaks *buggy* panel code. unfortunately this
12821         back-breaks the gimp's color selector.
12822
12823         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
12824         allocation is always >0 in width and height, before sending the
12825         configure event; this is a *gross* hack to get the gimp back to work.
12826         
12827         * marked both cases with TODO-1.3
12828
12829 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
12830
12831         * gtk/gtktext.c: Don't display wrap indicators when
12832         text is not editable and word wrap is on.
12833
12834 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
12835
12836         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
12837         option menus here as they are not derived from menu shell, assure that
12838         the option menu has a menu we can add items to.
12839
12840 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
12841
12842         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
12843         width/height to (gint) before calculations and check against < 0 to
12844         avoid guint wraparounds.
12845
12846 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
12847
12848         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
12849         width and height is never zero. sanity check both dimensions against
12850         32767 and issue a warning if the allocation is greater than that.
12851
12852 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
12853
12854         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
12855         to g_main_pending() as well.
12856
12857 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
12858
12859         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
12860         call to g_main_iteration() - since that will regrab
12861         GTK+ lock to process events.
12862
12863 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
12864
12865         * gtk/gtkwindow.c
12866         - Regularize with the rest of GTK+ by making widget->requisition
12867           not reflect the set_usize()
12868         - Always recompute geometry hints, then check if they
12869           changed before sending them to the X server. The
12870           previous checks for changes would fail in a number
12871           of circumstances. 
12872
12873 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
12874
12875         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
12876
12877 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
12878
12879         * gtk/gtkdnd.c:
12880         - Code cleanups
12881         - Instantaneously update on modifier key presses
12882         - Allow cancellation of the drag with Escape.
12883
12884 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
12885
12886         * gtk/testgtk.c (create_handle_box): Set the policy
12887         to auto_shrink - otherwise the appearance is rather
12888         strange when flipping between horizontal and vertical.
12889
12890 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
12891
12892         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
12893         (gtk_window_set_default_size): don't change a value if it's < 0.
12894         queue a resize.
12895
12896 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
12897
12898         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
12899
12900 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
12901
12902         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
12903         add an extra "/" when concating "/" + filename.
12904         (From Matt Grossman <mattg@oz.net>)
12905
12906 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
12907
12908         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
12909         for fg_gc if we set it for drawing pixmap.
12910
12911 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
12912
12913         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
12914         
12915         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
12916         already set, call old engine's destroy function and
12917         unref the old engine.
12918
12919 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
12920
12921         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
12922
12923 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
12924
12925         * gtk/gtkaccelgroup.h: mark certain functions as internal.
12926
12927 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
12928
12929         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
12930         expand behaviour changed.
12931
12932         * gtk/gtklabel.c (gtk_label_set_pattern):
12933         (gtk_label_set_justify):
12934         (gtk_label_set_line_wrap):
12935         don't bother invoking queue_clear, the reallocation does
12936         that for us, always free_words so the upcoming resize will
12937         relayout the label's contents.
12938
12939 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
12940
12941         * applied argument implementation patches from Elena Devdariani
12942         <elena@cogent.ca>.
12943
12944         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
12945         ::space_style, ::relief
12946         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
12947         * gtk/gtkpreview.c: ::expand
12948         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
12949         * gtk/gtknotebook.c: ::homogeneous
12950         * gtk/gtklabel.c: ::wrap
12951         * gtk/gtklist.c: ::selection_mode
12952         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
12953         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
12954         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
12955         * gtk/gtkclist.c: ::sort_type
12956         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
12957         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
12958
12959 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
12960
12961         * gtk/gtkstyle.c: Removed ill-thought-out part of last
12962         comment.
12963
12964 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
12965
12966         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
12967         counting right when we have to attach a new style
12968         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
12969
12970         * gtk/gtkstyle.c: Documented the refcounting
12971         peculularities of gtk_style_attach.
12972
12973 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12974
12975         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
12976         window types.
12977
12978         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
12979         of GTK_TOPLEVEL for creating the window.
12980
12981 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
12982
12983         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
12984         the last argument (reported by Per Winkvist).
12985         
12986 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
12987
12988         Fixes for invisible XOR lines (Frank Loemker
12989         <floemker@TechFak.Uni-Bielefeld.DE>)
12990         
12991         * gtk/gtkclist.c (gtk_clist_realize): Always use
12992         a non-zero pixel for GDK_XOR.
12993
12994         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
12995         Use GDK_INVERT instead of GDK_XOR.
12996
12997 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
12998
12999         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
13000         signals if h/voffsets differ from adjustment values.
13001         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
13002
13003 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
13004
13005         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
13006         ::selection-done emissions up to the topmost menu shell.
13007
13008 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
13009
13010         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
13011         the user data on the window before destroying it.
13012
13013         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
13014         unrealize handler to take care of destroying 
13015         notebook->panel properly. 
13016         (Bug #1198 - Morten Welinder <terra@diku.dk>)
13017
13018         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
13019         of g_new and g_realloc to stop memory leak. (Actually,
13020         we could just use g_realloc(), but I'm not 100% sure
13021         that is portable).
13022         (Bug #1196 - Morten Welinder <terra@diku.dk>)
13023
13024 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
13025
13026         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
13027
13028         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
13029         for fontsets.
13030
13031         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
13032         with bin/button confusion.
13033
13034 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
13035
13036         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
13037         and show how preselection of radio items is done.
13038
13039 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
13040
13041         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
13042         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
13043         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
13044         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
13045         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
13046         * gtk/gtktable.c (gtk_table_attach): 
13047         * gtk/gtklist.c (gtk_list_insert_items): 
13048         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
13049         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
13050         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
13051         * gtk/gtkbin.c (gtk_bin_add): 
13052         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
13053         * gtk/gtkfixed.c (gtk_fixed_put): 
13054         * gtk/gtklayout.c (gtk_layout_put):
13055         general fixups to container_add logic. always realize child if
13056         child->parent is realized, only map the child and queue a resize
13057         if child and child->parent are both visible.
13058
13059 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
13060
13061         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
13062         instead of gtk_container_foreach to walk and unrealize children, so
13063         composite children get also unrealized.
13064         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
13065         (gtk_widget_map): assert that the widget is visible (basic constrain).
13066         (gtk_widget_real_map): assert that the widget is realized (basic
13067         constrain).
13068
13069 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
13070
13071         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
13072
13073 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
13074
13075         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
13076         file for iso-8859-2 locales.
13077
13078         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
13079
13080 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
13081
13082         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
13083          (Pointed out by andy@rz.uni-karlsruhe.de and others).
13084          Remove some suspicious and useless lines. 
13085
13086 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
13087
13088         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
13089         width,height = 0, 0 to mean - here to edge of window,
13090         instead of -1, -1, since the former is all we support.
13091
13092 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
13093
13094         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
13095         when removing from quit_functions list.
13096
13097 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
13098
13099         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
13100
13101 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
13102
13103         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
13104          When redrawing characters on non-visible entry, use appropriate
13105          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
13106
13107 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
13108
13109         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
13110         from drag coordinates.
13111         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
13112         use drag_dest_cell.
13113
13114         * gtk/gtktree (drag_dest_cell)
13115         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
13116         (Bug #1129)
13117
13118 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
13119
13120         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
13121         translate_* fields.
13122         (gtk_item_factory_finalize): invoke translate_notify independant from
13123         translate_data.
13124         (gtk_item_factory_set_translate_func): likewise.
13125         (gtk_item_factory_destroy): only remove ifactory pointer from those
13126         widgets that belong to us (stupid me).
13127
13128 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
13129
13130         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
13131         rc_style list when lookup succeeeds.
13132
13133 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
13134
13135         * gtk/gtkctree.c (resync_selection): 
13136         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
13137         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
13138         bug.
13139
13140 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
13141
13142         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
13143         Add some missing GDK_THREADS_ENTER()/LEAVE around
13144         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
13145
13146 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
13147
13148         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
13149         rather than emit_by_name.
13150
13151         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
13152         on the widget across multiple signal emissions.
13153         (gtk_editable_delete_text): same here.
13154         (gtk_editable_class_init): set widget_class->activate_signal after
13155         editable_signals[ACTIVATE] has been created.
13156
13157 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
13158
13159         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
13160         position here prematurely -- we might not have the
13161         right ->min_position and ->max_position yet.
13162
13163 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
13164
13165         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
13166         Add error traps so if the other end of the connection
13167         dies, we survive.
13168
13169         * gtk/gtkselection.c (gtk_selection_notify): Clean
13170         up properly when selection property retrieval fails.
13171         
13172         * gtk/gtkselection.c (gtk_selection_request): Correctly
13173         reject SelectionRequest notifies where the handler
13174         returns no data.
13175
13176 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
13177
13178         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
13179         when we've previously highlighted.
13180
13181         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
13182         emit two "drag_leave" signals for Motif drops.
13183
13184         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
13185         back the correct status messages when dropping from
13186         Motif onto a proxy window that is rejecting the
13187         drop.
13188
13189 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
13190
13191         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
13192         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
13193         to compare two argument values. added gtk_arg_to_valueloc() to set a
13194         variable from an arg through its location (pointer).
13195
13196         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
13197         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
13198         as gfloat*, uchars are collected as guchar*, ints are collected as
13199         gint*, etc...
13200
13201 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
13202
13203         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
13204         Include <string.h> instead of <strings.h>.
13205
13206         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
13207         (actually, a lot more duplicate includes occur if
13208          you trace through the sequence of #include's)
13209         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
13210         
13211 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
13212
13213         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
13214         gtk-a-higuti-990322-[0-3]
13215
13216         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
13217         that was causing -DX_LOCALE not to work.
13218
13219         * gtk/gtkrc.c (gtk_rc_init):
13220         X_LOCALE will never have LC_MESSAGES defined
13221
13222 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
13223
13224         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
13225         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
13226
13227         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
13228         left/right as well (gtk-michael-980726-0.patch.gz).
13229
13230         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
13231         for pointer values, use gchar instead of char. fixed uline allocation
13232         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
13233         chunks instead of G_ALLOC_ONLY.
13234         (gtk_label_size_request): always alter requisition as passed and leave
13235         widget->requisition alone.
13236         (gtk_label_set_text): allow NULL strings.
13237         (gtk_label_new): likewise.
13238
13239 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
13240
13241         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
13242
13243 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
13244
13245         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
13246         *and* mapped (i.e. drawable).
13247         (gtk_bin_expose): only send exposes to drawable children.
13248
13249         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
13250         (gtk_box_expose): only send exposes to drawable children.
13251
13252         * gtk/gtkhscale.c (gtk_hscale_draw): 
13253         * gtk/gtkvscale.c (gtk_vscale_draw):
13254         hm, this is an ugly one. we first compute the size of our trough area
13255         here (window relative) and then check intersection with the draw_area
13256         which is parent relative because we're a NO_WINDOW widget, so we need
13257         to offset the trough area by allocation.x and allocation.y before the
13258         check. (this must not be done for the background area though, since
13259         that's already computed parent relative).
13260
13261 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
13262
13263         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
13264         unrealize title buttons.
13265
13266 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
13267
13268         * gtk/gtkclist.c (gtk_clist_column_title_passive)
13269         (gtk_clist_column_title_active): 
13270         only connect/disconnect to GtkWidgetClass::event to block mouse events.
13271
13272         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
13273         zero initialize event, removed superfluous gdk_window_get_pointer call
13274
13275         * gtk/gtklist.c (gtk_list_vertical_timeout)
13276         (gtk_list_horizontal_timeout): removed superfluous
13277         gdk_window_get_pointer call
13278
13279 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
13280
13281         * plugging problems reported by "Bruce Mitchener, Jr."
13282         <bruce@puremagic.com> due to a purify session.
13283
13284         * gtk/gtkstyle.c:
13285         (gtk_style_ref): 
13286         (gtk_style_unref): assert ref_count to be > 0.
13287
13288         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
13289         the requisition.
13290         (gtk_clist_set_shift): likewise.
13291
13292         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
13293         adjustments.
13294
13295         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
13296         event before sending it and set send_event to TRUE (which needs to
13297         be done for *all* synthesized events).
13298         (gtk_list_vertical_timeout): likewise.
13299
13300         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
13301         leaks.
13302
13303         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
13304         to TRUE when synthesizing events.
13305
13306 [ *** end of merges from 1.2 *** ]      
13307         
13308 1999-11-21  Tor Lillqvist  <tml@iki.fi>
13309
13310         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
13311         (or copied from gdkconfig.h.win32 on Win32, sigh).
13312
13313         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
13314
13315         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
13316
13317         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
13318
13319         * gdk/gdkconfig.h.win32: New file.
13320
13321         * gdk/win32/makefile.cygwin: Build just a static archive here.
13322
13323         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
13324         for the DLL from the static archive built above.
13325
13326         * gdk/gdk.def: Moved here from the win32 subdirectory.
13327
13328         * gdk/win32/*: Adapt for the changed private struct organisation.
13329
13330         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
13331
13332 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
13333
13334         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
13335         for wheel mice (buttons 4 and 5).
13336
13337 1999-11-18  Tor Lillqvist  <tml@iki.fi>
13338
13339         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
13340         drawables use just the pixel field in the foreground and
13341         background GdkColor of the GdkGC.
13342
13343         gdk_gc_set_{fore,back}ground() are called in the GIMP with
13344         GdkColors containing uninitialized (red,green,blue) fields, and
13345         just the pixel field filled in, and furthermore in the
13346         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
13347         It thus turns out that we really don't need to have the full
13348         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
13349         it later to have just the pixel values.
13350
13351 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13352
13353         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
13354
13355 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
13356
13357         * docs/gtkfaq.sgml: threads example from Erik Mouw.
13358         New question on GtkLabel background colors.
13359
13360         * docs/gtk_tut.sgml:
13361           - Correct the example code callback
13362             function definitions.
13363           - Update the gtkdial example code, from Frans van Schaik.
13364           - Update setselection.c to current API.
13365
13366         * examples/Makefile examples/*/*.c: Update to code
13367         listed in tutorial.
13368
13369 1999-11-10  Tor Lillqvist  <tml@iki.fi>
13370
13371         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
13372         subrange table (from the "Developing International Software for
13373         WIndows 95 and Windows NT" book) was missing the Hangul syllable
13374         block... Get the loaded font's charset correctly.
13375
13376         (Note that this, and the other *-win32.c files, still really are
13377         the old ones, the win32 subdirectory is not ready for compilation
13378         yet after the reorg.)
13379
13380 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
13381
13382         * gtk/gtkclist.c: Fix off-by-one bug in parameter
13383         check.
13384
13385 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
13386
13387         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
13388         on results of XQueryDeviceState().
13389
13390 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
13391
13392         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
13393         we need to accesss only ->children. We need an accessor
13394         for the children.
13395
13396         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
13397         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
13398         to get rid of gdkx.h include.
13399         
13400         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
13401         and random references to 'None'.
13402
13403         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
13404         Get rid of unused #include <gdk/gdkx.h>
13405
13406         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
13407         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
13408         gdkconfig.h.
13409
13410 1999-11-08  Tor Lillqvist  <tml@iki.fi>
13411
13412         * gdk/win32/gdkdraw.c
13413         * gdk/win32/gdkfont.c
13414         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
13415         following yesterday's changes. (Unrelated to Owen's reorg.)
13416
13417 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
13418
13419         * gdk/x11/gdkinput-gxi.c: Add missing include,
13420           fix GdkWindowPrivate => GdkDrawablePrivate.
13421
13422         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
13423
13424         * gdk/x11/Makefile.am (xinput_sources): Add missing
13425         backslash to fix building with --with-xinput=none
13426
13427 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
13428
13429         Move all X specific code into the x11/ directory.
13430         Aside from shuffling things around, did the following:
13431
13432        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
13433          gdk_arg_context_* - a simple argument parsing system
13434          in the style of popt.
13435
13436        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
13437          gdk/x11/gdkprivate-x11.h:
13438          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
13439          add ->klass and ->klass_data fields. The klass_data
13440          field points to an auxilliary structure that is
13441          windowing system dependent.
13442
13443        * gdk/gdkfont.c: Make most of the measurement functions
13444          simply wrappers around gdk_text_extents().
13445
13446        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
13447          _gdk_font_strlen() function that hides the weird
13448          behavior in gtk+-1.[02] where a string is interpreted
13449          differently for 8-bit and 16-bit fonts.
13450
13451        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
13452          to store common code for synthesizing double/triple
13453          press events.
13454         
13455        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
13456          Make all the function that modify an existing GC
13457          simply wrappers around gdk_gc_set_values().
13458          
13459        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
13460          for throwing out later.
13461
13462        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
13463          GdkImagePrivate and GdkColormapPrivate to have a
13464          windowing system dependent part (GdkFontPrivateX etc.)
13465          that "derives" from the system-independent part.
13466
13467        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
13468          Got rid of the included-source-files for XInput in
13469          favor of automake conditionals. (Which didn't exist
13470          when XInput support was originally added.)
13471
13472        * gdk/gdkrgb.c: Remove the visual id from the debugging
13473          statements since that is X11 specific; print out
13474          type/depth info instead.
13475          
13476
13477 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
13478
13479         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
13480         loading duplicates of hashed fonts.
13481
13482         * gdk/gdk.c (gdk_keysym_convert_case): rename
13483         gdk_XConvertCase to gdk_keysym_convert_case, allow
13484         results to be NULL in the GTK+ style.
13485
13486         * gdk/gdkcompat.h: Started compatibility header
13487         for renames.
13488
13489 1999-11-07  Tor Lillqvist  <tml@iki.fi>
13490
13491         * gdk/win32/gdkprivate.h: New font private structures, related to
13492         fontsets.
13493
13494         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
13495         gdk_font_list_free(). On X11, will just be wrappers to
13496         XListFonts() and XFreeFontNames(). On Win32, the code previously
13497         in gtkfontsel.c is now here.
13498
13499         New function gdk_font_xlfd_create(). On X11 will get the FONT
13500         property of the font (for GDK_FONT_FONTs), or call
13501         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
13502         builds a XLFD style name from the font information in the LOGFONT
13503         struct(s).
13504
13505         New function gdk_font_xlfd_free(), which correspondingly frees the
13506         string returned by gdk_font_xlfd_create().
13507
13508         Implement fontsets on Win32. Add a function that iterates over a
13509         wide char string and calls a callback function for each substring
13510         of wide chars from the same Unicode subrange (and thus probably
13511         available in the same real font).
13512
13513         Improve the XLFD emulation a bit.
13514
13515         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
13516
13517         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
13518         Beta3, WM_IME_CHAR messages don't seem to contain the composed
13519         multi-byte char as with the Active IMM on Win9x. Oh well, handle
13520         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
13521         ImmGetCompositionStringW() to get the composed Unicode chars.
13522
13523         * gdk/win32/gdkgc.c
13524         * gdk/win32/gdkdraw.c: Changes needed because of the font private
13525         struct changes.
13526
13527         * gdk/win32/gdk.def: Add the new functions.
13528
13529 1999-11-04  Tor Lillqvist  <tml@iki.fi>
13530
13531         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
13532         get the Platform SDK to get <dimm.h>.
13533
13534         * gdk/win32/gdkevents.c: More event handling fixes and
13535         simplification. Never generate motion events with is_hint true. We
13536         used to do that on bogus grounds earlier. Windows sends
13537         WM_MOUSEMOVE messages on button events even if the mouse hasn't
13538         moved, ignore these.
13539
13540         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
13541
13542         * gdk/win32/gdkglobals.c
13543         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
13544         the TrackMouseEvent function, and use it.
13545
13546         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
13547         char before calling WideCharToMultiByte in order to get a string
13548         for the window title.
13549
13550         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
13551
13552         * gdk/win32/gdk.def: Remove obsolete functions.
13553
13554         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
13555         /nodefaultlib and /defaultlib switches.
13556
13557         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
13558
13559 1999-10-31  Tor Lillqvist  <tml@iki.fi>
13560
13561         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
13562         EuroSign).
13563
13564         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
13565         same type as GdkWChar, especially on Win32.
13566
13567         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
13568
13569         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
13570         before passing to Windows GDI for drawing etc. Convert to the
13571         system default codepage before passing to Windows as window
13572         titles.
13573
13574         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
13575         support changing input locale on the fly.
13576
13577         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
13578         on-the-fly changes. Convert incoming characters from the current
13579         codepage to Unicode (and then to a UTF-8 multi-byte string) based
13580         on the current input language. Use keysym<->Unicode mapping tables
13581         and functions borrowed from xterm sources.
13582
13583         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
13584         editions of Win9x, use the ActiveX-based Active IMM (Input Method
13585         Manager) if available. IMEs and the Active IMM are available under
13586         the disguise of Chinese, Korean and Japanese support for IE and
13587         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
13588         support is present in all editions (as long as you install it).
13589
13590         Call DispatchMessage from gdk_events_queue() (and thus
13591         gdk_WindowProc()), instead of duplicating the code in
13592         gdk_WindowProc().
13593
13594         Reworked the grab handling and propagation code, factored out
13595         duplicated code snippets into separate functions. Other cleanups,
13596         too.
13597
13598         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
13599         the <dimm.h> header describing the Active IMM.
13600
13601         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
13602         just do the same as for "single" fonts.
13603
13604         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
13605         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
13606         the new keysyms from gdkkeysyms.h.
13607
13608         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
13609         fontset, so that gtkentry uses wide characters.
13610
13611         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
13612         GTk+'s system directory "gtk+", not "gtk".
13613
13614 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
13615
13616         * docs/gtkfaq.sgml: FAQ update
13617
13618 1999-10-21  Tor Lillqvist  <tml@iki.fi>
13619
13620         * gdk/win32/gdkprivate.h: Add more font private data.
13621
13622         * gdk/win32/gdkfont.c
13623         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
13624         fonts and strings. Now works much better. You still have to
13625         have a correct font selected, though. No fontset emulation yet.
13626
13627 1999-10-19  Tor Lillqvist  <tml@iki.fi>
13628
13629         * gtk/maketypes.awk: Use G_OS_WIN32.
13630
13631         * gtk/gtk.def: Add some missing entry points. Also some non-public
13632         ones, but PyGTK porter claims to need them.
13633
13634         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
13635         built-in type generation.
13636
13637 1999-10-14  Tor Lillqvist  <tml@iki.fi>
13638
13639         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
13640         GDK_FONT_FONT fonts (which is all we have for now, we don't
13641         emulate fontsets). The X11 version uses plain XDrawString in that
13642         case, too. The string passed to gdk_draw_text_wc seems to be in
13643         fact (at least, when used by gtkentry and gtktext) either in a
13644         single-byte charset, or a DBCS. Not Unicode.
13645
13646         This fixes the problem in gtkfontsel, where even if you had
13647         selected a font with a non-Latin1 charset (windows-greek, for
13648         instance), the preview still used Latin-1 glyphs.
13649
13650         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
13651         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
13652         (gdk_font_load): Recognize the demibold etc weights, even if we
13653         don't have the corresponding constants in the headers.
13654         (gdk_font_hash_insert): Use same hash mechanism as in the X11
13655         version. Should save font resources a bit, when we don't have
13656         multiple HFONTs for the same font.
13657
13658         * gdk/win32/gdkprivate.h: Add the names field as in the X11
13659         version.
13660
13661 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
13662
13663         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
13664         X values
13665
13666 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
13667
13668         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
13669         layout support (as mentioned on
13670         http://www.jcinteractive.com/gnome-ui/software/widgets/)
13671
13672 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
13673
13674         * gtk/fnmatch.c
13675         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
13676
13677 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
13678
13679         * configure.in (ALL_LINGUAS): Added Galician (gl)
13680
13681 1999-10-05  Tor Lillqvist  <tml@iki.fi>
13682
13683         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
13684
13685         * gdk/win32/gdkcompat.c: New file, actually provide an
13686         implementation for the deprecated functions. (Just temporarily.)
13687
13688         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
13689
13690         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
13691
13692         * gdk/win32/gdk.def gtk/gtk.def: Updates.
13693
13694 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
13695
13696         * configure.in: Added "uk" to ALL_LINGUAS.
13697         
13698 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
13699
13700         * configure.in: correct checking for BeOS check
13701
13702         * gdk/gdktypes.h
13703         * gtk/fnmatch.c
13704         * gtk/gtkfilesel.c
13705         * gtk/gtkitemfactory.c
13706         * gtk/gtkmain.[ch]
13707         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
13708
13709 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
13710
13711         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
13712         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
13713         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
13714         by Bulgarian). 
13715
13716 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
13717
13718         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
13719         Fix a reference to window_private->destroyed.   
13720
13721         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
13722         (ugly) setting of an internal GdkWindow member to use
13723         a _slightly_ cleaner macro.
13724
13725         * gdk/gdkprivate.h: Split GdkWindowPrivate into
13726         GdkDrawablePrivate and GdkWindowPrivate.
13727         Add extra macros for accessing GDK_DRAWABLE_ components.
13728
13729         * *.[ch]: Massive adjustments for the above, use the
13730         new macros in a lot of places.
13731
13732 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
13733
13734         * gdk/gdktypes.h: Make GdkDrawable the base type,
13735         not GdkWindow.
13736
13737 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
13738
13739         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
13740
13741 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
13742
13743         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
13744
13745 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
13746
13747         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
13748         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
13749
13750         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
13751
13752         * docs/gtk-config.1: Now autogenerated.
13753         * docs/Changes-1.4.txt: started
13754         
13755 1999-10-03  Tor Lillqvist  <tml@iki.fi>
13756
13757         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
13758         to #ifdef also here.
13759
13760         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
13761         Owen did to the X11 backend.
13762
13763         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
13764         ScrollWindowEx when blitting inside a window, it can't be correct
13765         in the general case.
13766
13767         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
13768         WM_GETMINMAXINFO is easier.
13769
13770         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
13771         depth equal to the bitspixel value, not the visual's depth.
13772
13773         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
13774         to 24 even if the bitspixel value is 32.
13775
13776         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
13777         need to check for depth==32 when bpp==32, depth will always be 24.
13778
13779 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
13780
13781         * docs/Changes-1.4.txt: Started
13782         
13783         * gtk/Makefile.am (gdk_headers): Include all the new headers.
13784
13785         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
13786         
13787         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
13788         into C file.
13789         
13790         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
13791         header to gdkinputprivate.h.
13792
13793         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
13794         unused since before 1.2.
13795
13796 1999-09-30  Tor Lillqvist  <tml@iki.fi>
13797
13798         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
13799         expand possible hex escapes in the font family (put there by
13800         logfont_to_xlfd if the font name isn't a legal XLFD font family,
13801         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
13802         On Win32, add hex escapes here, too.
13803
13804 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
13805
13806         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
13807         to #ifdef GDK_WINDOWING_X11.
13808
13809 [ Merges from gtk-1-2 ]
13810
13811 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
13812
13813         * configure.in: fixed "GNU Make" check to pass with new make version
13814         3.77.95.
13815
13816 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
13817
13818         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
13819         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
13820         AM_PATH_GTK() macros don't get confused by the -pre1.
13821
13822 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13823
13824         * configure.in (REBUILD): Change check for perl5
13825           to check explicitely for v >= 5.002. (5.001
13826           does not work with our scripts.)
13827
13828 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
13829
13830         * configure.in: evaluate $PERL for the perl version check. added
13831         --disable-rebuilds to give the user an option to completely disable
13832         any source autogeneration rules.
13833
13834 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
13835
13836         * configure.in: evaluate $ac_make when checking for GNU Make.
13837
13838 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
13839
13840         * docs/Makefile.am: added generation.txt.
13841
13842         * Makefile.am: require automake 1.4, build README from README.in and
13843         INSTALL from INSTALL.in in dist-hook.
13844         
13845         * README.in:
13846         * INSTALL.in: new files to autogenerate README and INSTALL from.
13847
13848         * configure.in: figure whether we have GNU Make
13849
13850         * docs/generation.txt: minor additions/corrections.
13851
13852 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
13853
13854         * docs/gtkfaq.sgml: FAQ Update
13855
13856 July 30, 1999 Elliot Lee <sopwith@redhat.com>
13857         
13858         * configure.in: Fix autoconf warnings about cross compilation by
13859         trying to provide sane defaults for AC_TRY_RUN.
13860
13861 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
13862
13863         * ltconfig
13864         * ltmain.sh: upgrade to libtool 1.3.3
13865
13866 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
13867
13868         * INSTALL: Indicate that the --with-glib= configure
13869         time flag is unsupported.
13870
13871 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
13872
13873         * docs/generation.txt: Added a file that gives
13874         documenation about the autogeneration process for
13875         various autogenerated files.
13876         
13877 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13878
13879         * configure.in (LIBS): Look for libgmodule in the
13880         right location.
13881
13882 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
13883
13884         * docs/gtk_tut.sgml: Removed references to
13885         code examples in my directory on gtk.org as
13886         they should all be in the tutorial now.
13887
13888         * docs/gtk_tut.sgml: Added sources for dial-test
13889         and scribble-xinput programs that were previously
13890         missing.
13891
13892 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
13893
13894         * TODO: Added entry about menu keyboard navigation, removed
13895         some finished items.
13896
13897 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
13898
13899         * acinclude.m4: Standardize on func_dgettext
13900         not func_gettext, so that the checks for dgettext
13901         actually are paid attention to.
13902
13903 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
13904
13905         * configure.in (LIBS): Add $INTLLIBS into $LIBS
13906         directly, rather than repeating the checks for
13907         gettext.
13908
13909         * INSTALL: Added information about gettext and
13910         NLS support.
13911
13912         * acinclude.m4 (LIBM): Check for dgettext, not
13913         just gettext. This should hopefully fix things wrt
13914         systems with old versions of GNU gettext installed.
13915
13916 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
13917
13918         * configure.in (LIBS): Look for libgmodule in the
13919         right location.
13920
13921 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
13922
13923         * autogen.sh: add --enable-maintainer-mode
13924
13925         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
13926
13927 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
13928
13929         * docs/gtk-config.1.in:
13930           docs/Makefile.am:
13931           configure.in: gtk-config is now generated.
13932
13933         * docs/gtk-config.1: Removed, now generated.
13934
13935 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
13936
13937         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
13938         handle CreateNotify itself, still put out a debuging message for
13939         --gdk-debug=events. made the ReparentNotify debugging message more
13940         verbose.
13941         wrap xcoords translation for ConfigureEvents into an error trap,
13942         a destroy event may already be pending, and in that case, the
13943         actuall coordinate values are not at all critical.
13944
13945 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
13946
13947         * gdk/gdkcc.c: Stop leaking the color_hash all over
13948         the place. Simplify and improve the logic.
13949
13950 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
13951
13952         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
13953         for prototypes and function implementations consistent (reported
13954         by Tomas Ogren).
13955
13956 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
13957
13958         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
13959         send_event set in debugging output.
13960         (gdk_compress_exposures): default initialize the event so we don't
13961         operate on bogus values (namely send_event).
13962
13963 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
13964
13965         * gdk/gdkwindow.c: When we receive an unexpected
13966         destroy notify on one of our windows, don't just
13967         warn about it, also mark our windows as destroyed.
13968
13969 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
13970
13971         * gdk/gdkfont.c (gdk_font_hash_insert): Add
13972           name => font and name => fontset hashes. The 
13973           name => fontset hash is a _big_ win since we
13974           weren't previously caching fontsets at all and loading
13975           fontsets is expensive. The name => font hash
13976           is less of a win, but it does save us from doing
13977           repeated XQueryFont calls on the same font.
13978
13979         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
13980           list so we can remove font/fontset from hash.
13981
13982 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
13983
13984         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
13985           and slightly confusing test. [ XInternAtom (,,TRUE)
13986           will never return None ].
13987
13988 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
13989
13990         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
13991           gdk/gdkwindow.c (gdk_window_set_hints):
13992
13993         Don't omit setting the properties if flags == 0 -
13994         there may be an existing set of properties there
13995         already. (Very old bug. Would it be better to
13996         delete the property instead?)
13997
13998         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
13999           spelling error in comment.
14000
14001 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
14002
14003         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
14004           to avoid stomping over gdk_error_warnings.
14005
14006         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
14007           as (bits_per_pixel + 7) / 8. This gives the same
14008           result as before for multiples of 8, but actually
14009           a "reasonable" value for 1bit or 4bit displays.
14010
14011 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
14012
14013         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
14014         GNU Make.
14015
14016 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
14017
14018         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
14019         discarding configure events.
14020
14021 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
14022
14023         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
14024         refcount is greater than zero.
14025
14026         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
14027
14028         * gdk/gdkfont.c (gdk_font_unref): Likewise.
14029
14030         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
14031
14032         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
14033
14034 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
14035
14036         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
14037         that format 32 => sizeof(item) == 4. It really is
14038         sizeof(long).
14039
14040 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
14041
14042         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
14043         core dump at all on X IO errors, only core dump
14044         if --enable-debug for X errors.
14045
14046 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
14047
14048         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
14049         unknown window:" message. disabled ConfigureNotify discarding code,
14050         because it led to events being processed out of order.
14051
14052 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
14053
14054         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
14055
14056         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
14057         we export this function, supress error warnings and don't reset the
14058         error code in the first half of this function.
14059
14060         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
14061         code (instead of just -1) so gdk_error_trap_pop() reveals something
14062         actually informative about the error that happened.
14063
14064         * gdk/*.c:
14065         don't rely on gdk_error_code being -1 if an error occoured, but just
14066         gdk_error_code != 0.
14067
14068 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
14069
14070         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
14071         pointer *before* invoking the filter function, so we at least don't
14072         crash if a filter is removed that is currently executed. window filters
14073         *really* need to be made truely reentrant at some point.
14074
14075 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
14076
14077         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
14078         PropertyNotify debug messages.
14079
14080 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
14081         
14082         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
14083         
14084         * gdk/gdkim.c: Fix cut-and-paste errors for 
14085         x/y and PreeditAttributes/StatusAttributes.
14086
14087 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14088
14089         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
14090         G_MAXINT to 2^16 to alleviate overflow problems in
14091         various window managers.
14092
14093 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
14094
14095         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
14096         for fontsets.
14097
14098 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
14099
14100         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
14101         Initialize size_hints.x and size_hints.y because kwm
14102         brokenly pays attention to them.
14103         (Bug #1181 -  Lars Heete <hel@admin.de>)
14104
14105 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
14106
14107         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
14108         return value of gdk_list_visuals(). 
14109         (Bug #1193 - Morten Welinder <terra@diku.dk>)
14110
14111 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
14112
14113         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
14114         XSetIMValues to (void *) when comparing to NULL, to workaround
14115         the problem of some compilers barfing since older X headers don't
14116         have the prototype for it.
14117
14118 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
14119
14120         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
14121         for pseudocolor where colormap->colors was double
14122         allocated.
14123
14124         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
14125         color value in the hash table with the pixel filled
14126         in so when we do later hash table lookups, the color
14127         value is correct.
14128         
14129 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
14130
14131         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
14132         making the call
14133
14134 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
14135
14136         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
14137         pointed out by Morten Welinder <terra@diku.dk>.
14138
14139 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14140
14141         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14142           default filter from the list
14143
14144 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14145
14146         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14147           default filter from the list
14148
14149 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
14150
14151         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
14152
14153         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
14154         g_strdup_printf instead of calcing the length separately
14155
14156 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
14157
14158         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
14159         that we don't do in many other places. (Fixing duplicate 
14160         #include of config.h)
14161
14162         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
14163         Otherwise, #ifndef XINPUT_NONE check in the latter
14164         doesn't work. (Bug #546)
14165
14166 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
14167
14168         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
14169         "None" case insensitive.
14170
14171 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
14172
14173         * gdk/gdkselection.c: 
14174         Add error traps so if the other end of the connection
14175         dies, we survive.
14176
14177 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
14178
14179         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
14180         dest_xid field into two fields - one for the window
14181         to send in messages, one to indicate the last looked
14182         up window for caching purposes. This is needed, so
14183         that Leave messages get the correct window.
14184
14185 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
14186
14187         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
14188         Fix warning created by people mucking around
14189         with the gsource API.
14190
14191         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
14192         Change mapping between GIOCondition and GdkInputCondition
14193         to match the way the Linux kernel does it. This should
14194         fix problems where closed pipes were no longer signalling
14195         GDK_INPUT_READ on systems with a native poll().
14196
14197 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
14198
14199         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
14200         explicitly for the string "None" - it is in the XPM
14201         spec and some servers treat unknown colors in odd ways
14202         (like asking the user!)
14203
14204 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
14205
14206         * gdk/gdkevents.c: made "->" into a "." of previous change so
14207         it compiles
14208
14209 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
14210
14211         * gdk/gdkevents.c (gdk_compress_exposures): Set the
14212         window field of the event structure before calling
14213         user filters.
14214
14215 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
14216
14217         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
14218         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
14219
14220 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
14221
14222         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
14223         intermediate text property - prevents major memory
14224         leak when gdk_use_mb.
14225         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
14226
14227 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
14228
14229         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
14230         gtk-a-higuti-990322-[0-3]
14231
14232         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
14233         sizeof(wchar_t) != sizeof (GdkWChar)
14234
14235         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
14236         that was causing -DX_LOCALE not to work.
14237
14238         * gtk/gtkrc.c (gtk_rc_init):
14239         X_LOCALE will never have LC_MESSAGES defined
14240
14241         * gdk/gdk.c (gdk_init_check):
14242         Remove --xim-preedit and --xim-status from argv properly.
14243
14244         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
14245         that the client window is present on the X server
14246         before we pass it to the input method.
14247
14248 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
14249
14250         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
14251         if --display is specified on the command line, than
14252         the drag window will not be created on that display.
14253         
14254 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
14255
14256         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
14257         lookups with only_if_exists == TRUE were inserting
14258         bogus values into the atom cache.
14259
14260 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
14261
14262         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
14263         then reset it to NULL.
14264
14265         * gdk/gdkcolor.c:
14266         (gdk_colors_free): 
14267         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
14268         key for g_hash_table_remove() in both functions, this prevents us
14269         from accessing possibly uninitialized portions of a GdkColor structure
14270         where we are only interested in its pixel value.
14271
14272 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14273
14274         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14275         font hash table, if we have a GdkFontPrivate entry for this font
14276         already, simply increment its reference count, provided by Olaf Dietsche
14277         <olaf.dietsche+list.gtk@netcologne.de>.
14278
14279 1999-09-21  Tor Lillqvist  <tml@iki.fi>
14280
14281         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
14282         just to be sure.
14283
14284         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
14285         unused variables, leftovers from the X11 version.
14286
14287         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
14288
14289         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
14290         downcase fields on X11.
14291
14292 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
14293         
14294         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
14295         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
14296
14297 1999-09-17  Tor Lillqvist  <tml@iki.fi>
14298
14299         * gdk/win32/gdk.def: Add gdk_threads_mutex.
14300
14301         * gtk/makefile.msc: Correct path to libintl.
14302
14303         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
14304         use of gint vs. int, and gint vs. gboolean in headers and
14305         definitions. Use GtkType for the *_get_type functions. Note that
14306         these changes preserve binary compatibility.
14307
14308         * gdk/gdk.c
14309         * gdk/win32/gdk.c
14310         * gdk/gdk.h: Fix inconsistencies: gint vs int.
14311
14312         * gtk/gtkmain.c
14313         * gtk/gtkclist.c
14314         * gtk/gtkmenufactory.c
14315         * gtk/gtknotebook.c
14316         * gtk/gtkwidget.c: Fix inconsistencies, also gint
14317         vs. gboolean.
14318
14319         * gtk/gtkcolorsel.[ch]
14320         * gtk/gtkcombo.[ch]
14321         * gtk/gtkdrawingarea.[ch]
14322         * gtk/gtkgamma.[ch]
14323         * gtk/gtkhandlebox.[ch]
14324         * gtk/gtkhpaned.[ch]
14325         * gtk/gtkhruler.[ch]
14326         * gtk/gtkplug.[ch]
14327         * gtk/gtkpreview.[ch]
14328         * gtk/gtkruler.[ch]
14329         * gtk/gtksocket.[ch]
14330         * gtk/gtkstatusbar.[ch]
14331         * gtk/gtktoolbar.[ch]
14332         * gtk/gtkvbbox.[ch]
14333         * gtk/gtkvpaned.[ch]
14334         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
14335         functions.
14336
14337         * gtk/gtkgamma.h: Fix bug, missing () in call of
14338         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
14339
14340 1999-09-14  Tor Lillqvist  <tml@iki.fi>
14341
14342         * gdk/gdkcolor.c (gdk_colormap_new)
14343         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
14344         colormap->colors was allocated twice.
14345
14346         * gdk/win32/gdk.c: Remove some unused stuff.
14347
14348         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
14349         colormap.
14350
14351         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
14352         * gtk/gtklabel.h (gtk_label_get_type)
14353         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
14354         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
14355         in a couple of places, not guint.
14356
14357 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14358
14359         * configure.in,po/et.po: added Estonian language file
14360
14361 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
14362
14363         * configure.in,po/da.po: added Danish file
14364
14365 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
14366
14367         * docs/gtkfaq.sgml: Minor FAQ Update
14368
14369 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
14370
14371         * docs/gtkfaq.sgml: FAQ update
14372
14373 1999-08-27  Tor Lillqvist  <tml@iki.fi>
14374
14375         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
14376         way to get window contents continually refreshed while resizing. I
14377         didn't like the effects myself, so it's not on by default.
14378
14379         * gdk/win32/gdkprivate.h: New flag variable
14380         gdk_event_func_from_window_proc, FALSE by default.
14381
14382         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
14383         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
14384         are passed --gdk-event-func-from-window-proc.
14385
14386         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
14387         and we have am event_func, call it instead of enqueing the event.
14388
14389 1999-08-23  Tor Lillqvist  <tml@iki.fi>
14390
14391         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
14392         Kelley: Set expose_count in GdkEventExposes correctly.
14393
14394         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
14395         MULTIPLE_WINDOW_CLASSES).
14396
14397         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
14398         for bug in NT, apparently NT *does* draw the end pixel, too, in
14399         LineTo with a one-pixel pen, so we don't have to do it ourselves.
14400
14401 1999-08-21  Tor Lillqvist  <tml@iki.fi>
14402
14403         Improvements by Hans Breuer: 
14404
14405         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
14406
14407         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
14408         CS_?REDRAW flags as they cause lots of (late) redraws when "show
14409         window contents while dragging" is turned on. Allocate at least
14410         one unique class for every GdkWindowType. If support for single
14411         window-specific icons is ever needed (eg. Dialog specific), every
14412         such window should get its own class.
14413
14414 1999-08-19  Tor Lillqvist  <tml@iki.fi>
14415
14416         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
14417         error that caused crashes.
14418
14419 1999-08-17  Tor Lillqvist  <tml@iki.fi>
14420
14421         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
14422         window, use ScrollWindowEx, and call UpdateWindow. This prevents
14423         bugs when for instance part of the window was outside the
14424         display. Thanks to Philippe Colantoni for finding and fixing this.
14425
14426 1999-08-16  Tor Lillqvist  <tml@iki.fi>
14427
14428         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
14429         endpoint calculations which were totally wrong. (A little RTFMing
14430         helps a lot ;-)
14431
14432         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
14433         from a separate directory, not from gettext, because of licensing
14434         issues (we want to use the LGPL version).
14435
14436         * README.win32: Mention the intl from glibc vs from gettext issue.
14437
14438 1999-08-13  Tor Lillqvist  <tml@iki.fi>
14439
14440         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
14441         in the key event handling: Now AltGr chars work again. Also,
14442         now Alt-digits are passed up as well as Control-digits.
14443         Pass keypad plus and minus as normal plus and minus.
14444
14445 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
14446
14447         * docs/gtkfaq.sgml: FAQ Update
14448
14449 1999-07-25  Tor Lillqvist  <tml@iki.fi>
14450
14451         * README.win32
14452         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
14453         the Wintab SDK.
14454
14455         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
14456         OK, but getting closer. Guard against bogus tilt data from Wacom
14457         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
14458         enable easier building without Wintab.
14459
14460         * gdk/win32/gdkinput.h
14461         * gdk/win32/gdkevents.c 
14462         * gdk/win32/gdkwindow.c: Minor changes related related to above.
14463         
14464         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
14465         code. As we have just one visual on Win32, no sense to have it in a
14466         table, and no need for the hash table.
14467
14468         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
14469         better on white background.
14470
14471 1999-07-21  Tor Lillqvist  <tml@iki.fi>
14472
14473         * README.win32: Update gcc build instructions. Mention gettext is
14474         GPL.
14475
14476         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
14477         supported cursor size with GetSystemMetrics.
14478
14479         * gdk/win32/gdkfont.c
14480         * gtk/gtkfontsel.c: Guard against some font weight and charset
14481         symbols being undefined (in mingw32 headers).
14482
14483         * gdk/win32/makefile.cygwin
14484         * gtk/makefile.cygwin
14485         * gtk/gtkthemes.c: No longer need to have differently named
14486         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
14487
14488 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
14489
14490         * docs/gtkfaq.sgml: Long awaited FAQ update.
14491
14492 1999-07-15  Tor Lillqvist  <tml@iki.fi>
14493
14494         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
14495         it. Obscure bit manipulation needed.
14496
14497         * gdk/win32/gdkevents.c: Logging.
14498         
14499         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
14500         style (file name include compiler name) for theme engines.
14501
14502 1999-07-13  Tor Lillqvist  <tml@iki.fi>
14503
14504         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
14505
14506         * gdk/win32/gdkevents.c: Fix long-standing bug in key
14507         events. The key.string wasn't zero-terminated, still we strdup'ed
14508         it in gdk_event_copy(). Synthesize crossing events for button
14509         events before possible propagation.
14510
14511         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
14512
14513         * gdk/win32/makefile.cygwin
14514         * gtk/makefile.cygwin: Use new DLL naming style for the
14515         GCC-compiled ones.
14516
14517         * gdk/win32/makefile.msc
14518         * gtk/makefile.msc: Cosmetics mostly.
14519
14520         * gtk/gtk.def: Add missing entry points.
14521
14522         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
14523
14524 1999-07-09  Tor Lillqvist  <tml@iki.fi>
14525
14526         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
14527         or height is zero. Don't print a warning if Pie or Arc fails, they
14528         always fail (?) for very narrow ellipses.
14529
14530         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
14531         the part or the destination window corresponding to source area
14532         outside of the source drawable's boundary.
14533
14534         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
14535         anything if less than two points.
14536
14537         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
14538         return NULL. Gtk cut-and-paste inside a single program works
14539         better this way. (It always gets the clipboard contents from
14540         Windows, not from its own copy, which is cleared anyway. I can't
14541         say I fully understand what happens... Emulating the X selection
14542         and property stuff is a bit of a mess.)
14543
14544         * gdk/win32/gdkevents.c
14545         * gdk/win32/gdkproperty.c: A bit more verbose logging.
14546
14547         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
14548         that never got deleted). Revamp gdk_region_shrink.
14549
14550         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
14551         after use.
14552
14553         * gtk/gtk.def: Add some missing entry points.
14554
14555         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
14556         component.
14557
14558 1999-07-04  Tor Lillqvist  <tml@iki.fi>
14559
14560         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
14561         Control-digits specially.
14562
14563 1999-07-03  Tor Lillqvist  <tml@iki.fi>
14564
14565         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
14566
14567 1999-06-28  Tor Lillqvist  <tml@iki.fi>
14568
14569         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
14570         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
14571         finding this.)
14572
14573 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
14574
14575         * gtk+.spec.in: Corrected some typos in files section.
14576         
14577 1999-06-15  Tor Lillqvist  <tml@iki.fi>
14578
14579         * README.win32: Mention using GNU gettext.
14580         * config.h.win32: Enable NLS stuff.
14581         * gtk/makefile.msc: Use GNU gettext.
14582         * gdk/win32/gdkdnd.c: Minor header reorg.
14583         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
14584         cosmetics.
14585         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
14586         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
14587
14588 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
14589
14590         * acinclude.m4
14591         * config.guess
14592         * config.status
14593         * ltconfig
14594         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
14595
14596 1999-05-30  Tor Lillqvist  <tml@iki.fi>
14597
14598         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
14599         SafeAdjustWindowRectEx. Don't override all calls to
14600         AdjustWindowRectEx by it, but use it only in two places: When
14601         creating a new top-level window and when moving a top-level
14602         window.
14603
14604         Use screen coordinate rectangle, not client rectangle, in
14605         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
14606         when we try to place a window so that the decoration (mainly,
14607         title bar) isn't visible.
14608
14609         These changes fix the bug that showed up for instance as the
14610         GIMP's saved top-level windows moving right and down (by an amount
14611         equal to the window decoration) for each session. This bug showed
14612         up also in testgtk's "Saved Position".
14613
14614         gdk_window_resize also redone a bit.
14615
14616 1999-05-25  Tor Lillqvist  <tml@iki.fi>
14617
14618         * gtk/testgtkrc: Add (commented out) Windows-style theme
14619         include line.
14620
14621         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
14622
14623 1999-05-18  Tor Lillqvist  <tml@iki.fi>
14624
14625         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
14626         gdkx.h to a gdk subdirectory, so that applications can include
14627         these with <gdk/*.h> without trouble.
14628
14629         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
14630         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
14631         have their bitmap destroyed.
14632
14633         * gdk/win32/gdk.def: Add gdk_root_parent.
14634
14635 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
14636
14637         * configure.in
14638           gtk-config.in
14639           ltconfig
14640           ltmain.sh     
14641           gtk/Makefile.am: changes to compile nicely (with xlib) 
14642           on BeOS
14643
14644 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
14645
14646         * acinclude.m4
14647         * config.guess
14648         * config.sub
14649         * ltconfig
14650         * ltmain.sh: upgrade to libtool 1.3
14651
14652 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
14653
14654         * gtk/gtkclist.c:
14655         * gtk/gtkctree.c: merges from gtk-1-2
14656
14657 1999-04-25  Tor Lillqvist  <tml@iki.fi>
14658
14659         Support added for building using a GNU toolchain on Win32,
14660         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
14661
14662         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
14663         * config.h.win32: Changes for gcc.
14664         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
14665         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
14666         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
14667         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
14668         Protect shl stuff unavaiilable with mingw32 headers.
14669         * gdk/win32/gdkevents.c: Fix typo.
14670         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
14671         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
14672         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
14673         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
14674         the mingw32 headers.
14675         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
14676         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
14677         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
14678         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
14679         Test for NATIVE_WIN32, not _MSC_VER.
14680         * gtk/gtkmain.c: No use warning about developer version on Win32,
14681         there aren't any non-developer versions anyhow.
14682         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
14683         * gtk/makefile.msc: Use pthread from another directory. Minor other
14684         changes. 
14685
14686 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
14687
14688         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
14689           default filter from the list
14690
14691 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
14692
14693         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
14694          when gtk_widget_grab_default() is called for a widget that
14695          is not within a GtkWindow.
14696
14697 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
14698
14699         * docs/gtk_tut.sgml, examples/clist.c: use a
14700           scrolled window in the clist example. Minor
14701           tutorial fixes.
14702
14703 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
14704
14705         * docs/gtk_tut.sgml: Style check from David King
14706           <dking@youvegotmail.net>
14707
14708 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
14709
14710         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
14711         compile with unknown value of GDK_WINDOWING
14712
14713 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
14714
14715         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
14716         after the rule is fired.
14717         (install-exec-local): Install gdkconfig.h only if the contents are
14718         different from the currently installed gdkconfig.h.
14719
14720 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
14721
14722         * gdk/Makefile.am (configexecincludedir): Rename from 
14723         configincludedir so that gdkconfig.h will be installed 
14724         as part of `make install-exec'. 
14725
14726 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
14727
14728         * acinclude.m4
14729         * config.guess
14730         * config.sub
14731         * ltconfig
14732         * ltmain.sh: upgrade to libtool 1.2f
14733
14734         * autogen.sh: libtool is not required to autogen gtk+
14735
14736         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
14737         needed)
14738
14739 1999-03-18  Tor Lillqvist  <tml@iki.fi>
14740
14741         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
14742         declaring gdk variables exported/imported from the DLL. New image
14743         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
14744         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
14745         GDK_DRAG_PROTO_OLE2.
14746
14747         * gdk/gdk.h: Merge in Win32 version: Two new functions,
14748         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
14749         declared only for the Win32 version, but could be in the X11
14750         version as well. (Needed for a Xlib-less gdk_imlib.)
14751         gdk_color_hash should have only one parameter. Declare
14752         gdk_threads_mutex with GDKVAR.
14753         
14754         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
14755         just one parameter.
14756
14757         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
14758         per pixel, not bits.
14759
14760         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
14761         Fetch bpp (which means bits-per-pixel here) from another place on
14762         Win32. Accept also depth==32 (which we might get on Win32) with
14763         bpp==32.
14764
14765         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
14766         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
14767         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
14768         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
14769         in the backend-dependent directory, not in the common gdk
14770         directory.
14771
14772         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
14773         headers.
14774
14775 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
14776
14777         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
14778         want to use the Gtk+ devel version (which is true, and yes - even i am
14779         currently working with the 1.2.x branch). so everyone reading this, you
14780         probably want to issue
14781         cvs checkout -r glib-1-2 glib
14782         and
14783         cvs checkout -r gtk-1-2 gtk+
14784         as your next two comands.
14785
14786 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
14787
14788         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
14789         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
14790
14791         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
14792         file. strongly deprecated the GTK_HAVE_* macros, we provide
14793         GTK_CHECK_VERSION() for people that need to check for certain
14794         Gtk+ versions.
14795
14796         * gtk/gtkcompat.h: removed this from CVS.
14797         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
14798         idea right from the start, it just didn't seem like that back then.
14799
14800 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
14801
14802         * merges from gtk-1-2:
14803
14804 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
14805
14806         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
14807         item factory class has been created.
14808         (gtk_item_factory_parse_rc): likewise.
14809
14810         * gtk/gtkmenu.c:
14811         keep proper references for old_active_menu_item.
14812         (gtk_menu_reparent): unset the usize of the new parent,
14813         so the menu can sanely be size requested and we don't get nasty screen
14814         artefacts upon next reparentation.
14815         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
14816         enter notify. only synthesize enter notifies if the pointer really is
14817         inside the event window.
14818         (gtk_menu_popdown): use gtk_menu_shell_deselect().
14819         (gtk_menu_popup): move the background setting stuff into
14820         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
14821
14822         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
14823         gtk_menu_shell_select_item() to select the new item.
14824         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
14825         do the right thing for deselection as well.
14826
14827 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
14828
14829         * gtk/gtkwidget.[hc]:
14830         (gtk_widget_accelerators_locked): return whether a widget's accelerators
14831         are locked.
14832
14833         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
14834         existing accelerators if the widget's accelerators are locked.
14835
14836 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
14837
14838         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
14839
14840         * gtk/gtkmenu.c: truely forward key press and key release events to
14841         the menu widget from the toplevel or tearoff window. we can't simply
14842         connect to that, we need to stop further processing of the events as
14843         well.
14844
14845 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
14846
14847         * gtk/gtkmenu.c:
14848         (gtk_menu_key_press): pass event->keyval, event->state to
14849         gtk_accelerator_valid, instead of event->keyval twice.
14850         refuse to install single letter accelerators for menus that use
14851         single letter shortcuts.
14852
14853         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
14854         gtk_menu_ensure_uline_accel_group().
14855
14856         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
14857         which will always return an uline accel group, made
14858         gtk_menu_get_uline_accel_group() return NULL if the group isn't
14859         yet created.
14860
14861 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
14862
14863         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
14864
14865         * gtk/gtkclist.c (gtk_clist_column_title_passive):
14866         Leave button sensitive, trap  button_press, button_release,
14867         motion_notify, enter_notify and leave_notify events instead.
14868         (gtk_clist_column_title_active): disconnect event handler.
14869         (gtk_clist_drag_data_get): fixed memory leak. Reported by
14870         Guillaume Laurent <glaurent@worldnet.fr>
14871
14872 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
14873
14874         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
14875         width/height mixups.
14876
14877         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
14878         if needed.
14879
14880 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
14881
14882         * gtk/testgtk.c (create_item_factory): unref the item factory after
14883         window's destruction.
14884
14885         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
14886         count on the menu shell around the menu item's activation, since the
14887         signal emission may cause menu shell destruction.
14888
14889         * gtk/gtkitemfactory.c:
14890         the previous code leaked one accel group per menu. we use
14891         gtk_menu_get_uline_accel_group() now to fix that, and with that
14892         also create the underline accelerator group of the menus only if
14893         required (i.e. an underline accelerator has been specified).
14894         (gtk_item_factory_construct):
14895         (gtk_item_factory_create_item): removed code that would create an
14896         extra accel group for the menu (and leak references).
14897         (gtk_item_factory_create_item): adapted the underline accelerator
14898         installation code to properly feature gtk_menu_get_uline_accel_group().
14899
14900         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
14901         menu->accel_group, this may return NULL if the accelerator group
14902         hasn't been set yet.
14903         added gtk_menu_get_uline_accel_group() to retrive the underline
14904         accelerator group of the menu, this will be created on demand
14905         and proper care is taken about its reference count.
14906
14907         * gtk/gtkitemfactory.h:
14908         * gtk/gtkitemfactory.c:
14909         dumped the approach of keeping a widgets by action list on the
14910         factory since the factory<->widget destroy negotiation didn't work
14911         and would be hard to get going at all. instead we keep a list of
14912         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
14913         persistant throughout a program's life time).
14914         also, i removed the static const gchar *key_* variables, and made
14915         them inline strings (they weren't actually used anyways).
14916         (gtk_item_factory_add_item): update ifactory->items.
14917         (gtk_item_factory_destroy): destroy ifactory->items (and remove
14918         the item factory pointer from the remaining ifactory widgets).
14919         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
14920         list to find the widget.
14921         (gtk_item_factory_get_item): new function that works around
14922         gtk_item_factory_get_widget() limitations, this function will only
14923         return menu items, even for <Branch> entries.
14924
14925 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
14926
14927         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
14928         font hash table, if we have a GdkFontPrivate entry for this font
14929         already, simply increment its reference count, provided by Olaf Dietsche
14930         <olaf.dietsche+list.gtk@netcologne.de>.
14931
14932         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
14933         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
14934
14935 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
14936
14937         * gtk/gtkcontainer.c:
14938         (gtk_container_add_with_args):
14939         (gtk_container_addv):
14940         (gtk_container_add): before adding a child to a conatiner, make sure
14941         it is (default) constructed, this is neccessary because under certain
14942         circumstances the child will get relized and mapped immediatedly, in
14943         which case it has to be constructed already.
14944
14945 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
14946
14947         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
14948         values > 1 as TRUE also.
14949
14950 1999-03-16  Tor Lillqvist  <tml@iki.fi>
14951
14952         * README.win32: New file.
14953                 
14954         * configure.in: Check for lstat.
14955
14956         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
14957         completeness.
14958
14959         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
14960
14961         * gtk/gtk.def: Removed CRs.
14962
14963         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
14964         ..\gdk\win32).
14965
14966         * gdk/win32/makefile.msc: Correct upwards relative paths.
14967         
14968 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
14969
14970         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
14971           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
14972           it was connecting a void function to expose_event and the int
14973           returning function to the draw signal
14974
14975 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
14976
14977         * configure.in:
14978         Use correct path to libgmodule.la when ref'ing uninstalled copy
14979         of glib.  (Already in stable branch, Bug #417)
14980
14981 1999-03-15  Tor Lillqvist  <tml@iki.fi>
14982
14983         Win32 merge and general portability stuff:
14984                 
14985         * acconfig.h,configure.in: Check for <sys/time.h>.
14986
14987         * gdk/win32: New directory (actually, been there for a while).
14988         
14989         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
14990         NATIVE_WIN32, and use these. Always case fold on Win32. No
14991         backslashed escapes on native Win32.
14992
14993         * gtk/{gtk.def,makefile.msc}: New files.
14994
14995         * gtk/Makefile.am: Add above new files.
14996         
14997         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
14998         instead of <strings.h>.
14999
15000         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
15001         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
15002         <unistd.h> appropriately.
15003
15004         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
15005         Use ABS() (from <glib.h>) instead of abs().
15006         
15007         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
15008         of gtk (and thus glib) headers, so that WIN32 will be
15009         defined. With MS C, include <direct.h> for mkdir prototype.
15010
15011         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
15012         some casts, needed by MS C.
15013
15014         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
15015         implemented).
15016
15017         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
15018         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
15019         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
15020
15021         * gtk/gtkmain.h: Mark variables for export/import on Win32.
15022                 
15023         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
15024         the event is not a hint, or its window is not the slider. Needed
15025         on Win32, at least.
15026
15027         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
15028         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
15029         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
15030         a subdirectory of the Windows directory as gtk system
15031         configuration directory.
15032
15033         * gtk/gtkselection.c: No chunks on Win32.
15034
15035         * gtk/gtksocket.c: Not implemented on Win32.
15036
15037         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
15038
15039         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
15040
15041         * gtk/maketypes.awk: Declare variables with a macro that expands to
15042         necessary export/import magic in the case of Win32.
15043                 
15044         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
15045
15046 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
15047
15048         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
15049         since those were meant only for gdki18n.h.  
15050         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
15051         for widechar tests.
15052         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
15053
15054 1999-03-13  Tor Lillqvist  <tml@iki.fi>
15055
15056         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
15057         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
15058
15059         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
15060         installed) to CFLAGS.
15061
15062         * gdk/Makefile.am: Add rules for gdkconfig.h.
15063
15064         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
15065         APIs.
15066
15067         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
15068         gdkx.h anyway when compiling for X11.
15069         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
15070         general): Merge in Win32 version.
15071         
15072         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
15073         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
15074         expansion (if we don't have HAVE_PWD_H), allow for drive
15075         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
15076         included code from Craig Setera's port to Win32 (the one that uses
15077         X11, and the cygwin dll), even if it probably will be abandoned.
15078
15079         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
15080         the user entered one herself.  This way one can complete *.h and
15081         don't get matches on any .help files, for instance.
15082         
15083 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
15084
15085         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
15086         font hash table, if we have a GdkFontPrivate entry for this font
15087         already, simply increment its reference count, provided by Olaf Dietsche
15088         <olaf.dietsche+list.gtk@netcologne.de>.
15089
15090         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
15091         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
15092
15093 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
15094
15095         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
15096         the number of calls to gdk_draw_point() (and thus to X) by
15097         clipping the points by hand.
15098
15099         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
15100         the clip parameter.
15101         (gtk_handle_box_paint): Only paint the handle if the expose area
15102         intersects it.
15103
15104 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15105
15106         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
15107
15108 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
15109
15110         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
15111         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
15112
15113 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
15114
15115         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
15116          textmode (O_TEXT) for OS/2 version.
15117
15118 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
15119
15120         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
15121         GtkSpinButton, "input" and "output", to make the output more flexible.
15122         The user has to provide a mapping between adjustment->value and the
15123         output string (and vice versa, if the spin button is editable). 
15124         See testgtk for examples.
15125
15126 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
15127
15128         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
15129         new one.
15130         
15131         * configure.in: set gtk+ version to 1.3.0.