]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
b7d167201152110d209b18d0bee9fdb7def5cadf
[~andy/gtk] / ChangeLog.pre-2-10
1 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
2
3         * gtk/gtkbutton.[ch]:
4         Add properties for labels, mnemonics and stock items.
5         Added C accessor functions for the properties.
6         Removed deprecated button->child.
7
8         * gtk/gtkradiobutton.c:
9         * gtk/gtktogglebutton.c:
10         Update to use the functions in GtkButton.
11
12         * gtk/gtkcheckbutton.c:
13         Update to use the functions in GtkButton.
14         Changed size allocation of child. Now only gets as much
15         space as it requests.
16
17         * gtk/gtkclist.c:
18         Don't use GtkButton->child
19
20         * gtk/gtklabel.c:
21         Fixed typo in docs
22         
23 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
24
25         * tests/testgtk.c:
26         * tests/Makefile.am:
27         Ressurect the properties test.
28         I don't care if it is inferior, I just want to test my property code.
29
30 2001-08-25  Chema Celorio  <chema@celorio.com>
31
32         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
33         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
34         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
35
36 2001-08-24  Havoc Pennington  <hp@pobox.com>
37
38         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
39         these are already in gtkmenu.h, and the copies
40         here were broken.
41
42         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
43
44         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
45         special-case bitmaps to allow no colormap
46         (bitmap1): implement no-colormap bitmap-getting
47         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
48         alpha
49         (rgb8): indentation
50         (rgb1a, rgb1): change the way we read the data out of the image, 
51         old way didn't seem to work quite right.
52
53         I'm pretty sure a lot of the rgbconvert code is still broken.
54         
55         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
56         above position constraint (I really intended to do this before,
57         don't know what's up with that)
58         (gtk_XParseGeometry): shut up gcc
59
60         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
61         and "0" should have been. remove the attempted 4-bytes-at-once
62         optimization, it was totally broken.
63
64 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
65
66         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
67         on push to buttons (based on patch from Soeren Sandmann, #54720)
68
69           - Add child_displacement_x/y style properties to control how far the
70             child moves when the button is depressed.
71
72           - Add non-exported function _gtk_button_set_depressed to clean
73             up the handling of the in/out shadow and separate it frmo
74             widget->state.
75
76           - Lots of code cleanup and simplification of state handling
77             for GtkButton/GtkToggleButton.
78  
79         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
80         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
81
82 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
83
84         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
85         and make gtk_image_new() take no arguments. The compiler will
86         catch it, and it is vastly more useful than having
87         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
88
89         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
90         to add tearoff-title property (#51319, Lee Mallabone)
91
92 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
93
94         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
95         gtk_menu_item_configure(). (#58925)
96
97 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
98
99         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
100         "use_align" to give people the option to just make a cell visible.
101
102         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
103         we were scrolling past the end of the tree.
104
105         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
106         rename gtk_tree_view_column_pack_start_cell_renderer to
107         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
108
109 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
110
111         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
112         a stray g_object_ref() left over from gtk_object_ref/sink.
113         (Pointed out by Josh Pritikin.)
114
115 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
116
117         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
118         to gtk_container_get_children. Added deprecated compatibility
119         macro. (Suggested by Vitaly Tishkov, #59051)
120
121         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
122         calls.
123
124 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
125
126         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
127         gtk_menu_bar_append/prepend/insert, forgot to do this
128         when we deprecated gtk_menu_append/prepend/insert.
129
130         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
131         compat macros.
132
133         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
134         renamed by compat macro.
135
136         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
137         gtk_font_selection_dialog_get_font(). (Suggested by
138         Vitaly Tishkov, #59383)
139
140 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
141
142         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
143         Rename from gtk_text_tag_table_size(). (#59366)
144
145 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
146
147         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
148         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
149         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
150         (#59173).
151
152 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
153
154         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
155         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
156         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
157
158 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
159
160         [ Patch from Sebastian Wilhelmi, 52790 ]
161
162         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
163
164         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
165         Move compatibility macros from g[dt]kcompat.h to within 
166         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
167
168         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
169
170         * demos/Makefile.am demos/gtk-demo/Makefile.am 
171           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
172           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
173
174         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
175                  testpixbuf.c}: Fix usages of deprecated functions.
176
177 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
178
179         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
180         when changing models.
181
182 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
183
184         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
185         We check the current event for modifiers rather than try to trap
186         all presses.
187
188 2001-08-22  Anders Carlsson  <andersca@gnu.org>
189
190         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
191         It's LIST_STORE, not LISTSTORE.
192
193 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
194
195         * gtk/gtk.h: Remove commented out gtkpacker reference.
196
197 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
198
199         * configure.in (all_loaders): Add tga loader, 
200         patch by Nicola Girardi. (#56067)
201
202 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>>
203
204         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
205         a little.  More needs to be done tomorrow.
206
207 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
208
209         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
210
211 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
212
213         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
214         reported by Kristian Rietveld <kristian@planet.nl> to handle row
215         == NULL.
216         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
217         <kristian@planet.nl> to change destroy order.
218
219 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
220
221         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
222         correct marshaller.
223
224 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
225
226         * gtk/gtkliststore.c: Fix up warnings, #58928.
227
228         * gtk/gtktreeselection.h: Change signal prototype, #58647
229
230         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
231         #59221.
232
233         * gtk/gtkstyle.c: Actually prelight arrow, #50981
234         
235 2001-08-18  Hans Breuer  <hans@breuer.org>
236
237         * gdk/gdk.def : updated externals
238
239         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
240         is required to get (at least) visible in entry fields. Some selections
241         are really handled now - even on win32 - but copying via middle
242         mouse button into a different app needs to wait ... 
243
244         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
245         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
246
247         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
248         handling. I'm not sure if it is better now, but at least not worse
249
250         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
251         with SetWindowPos () which allows more fine-tuning backing-store wise
252
253         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
254         Also changed move/resize to be more like the X version.
255
256         * gtk/gtk.def : updated externals
257
258 2001-08-19  Sven Neumann  <sven@gimp.org>
259
260         * gtk/gtktooltips.c
261         * tests/testtreesort.c
262         * tests/treestoretest.c: inserted some casts to get rid of compiler
263         warnings.
264
265 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
266
267         * gtk/gtktreeviewcolumn.c
268         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
269
270         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
271         (_gtk_tree_view_find_node): If *node is NULL,
272         *tree should be NULL too.
273
274         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
275         column/renderers.
276         * tests/testtreecolumns.c: ditto
277         * tests/testtreefocus.c: ditto
278         * tests/testtreesort.c: ditto
279         * tests/testtreeview.c: ditto
280         * tests/treestoretest.c: ditto
281
282 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
283
284         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
285         signals; is_expander/is_expanded.
286
287         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
288         pixbufs.
289
290         * gtk/gtktreeview.c: set above properties.
291
292 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
293
294         * gtk/gtkwidget.h: Really remove set_default_style().
295
296         * docs/Changes-2.0.txt: added a note about
297         gtk_widget_push/pop/set_default_style.
298
299 2001-08-18  Havoc Pennington  <hp@pobox.com>
300
301         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
302         hints_changed in addition to the other cases.
303         (gtk_window_move_resize): include last position from configure
304         notify in debug spew
305
306 2001-08-18  James Henstridge  <james@daa.com.au>
307
308         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
309         second argument to the weak ref notify, cleaning up some uglyness.
310         (gtk_accel_group_attach): remove and add the weak notifier when
311         changing the accel groups slist.
312         (gtk_accel_group_detach): same here.
313
314 2001-08-17  Darin Adler  <darin@bentspoon.com>
315
316         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
317         missing parameters to utf8 functions to make it compile.
318
319 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
320
321         * gtk/gtktreeprivate.h:
322         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
323         (gtk_tree_view_init), (gtk_tree_view_set_property),
324         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
325         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
326         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
327         (gtk_tree_view_set_destroy_count_func),
328         (gtk_tree_view_set_enable_search),
329         (gtk_tree_view_get_enable_search),
330         (gtk_tree_view_get_search_column),
331         (gtk_tree_view_set_search_column),
332         (gtk_tree_view_get_search_equal_func),
333         (gtk_tree_view_set_search_equal_func),
334         (gtk_tree_view_search_dialog_destroy),
335         (gtk_tree_view_search_position_func),
336         (gtk_tree_view_interactive_search),
337         (gtk_tree_view_search_delete_event),
338         (gtk_tree_view_search_button_press_event),
339         (gtk_tree_view_search_key_press_event),
340         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
341         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
342         * gtk/gtktreeview.h:
343         Add heavily modified patch from Kristian Rietveld to handle
344         interactive searching.
345
346 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
347
348         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
349         string parameter.
350
351         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
352         GtkMenuShell::selection_done, now that we have it, instead of 
353         ::deactivate so we're not tearing the menu apart and notify
354         the user prematurely.
355
356 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
357
358         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
359         window, clear window->need_default_position to avoid infinite loops.
360         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
361
362 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
363
364         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
365         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
366         (gtk_tree_view_set_property): don't cast possible NULL objects.
367         (gtk_tree_view_destroy): reset the model to NULL.
368
369         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
370         parent_class handler.
371
372 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
373
374         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
375
376 2001-08-17  Anders Carlsson  <andersca@gnu.org>
377
378         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
379         point numbers so that the result will be floating point.
380
381 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
382
383         * tests/testgtk.c (create_handle_box): 
384         (create_toolbar): Replace gtk_window_set_policy calls by
385         gtk_window_set_resizable.
386
387 2001-08-16  Jakub Steiner <jimmac@ximian.com>
388
389         * gtk/stock-icons/dialog_info.png: new style bulb
390         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
391         * gtk/stock-icons/dialog_warning.png: need a hand?
392         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
393           the aa border gets chopped off ok
394         * gtk/stock-icons/stock_colorselector.png: using the new hand
395         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
396           this one is for, but the old icon was butt ugly.
397         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
398         * gtk/stock-icons/stock*_insert_object.png: "
399         * gtk/stock-icons/stock_index.png: using new hand icon
400         * gtk/stock-icons/stock*_new.png: the document template being used 
401           elsewhere too
402         * gtk/stock-icons/stock*_print*.png: new print and print preview 
403           icons (panel/menu)  
404         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
405           icons based on Tuomas' floppy image.
406         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
407         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
408         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
409         * gtk/stock-icons/stock*_undelete.png: "
410         * gtk/stock-icons/stock_preferences.png: I have a version with a 
411           document base if the sliders are no good.
412         * gtk/stock-icons/stock_properties.png: properties 
413         
414
415         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
416           (tigert@ximian.com) clipboard icons
417         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
418         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
419         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
420           little bigger IMHO
421
422 2001-08-16  Sven Neumann  <sven@gimp.org>
423
424         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
425
426 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
427
428         * gtk/gtkcellrenderertext.c:
429         Avoid warning when specifying NULL for "attributes" property
430
431 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
432
433         * docs/debugging.txt: Add a warning about --enable-debug=no,
434         some editorial changes.
435
436 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
437
438         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
439         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
440         debugging info, remove unused debug flags. (#58330)
441
442 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
443
444         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
445         (gtk_tree_selection_select_all): Remove strict checking for rows.
446
447 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
448         
449         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
450         Don't remove the tooltip window when the tip text changes. (#15891)
451
452 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
453
454         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
455         $(srcdir).
456
457 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
458
459         * Makefile.am (EXTRA_DIST): Fix problem with trying to
460         dist files from intl/, which is no longer there.
461
462 >>>>>>> 1.2213
463 2001-08-11  Hans Breuer  <hans@breuer.org>
464
465         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
466           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
467           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
468           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
469           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
470           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
471
472         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
473           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
474         GDK_TYPE_EVENT signals
475
476         * gtk/gtkalignment.c : removed 'direct allocation bug',
477         which Tim discovered while reading the patch
478
479 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
480
481         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
482         compat macros for push/pop/set_visual that were supposed
483         to be added a long time ago, but got dropped. 
484
485 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
486
487         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
488         property notifies.
489
490 2001-08-07  Havoc Pennington  <hp@pobox.com>
491
492         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
493
494         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
495         some fixage is needed here, but nothing simple. Owen understands
496         it. ;-)
497
498         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
499         sizing and positioning.  Also, fix bug in compute_geometry_hints
500         (width/height confusion for setting min size). 
501         (gtk_window_move): new function
502         (gtk_window_resize): new function
503         (gtk_window_get_size): new function
504         (gtk_window_get_position): new function
505         (gtk_window_parse_geometry): new function
506         
507         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
508         (gtk_widget_get_size_request): new function
509         (gtk_widget_get_usize): delete, that was a short-lived function
510         ;-)
511         (gtk_widget_set_usize): deprecate
512         (gtk_widget_set_uposition): deprecate, make it a trivial 
513         gtk_window_move() wrapper
514         (gtk_widget_class_init): remove x/y/width/height properties,
515         add width_request height_request
516         
517         * demos/*: update to avoid deprecated functions
518         
519         * gtk/gtklayout.c: add x/y child properties
520
521         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
522         uses of "gint16"
523
524         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
525         sizing test
526
527         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
528         configure events on toplevel windows are always in root window
529         coordinates, following ICCCM spec that all synthetic events 
530         are in root window coords already, while real events are 
531         in parent window coords. Previously the code assumed that 
532         coords of 0,0 were parent window coords, which was 
533         really broken.
534   
535         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
536         warning
537  
538         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
539         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
540         hints in gtk_window_parse_geometry()
541  
542         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
543         new USER_POS USER_SIZE hints    
544
545 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
546
547         * tests/prop-editor.c (properties_from_type): Use 
548         g_object_class_list_properties to get the param specs 
549         for a given type. (#58609)
550
551 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
552
553         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
554         free the text_aa parts. (#57549)
555
556 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
557
558         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
559         not the foreground color. (#57621)
560
561 2001-08-09  Alexander Larsson <alexl@redhat.com>
562
563         * gdk/win32/gdkfont-win32.c:
564         Update to the new pango win32 api.
565
566 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
567
568         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
569         COMPOUND_TEXT instead of TEXT
570         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
571         interpret the return value of g_string_to_compound_text()
572         (#55152)
573
574 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
575
576         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
577         fail if iter is NULL. (#58347)
578
579 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
580
581         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
582         some off-by-one issues, fixing selection of line-ends. (#50323)
583
584 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
585
586         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
587         functions in order to make mouse operation work again in the
588         color wheel. (#58604)
589
590 2001-08-07  James Henstridge  <james@daa.com.au>
591
592         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
593         the accelerator when the accel object is changed.  Fixes bug
594         #58628.
595
596 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
597
598         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
599         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
600         (gnome bugzilla #58202)
601
602 2001-08-06  Havoc Pennington  <hp@pobox.com>
603  
604         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
605         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
606         it was expecting a GdkWindow, not a GdkWindowImplX11.
607  
608         Also, we were getting the window rect in screen coords 
609         and the screen rect in window coords then intersecting 
610         them; instead, get window rect in window coords.
611  
612         Finally, there were codepaths that resulted in a stuck server grab
613         (when the window was fully onscreen, or on gdk_image_new()
614         failure); make the server ungrab thing a bit more
615         robust/consistent.
616
617 2001-08-06  Sven Neumann  <sven@gimp.org>
618
619         * gdk/gdkpango.c (gdk_pango_context_destroy): 
620         check if info->colormap != NULL before unref'ing it. It might have
621         been set to NULL using gdk_pango_context_set_colormap().
622
623 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
624
625         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
626         Fix conversion from float to int so that we don't get
627         skew in the int => float => int roundtrip. 
628         (#58120, reported by Vitaly Tishkov). Also fix problem
629         where if no alpha was set, the returned alpha
630         from (say) set_current_alpha() was returned as 1, not 65535.
631
632 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
633
634         * gtk/gtklist.c (gtk_list_clear_items): Fix
635         problem with selecting a new focus child.
636
637         * gtk/gtklist.c (gtk_list_clear_items): Clear 
638         list->undo/list_focus_child after unparenting
639         child, since unparenting the child can result
640         in list->last_focus_child being set. (#58024)
641
642         * Makefile.am (SUBDIRS): Add target specific pc
643         files to DISTCLEANFILES.
644
645         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
646         (58327, Matthias Clasen)
647
648 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
649
650         * tests/testgtk.c: Patch from Hans (with various modifications),
651         to add the ability to use testgtk as a rough-and-ready
652         benchmark. Try, 'testgtk --bench all:5' (if you want decent
653         numbers, run without a window manager)
654
655 2001-08-04 Alexander Larsson <alexl@redhat.com>
656
657         * gdk/win32/gdkinput.c:
658         Add #ifdef HAVE_WINTAB around wintab.h include.
659
660         * gtk/gtk.def:
661         Removed marshals that have been moved to glib.
662         Commented out plug and socket. They didn't compile for me 
663         on win32.
664
665 2001-08-04  Hans Breuer  <hans@breuer.org>
666
667         * gtk/stocks-icons/makefile.msc : new file
668         * gtk/makefile.msc.in : use it
669
670         * gtk/gtkstyle.c : not all platforms do provide M_PI and
671         friends, but luckily there is G_PI
672
673         * gtk/gtk.def : updated
674
675         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
676         windows WS_POPUP, but only those without a parent. This fixes the 
677         mis-alignment between the selectable (temp, input only) window and 
678         the window text of GtkLabel.
679
680         (gdk_window_show) : respect private->state when actually showing
681         the window.
682
683         (gdk_window_set_transient_for) : Implementation from Wolfgang 
684         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
685         error handling. Should fix #50586.
686
687         * gdk/win32/gdkevents-win32.c : beautify log output
688
689 2001-08-04  Michael Natterer  <mitch@gimp.org>
690
691         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
692         Need to show the image after adding it to the GtkImageMenuItem.
693         This used to work without in testgtk because of the
694         gtk_widget_show_all() at the end of the function.
695         (Closes #54978).
696
697 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
698
699         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
700         (gtk_notebook_set_child_property): fix finding of child's page,
701         since we have to validly deal with labels and menus here as well.
702         (gtk_notebook_get_child_property): fix warning.
703         (gtk_notebook_class_init): property tab_pack is of type
704         GTK_TYPE_PACK_TYPE (enum) not boolean.
705         (gtk_notebook_find_child): don't always warn, we might be looking
706         for a label or menu child.
707         (gtk_notebook_map): fix mapping of panel.
708
709         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
710         widget's mapped state, regardless of the value being set equals
711         old settings, since things like REALIZED(parent) or MAPPED(parent)
712         may have changed since the old value was set. make it an error to
713         invoke this function on a toplevel widget.
714
715 2001-07-31  Darin Adler  <darin@bentspoon.com>
716
717         * gdk/gdkprivate.h:
718         * gdk/x11/gdkx.h:
719         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
720
721         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
722         GTK_OBJECT.
723
724 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
725
726         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
727         scoping error pointed out by matthiasc@poet.de.
728
729 2001-07-31  Sven Neumann  <sven@gimp.org>
730
731         * demos/gtk-demo/appwindow.c
732         * demos/gtk-demo/item_factory.c
733         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
734
735 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
736
737         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
738         argument order for g_signal_has_handler_pending.
739
740 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
741
742         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
743         instead of long deprecated g_scanner_stat_mode().
744
745 2001-07-29  Hans Breuer  <hans@breuer.org>
746
747         * gdk/makefile.msc : build in the backend dir after
748         auto-generating files
749
750         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
751         with code from win32-production-branch.
752
753         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
754         before calling DestroyWindow, which indirectly calls 
755         gdk_window_destroy_notify ()
756
757         (performance patch merged from win32-production-branch)
758         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
759         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
760         R2_COPYPEN rop). It is claimed to be much faster.
761
762 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
763
764         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
765         add an "attributes" property to the text renderer for ATK.
766
767 2001-07-26  Alex Larsson  <alexl@redhat.com>
768
769         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
770         Initialize image->bits_per_pixel from the drawable, not from
771         the root window.
772
773         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
774         Fix cast. argument is an IMPL already.
775
776 2001-07-15  James Henstridge  <james@daa.com.au>
777
778         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
779         (gtk_window_remove_accel_group): same here.
780         (gtk_window_key_press_event): same here.
781
782         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
783         (gtk_widget_remove_accelerator): same here.
784         (gtk_widget_remove_accelerators): same here.
785
786         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
787
788         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
789         instead of GtkObject.
790
791         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
792         now takes GObjects.
793
794         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
795         pass a GObject to gtk_accel_group_entries_from_object.
796         (gtk_item_factory_create_item): s/accel_widget/accel_object/
797
798         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
799
800         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
801
802         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
803         GObjects can have accelerators set now.  Add compatibility
804         defines.
805
806         * gtk/gtkmarshal.list: add missing marshallers.
807
808         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
809         accelerators on plain GObjects.  gtk_accel_group_object_destroy
810         has been converted into a weak reference, and
811         gtk_accel_group_delete_entries is now a destroy notify for that
812         piece of data.
813
814 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
815
816         * gdk/gdkdraw.c: Added a check on the colormap depth to
817         gdk_drawable_set_colormap()
818         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
819         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
820         for pixmaps without visuals (more specifically, bitmaps)
821         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
822         doesn't set a colormap with the wrong depth
823
824
825 2001-07-22  Anders Carlsson  <andersca@gnome.org>
826
827         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
828         expander_height and expander_width properties with a single
829         property, expander_size.
830         (gtk_tree_view_init): Set the tab_offset to expander_size
831         plus some padding.
832         (gtk_tree_view_unrealize): Remove the expand/collapse
833         timeout if it exists.
834         (coords_are_over_arrow): Fix a small bug.
835         (gtk_tree_view_motion_draw_column_motion_arrow): Use
836         expander_size.
837         (gtk_tree_view_draw_focus): Use "treeview" instead of
838         "add-mode" as detail when drawing the focus.
839         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
840         instead of "add-mode" as detail when drawing the focus.
841         (gtk_tree_view_deleted): If we have a node currently being
842         expanded or collapsed, remove the timeout and set the node 
843         to NULL.
844         (gtk_tree_view_queue_draw_arrow): New function that just
845         redraws the arrow of a node.
846         (gtk_tree_view_draw_arrow): Use expander_size instead of
847         expander_width/expander_height, also pass a different
848         expander_style to gtk_paint_expander depending on the 
849         state of the node being drawn.
850         (expand_collapse_timeout): New function for expanding 
851         or collapsing a node depending on the previous state.
852         (gtk_tree_view_real_expand_row): Add timeout and set 
853         correct state for node being expanded.
854         (gtk_tree_view_real_collapse_row): Add timeout and set
855         correct state for node being collapsed.
856
857         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
858         information about the node currently being expanded or
859         collapsed, and also a timeout id.
860
861         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
862         with expander_style for draw_expander.
863
864         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
865         expander_style.
866         (create_expander_affine): New function for creating an 
867         expander affine.
868         (apply_affine_on_point): New function for applying an 
869         affine to a point.
870         (gtk_default_draw_expander): Modified to take expander_style
871         instead of is_open, and to draw the rectangle rotated differently
872         depending on the expander style.
873         (gtk_paint_expander): Replace is_open with expander_style.
874
875         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
876
877         * gtk/gtkenums.h: Add expander style enum.
878
879 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
880
881         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
882         value from gtk_tree_model_get_iter, the model might be empty.
883
884 2001-07-20  Hans Breuer  <hans@breuer.org>
885
886         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
887         gdk/gdkinput.c like the other backends
888
889         * gdk/win32/gdkinput-win32.h :
890         * gdk/win32/gdkinput.c :
891         * gdk/win32/gdkvisual-win32.c :
892         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
893         GdkVisual GObjectification. UNTESTED for pen-devices because
894         I simply have none.
895
896         * gdk/gdk.def :
897         * gtk/gtk.def : updated externals
898
899         * gtk/gtkiconfactory.c :
900         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
901         before passing &error to functions to avoid strange crashes
902         
903         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
904
905         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
906
907         * gtk/makefile.msc.in : updated
908
909 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
910
911         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
912         Add property support. (#51858)
913
914 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
915
916         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
917         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
918         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
919
920 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
921
922         * gtk/gtkcolorsel.c: Add propery support (roughly
923         based on patch from Lee Mallabone, #51014)
924
925         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
926         deprecated, since we already g_warning() on it.
927
928 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
929
930         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
931         typo that sometimes caused selection not to work properly.
932
933         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
934         entry when tabbing in. (#57743)
935         
936         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
937         user drags up above or down below the entry, move
938         to the end or the beginning of the entry. (Suggestion
939         from Jay Cox, #50940)
940
941         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
942         a current selection, then when moving by chars or
943         words, move to the end of the selection rather than
944         from entry->current_pos. (Suggestion from Jay Cox,
945         #50942)
946         
947 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
948
949         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
950         set window->decorated. (Patch from Hidetoshi Tajima,
951         #55846)
952
953 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
954
955         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
956         the widget/child realization/mapping invariants.
957
958         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
959         gtk_widget_[get/set]_child_visible() to control
960         whether visible children of a mapped window are
961         mapped.
962
963         * docs/widget_system.txt: Updated for changes in
964         container contract, and addition of GTK_CHILD_VISIBLE.
965
966         * gtk/gtkcontainer.c: Add generic map()/unmap()
967         functions that work for almost all containers.
968
969         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
970         gtk_widget_set_child_visible() where necessary.
971
972         * gtk/*.c: Remove excess map(), unmap(), and 
973         realization/mapping invariant enforcing code
974         from many containers.
975
976 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
977
978         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
979         Get the foreground color from 'text', nor 'fg'. (#57568)
980
981 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
982
983         * gtk/*.c: Patch from Matthias Clasen to remove remove
984         all instances of g_return_if_fail (foo != NULL); that are
985         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
986         since the second check catches the NULL anyways.
987
988 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
989
990         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
991         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
992         GDK_THREADS_ENTER()/LEAVE() pairs.
993
994         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
995         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
996         pairs. (Problem found by M. Meeks)
997
998 2001-07-18  Darin Adler  <darin@bentspoon.com>
999
1000         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
1001         that we don't get a g_warning message every time we register a new
1002         icon size.
1003
1004         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
1005         using pixel variable of the correct type.
1006         
1007 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
1008
1009         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
1010         so that using X functions on a GdkWindow is possible, if
1011         a little hairy.
1012
1013         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
1014         and ts_origin of a GC, so that external parties can offset/restore
1015         a GC, when using gdk_window_get_internal_paint_info().
1016
1017 2001-07-17  Darin Adler  <darin@bentspoon.com>
1018
1019         * .cvsignore: Ignore the sgml directory made by gtkdoc.
1020         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
1021         instead of the deprecated gtk_window_set_policy.
1022         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
1023         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
1024         function to get rid of warning and some code too.
1025         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
1026         missing const.
1027         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
1028         unused local.
1029         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
1030         const.
1031         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
1032         (gdk_utf8_to_compound_text): Add missing const.
1033         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
1034         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
1035         cast and get rid of an unnecessary one.
1036         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
1037         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
1038         local.
1039         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
1040         Remove unused local.
1041         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
1042         missing const.
1043         * tests/testsocket.c: (add_child): Add cast so the printf format
1044         doesn't make us implicitly depend on what integer type
1045         gtk_socket_get_id returns.
1046         * tests/testtextbuffer.c: Add missing const.
1047         * tests/testtreefocus.c: (main): Remove unused local.
1048         * tests/treestoretest.c: (iter_remove): Remove unused local.
1049         (uppercase_value): Remove unused function.
1050         (make_window): Add statement to quiet the compiler's uninitialized
1051         variable warning.
1052
1053 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
1054
1055         * gtk/gtkrange.c:
1056         (second_timeout): 
1057         (initial_timeout): 
1058         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
1059         (gtk_range_calc_layout): compute the new layout based on an
1060         adjustment->value being passed in as argument.
1061         (gtk_range_button_press): for button2 slider warps, first recalc
1062         the layout, then adjust the value. also, use update_slider_position()
1063         for adjusting the value, so we keep pixel quantisation at which we
1064         usually operate (upon motion or button releases). the reason for this
1065         is that, we can't change the adjustment upon button2 presses to a non
1066         quantised value and upon button2 release re-quantise the value since
1067         that'd alter the value even if we didn't get any motion events (causing
1068         unexpected scroll area warps upon release and/or slider pixel-jitter).
1069         (gtk_range_motion_notify): update the slider position from queried
1070         coordinates, not event coordinates.
1071
1072 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
1073
1074         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
1075         the default gc values are: width=0, CapBut, JoinMiter.
1076
1077 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
1078
1079         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
1080         into account the xpad and ypad when calculating the width and the
1081         height of the pixbuf cel.
1082
1083 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
1084
1085         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
1086         Rename to gtk_radio_menu_item_get_group(), add deprecated
1087         alias. (#57044)
1088
1089         * gtk/gtkfilesel.c: Indentation fix.
1090
1091 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
1092
1093         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
1094         Hasselmann to fix warnings in compat macros. 
1095         (#56773)
1096
1097         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
1098         stupid wrong cast added in last patch.
1099
1100 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
1101
1102         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
1103         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
1104
1105 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
1106
1107         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
1108         missing cast.
1109
1110         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
1111         NULL/FALSE return value confusion.
1112
1113         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
1114         problem when scrollbar completely fills range. (Patch
1115         from  Matthias Clasen, #57047)
1116
1117 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
1118
1119         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
1120         clean up when handling events for move-resize emulation.
1121         (Problem traced down by Matthias Clasen, #57271)
1122
1123 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
1124
1125         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
1126           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
1127           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
1128           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
1129           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
1130           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
1131           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
1132         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
1133
1134 2001-07-09  Peter Williams  <peterw@ximian.com>
1135
1136         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
1137         for when srcdir != builddir
1138
1139 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1140
1141         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
1142         gtk_tree_model_get_iter_root.
1143
1144         * gtk/gtkliststore.c: Add a bunch of g_return statements.
1145         (gtk_list_store_iter_n_children): Fix up.
1146
1147         * gtk/gtktreestore.c: Add a bunch of g_return statements.
1148
1149 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
1150
1151         * gtk/gtkwidget.c (gtk_widget_class_init):
1152         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
1153         restore some workingness.
1154
1155         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
1156         handle of window type for input-only windows.
1157
1158 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
1159
1160         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
1161         Patch from Gregory Merchan to add 
1162         gtk_button_box_set_secondary(), which separates
1163         the child into a separate group from the normal
1164         buttons. (#56331)
1165
1166         * gtk/gtkdialog.c: Make help buttons secondary by
1167         default.
1168
1169         * gtk/gtkbbox.c: Added a child property "secondary".
1170
1171         * gtk/testgtk.c: Turn on the help button for the 
1172         color selector to check that it properly appears
1173         as secondary.
1174
1175 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
1176  
1177         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
1178         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
1179         Add gdk_set_pointer_hooks() to allow pointer-querying to
1180         be hooked by an event record/playback system like GERD.
1181         (#56914)
1182         
1183 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
1184
1185         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
1186         in the right value of initial_emission to
1187         gtk_widget_set_style_internal (#57091)
1188
1189 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
1190
1191         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
1192         Make compile.
1193
1194         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
1195         with calling gtk_widget_set_style_internal() with
1196         the old style, not the new style. (#56989)
1197
1198 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
1199
1200         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
1201           gtk/gtkwidget.c:
1202         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
1203         not GTK_WIDGET_GET_ANCESTOR ... see 
1204         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
1205         Indicate the best practice in the docs for gtk_widget_get_toplevel().
1206
1207         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
1208         so GtkPlug can give the correct signals when transforming
1209         from a child to a toplevel.
1210         
1211         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
1212         reparentation correctly.
1213
1214         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
1215         Propagate the previous_toplevel argument down properly.
1216
1217         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
1218         of wrong atr list.
1219
1220         * gtk/gtkplug.[ch]: Add an "embedded" signal.
1221
1222         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
1223         signals.
1224
1225         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1226         functions gtk_plug_get_id(), gtk_socket_get_id(),
1227         to avoid the user having to worry about realization,
1228         and gdkx.h.
1229
1230         * tests/testsocket.c: Extend to try out the new signals
1231         and gtk_plug/socket_get_id().
1232
1233         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1234         setting of underline attributes.
1235
1236         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1237         DestroyNotify events from SubstructureNotifyMask
1238
1239         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1240         Switch GDK_WINDOW_TYPE (window) as needed.
1241
1242         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1243         allow creation of toplevel windows as children of
1244         foreign windows.
1245
1246         * gtk/gtkplug.c: Remove hacks involving changing private
1247         fields of GdkWindow.
1248
1249         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1250         exactly the same signals and notification
1251         be emitted for local embedding as for inter-process
1252         embedding.
1253
1254 2001-07-04  James Henstridge  <james@daa.com.au>
1255
1256         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1257
1258 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1259
1260         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1261         XEMBED embedding add a _XEMBED_INFO property to the
1262         client with version number and a "mapped" flags.
1263         Use the mapped flag instead of the racy MapRequestEvent
1264
1265         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1266         code to reliably set things (when the child is a passive
1267         embedder participating in the XEMBED protocol) intead
1268         of just being a hack for embedding non-participating
1269         programs. Fix various bugs and race conditions.
1270         
1271         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1272         work by simply making the GtkSocket the gtk parent
1273         of the GtkPlug. Set a flag in this case and make
1274         the GtkPlug work like a normal container by overriding
1275         methods such as check_resize and "chaining past" GtkWindow
1276         to GtkBin.
1277
1278         * gtk/gtkentry.c (gtk_entry_real_activate)
1279           gtk/gtkmain.c (gtk_propagate_event): 
1280         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1281         
1282         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
1283         gtk_widget_get_ancestor):
1284         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
1285         might not give the expected result and recommend
1286         an alternative.
1287
1288         * tests/testsocket.c tests/testsocket_child.c
1289         tests/testsocket_common.c tests/Makefile.am: Extended
1290         to test different type of adding plugs to sockets
1291         (local,active,passive), and to test mapping/unmapping
1292         the plug.
1293
1294         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
1295         mark the window as destroyed until after we
1296         called _gdk_windowing_window_destroy().
1297         (_gdk_windowing_window_destroy() may use GDK functions
1298         on the window.)
1299
1300         * gdk/x11/gdkinput.c: Remove the check for finalization - 
1301         devices can be finalized under some circumnstances.
1302  
1303         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
1304         small problem with GDK_TYPE_DEVICE.
1305  
1306 2001-07-02  Havoc Pennington  <hp@pobox.com>
1307
1308         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
1309         use constants not atoms.
1310
1311 2001-07-02  James Henstridge  <james@daa.com.au>
1312
1313         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
1314         PANGO_TYPE_TAB_ARRAY.
1315
1316         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
1317         for PANGO_TYPE_TAB_ARRAY.
1318
1319         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
1320         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
1321
1322         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
1323         the file.  Remove Pango types from defs -- they are now defined in
1324         libpango.
1325
1326 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
1327
1328         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
1329
1330         * gtk/gtkobject.c (gtk_object_destroy): invoke
1331         g_object_run_dispose().
1332
1333         * gtk/gtkwindow.c: 
1334         * gtk/gtkwidget.c: 
1335         * gtk/gtkobject.c:
1336         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
1337         method.
1338
1339 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
1340
1341         * gtk/gtktypeutils.c (gtk_type_class): Remove
1342         change check for GTK_TYPE_OBJECT derivation to
1343         G_TYPE_OBJECTS - it's Tim-approved to use this 
1344         for arbitary objects.
1345
1346         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
1347         prefix gtk_container_dequeue_resize_handler().
1348
1349         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
1350         to the hierarachy_changed signal, since you otherwise
1351         have to always keep that around.
1352
1353         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
1354         for extra argument to hierarchy_changed.
1355
1356 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
1357
1358         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
1359         for style to mean "revert to default style"
1360
1361         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
1362           gtk_widget_restore_default_style): Make this functions
1363         deprecated aliases for gtk_widget_set_style (widget, NULL).
1364
1365         * gtk/gtkwidget.[ch]: Remove:
1366            gtk_widget_set_default_style ()
1367            gtk_widget_push_style ()
1368            gtk_widget_pop_style ()
1369         These functions interact are overriden by RC files, and
1370         thus virtually useless, and complicated.
1371
1372 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
1373
1374         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
1375         most of the previous global variables in gtkrc.c. This is
1376         in preparation for multi-head, since each screen can
1377         have different GtkSettings and RC information.
1378
1379         * gtk/gtkrc.[ch]: 
1380
1381         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
1382         GtkSettings parameter to GtkRcStyle::parse.
1383
1384         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
1385         Add two new settings gtk-theme-name, gtk-key-theme-name,
1386         for RC files that are loaded by name after reading
1387         the default RC files.
1388         
1389         * gtk/gtkrc.c: Allow priorities for styles, as wll as
1390         bindings.
1391
1392         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
1393         and use it by default for RC files loaded via 
1394         gtk-theme-name, gtk-key-theme-name.
1395
1396         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
1397         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
1398         tests/testgtkrc: Require pathnames to be absolute.
1399
1400         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
1401         the source when parsing, since the operation of looking up a
1402         pixmap from an RC file depends on the parsing context.
1403
1404         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
1405         reset RC styles on all widgets when files are reparsed.
1406
1407         * tests/testgtk.c (create_rc_file) 
1408           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
1409         Simplify, now that gtk_rc_reparse_all() resets styles on
1410         all widgets itself.
1411
1412         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
1413         return value.
1414
1415         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
1416         GtkSettings argument.
1417
1418         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
1419         gtk_settings_get_global().
1420
1421         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
1422         to get the appropriate GtkSettings for a widget. (For now,
1423         just gets the default GtkSetttings.) 
1424
1425         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
1426           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
1427         changes.
1428
1429         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
1430         getting a style for a path without actually having a widget.
1431         (Allows using a style for a subpart of a widget, for
1432         example.)
1433
1434         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
1435         the RC files to be reloaded for just one GtkSettings
1436         (not sure how useful this really is.)
1437
1438         * gtk/gtkrc.h: Deprecate
1439         gtk_rc_add_widget_name/widget_class/class_style
1440
1441 2001-06-30  Alex Larsson  <alexl@redhat.com>
1442
1443         * gdk/linux-fb/gdkinput-none.c:
1444         * gdk/linux-fb/gdkinput.c:
1445         * gdk/linux-fb/gdkinputprivate.h:
1446         Convert GdkDevice to a GObject.
1447
1448         * linux-fb/gdkprivate-fb.h:
1449         * linux-fb/gdkvisual-fb.c:
1450         Convert GdkVisual to a GObject.
1451
1452 2001-06-29  Alex Larsson  <alexl@redhat.com>
1453
1454         * gdk/gdkvisual.h:
1455         * gdk/gdkcolor.c:
1456         * gdk/x11/gdkx.h:
1457         * gdk/x11/gdkvisual-x11.c:
1458         Convert GdkVisual to a GObject.
1459
1460         * gdk/gdkinput.h:
1461         * gdk/gdkevents.c:
1462         * gdk/x11/gdkinputprivate.h:
1463         * gdk/x11/gdkinput-gxi.c:
1464         * gdk/x11/gdkinput-none.c:
1465         * gdk/x11/gdkinput-x11.c:
1466         * gdk/x11/gdkinput-xfree.c:
1467         * gdk/x11/gdkinput.c:
1468         Convert GdkDevice to a GObject.
1469
1470 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
1471
1472         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
1473         to just plain new, fixing the number of columns, and column types
1474         at creation time.
1475
1476         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
1477
1478         * gtk/gtkcellrenderertext.c
1479         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
1480         height to a specific font.
1481
1482         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
1483
1484         * tests/*c: change to work with new store models.
1485
1486 2001-06-29  Havoc Pennington  <hp@redhat.com>
1487
1488        * Throughout: fixes to compile with G_DISABLE_COMPAT
1489         (s/g_signal_connectc/g_signal_connect/,
1490         s/g_signal_newc/g_signal_new/,
1491         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
1492
1493 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
1494
1495         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1496         add path argument to selection callbacks.
1497
1498 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
1499
1500         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
1501         walk through a model in a depth first manner, with the option to
1502         break out.
1503
1504 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
1505
1506         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
1507         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
1508         column and follow it when draged, rather than a location in the
1509         view. "expander_column" property and drawing functions changed
1510         accordingly.  Fixes bug #55942.
1511
1512         (gtk_tree_view_{set,get}_expander_column): Now works with a
1513         GtkTreeViewColumn* instead of int.
1514
1515 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
1516
1517         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
1518
1519 2001-06-28  Havoc Pennington  <hp@pobox.com>
1520
1521         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
1522         image data to the screen, using a server grab to avoid race
1523         conditions.
1524
1525         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
1526         check for NULL return from gtk_image_new_from_stock(), it never
1527         returns NULL.
1528         (gtk_item_factory_create_item): fix bug where we parsed the stock
1529         ID as an inline pixbuf
1530
1531         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
1532
1533         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
1534         support (should be using binding set here)
1535
1536         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
1537         support (should be using binding set here)
1538
1539         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
1540         support
1541
1542         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
1543
1544         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
1545
1546         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
1547
1548         * gtk/gtkimcontextsimple.c
1549         (gtk_im_context_simple_filter_keypress): keypad
1550
1551         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
1552
1553         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
1554
1555         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
1556
1557         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
1558         should be binding-setted)
1559
1560         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
1561
1562         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
1563
1564         * gtk/gtkcalendar.c: numeric keypad fixes
1565
1566         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
1567         support
1568
1569         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
1570         screwup
1571
1572         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
1573         clip the render area to the drawable's clip region in advance,
1574         so we don't get data from the server that we don't need.
1575
1576         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1577         check return value of gdk_pixbuf_get_from_drawable(), fall back 
1578         to bilevel alpha if we can't get the pixbuf to composite against.
1579
1580         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
1581
1582         * gdk/gdkimage.c (gdk_image_get_colormap): add
1583         gdk_image_set_colormap, gdk_image_get_colormap
1584
1585         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
1586         take a region of the image, instead of converting the entire
1587         image.
1588
1589         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
1590         keybinding signal. Add default bindings for it. Add default
1591         handler for show_help that shows the tooltip for the widget.
1592
1593         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
1594         "close" keybinding signal, remove key press handler.
1595
1596         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
1597         it's not our usual practice to leave a deprecated function around
1598         with a runtime warning, plus we don't want it to appear in docs,
1599         plus if we make them yellow no one will want to change them
1600         anyhow.
1601
1602 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
1603
1604         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
1605         GTK_WIDGET_REALIZE() for resize queueing.
1606
1607         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
1608         GTK_WIDGET_REALIZE() for post event delivery destruction upon
1609         GDK_DESTROY.
1610         
1611         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
1612         sompensate for former (pre-2.0) connect_after() facility.
1613         (gtk_widget_send_expose): 
1614         (gtk_widget_event): assert the widget is realized, since event delivery
1615         to non-realized widgets is essentially a bug. event handlers should
1616         be able to unconditionally rely on widget->window (unless they
1617         emit events on their own which can trigger widget destruction).
1618         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
1619         logic. event delivery happens as follows:
1620         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
1621         b) if !was_handled in (a) and the widget is still realized, emit event-
1622            specific signal (RUN_LAST handler). returns was_handled.
1623         c) emission of GtkWidget::event-after for notification if the widget is
1624            still realized (regardless of was_handled from previous stages, no
1625            class handler). no return value.
1626         d) was_handled gets passed on to caller, to determine further
1627            propagation. if the widget got unrealized meanwhile, was_handled
1628            is returned as TRUE.
1629
1630         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
1631         gdk_event_get_coords().
1632
1633 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
1634
1635         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
1636         age 0, binary age 0. depend on glib 1.3.7.
1637
1638         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
1639
1640         * gtk/gtkmenubar.c: same here.
1641         
1642         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
1643
1644         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
1645
1646         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
1647         
1648         * gtk/gtkmenubar.c (add_to_window): likewise.
1649         
1650         * gtk/gtktextbtree.c: and here...
1651         
1652         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
1653         
1654         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
1655         
1656         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
1657         
1658         * gtk/gtktreeviewcolumn.c:
1659         (_gtk_tree_view_column_set_tree_view): yet again.
1660
1661         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
1662         signal connections without g_signal_connect_data().
1663         
1664         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
1665         demo of the matter.
1666         
1667         * demos/testpixbuf.c (main): running out of equality phrases for the
1668         ChangeLog, but had to adapt connections here as well.
1669         
1670         * demos/testanimation.c (progressive_timeout): and for the fun of it,
1671         tackled this the same way.
1672         
1673         * tests/testtext.c (create_view): ok, it's becoming a pain at this
1674         point, but had enough enery for one more fix.
1675
1676         * tests/testtreecolumns.c (main): stand up man, do your work!
1677
1678         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
1679         fix, either that's been all of it or CVS gtk is broken yet again.
1680         
1681 2001-06-29  James Henstridge  <james@daa.com.au>
1682
1683         The following changes correspond to bug #56812
1684
1685         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
1686         code for GdkDevice.
1687
1688         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
1689         GdkCursor.
1690
1691 2001-06-19  Havoc Pennington  <hp@pobox.com>
1692
1693         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
1694         for mapping a window without fooling with stacking order, but
1695         updating the "withdrawn" flag
1696
1697         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
1698         filtering as soon as possible, moving move resize and wmspec_check
1699         handling after the event filter.  Make default filter apply to all
1700         events, not just those with no GdkWindow wrapped around the X
1701         window. Fix a FIXME about how the window could be a pixmap using 
1702         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
1703
1704         Also, be robust against events not on a known GdkWindow.
1705
1706         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
1707         gdk_x11_ungrab_server): export reference-counted server grabs, so
1708         other people can grab server over a GDK function that also does
1709         so.
1710
1711 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
1712
1713         * gtk/gtktreeviewcolumn.c
1714         (gtk_tree_view_column_pack_start_cell_renderer): New function to
1715         reflect that you can (hypothetically) pack cell renderers into a
1716         column.
1717         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
1718         (gtk_tree_view_column_cell_is_visible): Move more functionality to
1719         the column.
1720         (gtk_tree_view_column_cell_can_focus): Move more functionality to
1721         the column.
1722
1723         * gtk/gtktreeview.c: Move to use new column-packing code.
1724         (gtk_tree_view_real_expand_row): remove totally braindead code.
1725         (gtk_tree_view_real_collapse_row): ditto.
1726
1727 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1728
1729         * gtk/gtktreeviewcolumn.c: Fix a typo.
1730         
1731 2001-06-26  Joel Becker  <jlbec@evilplan.org>
1732
1733         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
1734           at the end of the file
1735
1736 2001-06-26  Havoc Pennington  <hp@redhat.com>
1737
1738         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
1739
1740 2001-06-26  Havoc Pennington  <hp@redhat.com>
1741
1742         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
1743         property
1744
1745 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
1746
1747         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
1748         stupid missing statement
1749
1750         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
1751         private function for ATK.  It notifies you of how many _visible_
1752         children are deleted when a node is deleted.  Should be used by
1753         atk only.
1754
1755 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
1756
1757         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
1758         Use new pango_context_get_metrics() to fix problems
1759         with font lists in descriptions. (#56184, reported by
1760         Jonas Borgström)
1761
1762 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
1763
1764         * gtk/gtkiconfactory.c:
1765         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
1766         item factory so inlined pixbufs actually work.
1767
1768 2001-06-25  Havoc Pennington  <hp@redhat.com>
1769
1770         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
1771         s/RESIZEABLE/RESIZABLE/
1772
1773         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
1774
1775 2001-06-25  Alexander Larsson  <alexl@redhat.com>
1776
1777         * configure.in:
1778         Added --enable-fbmanager. This is some experimental code
1779         that lets several GtkFB apps coordinate their access to the
1780         framebuffer.
1781         
1782         * acconfig.h:
1783         Added ENABLE_FB_MANAGER.
1784
1785         * gdk/linux-fb/Makefile.am:
1786         Added gdkfbmanager and gdkfbswitch.
1787
1788         * gdk/linux-fb/gdkkeyboard-fb.c:
1789         * gdk/linux-fb/gdkmouse-fb.c:
1790         * gdk/linux-fb/gdkprivate-fb.h:
1791         Split device init and open so that
1792         they can be opened and closed while switched
1793         away.
1794
1795         * gdk/linux-fb/gdkmain-fb.c:
1796         Add the basic manager communication.
1797
1798         * gdk/linux-fb/gdkrender-fb.c:
1799         Don't update to the shadow fb if we're
1800         blocked by the fb manager.
1801
1802 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1803
1804         * docs/Changes-2.0.txt: Add note about child property
1805         changes.
1806
1807 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
1808
1809         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
1810         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
1811
1812         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
1813         with un'reffing wrong list reported by Jeff Franks.
1814
1815         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
1816
1817         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
1818         for the default icon. Remove inline XPM.
1819
1820         * gtk/gtkstock.h gtk/gtkiconfactory.c:
1821         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
1822         is used for GTK_STOCK_DND, but it is a bit too small.)
1823
1824         * gtk/stock-icons/stock_dnd_multiple.png
1825         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
1826
1827         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
1828         TRUE when starting a drag. In other cases, we are
1829         just observing. (#52995)
1830
1831         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
1832         function to set the icon for a drag from a GdkPixbuf
1833         or stock ID.
1834
1835         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
1836         Likewise, for drag sources.
1837
1838         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
1839         (Now should be done using the stock system.)
1840
1841 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
1842
1843         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
1844         Removed - didn't work and not particularly useful anyways
1845         if it did. 
1846
1847 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
1848
1849         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
1850         introduced last night that was making things decidedly not work.
1851
1852         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
1853         so that we have getter/setter pairing everywhere it makes
1854         sense. (#55767)
1855
1856         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
1857         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
1858         deprecated compat macro. (#55516)
1859
1860         * gtk/gtklabel.[ch]: Add functions
1861         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
1862         gtk_label_set_label(), which mirror the property API for GtkLabel.
1863         Make gtk_label_get_attributes() only reflect the attributes
1864         set by gtk_label_set_attributes.
1865
1866         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
1867         from gtk_notebook_set_page().
1868
1869 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
1870
1871         * configure.in: Fix tests for XShm.h.
1872
1873         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
1874         gdk_image_new() by use of goto, properly use g_object_unref().
1875
1876 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
1877
1878         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
1879         calls, as GdkImage is an object. these should be g_obejct_unref()
1880         instead but that won't work because of the g_error() statement
1881         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
1882         to spot these places.
1883
1884 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
1885
1886         * modules/input/gtkimcontextxim.c: Fixup some problems with 
1887         text length handling in error cases.
1888
1889         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
1890         a bit to make test actually warn on attempt to allocation
1891         a negative size. (#56101, Matthias Clasen)
1892
1893 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
1894
1895         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1896         noticed by Brian Cameron.
1897         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
1898         Cameron.
1899
1900 2001-06-22  Hans Breuer  <hans@breuer.org>
1901
1902         * gdk/gdk.def : updated externals
1903
1904         * gdk/win32/gdkdrawable-win32.c : corrected some casts
1905         in GDK_NOTEs
1906
1907         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
1908         to translate coordinates to the internal > 16 bit system
1909         Try to handle WM_WINDOWPOSCHANGED to get better performance for
1910         when moving/resizing
1911
1912         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
1913         and gdk_keymap_get_direction (). The latter is untested for
1914         the RTL case
1915
1916         * gtk/gtk.def : updated externals
1917
1918         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
1919         from pango_language_from_string (), not an already freed pointer
1920
1921         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
1922         binary (-kb) to be useable on windoze
1923  
1924 2001-06-21  Alexander Larsson  <alexl@redhat.com>
1925
1926         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
1927         Update to new PangoLanguage changes.
1928         
1929         * gtk/gtkwindow-decorate.c:
1930         * gtk/gtkwindow.[ch]:
1931         Added setting argument to gtk_window_set_has_frame ()
1932         
1933 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
1934
1935         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
1936         the case without XKB properly.
1937
1938         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
1939         unused gtk_rc_auto_parse variable.
1940
1941         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
1942         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
1943         longer needed with GdkPixbuf.
1944
1945         * gtk/gtkrc.c (_gtk_rc_init): Make private.
1946
1947 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
1948
1949         * gtk/gtkentry.h: Mark deprecated functions with
1950         GTK_DISABLE_DEPRECATED.
1951
1952 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1953
1954         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
1955
1956         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
1957
1958         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
1959           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
1960           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
1961           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
1962           to recent changes in Pango.
1963
1964         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
1965           to test whether the basic engine honors them.
1966
1967 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
1968
1969         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
1970         gtk_container_child_get_property().
1971
1972 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
1973
1974         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
1975         (gtk_tree_view_move_cursor_page_up_down): implement.
1976
1977 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
1978
1979         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
1980         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
1981         don't use automatic fixed size buffer for printf-ing floats, doubles
1982         can expand to really _huge_ strings, use g_strdup_printf() instead.
1983
1984 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
1985
1986         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
1987         construct property in 1.2 and still needs to be.
1988
1989         * gtk/gtkwidget.c: "composite_child" is not a settable property.
1990
1991 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
1992
1993         * gtk/gtkliststore.c (gtk_list_store_clear): 
1994         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
1995         clear a model.
1996
1997 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1998
1999         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
2000
2001         * gtk/Makefile.am:
2002         * gtk/gtk.h: disabled GtkPacker compilation.
2003
2004         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
2005
2006         * gtk/gtknotebook.c:
2007         * gtk/gtktable.c:
2008         * gtk/gtkbox.c: ported this over to child properties.
2009
2010         * gtk/gtksettings.c: fetch class properties via
2011         g_object_class_list_properties().
2012
2013         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
2014         child arg interface. use gobjectnotifyqueue.c for child property
2015         notification.
2016
2017         * gtk/gtkwidget.[hc]: provide necessary means for container child
2018         properties, i.e. ::child_notify signal,
2019         gtk_widget_freeze_child_notify(),
2020         gtk_widget_child_notify(),
2021         gtk_widget_thaw_child_notify().
2022
2023         * tests/testgtk.c: removed inferior property handling code, for
2024         property editing, a generic module should be used, and GLE
2025         coincidentally fullfills that purpose.
2026
2027         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
2028         needs to be adapted to g_object_class_list_properties() before this
2029         builds again.
2030
2031 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
2032
2033         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
2034         test if a node is expanded.
2035
2036 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
2037
2038         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
2039         where collapsing a selected row would result in the cursor/anchor
2040         getting screwed up.
2041
2042 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
2043
2044         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
2045         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
2046         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
2047         Now I can really reorder/sort all Store widgets.  treesorttest
2048         seems to just work now.
2049         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
2050         testtreesort worked through a big coincidence all this time.
2051         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
2052         code.
2053         * tests/testtreecolumns.c: Big 'ol warning at the top letting
2054         people know that this code should never ever ever be copied.
2055
2056 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
2057
2058         * gtk/gtkwindow.h: Fixed a small typo, it should be
2059         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
2060         on line 134.
2061
2062 2001-06-14  Havoc Pennington  <hp@redhat.com>
2063
2064         Docs fixups, and:
2065         
2066         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
2067         GTK_DISABLE_DEPRECATED
2068
2069 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
2070
2071         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
2072         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
2073         finish it off tonight, though it basically works now when it's a
2074         list.  Also, I have a sinking feeling neither GtkTreeStore or
2075         GtkListStore actually resort when adding a new item.  I'll look
2076         into it.
2077
2078 2001-06-14  Havoc Pennington  <hp@redhat.com>
2079
2080         * demos/gtk-demo/main.c (load_file): fix bug identified by
2081         warnings I just added to gtktextbuffer
2082
2083 2001-06-14  Havoc Pennington  <hp@redhat.com>
2084
2085         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
2086
2087         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
2088
2089         * gtk/gtktextbtree.c: don't leak node data all over the place.
2090
2091         * demos/gtk-demo/main.c (main): create fontify tags for the right
2092         buffer
2093
2094         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
2095         to mention tags in the same table can't have the same name,
2096         suggested by Skip Montanaro
2097
2098 2001-06-11  Havoc Pennington  <hp@redhat.com>
2099
2100         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
2101         for trying to add two tags with same name to the tag table
2102
2103         * demos/gtk-demo/main.c (main): fix colors ;-)
2104
2105 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
2106
2107         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
2108         that allows grouping together multiple windows so that grabs
2109         within that set of windows only affect those windows.
2110
2111         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
2112         signal for notification when a widget becomes shadowed
2113         by a grab or is no longer shadowed by a grab.
2114
2115         * gtk/gtkwidget.c (gtk_widget_propagate_state)
2116           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
2117         insenstive widgets to maintain a grab.
2118
2119 2001-06-14  Alexander Larsson  <alexl@redhat.com>
2120
2121         * docs/README.linux-fb:
2122         Add some example config files that can be used with the URW fonts.
2123         
2124         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
2125         Set up the color ramps for DirectColor mode.
2126
2127 2001-06-11  Havoc Pennington  <hp@redhat.com>
2128
2129         * Release 1.3.6
2130          
2131 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2132
2133         * gdk/linux-fb/gdkwindow-fb.c:
2134         Unify shaped window code and make it repaint the area that used
2135         to be part of the shape, but isn't anymore.
2136
2137 2001-06-11  Havoc Pennington  <hp@redhat.com>
2138
2139         * NEWS: Updates
2140
2141         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
2142
2143         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
2144         
2145 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2146
2147         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
2148         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
2149         passes zero instead, so do we.
2150         
2151 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
2152
2153         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
2154         Deep copy dash_list too.
2155         (_gdk_fb_gc_new): Set default cap_style before
2156         setting values.
2157
2158 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
2159
2160         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
2161         gdk_keymap_get_direction): New functions.
2162
2163 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
2164
2165         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
2166         gtk_tree_model_get_flags by adding a second flag for atk.
2167
2168         * gtk/gtktreemodel.c: make cursor behavior interact better with
2169         mouse presses.
2170
2171 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
2172
2173         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
2174         expand_row/collapse_row to be 2 signals each -- test_expand_row
2175         and row_expanded as well as test_collapse_row and row_collapsed.
2176
2177 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
2178
2179         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
2180         signal name to be changed instead of selection_changed.
2181
2182 2001-06-08  Havoc Pennington  <hp@redhat.com>
2183
2184         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
2185         "scroll_offset" property for notification when the layout offsets
2186         may have changed
2187         (gtk_entry_adjust_scroll): add notify for scroll_offset
2188         (gtk_entry_layout_index_to_text_index): function to compensate for
2189         preedit string when doing coordinate stuff on the entry's layout
2190         (gtk_entry_text_index_to_layout_index): inverse function
2191         (gtk_entry_get_layout_offsets): hook to get current position of
2192         the layout      
2193         (gtk_entry_get_layout): hook to get the layout itself.
2194
2195         * gtk/gtklabel.c (gtk_label_get_layout): new function
2196
2197 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
2198
2199         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
2200         keybinding.
2201         (gtk_tree_view_focus): Fix merge conflict.
2202
2203 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
2204
2205         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
2206         clean up cursor handling.
2207
2208 2001-06-08  Havoc Pennington  <hp@redhat.com>
2209
2210         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
2211         function
2212
2213         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
2214         this function
2215
2216 2001-06-08  Alex Larsson  <alexl@redhat.com>
2217
2218         * gtk/gtkcompat.h.in:
2219         Added compat macros for all old GTK_TYPE_GDK_xxx types.
2220         Fixes bug #52892
2221
2222 2001-06-08  Havoc Pennington  <hp@redhat.com>
2223         
2224         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2225         parent still
2226
2227 2001-06-08  Havoc Pennington  <hp@redhat.com>
2228
2229         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2230         don't call g_list funcs on GSList
2231
2232         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2233         gtk_container_focus(), since some widgets have focusable locations
2234         which are not other widgets. These widgets should not have to be 
2235         containers just to manage the focus. For example, GtkHSV is
2236         currently a container for no good reason. Also, this cleans
2237         up the "if (is_container && is_sensitive && is_drawable)
2238         container_focus ()" mess in widget implementations.
2239
2240         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2241         function, and have it just call gtk_widget_child_focus().
2242
2243         * gtk/gtkhsv.c: derive from widget not container
2244         
2245         Throughout: fix to reflect GtkContainer::focus change
2246         
2247 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2248
2249         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2250         range.  Fix bug #55921
2251
2252         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2253         (#55920).
2254
2255 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2256
2257         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2258         and gdk_keymap_get_current_direction().
2259
2260         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2261           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2262         the current locked group, use it to set the keymap
2263         direction.
2264
2265         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2266         to determine whether we draw a split cursor or use
2267         a jumping cursor based on the current direction.
2268
2269         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2270         Obey the split cursor setting. 
2271
2272 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2273
2274         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2275         when toggling on, not when toggling off... (#55906)
2276
2277 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2278
2279         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2280         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2281         in docs. (#55812, Vitaly Tishkov)
2282
2283 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
2284
2285         * demos/gtk-demo/main.c (create_tree): Changed signal name from
2286         selection_changed to changed in signal connection to GtkTreeSelection,
2287         also used g_signal_connectc since GtkTreeSelection is now a GObject.
2288
2289 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
2290
2291         * gtk/gtktreeselection.c: Now it's a GObject instead of a
2292         GtkObject.  The GtkTreeSelection::selection_changed signal is now
2293         the GtkTreeSelection::changed signal.
2294
2295         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
2296         object.
2297
2298         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
2299         object.
2300
2301 2001-06-07  Havoc Pennington  <hp@redhat.com>
2302
2303         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
2304
2305 2001-06-07  Havoc Pennington  <hp@redhat.com>
2306         
2307         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
2308         (not tested yet because with absolute path to srcdir I can't build
2309         atk, but it was broken anyway so this may help) 
2310
2311 2001-06-07  Havoc Pennington  <hp@redhat.com>
2312
2313         * configure.in: output m4macros/Makefile
2314         
2315 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
2316
2317         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
2318         buttons.  Fixes #55460 reported by matthiasc@poet.de.
2319
2320 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
2321
2322         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
2323         expansion/collapsing so it only happens in one place.
2324         (gtk_tree_view_real_expand_row): ditto.
2325
2326 2001-06-07  Havoc Pennington  <hp@redhat.com>
2327
2328         * tests/Makefile.am: add missing -I flag
2329
2330         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
2331
2332         * configure.in: use pkg-config to see if GModule is
2333         supported; fix to properly turn on included loaders 
2334         when GModule isn't supported; don't use AC_CHECK_LIB 
2335         when libs are not installed yet
2336
2337         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
2338
2339         * Makefile.am (SUBDIRS): add m4macros subdir
2340
2341         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
2342         dependencies also.
2343
2344 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
2345
2346         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
2347         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
2348
2349 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
2350
2351         * gtk/gtktreeview.c
2352         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
2353         bindings to expand and collapse rows.
2354         (gtk_tree_view_real_select_cursor_parent): New key binding.
2355         (gtk_tree_view_real_toggle_cursor_row): New key binding.
2356
2357         * gtk/gtkmarshal.list: new
2358         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2359
2360 2001-06-06  Havoc Pennington  <hp@redhat.com>
2361
2362         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
2363
2364         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
2365         Down to move visually rather than logically, since it confuses 
2366         people. Add -/+ and Ctrl--/+ bindings for logical movement.
2367
2368 2001-06-06  Alex Larsson  <alexl@redhat.com>
2369
2370         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2371         Fix up error messages.
2372
2373 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
2374
2375         * gtk/gtktooltips.h: Include gtkwidget.h 
2376         (#55798, Karl Nelson)
2377
2378         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
2379         a valid latin-1 character. (Marc Lehmann, #35467)
2380
2381         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
2382         (Marc Lehmann, #35467)
2383         
2384 2001-06-05  Alex Larsson  <alexl@redhat.com>
2385
2386         * demos/gtk-demo/appwindow.c (do_appwindow):
2387         Don't swap the order of the args to gtk_widget_destroyed.
2388
2389         * tests/testgtk.c (destroy_properties):
2390         Don't crash when the properties window is destroyed.
2391
2392         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
2393         Use with_mnemonics to handle the case of stock items with
2394         underscores in them.
2395
2396 2001-06-05  Havoc Pennington  <hp@redhat.com>
2397
2398         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
2399         gtk_text_iter_reorder
2400
2401 2001-06-05  Havoc Pennington  <hp@redhat.com>
2402
2403         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
2404
2405 2001-06-05  Havoc Pennington  <hp@redhat.com>
2406
2407         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
2408         to the range that was set
2409
2410         * gtk/gtkrange.c: add value_changed signal, primarily 
2411         intended for use with GtkScale
2412         (gtk_range_set_increments): new function
2413         (gtk_range_set_range): new function with weird name
2414         (gtk_range_set_value): new function
2415         (gtk_range_get_value): new function
2416
2417         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
2418         from gtk_spin_button_get_value_as_float(). Compat #define
2419         added for get_value_as_float.
2420
2421         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
2422
2423         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
2424
2425 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
2426
2427         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
2428
2429 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
2430
2431         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
2432
2433         * tests/testgtk.c (create_tooltips): Remove usage of
2434         gtk_widget_set().
2435
2436 2001-06-05  Havoc Pennington  <hp@redhat.com>
2437
2438         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
2439
2440         Applying patch from Jeff Franks, with function docs added.
2441         
2442         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
2443         remove call to set_mnemonic_widget, change docs a bit.  
2444
2445         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
2446         new function
2447
2448         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
2449         new function
2450
2451         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
2452
2453         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
2454         function
2455         (gtk_radio_button_new_with_mnemonic_from_widget): new function
2456
2457         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
2458         new function
2459
2460         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
2461         function        
2462
2463         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
2464         auto-selection of mnemonic widget.
2465
2466 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
2467
2468         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
2469         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
2470         (gtk_tree_view_column_set_min_width): ditto.
2471
2472 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
2473
2474         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
2475         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
2476
2477 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
2478
2479         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
2480         gtk_clist_thaw().
2481
2482 2001-06-04  Havoc Pennington  <hp@pobox.com>
2483
2484         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
2485         releases for buttons 6, 7
2486
2487 2001-06-04  Havoc Pennington  <hp@redhat.com>
2488
2489         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
2490         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
2491         #55562
2492
2493 2001-06-04  Havoc Pennington  <hp@redhat.com>
2494
2495         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
2496         where text_view->layout == NULL by assuming its size is 0, 
2497         i.e. same as if we haven't done any reflow. Reported by 
2498         Hidetoshi Tajima #55448 
2499
2500 2001-06-04  Havoc Pennington  <hp@redhat.com>
2501
2502         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
2503         and 7 for scroll left/right, from Thomas Broyer
2504
2505 2001-05-10  Havoc Pennington  <hp@redhat.com>
2506
2507         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
2508         we need to parse the xsetting as if it were an RC file string.
2509
2510         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
2511         value of palette from settings, not from static variable
2512
2513         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
2514         xsettings translation table
2515
2516         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
2517         hardcoding the toolbar style conflicts with new customizable 
2518         toolbar style philosophy
2519         (gtk_toolbar_class_init): add settings for default toolbar style;
2520         these are used unless the app specifically forces a toolbar style
2521
2522         * gtk/gtksettings.c (settings_install_property_parser): only
2523         return at the start if we warn and parser == NULL
2524
2525         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
2526         palette changed handler so we don't notify dead color selections
2527
2528         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
2529         xthickness/ythickness of 0 or 1 properly 
2530         (gtk_default_draw_resize_grip): clear the background behind the
2531         resize grips, and align to bottom right if we square the 
2532         area to be drawn.
2533
2534         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
2535         statusbar label to 1, so it doesn't make toplevels resize oddly
2536         (gtk_statusbar_size_request): add grip size to request
2537         (gtk_statusbar_size_allocate): hack so the hbox still works with 
2538         the grip size in the request
2539
2540         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
2541         bug where showing all on a toplevel makes the toolbar 
2542         button text appear despite the toolbar mode
2543
2544         * gtk/gtkmenubar.c: add internal padding style property
2545
2546         * gtk/gtktoolbar.c: Add internal padding style property; add
2547         shadow type style property
2548
2549         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
2550         state; and put Container::border_width outside the frame
2551
2552         * gtk/gtktextview.c: don't draw focus rectangle if we're in
2553         interior focus mode, we just use blinking cursor
2554
2555 2001-06-04  Havoc Pennington  <hp@redhat.com>
2556
2557         * configure.in: Make gdk-pixbuf have same version number as GTK
2558
2559 2001-06-04  Havoc Pennington  <hp@redhat.com>
2560
2561         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
2562         digits greater than 6. If there actually are limits (which there
2563         likely aren't), should clamp to them not warn.
2564         (gtk_spin_button_new_with_range): don't take log of 0
2565         (gtk_spin_button_size_request): use digits to compute size
2566         request, rather than step increment.
2567
2568         * tests/testgtk.c (create_spins): test larger values of digits
2569         
2570         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
2571         font on map not expose, so we don't get weirdness during scrolling
2572
2573 2001-06-04  Havoc Pennington  <hp@redhat.com>
2574
2575         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
2576         Sam Solon, bug #54577, update value even if not drawable.
2577
2578 2001-06-04  Havoc Pennington  <hp@redhat.com>
2579
2580         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
2581         SCROLL_LEFT, reported by Thomas Broyer.
2582
2583 2001-06-04  Havoc Pennington  <hp@redhat.com>
2584
2585         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
2586         Process updates immediately, to prevent funny lag effect
2587         when scrolling, at some mild potential efficiency cost.
2588
2589 2001-06-04  Havoc Pennington  <hp@redhat.com>
2590
2591         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
2592         slider on the click.
2593
2594 2001-06-03  Havoc Pennington  <hp@pobox.com>
2595
2596         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
2597         hscale/vscale details, so we can use it for scrollbar as well.
2598
2599         * tests/testgtk.c (reformat_value): honor digits from GtkScale
2600
2601         * gtk/gtkenums.h (GtkTroughType): Remove this enum
2602         (GtkScrollType): add START and END from GtkTroughType
2603
2604         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
2605         its x/y arguments
2606
2607         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
2608         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
2609         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
2610         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
2611         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
2612
2613         Notable changes in the process:
2614          
2615         - stepper_size style property is the height for vertical 
2616           ranges, width for horizontal; the other dimension matches
2617           the trough size
2618         - add ability to do NeXT-style steppers (and several other styles
2619           that don't make any sense)
2620         - added min_slider_length, fixed_slider_length properties to
2621           GtkScrollbar
2622         - cleaned some private (or at least useless) functions out of
2623           gtkscale.h    
2624         - moved bindings to GtkScale from subclasses, even arrow keys,
2625           since blind users don't know scale orientation.
2626         - change move_slider action signal to use new GtkScrollType,
2627           remove GtkTroughType argument
2628         - digits rounds the values a range will input to the given 
2629           number of decimals, but will not try to force adjustment 
2630           values set by other controllers. That is, we no longer
2631           modify adjustment->value inside a value_changed handler.
2632         - added getters for GtkScale setters
2633         - middle-click begins a slider drag
2634         
2635 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
2636
2637         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
2638         getting the focus code to work.
2639         (gtk_tree_view_class_init): Add a bunch of keybindings.
2640
2641         * gtk/gtktreeviewcolumn.c
2642         (gtk_tree_view_column_set_cell_data_func):
2643         s/GtkCellDataFunc/GtkTreeCellDataFunc.
2644         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
2645         of "properties_changed" to help justify the death of the latter
2646         signal. (-:
2647
2648         * tests/testtreefocus.c (main): Let some columns be focussable to
2649         test focus better.
2650
2651 2001-06-01  Havoc Pennington  <hp@redhat.com>
2652
2653         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
2654         
2655         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
2656         overwrite in overwrite mode if we already deleted the selection
2657         and replaced it with new text.  
2658
2659         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
2660         selection to an empty range, clear the clipboard if we owned it.
2661         (gtk_label_set_selectable): give up selection if we become
2662         unselectable.
2663         (gtk_label_state_changed): override state changed to unselect text
2664         when insensitive
2665         (get_text_callback): add paranoia check that indexes aren't
2666         outside of label->text
2667         (gtk_label_select_region): make -1 for start_offset mean "end of
2668         label," for consistency with GtkEditable
2669
2670         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
2671         GTK_DIALOG_NO_SEPARATOR flag
2672
2673 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
2674
2675         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
2676         notifications on non-existant "enable_arrow_keys".
2677         (#53753, Skip Montanaro)
2678
2679 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
2680
2681         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
2682         GDK_TYPE_RECTANGLE.
2683
2684         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
2685         of allocation argument be GDK_TYPE_RECTANGLE.
2686
2687 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
2688
2689         * gtk/gtkoptionmenu.c: Account for the fact that the border
2690         width is _outside_ the window. (Fixes #54585, bug found
2691         by Bastien Nocera.)
2692
2693 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
2694
2695         * gtk/gtksettings.c (gtk_settings_get_property): Validate
2696         value from GDK settings against parameter spec.
2697
2698         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
2699         to temporary values and use g_value_transform(), since
2700         thinking that GValue was going to be easy or efficient
2701         to use was, of course, a mistake.
2702
2703         * gtk/gtksettings.c: Add cursor blink setting.
2704         
2705         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
2706
2707         * gtk/gtkentry.c: Add cursor blinking.
2708
2709         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
2710         cursor blink global settings.
2711
2712         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
2713         for :text_position in places where it is missing.
2714
2715 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
2716
2717         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
2718
2719 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
2720
2721         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
2722         not pkg-config. (#51032)
2723
2724         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
2725         (fixes #51952, James Henstridge)
2726         
2727 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
2728
2729         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
2730         Rename to the more correct gtk-go-up.
2731
2732         * gtk/stock-icons/stock_menu_sort_ascending.png:
2733         Added new file.
2734         
2735         * gtk/stock-icons/stock_menu_sort_descending.png:
2736         Changed to show descending instead of ascending.
2737
2738         * gtk/gtkiconfactory.c:
2739         Added menu size icon to sort ascending.
2740
2741         * gtk/stock-icons/Makefile.am:
2742         Added stock_menu_sort_ascending.png.
2743         
2744         * gtk/gtkseparatormenuitem.c:
2745         Use correct typenames.
2746
2747 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
2748
2749         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
2750         gulong as in GSignal.
2751
2752 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
2753
2754         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
2755         instances of GtkCellRenderer in code (all but dnd icon code).
2756         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
2757         there, and I can do multiple Cells per column.
2758
2759         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
2760
2761         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
2762         when model was unreffed prior to removing the row reference.
2763
2764 2001-05-25  Havoc Pennington  <hp@redhat.com>
2765
2766         * gtk/gtkiconfactory.c: fix so that default icons are created if 
2767         you call gtk_stock_list_ids()
2768
2769         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
2770         in list
2771
2772 2001-05-25  Havoc Pennington  <hp@redhat.com>
2773
2774         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
2775         set can render without falling back to missing image icon
2776
2777         * gtk/gtktextview.c (gtk_text_view_size_request): request full
2778         size of text, instead of random values
2779
2780         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
2781         size of tree view, instead of random values
2782
2783         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
2784         image in an appropriate size
2785
2786         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
2787         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
2788
2789         Throughout: fix GTK_STOCK_BUTTON_ instances
2790         
2791         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
2792         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
2793         Add a bunch of new stock items/icons
2794
2795         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
2796         new function, convenience for inserting columns with a data func
2797
2798         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
2799         (_gtk_icon_factory_list_ids): use list of all factories to
2800         generate a list of all known IDs
2801
2802         * gtk/gtkstock.c (gtk_stock_list_ids): replace
2803         gtk_stock_list_items() with a function that returns all IDs known
2804         including those for GtkIconFactory.
2805
2806 2001-05-25  Hans Breuer  <hans@breuer.org>
2807
2808         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
2809         work -> check boxes and radio buttons are drawn now, even on win9x.
2810         Improved line settings a bit, still no clue how to get really dotted
2811         lines on win9x, on NT it's PS_ALTERNATE.
2812
2813         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
2814         GDK_HINT_MIN_SIZE as well
2815
2816         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
2817
2818         * gtk/gtk.def : updated
2819
2820         * gtk/gtktreeprivate.h : change column_drop_func to be a function
2821         pointer not a function pointer pointer
2822
2823         * tests/testdnd.c : include <stdlib.h> for putenv prototype
2824
2825         * tests/testsocket.c : made it compile on win32 again
2826
2827         * tests/makefile.msc : one more test-app uses prop-editor.obj
2828
2829 2001-05-22  Havoc Pennington  <hp@pobox.com>
2830
2831         * gtk/gtkbin.c (gtk_bin_get_child): New function
2832
2833 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
2834
2835         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
2836         to ignore when doing compose processing.
2837
2838 2001-05-22  Joe Shaw  <joe@ximian.com>
2839
2840         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
2841         Simplify as suggested by Havoc. Just get the last iter and work
2842         backward to the tag instead of getting a line and working back from
2843         there. Fixes passing in an invalid offset to
2844         iter_init_from_byte_offset().
2845
2846 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
2847
2848         * gtk/gtktreeview*.h: 
2849         * gtk/gtkcell*.h:
2850         * gtk/gtk*store.h:
2851         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
2852         macros to all objects.
2853
2854 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
2855
2856         * gtk/gtkcellrenderertext.c
2857         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
2858         with very large (TM) amounts of text.  May be moved to
2859         GtkCellRenderer in the future, though I'm not sure it wants to be
2860         this accessible.
2861
2862         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
2863         More sanity brought to this class.  I like it.
2864
2865         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
2866         case.  Kids, don't try this at home.
2867
2868         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
2869         convenience function.
2870
2871         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
2872
2873 2001-05-21  Alexander Larsson  <alexl@redhat.com>
2874
2875         * gtk/gtkfontsel.c:
2876         Added properties. Based on patch by Lee Mallabone.
2877
2878         * gtk/gtkruler.c:
2879         * gtk/gtkhruler.c:
2880         * gtk/gtkvruler.c:
2881         * gtk/gtktext.c:
2882         * gtk/gtktextview.c:
2883         Converted GtkArg to GParam. Based on patches by John Margaglione.
2884
2885         * tests/Makefile.am:
2886         * tests/testtext.c:
2887         Add a property editor to testtext.
2888         
2889 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
2890
2891         * gtk/gtk{h,v,}paned.c: Only show the separator if 
2892
2893         * configure.in: Fixed reversed conditional causing all image
2894         libraries to be linked in.
2895
2896 2001-05-21  Joe Shaw  <joe@ximian.com>
2897
2898         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
2899         that top_y needs to be >= 0.
2900
2901 2001-05-11  Havoc Pennington  <hp@pobox.com>
2902         
2903         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
2904         losing connection to the X server.
2905
2906 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
2907
2908         * configure.in: Start checks for X from pangox/pangoxft
2909         CFLAGS to avoid duplicate libraries.
2910
2911         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
2912
2913         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
2914         to include gobject.
2915         
2916 2001-05-18  Alexander Larsson  <alexl@redhat.com>
2917
2918         * gtk/gtkspinbutton.c:
2919         Convert GtkArgs to GParams. Based on patch by John Margaglione.
2920         Also do size request reasonable for MAXDOUBLE. Previously it printed
2921         the limits to a buffer and overran it. Instead do it using log10() and
2922         limit the width to 10 digits.
2923         
2924         * gtk/gtkwidget.c (gtk_widget_get_property):
2925         Correctly handle setting the parent property to NULL.
2926
2927 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
2928
2929         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
2930         style attributes even if the widget isn't realized.
2931
2932         * demos/gtk-demo/main.c: Use a slightly smaller font.
2933
2934 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
2935
2936         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
2937         This is something that only a widget writer would ever want
2938         to change.
2939
2940         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
2941         gtk_signal_emit_by_name().
2942
2943         * gtk/gtkviewport.c: Fix some warnings.
2944
2945         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
2946         allowing the requisitions of multiple widgets to be grouped
2947         together.
2948
2949         * tests/testgtk.c: Add GtkSizeGroup test
2950
2951         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
2952
2953         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
2954         warnings.
2955
2956         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2957
2958 2001-04-28  Martin Baulig  <baulig@suse.de>
2959
2960         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
2961         to gtk_image_menu_item_set_icon() and made it work if there's already
2962         an image.
2963         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
2964         (gtk_image_menu_item_new_with_label): New function.
2965
2966 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
2967
2968         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
2969         highlighting code!!!!  The result is okay so long as you don't try
2970         to stress it.  It also highlights a bug in the TextView so it's in
2971         an unproportional font right now until it's fixed.
2972
2973         *demos/gtk-demo/*.c: Clean up code a bit to make it
2974         ugly-parser(TM) friendly. (-:
2975
2976 2001-05-17  Joe Shaw  <joe@ximian.com>
2977
2978         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
2979         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
2980         if it is only partially onscreen.
2981
2982 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
2983
2984         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
2985         not by characters.
2986
2987         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
2988         are not zero or one; that is, when graphemes of multiple characters
2989         are involved.
2990
2991         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
2992         FIXME.
2993
2994 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
2995         
2996         * gtk/gtkbbox.c:
2997         Add properties, based on patch by Lee Mallabone.
2998
2999         * gtk/gtknotebook.c:
3000         * gtk/gtktoolbar.c:
3001         Convert from GtkArg to GParam, based on patch by John Margaglione.
3002         
3003         * gtk/gtkhscale.c:
3004         * gtk/gtkvscale.c:
3005         * gtk/gtkhscrollbar.c:
3006         * gtk/gtkvscrollbar.c:
3007         * gtk/gtkrange.c:
3008         Move adjustment property to GtkRange.
3009
3010         * gtk/gtklabel.c:
3011         Setup mnemonics on property changes
3012
3013         * gtk/gtkwidget.c (gtk_widget_get_property):
3014         GdkExtensionMode is an enum, not a flag. Set it with
3015         g_value_set_enum ().
3016
3017         * tests/prop-editor.c:
3018         Better propery editor.
3019
3020         * tests/testgtk.c:
3021         Add new property test. Pass zero to the property editor to
3022         get properties from all derived types.
3023         
3024 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
3025
3026         * autogen.sh (have_automake): Require libtool-1.4,
3027         automake-1.4p1.
3028
3029         * acinclude.m4: Remove libtool macros.
3030
3031         * gdk-pixbuf/Makefile.am: Add dependencies to loade
3032         modules.
3033
3034         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
3035         for libgdk.
3036
3037         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
3038         libgdk.la for libgtk.
3039
3040         * modules/input/Makefile.am: Make modules have full
3041         dependencies.
3042
3043 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
3044
3045         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
3046         #54699 where paths weren't being checked for correctness.
3047
3048 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
3049
3050         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
3051         in any order you wan, whether or not the column is added to the
3052         tree, or the tree is realized.  Yay!
3053
3054         * gtk/gtktreeviewcolumn.c
3055         (gtk_tree_view_column_setup_sort_column_id_callback): handle
3056         sorting columns a lot saner
3057
3058         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
3059         new function to actually set wether or not a column is
3060         reorderable.
3061
3062         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
3063         if we have 'em.
3064
3065         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
3066         Fix nasty bug where we were showing the button just before
3067         realizing it.  As a result, the parent window was
3068         tree_view->window instead of tree_view->priv->header_window.
3069
3070         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
3071         to let you easily reorder a list or tree.
3072
3073 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
3074
3075         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
3076         from args to properties.
3077
3078 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
3079
3080         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
3081         from args to properties. (#51957)
3082
3083         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
3084         calls to after ->set_property call.
3085
3086 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
3087
3088         * tests/prop-editor.c: Block against redundant changes.
3089
3090         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
3091         properties.
3092
3093 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
3094
3095         * gdk/gdkpixmap.h: Remove creative formatting.
3096
3097 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
3098
3099         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
3100         property API. (#51669)
3101
3102         * gtk/gtkscale.c: Patch from John Margaglione converting to
3103         property API. (#51891)
3104
3105         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
3106         to property API. (#50985)
3107
3108 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
3109
3110         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
3111         buffering state across expose event, so we still call end_paint().
3112
3113 2001-05-11  Alexander Larsson  <alexl@redhat.com>
3114
3115         * gtk/gtkhsv.c (paint_triangle):
3116         Expose the ring in the triangle at the correct place when
3117         exposing just a part of the triangle.
3118
3119         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
3120         Return FALSE, or window focusing will not work.
3121
3122 2001-05-11  Havoc Pennington  <hp@pobox.com>
3123
3124         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
3125         #54144
3126
3127         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
3128         bug #54330
3129
3130 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
3131
3132         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
3133         propagate exposes to NULL child.
3134
3135         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
3136         against not having one of the scrollbars.
3137
3138         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
3139         we don't keep a mnemonic window if we have no mnemonic installed.
3140
3141 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
3142
3143         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
3144         it has the _important_ side effect of initializing a class.
3145
3146 2001-05-10  Alexander Larsson  <alexl@redhat.com>
3147
3148         * gdk/linux-fb/gdkprivate-fb.h:
3149         Make sure you can compile out the implementation/wrapper assert
3150         macros.
3151
3152         * gdk/linux-fb/gdkdrawable-fb2.c:
3153         Check implementation/wrappers, initialize type for pixmap dummys.
3154
3155         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3156         Hide the cursor if reading from the screen.
3157
3158         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3159         Fix sign bug in tiling code.
3160
3161         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
3162         Handle background pixmaps.
3163
3164 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
3165
3166         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
3167         function to let user control where columns are dragged.
3168
3169         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
3170         Escape is pressed.
3171
3172 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
3173
3174         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
3175         "columns_changed" signal.
3176         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
3177         motion code to draw arrows to the side if indicator is outside the
3178         widget.
3179         (gtk_tree_view_map_expanded_rows): Implement.
3180
3181 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3182
3183         * demos/testpixbuf-save.c: 
3184         * demos/testpixbuf-drawable.c:
3185         Include gdkfb.h on linux-fb.
3186
3187 2001-05-07  Alexander Larsson  <alexl@redhat.com>
3188
3189         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
3190         New function for getting toplevel window at position.
3191         (gdk_drag_find_window): Use get_toplevel_window () instead
3192         of gdk_window_get_pointer(). (gdk_drag_status): Use
3193         correct context for getting window.
3194
3195         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
3196         g_strdup the atom name.
3197
3198         * gdk/linux-fb/gdkwindow-fb.c:
3199         Costmetic fix.
3200
3201         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
3202         Add code for changing cursor on linux-fb backend (same as
3203         win32).
3204
3205 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
3206
3207         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
3208         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
3209         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
3210         report was not for the development branch of GTK+, but it applies
3211         anyways).
3212
3213 2001-05-04  Havoc Pennington  <hp@redhat.com>
3214
3215         * configure.in: fix some shell typos
3216
3217         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
3218
3219         * gtk/gtkimage.c: handle animations
3220
3221         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
3222         border_width * 2, not just border_width
3223
3224         * gtk/gtkscale.c: add "format_value" signal to allow people
3225         to override the way values are drawn.
3226         (gtk_scale_get_value_size): fix width/height mistake,
3227         and compute size from actual displayed text, not 
3228         from made-up text.
3229
3230         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3231         signal registration
3232
3233         * tests/testtext.c: Add "Remove all tags" menu item for testing
3234
3235         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3236
3237         * demos/gtk-demo/main.c (main): add hack so we can find modules
3238         without installing gtk
3239
3240         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3241
3242         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3243         factor)
3244         (gtk_cell_renderer_text_set_property): remove some bogus
3245         g_object_notify
3246
3247         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3248         factor
3249
3250         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3251         to layout
3252
3253         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3254         gtk_text_iter_is_first
3255
3256 2001-01-06  Hans Breuer  <hans@breuer.org>
3257
3258         * gdk/gdk.def : updated exports
3259
3260         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3261         gdk won't compile anymore
3262  
3263         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3264         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3265         Improved gdk_flush () to not only do pending drawing operations
3266         but also process all currently pending events. This should make
3267         the behaviour more similar to the X11 version.  
3268
3269         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3270         option needs to be set even if there is no GDK_GC_BACKGROUND.
3271         (gdk_win32_hdc_get) : use predraw_set_background () independent
3272         of value_mask. This allows to draw dashed lines leaving the original
3273         background intact.
3274
3275         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3276         after processing, because we can't reuse it as the X11 version does.
3277
3278         * gtk/gtk.def : updated exports
3279
3280         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3281         would like to get rid of this file again, and use straight
3282         makefile.msc again, as the other Gtk+ subdirs do)
3283
3284         * test/makefile.msc (new file) : build the test apps here
3285
3286 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
3287
3288         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
3289         strike-through setting
3290         (gdk_draw_layout_line_with_colors): Render strike-through
3291
3292 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
3293
3294         * Release 1.3.5
3295
3296         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
3297
3298         * NEWS: Updated
3299
3300         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
3301         Makefile breakage.
3302
3303 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
3304
3305         * demos/gtk-demo/images.c (progressive_timeout): Fix
3306         typo in filename.
3307
3308         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
3309         out FIXME warning; just too annoying.
3310
3311 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
3312
3313         * gdk/linux-fb/gdkcolor-fb.c:
3314         Better error messages.
3315
3316         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
3317         Initialize abs_x and abs_y.
3318         
3319         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3320         Correct handling of stipple offset.
3321
3322         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
3323         Treat directcolor framebuffers as truecolor.
3324         
3325 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
3326
3327         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
3328         dependency on Atk for accessibility support.
3329
3330         * configure.in **/Makefile.am: Major reworking of substituted
3331         variables for CFLAGS/LIBS to make a lot more sane and 
3332         keep the the compile/link lines a bit shorter.
3333
3334         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
3335
3336 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
3337
3338         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
3339         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
3340         use _gtk_boolean_handled_accumulator.
3341
3342 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
3343
3344         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
3345         to fix things so clicking inside selection leaves cursor
3346         at point where clicked. (#50324)
3347
3348         * gtk/gtksettings.c (gtk_settings_class_init): Restore
3349         sane value for default double click time.
3350
3351         * tests/testtext.c (test_init): Really path to input modules.
3352
3353 2001-05-03  Sven Neumann  <sven@convergence.de>
3354
3355         * demos/testpixbuf-save.c: include target-specific headers as
3356         done in testpixbuf-drawable.c
3357
3358 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
3359
3360         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
3361         new_text_length appropriately when we run into the 
3362         size limit for the entry. (#53445, reported by Jeff Franks)
3363
3364         * tests/testgtk.c (create_entry): Remove most of the
3365         property toggle buttons. Replace with a "Props" button
3366         that brings up a property editor.
3367
3368         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
3369         Split the property editor code out for reuse, improve.
3370
3371 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
3372
3373         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
3374         trap errors around calls to XSetInputFocus since we have
3375         no way of knowing reliably whether we are viewable or
3376         not. (#53947)
3377
3378 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
3379
3380         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3381         fix bug in dropping columns.  Moving columns now basically works
3382         modula some fine tuning.
3383
3384 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
3385
3386         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
3387         autoscroll support.  It mostly works, but could use some fine
3388         tuning.
3389         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3390         Actually move the column.
3391
3392 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
3393
3394         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
3395           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
3396           New default theme! A slighly improved version of the 2.0 Raleigh
3397           theme, with Windows-esque focus/drawing default. 
3398           (GtkWidget::interior_focus defaults to TRUE.)
3399
3400         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
3401
3402 2001-04-30  Havoc Pennington  <hp@pobox.com>
3403
3404         * tests/testtext.c (line_numbers_expose): fix to work with
3405         gtk_paint_layout change
3406
3407 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3408
3409         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
3410           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
3411           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
3412           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
3413
3414         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
3415           with GtkWidget::interior_focus = TRUE better.
3416
3417         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
3418         ::default_outside_border for more flexibility.
3419
3420         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
3421         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
3422         change that had to be made with g_object_get.
3423
3424 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
3425
3426         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
3427         (gtk_tree_view_move_column_after): Clean up interface. 
3428
3429 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
3430
3431         * gtk/gtkpacker.h:
3432         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
3433          to gtkenum.h.
3434
3435         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
3436         handled in switch).
3437
3438         * gtk/Makefile.am:
3439         (gtk.defs): generate enum portions with  glib-mkenums.
3440         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
3441         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
3442         
3443         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
3444         addition.
3445
3446         * docs/Changes-2.0.txt: keep a note on signal handlers now
3447         not getting emitted during the emission they were connected within.
3448
3449 2001-04-28  Havoc Pennington  <hp@pobox.com>
3450
3451         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
3452
3453 2001-04-24  Havoc Pennington  <hp@redhat.com>
3454
3455         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
3456         (gtk_text_layout_move_iter_to_next_line): fix these two for
3457         invisible text, lots of other stuff still hosed.
3458
3459         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
3460         new function, replaces the get/set palette stuff. This function 
3461         is intended for use by libgnomeui which should set the hook to a
3462         thing which sets the palette in GConf, and we need the
3463         GConf-to-xsettings proxy which will result in the change being
3464         propagated back to the GTK app.
3465
3466         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
3467         about unusable signals that it may be because the signal has 
3468         parameters.
3469
3470         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
3471         style, otherwise gtkrc.c won't know to create a new GtkStyle for
3472         it.
3473         (gtk_widget_modify_color_component): call
3474         gtk_widget_modify_style() so the rc style will get copied.
3475         (gtk_widget_modify_font): ditto
3476
3477         * gtk/gtkrc.c: make a couple variables static
3478
3479         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
3480         help button by default, since it does nothing
3481
3482         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
3483         around with UI
3484
3485         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
3486         so we can have tooltips
3487
3488         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
3489         can have tooltips
3490
3491         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
3492         GDK_ENABLE_BROKEN, because its memory behavior is completely
3493         hosed.
3494
3495         * gtk/gtknotebook.c: remove key press handler, replace with
3496         binding set, add numeric keypad support
3497
3498         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
3499
3500         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
3501
3502         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
3503         addition to plain Delete
3504
3505         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
3506         GDK_KP_Enter in addition to GDK_Return
3507
3508         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
3509         activate on entry instead of key press
3510         (gtk_font_selection_on_clist_key_press): get
3511         rid of this signal handler, not needed with new font sel.
3512
3513         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
3514         no-longer-needed emit_stop_by_name(), just return TRUE
3515
3516         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
3517         cruft, this widget is no longer focusable.
3518
3519         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
3520         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
3521         move_slider action signal, add binding set for vscale/hscale, in
3522         the process support numeric keypad
3523
3524         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
3525         make GDK_Return and GDK_KP_Enter activate the entry via 
3526         binding set, instead of hardcoded.
3527
3528 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
3529
3530         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
3531         code.  Some documentation added.
3532
3533 2001-04-27  Havoc Pennington  <hp@redhat.com>
3534
3535         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
3536
3537         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
3538
3539         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
3540         line/para separators
3541         (gtk_entry_create_layout): set single paragraph mode on the layout
3542
3543         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
3544         spacing between the image and label; instead, inside a button box 
3545         the button will get extra space that will go there, but if people 
3546         configure button box for 0 chubbiness, then there's no spacing.
3547
3548         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
3549         and min/max size style properties, so people can tune their
3550         chubbiness.
3551
3552         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
3553         functions
3554
3555         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
3556         space_style, and button_relief into style properties, remove
3557         functions for setting them
3558         
3559         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
3560         it back down
3561
3562         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
3563         types from gtk_widget_style_get
3564
3565         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
3566         with a style property.
3567
3568         * gdk/x11/gdkevents-x11.c: namespace the settings
3569
3570         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
3571
3572         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
3573         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
3574         be used. Also, translate doc strings for settings. Also, namespace
3575         the double-click-time property. Also, remove bell properties crap.
3576
3577 2001-04-27  Sven Neumann  <sven@gimp.org>
3578
3579         * Makefile.am: before creating links, check if pkg-config files
3580         exist for the default target. Otherwise link to the pkg-config files
3581         that got installed with this build.
3582
3583 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
3584
3585         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
3586         dragging code.  Revealed some (potential) GdkWindow bugs.
3587
3588         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
3589         _gdk_window_init_position to the end of reparent to fix the case
3590         of reparenting when new_x != old_x and new_y != old_y.
3591
3592 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
3593
3594         * gtk/gtkentry.c (strstr_len): Fix optimization that
3595         was correct for the use here, but completely incorrect
3596         in general.
3597
3598 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
3599
3600         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
3601         until patch adding gtk_window_set_size() is recommitted. 
3602
3603         * **Makefile.am configure.in gdk/x11/gdkim-11.c
3604           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
3605           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
3606           (#10784)
3607
3608 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
3609
3610         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
3611         window == NULL in a number of cases.
3612
3613         * tests/testdnd.c: Set module path for gdk-pixbuf.
3614
3615 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
3616
3617         * gtk/Makefile.am xembed.h: File containing #defines
3618         for XEMBED protocol.
3619
3620         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
3621
3622         - Change protocol from old plug/socket specific protocol
3623           to XEMBED draft
3624         - Various fixes to work with GTK+-2.0
3625
3626         Still quite a bit of work to do here to handle initiation
3627         from the socket side (as specified by XEMBED), to handle
3628         the more advanced features of XEMBED, and to figure out
3629         a good way to handle same-app embedding with less overhead
3630         than using full XEMBED.
3631
3632 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
3633
3634         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
3635         track of whether the toplevel has the focus; only send
3636         focus-in events to the focus widget when the window
3637         actually has the focus.
3638
3639 2001-04-25  Havoc Pennington  <hp@pobox.com>
3640
3641         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
3642         were still in the header
3643
3644 2001-04-24  Alexander Larsson  <alexl@redhat.com>
3645
3646         * gtk/gtkclist.[ch]:
3647         * gtk/gtkctree.c:
3648         When there is a row highlighted for D'n'D it must alse
3649         be painted hightlighted on exposes. Otherwise exposes from
3650         the icon being dragged will mess up the hightlight.
3651
3652         * gtk/gtkfontsel.c:
3653         Don't recenter selected font when exposing the font family
3654         clist. This means you can now actually scroll the font family
3655         list.
3656
3657         * gtk/gtknotebook.c:
3658         Fix focus movement on scrolling tabs that are placed on the left
3659         and right.
3660
3661 2001-04-21  Havoc Pennington  <hp@pobox.com>
3662
3663         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
3664         empty/invisible lines.
3665
3666         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
3667         (gtk_text_iter_set_visible_line_index): new functions to set
3668         indexes excluding invisible text
3669
3670         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
3671         index
3672
3673         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
3674         (gtk_text_iter_get_visible_line_offset): new functions to 
3675         get indexes excluding invisible text
3676
3677         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
3678         bunch of extra padding that served no purpose
3679
3680         * gtk/gtkdialog.c: Make all the spacings configurable via style
3681         properties, for chubbiness configuration in themes
3682
3683         * tests/testtext.c: fix path to the immodules.
3684         
3685 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
3686
3687         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
3688         got munched by #endif.
3689
3690         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
3691
3692         * gtk/gtktreeview.c: Refactored code to clean up a number of
3693         events.
3694
3695         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
3696         values to make consistent with other functions.  Spotted by Jeff
3697         Franks <jcf@tpg.com.au>.
3698
3699         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
3700         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
3701
3702 2001-04-23  Sven Neumann  <sven@gimp.org>
3703
3704         * gtk/Makefile.am
3705         * gtk/gtkplug.c
3706         * gtk/gtksocket.c: on request of Owen, reverted my last change 
3707         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
3708
3709 2001-04-23  Sven Neumann  <sven@gimp.org>
3710
3711         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
3712         compile for non-X11 targets again
3713
3714 2001-04-20  Alexander Larsson  <alexl@redhat.com>
3715
3716         * gtk/gtkcolorsel.[ch]:
3717         API Change. Take GdkColor arguments instead of gdouble *.
3718         Leave the old gtk_color_selection_set_color for compatibility,
3719         but marked deprecated.
3720         Do correct rounding when converting RGB <-> HSV.
3721         
3722         * gtk/gtkcolorseldialog.c:
3723         * tests/testgtk.c:
3724         Use new GtkColorSelection API.
3725
3726         * gtk/gtkhsv.c:
3727         Fix problem selecting colors in triangle when Hue is 330.
3728         Fix some black dots around the HSB triangle.
3729         
3730         * gtk/gtkfilesel.c:
3731         return FALSE from the focus_in_event handler to fix focus problems.
3732
3733 2001-04-18  Havoc Pennington  <hp@redhat.com>
3734
3735         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
3736         set, so keybindings are configurable    
3737         (gtk_window_activate_default): Change to activate the focus widget
3738         instead if there's a focus widget, to be consistent with the
3739         behavior that previously existed in key_press_event
3740
3741 2001-04-18  Havoc Pennington  <hp@redhat.com>
3742
3743         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
3744
3745 2001-04-18  Havoc Pennington  <hp@redhat.com>
3746
3747         Close bug #50615:
3748         
3749         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
3750         the layout
3751
3752         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
3753
3754         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
3755
3756         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
3757         
3758         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
3759         to blue for base, in addition to bg
3760         
3761 2001-04-18  Havoc Pennington  <hp@redhat.com>
3762
3763         * tests/testgtk.c (create_image): allow shrinking the image window
3764         to test that we clip to allocation.
3765
3766         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
3767         #9845
3768
3769         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
3770
3771 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
3772
3773         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
3774         mode on shm segments to 0600. We'll see who complains.
3775
3776         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
3777         _gdk_windowing_window_destroy() AFTER recursing through
3778         children.
3779
3780         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
3781         testsocket_child on X.
3782
3783         * tests/testsocket[_child].c: Fix uses of
3784         gtk_window_get_default_accel_group().
3785
3786         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
3787
3788         * gdk/gdkimage.c: (gdk_image_get):
3789         Deal with the possibility that XGetImage() might return NULL.
3790         Allocate the GdkImagePrivate structure only after XGetImage()
3791         succeeds in order not to dereference a NULL ximage pointer.  This
3792         prevents a core dump when XGetImage() fails - which is unlikely,
3793         but can happen due to race conditions accessing the geometries of
3794         drawables.  An x error will still be triggered, but the gdk image
3795         wrapper at least wont seg fault.
3796         
3797 2001-04-18  Havoc Pennington  <hp@redhat.com>
3798
3799         * gtk/gtkimage.c: fix to properly queue resizes when the image is
3800         set
3801
3802         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
3803         if the insertion point isn't editable
3804
3805         * demos/gtk-demo/images.c: Added a GtkImage demo
3806
3807         * demos/gtk-demo/drawingarea.c: drawing area demo
3808         
3809         * demos/gtk-demo/menus.c (create_menu): cleanups
3810
3811 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
3812
3813         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
3814           gdk/x11/gdkevents-x11.c: Introduce an extra child
3815         of toplevel windows that serves to hold the focus to
3816         avoid events being delivered to embedded windows.
3817
3818         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
3819         some extra variables to clean up code and reduce the
3820         number of casts.
3821
3822         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
3823         guint for 1 bit bit fields, not gboolean.
3824
3825 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
3826
3827         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
3828         not TRUE. (Fixes #52925)
3829
3830 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
3831
3832         * Released 1.3.4
3833
3834         * NEWS: Updated
3835
3836         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
3837         use GTK_TYPE_ENUM.
3838
3839 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
3840
3841         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3842
3843         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
3844         names to compatibility #defines so docs work.
3845
3846         * gtk/gtkenums.h: Remove GtkMenuFactoryType
3847
3848         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
3849
3850         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3851
3852         * tests/testgtkrc: No magenta cursors, please.
3853
3854         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
3855
3856         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
3857         
3858 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
3859
3860         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
3861         grabs, since they are no longer necessary.
3862
3863         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
3864         by signal_connect() and call gtk_button_pressed() rather
3865         than signal_connect_after().
3866
3867         * tests/testgtk.c: Restore radio menu items to combos 
3868         since they'll look OK with Raleigh, and it is easier
3869         than finishing the process of removing them that was
3870         started earlier.
3871
3872 2001-04-16  Hans Breuer  <hans@breuer.org>
3873
3874         * gdk/gdk.def :
3875         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
3876
3877         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
3878         we are interested in the functions return value not the function address
3879         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
3880
3881         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
3882
3883 2001-04-14  Hans Breuer  <hans@breuer.org>
3884
3885         * gdk/gdk.def :
3886         * gdk/makefile.msc : updated
3887
3888         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
3889         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
3890         (the testgtk::text backgound pixmap is drawn again)
3891         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
3892         Win32 Pango change
3893         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
3894
3895         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
3896         Not sure if the returned settings have the right unit, because I couldn't
3897         find any docs for the X version ...
3898
3899         * gtk/gtk.def :
3900         * gtk/makefile.msc.in : updated
3901
3902 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
3903
3904         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
3905         wording problems. (Compared to version from Johannes Stezenbach to
3906         check correctness.)
3907
3908 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
3909
3910         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
3911         this to compile.
3912
3913 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
3914
3915         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
3916         not pixbufpos.
3917
3918         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
3919
3920         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
3921         are unsigned insts, therefore use g_value_set_uint.
3922         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
3923
3924 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
3925
3926         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
3927
3928         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
3929         GTK_TYPE_STRING.
3930
3931         * gtk/gtktreeview.c: New functions to allow initial column
3932         dragging work.
3933
3934         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
3935
3936         * tests/testtreefocus.c: give dave some love.
3937
3938         * tests/testtreesort.c: Modify test to check really long samples.
3939
3940 2001-04-11  Alexander Larsson  <alexl@redhat.com>
3941
3942         * gtk-2.0.m4: Pass pkg-config options
3943         before the other args so it works even if
3944         POSIXLY_CORRECT is set.
3945
3946 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
3947
3948         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
3949         0, interface 0).
3950
3951 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
3952
3953         * gtk/gtkcalendar.c (gtk_calendar_button_press):
3954         check for action_func != NULL
3955
3956 2001-04-04  Sven Neumann  <sven@gimp.org>
3957
3958         * tests/testgtk.c (test_init): corrected path to gtk.immodules
3959
3960 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
3961
3962         * Released Gtk+-1.3.3.
3963
3964 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
3965
3966         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
3967
3968 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
3969
3970         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
3971         files to/from source dir. (if we don't stay in builddir, we
3972         can't reach make-inline-pixbuf.
3973
3974         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
3975         deps.
3976
3977         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
3978         ages 0).
3979
3980 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
3981
3982         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
3983         moved to the GtkTreeSortable interface.
3984
3985         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3986         Make more efficient (fixes #50262).
3987
3988 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
3989
3990         * NEWS: Updated.
3991
3992         * configure.in: Remove support for uninstalled glib.
3993
3994         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
3995         so as not to stop emission.
3996
3997         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3998         is no longer supported.
3999
4000         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
4001         into tests, change build order to build modules before
4002         gtk/.
4003
4004         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
4005         to here.
4006
4007 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
4008
4009         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
4010         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
4011         GPatternSpec. this is actually unlikely to cause breakage in
4012         third-party apps since except for gle, pretty much ever caller
4013         passes NULL here.
4014
4015         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
4016
4017         * *.c: use g_pattern_*() API.
4018
4019         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
4020
4021         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
4022         directions aren't passed in.
4023
4024         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
4025         functionality to be usable from gtkstyle.c as well, give precedence
4026         for conversion to user-supplied parsers.
4027         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
4028
4029         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
4030         _gtk_settings_parse_convert() for rcporperty value conversion.
4031
4032 2001-04-03  Alexander Larsson  <alexl@redhat.com>
4033
4034         * gdk/linux-fb/gdkevents-fb.c:
4035         Add empty gdk_setting_get().
4036
4037 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
4038
4039         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
4040         variable names.
4041         
4042         * gtk/makeenums.pl: touch this so enum files get remade.
4043
4044 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
4045
4046         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
4047         work again when not sorted.
4048
4049         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
4050         and "expand_row" signal, closing bug 52578.
4051
4052         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
4053         support.
4054
4055         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
4056         support.
4057
4058 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4059
4060         * gdk/gdkevents.h: Add GdkEventSetting event for notification
4061         of changes to system settings, gdk_setting_get() to retrieve
4062         a single system setting.
4063
4064         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
4065         to the draft XSETTINGS mechanism.
4066
4067         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
4068         XSETTINGS.
4069
4070         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
4071         of GDK settings changes to the GtkSettings object.
4072
4073         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
4074         double-click-timeout property to GDK.
4075
4076         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
4077         Define GDK boxed types here.
4078
4079         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
4080         gdk/gdkenumtypes.[ch] for enum definitions.
4081
4082         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
4083         * gtk/gtk-boxed.defs: Comment out GDK types
4084         * gtk/gtktypeutils.h: Remove GDK types
4085         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
4086
4087 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
4088
4089         * Applied patch from Ron Steinke to add signal accumulators
4090         so that signals with the convention 'TRUE return means
4091         handled' stop emission on a TRUE return.
4092
4093         * gtk/gtkmain.[ch]: Add private accumulator 
4094         _gtk_boolean_handled_accumulator, used throughout GTK+.
4095         
4096         * gtk/gtkspinbutton.c: Add accumulator for ::output.
4097
4098         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
4099         
4100         * gtk/gtkwidget.c: Add accumulators for event signals,
4101         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
4102         for ::mnemonic-activate.
4103
4104         * gtk/gtkwindow.c: Add accumulator for ::frame_event
4105
4106 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
4107
4108         * gtk/gtkwidget.c: Add missing include.
4109
4110 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
4111
4112         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
4113         marshaller.
4114
4115         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
4116         "changed" signal to "range_changed".
4117
4118         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
4119         removing a tree from one model would remove all trees from that
4120         model.
4121         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
4122         changed signal instead.
4123
4124 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
4125
4126         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
4127         chaining up to parent impl, since we have a INPUT_ONLY
4128         window.
4129
4130         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
4131         foreground color for the cursor.
4132
4133 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
4134
4135         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
4136         param spec when caching property values, since we unref it
4137         later when we free the style.
4138
4139         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
4140         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
4141
4142 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
4143
4144         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
4145         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
4146         stupidity.
4147
4148 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
4149
4150         [ First pass at adding style properties. Still needs some definite
4151         fine-tuning. ]
4152
4153         * gtk/gtkbutton.c: Add ::default_spacing style property.
4154          
4155         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
4156         ::indicator_spacing style properties.
4157
4158         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
4159         style properties.
4160
4161         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
4162         rather than a normal property.
4163
4164         * gtk/gtkwidget.c: Add an ::interior_focus style property to
4165         draw focus inside buttons, in the Windows/Java Metal/etc. style.
4166
4167         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
4168         Honor ::interior_focus.
4169         
4170         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
4171         TRUE.
4172
4173         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
4174         Add ::slider_width, ::trough_border, ::stepper_size,
4175         ::stepper_spacing style properties.
4176
4177         * gtk/gtkscale.[ch] Add ::slider-length style property.
4178
4179 2001-04-02 Alexander Larsson   <alexl@redhat.com>
4180
4181         * gdk/linux-fb/gdkwindow-fb.c:
4182         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
4183         warnings that were spewed on startup.
4184
4185         * gtk/gtkwindow-decorate.c:
4186         gtk_window_reposition -> _gtk_window_reposition
4187
4188 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
4189
4190         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4191         Add boxed type for GtkRequistion. Use it for ::size-request.
4192
4193         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
4194         Add a new GtkBorder structure useful for geometry properties
4195         for widgets. Add corresponding GTK_TYPE_BORDER.
4196         
4197         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
4198         Support automatic parser selection like
4199         gtk_settings_install_property_parser().
4200
4201         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
4202         functionality for use by gtk_widget_class_install_style_property.
4203         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
4204
4205 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
4206
4207         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
4208         g_param_spec_unichar(). 
4209
4210 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
4211
4212         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
4213         _NET window managers.
4214
4215         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
4216
4217 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
4218
4219         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
4220         bad needs to be nuked, not just deprecated.
4221
4222         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
4223         gtk_widget_popup().
4224
4225         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4226         
4227         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4228         widget.
4229         
4230         * docs/Changes-2.0.txt: updates.
4231         
4232 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4233
4234         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4235         for (i = 0; i < 100; i ++)
4236           g_print ("I will confirm it compile before committing\n");
4237
4238 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4239
4240         * gtk/gtktreestore.c: Initial work on implementing the
4241         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4242
4243 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4244
4245         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4246         reference counts around emissions where the widget is used afterwards.
4247         added freeze/thaws around multiple properties being notified.
4248         (_gtk_widget_get_aux_info): cleanups.
4249         
4250         * gtk/gtksettings.c (gtk_settings_install_property): provide
4251         default parsing functions for gdkcolor, enums and flags.
4252
4253         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4254         applied by owen.
4255         backed out gtk_window_get_location(), gtk_window_set_location(),
4256         gtk_window_get_size() and gtk_window_set_size(), these
4257         have to be sorted out wrg x/y/width/height/default_with/default_height
4258         properties.
4259         kept a flag in GtkWindowGeometryInfo to handle user
4260         resetting default sizes.
4261         cleaned up ZVT comments.
4262         bunch of assorted bug fixes, notification fixes.
4263         (_gtk_window_reposition): make this a really internal function.
4264         
4265         * gtk/testgtk.c: fixups.
4266         
4267 2001-03-31  Hans Breuer  <hans@breuer.org>
4268
4269         * config.h.win32.in : disable USE_MMX for msvc build cause
4270         the assembler doesn't fit and is out of my scope. Disable
4271         USE_GMODULE for msvc build as wel. The right way to share
4272         binaries on win32 would be to use libtiff.dll etc. To reduce
4273         installation hassles IMO it's better to include all fileformats
4274         builtin to gdk-pixbuf
4275
4276         * gdk-pixbuf/makefile.msc : new file
4277
4278         * gdk/gdk.def : updated
4279
4280         * gdk/win32/gdkevents-win32.c : don't erase the background if
4281         .no_bg is set. It improves the scrolling (e.g. of testgtk main
4282         buttons
4283         * gdk/win32/gdkgeometry-win32.c : added comment about the above
4284
4285         * gdk/win32/gdkwindow-win32.c : added three new functions like
4286         the X version. Only one is implemented, because the other two
4287         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
4288         be default behaviour on win32 anyway ...
4289
4290         * gtk/gtk.def : updated
4291
4292         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
4293         from where it was built and add an additional rule to automagically
4294         build gtkmarshal.[hc]
4295
4296         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
4297         before array access for the current entry isn't finished
4298
4299         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
4300         use g_return_val_if_fail
4301
4302         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
4303         for the static array, but let the compiler calculate it. It
4304         makes me wonder if gcc isn't capable to catch bugs like this ...
4305
4306 2001-03-31  James Henstridge  <james@daa.com.au>
4307
4308         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
4309         constant "-1" in the aux info structure.
4310
4311 2001-03-30  Alexander Larsson  <alexl@redhat.com>
4312
4313         * gtk/gtkbutton.c (gtk_button_get_property):
4314         * gtk/gtklabel.c:
4315         Remove leaks.
4316         
4317         * gtk/gtkcontainer.c:
4318         * gtk/gtkhscale.c:
4319         * gtk/gtkhscrollbar.c:
4320         * gtk/gtklayout.c:
4321         * gtk/gtkmisc.c:
4322         * gtk/gtkprogress.c:
4323         * gtk/gtkprogressbar.c:
4324         * gtk/gtkrange.c:
4325         * gtk/gtktable.c:
4326         * gtk/gtkviewport.c:
4327         * gtk/gtkvscale.c:
4328         * gtk/gtkvscrollbar.c:
4329         * gtk/gtkwidget.c:
4330         Property patches, based on patches from John Margaglione and Lee Mallabone.
4331
4332 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
4333
4334         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
4335         adjustment. Cleaned redundant preconditions (spin != NULL). Added
4336         inline API function docs.
4337         (gtk_spin_button_new_with_range): New convenience constructor.
4338         (gtk_spin_button_set_increments): New adjustment helper.
4339         (gtk_spin_button_set_range): New adjustment helper.
4340
4341         * gtk/testgtk.c : added test of the new convenince constructor and
4342         value_changed signals.
4343
4344 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
4345
4346         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
4347         listen to the reorder signal.
4348
4349 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
4350
4351         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
4352         to get the aux info structure fo the widget.
4353
4354         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
4355         above function.
4356
4357         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
4358
4359         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
4360         to get the size of the window manager frame, basically the same
4361         code that gdk_window_get_root_origin() had
4362         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
4363
4364         * gtk/gtkwindow.c (gtk_window_set_default_size): use
4365         gdk_window_resize() if the window is realized and resizeable
4366
4367         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
4368         typo so that setting gravity works
4369
4370         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
4371         allocation if auto_shrink is on, even if the default size
4372         has not changed.
4373
4374         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
4375         g_return_if_fail
4376
4377 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
4378
4379         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
4380         reordering/sorting work.  Now pretty much works.
4381
4382         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
4383         reorder mostly work.  Still need to get the parity correct.
4384
4385         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
4386         signal, so I can listen for the sort_column_changed signal so I
4387         can change my "sort_indicator" property.  Cool.
4388
4389 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
4390
4391         [ Patch from Havoc Pennington, hp@redhat.com ]
4392
4393         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
4394         Add functions gdk_window_begin_resize_drag/begin_move_drag
4395         to start resizing or moving a toplevel window. This
4396         is done either using the _NET_WM_MOVERESIZE protocol,
4397         or, if that isn't present, by emulation.
4398
4399         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
4400         to export the above to GTK+-land.
4401
4402         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
4403         
4404         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
4405         Move this function into gdkwindow, since we need it
4406         when implementing fallback resizing.
4407
4408         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
4409         Fix typo when setting gravity.
4410
4411         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
4412         Add an optional (but on by default) resize grip for resizing 
4413         the parent window.
4414
4415 01-03-29  Alexander Larsson  <alexl@redhat.com>
4416
4417         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
4418         Don't return TRUE from the event handler, that blocks all
4419         event signals on the tooltip widget. Now you can press buttons
4420         in toolbars again.
4421
4422 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
4423
4424         * gtk/testtext.c (create_buffer): Add missing NULL on
4425         valist.
4426
4427         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
4428         c-n-p problem with INCONSISTENT property.
4429
4430         [ Patch from Havoc Pennington  <hp@redhat.com> ]
4431
4432         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
4433         hook.
4434
4435         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
4436         signal as a hook for extending the default popup menu
4437
4438         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4439         use radio menu items for the input method menuitems
4440
4441         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
4442         inserted unicode from Ctrl-Shift-hex input method
4443
4444         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
4445         validatation here, already done at GtkTextBuffer level.
4446
4447         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
4448         popup_menu run action signal and Shift+F10 and Menu keybindings.
4449
4450         * gtk/gtkentry.c: implement a default handler for popup_menu
4451
4452         * gtk/gtktextview.c: implement a default handler for popup_menu
4453
4454         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
4455         from a key event
4456         
4457         * gtk/gtklabel.c: remove "trailer" cruft
4458
4459 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
4460
4461         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
4462         handle reordering of trees.  Seems to mostly work w/ the exception
4463         of the parity flag.
4464
4465         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
4466         signal.
4467
4468 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
4469
4470         * gtk/gtkwidget.h: c++ fixes.
4471
4472 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
4473
4474         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
4475         memory.
4476
4477 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
4478
4479         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
4480         Nils Barth fixing event return values. (#51041)
4481
4482         * gtk/gtkwidget.c: Fix some return values for default
4483         functions.
4484
4485         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
4486         return values for trough_keys functions.
4487
4488         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
4489         value for add_accelerator (shoudl have been a void
4490         return.)
4491
4492         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
4493         Fix return type of EVENT.
4494
4495         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
4496         signal return a boolean.
4497
4498 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
4499
4500         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
4501         reordered signal.
4502
4503         * tests/testtreesort.c (main): fix spelling.
4504
4505 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
4506
4507         * gtk/gtkliststore.c: More work on implementing sortable
4508         interface.
4509
4510 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
4511
4512         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
4513         reference the widgets in the resulting list. (#11821)
4514         This makes this consistent with gtk_container_children.
4515
4516         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
4517         uses of gtk_window_list_toplevels.
4518
4519 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
4520
4521         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
4522         a virtual function to set whether the IM context should use 
4523         the preedit string. (#51922)
4524         
4525 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
4526
4527         * gdk/gdkpango.h: Remove stale FIXME comment.
4528
4529 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
4530
4531         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
4532         Fixed bug that returned NULL if a filename was selected.
4533
4534 2001-03-24  Havoc Pennington  <hp@pobox.com>
4535
4536         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
4537         to contain the word "theme"
4538
4539 2001-03-24  Havoc Pennington  <hp@pobox.com>
4540
4541         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
4542         slower but finer-grained
4543         (gtk_hsv_focus): get initial focus on the ring or triangle 
4544         according to tab direction
4545
4546         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
4547
4548 2001-03-23  Havoc Pennington  <hp@pobox.com>
4549
4550         * gtk/gtkhsv.c: make this somewhat key-navigable
4551
4552         * gtk/gtkfontsel.c: mnemonics
4553
4554         * gtk/gtkgamma.c: mnemonics
4555
4556         * gtk/gtkcolorsel.c: add mnemonics to labels
4557
4558 2001-03-22  Havoc Pennington  <hp@pobox.com>
4559
4560         Applied big patch from Seth Lytle to fix event handler return
4561         values, slightly modified.
4562
4563         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
4564         handled.
4565         (gtk_calendar_key_press): return TRUE for GDK_space triggers
4566         select_day
4567
4568         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
4569         (gtk_clist_button_release): return TRUE if handled
4570
4571         * gtk/gtkcolorsel.c (mouse_release):
4572         (palette_activate): 
4573         (palette_press): 
4574         (palette_new): 
4575         (mouse_press): 
4576         (get_screen_color): 
4577         fixed return type (void to gboolean), return TRUE,
4578         added GTK_SIGNAL_FUNC cast
4579
4580         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
4581         (void to gboolean), and return TRUE
4582         (gtk_combo_button_release): changed return value to TRUE after
4583         gtk_grab_add on combo->popwin
4584
4585         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
4586         collapse or expand
4587
4588         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
4589         button/motion
4590
4591         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
4592         press/release and motion that trigger act
4593
4594         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
4595
4596         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
4597         for GDK_Return
4598         
4599         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
4600         (gtk_list_button_release): return TRUE if selection
4601
4602         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
4603         press
4604
4605         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
4606         (gtk_menu_shell_button_release): chain parent_menu_shell retval
4607
4608         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
4609         nothing triggered
4610         (gtk_notebook_button_release): return TRUE if we do anything
4611
4612         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
4613         (gtk_spin_button_button_release): return TRUE or chained retval
4614
4615         * gtk/gtktext.c (gtk_text_button_press): 
4616         (gtk_text_button_release): return TRUE
4617         (gtk_text_key_press): remove redundant retval code
4618         
4619         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
4620         and sensitive
4621         (gtk_tree_item_subtree_button_click): changed type to gint, and return
4622         TRUE if sensitive
4623
4624         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
4625         return TRUE
4626
4627 2001-03-23  Havoc Pennington  <hp@redhat.com>
4628
4629         * gtk/testgtk.c: fix warnings
4630
4631         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
4632
4633         * gtk/gtktextview.c: fix warnings
4634
4635         * gtk/gtktext.c (find_cursor_at_line): fix warning
4636
4637         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
4638
4639         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
4640         of this function
4641
4642         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4643         fix warning
4644
4645         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
4646
4647         * gtk/gtkfontsel.c: fix warning
4648
4649         * gtk/gtkcolorsel.c: fix warnings
4650
4651 2001-03-23  Havoc Pennington  <hp@redhat.com>
4652
4653         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
4654
4655         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
4656
4657         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
4658         and deprecated gtk_check_menu_item_set_show_toggle().
4659         
4660         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
4661
4662         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
4663
4664         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
4665
4666 2001-03-23  Havoc Pennington  <hp@redhat.com>
4667
4668         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4669         some docs
4670
4671 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
4672
4673         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
4674         this.
4675
4676         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
4677         set_cell to set_value
4678
4679         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
4680         set_cell to set_value
4681
4682 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
4683
4684         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4685         fix braino.
4686         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
4687         support.
4688
4689         * gtk/gtktreeview.c: Addition of initial sortable support.
4690
4691         * gtk/gtktreestore.c: Addition of initial sortable support.
4692
4693         * gtk/gtkliststore.c: Addition of initial sortable support.
4694
4695         * gtk/gtkmarshal.list: yet another marshaller.
4696
4697         * gtk/gtktreedatallist.[ch]: shared code between the store models
4698         for handling sorting headers.
4699
4700 2001-03-22  Havoc Pennington  <hp@redhat.com>
4701
4702         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4703         (gtk_container_unset_focus_chain): Add ability to override the 
4704         focus chain for a container explicitly
4705
4706 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
4707
4708         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
4709         added PROP_MNEMONIC_WIDGET.
4710
4711         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
4712         (gtk_window_remove_mnemonic): 
4713         (gtk_window_add_mnemonic): fixed assertions.
4714         (gtk_window_activate_mnemonic): constrain modifier checks to those
4715         permitted by gtk_accelerator_get_default_mod_mask().
4716         got rid of gtk_window_get_default_accel_group().
4717
4718         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
4719         activatable widgets either by focussing or a warning.
4720         added a signal accumulator to ::activate_mnemonic which stops the
4721         emission once a handler returned TRUE.
4722
4723 2001-03-22  Havoc Pennington  <hp@pobox.com>
4724
4725         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
4726         the stock item label
4727
4728         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
4729
4730         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
4731
4732         * demos/gtk-demo/*.c: Add mnemonics all over the place
4733
4734         * gtk/gtklabel.h: mark parse_uline deprecated
4735
4736 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4737
4738         * gtk/gtkitemfactory.[ch]:
4739         Add support for stock and normal imagemenuitems.
4740         
4741         * gtk/testgtk.c:
4742         Add some tests for mnemonics, stock toolbars, stock
4743         and image menuitems in itemfactory and gdk_window_scroll.
4744
4745 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4746
4747         * gtk/gtkbutton.[ch]:
4748         * gtk/gtkdialog.c:
4749         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
4750         removed accel_group argument. Renamed gtk_button_new_accel() to
4751         gtk_button_new_with_mnemonic() and removed accel_group argument.
4752
4753         * gtk/gtkcheckbutton.[ch]:
4754         New function gtk_check_button_new_with_mnemonic().
4755
4756         * gtk/gtkentry.c:
4757         Override activate_mnemonic and just grab focus.
4758
4759         * gtk/gtkitemfactory.c:
4760         Don't add menu uline accel group, instead use mnemonics support.
4761
4762         * gtk/gtklabel.[ch]:
4763         New support for mnemonics.
4764
4765         * gtk/gtkmarshal.list:
4766         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
4767
4768         * gtk/gtkmenu.[c]:
4769         * gtkmenushell.c:
4770         Use mnemonics instead of accel groups for uline
4771         support in menu items.
4772         Removed gtk_menu_get_uline_accel_group() and
4773         gtk_menu_ensure_uline_accel_group().
4774
4775         * gtk/gtkmenuitem.c:
4776         Override activate_mnemonic to handle switching between
4777         menu items if there are collisions.
4778         
4779         * gtk/gtknotebook.c:
4780         Connect to activate_mnemonic on the tab_label, so that
4781         activating it switches to that notebook page.
4782
4783         * gtk/gtkwidget.[ch]:
4784         Add activate_mnemonic signal. New function
4785         gtk_widget_activate_mnemonic() to emit it.
4786         Default implementation does activate/grab_focus.
4787
4788         * gtk/gtkwindow.[ch]:
4789         Add support for mnemonics in windows.
4790         New functions:
4791         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
4792         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
4793
4794         * gtk/testgtk.c:
4795         Update to function name changes.
4796         
4797 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4798
4799         * gtk/gtkimagemenuitem.[c]:
4800         Add gtk_image_menu_item_new_from_stock()
4801
4802 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
4803
4804         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4805         Fix buglet in meeting.
4806
4807 2001-03-19  Havoc Pennington  <hp@redhat.com>
4808
4809         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
4810         add a bunch of accessor functions. This is because we have
4811         reasonable expectations of extending what fields it contains in
4812         the future.
4813
4814         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
4815         changes
4816
4817         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
4818         GtkIconSource   
4819
4820 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
4821
4822         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
4823         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
4824
4825         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
4826           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
4827           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
4828           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
4829         Change float to double everywhere with the exception of 0<->1.0 alignment
4830         and GtkCurve.
4831
4832 2001-03-19  Tor Lillqvist  <tml@iki.fi>
4833
4834         * gdk/win32/gdkdrawable-win32.c
4835         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
4836         output.
4837
4838         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
4839         gdkwin32.h.
4840
4841 2001-03-18  Tor Lillqvist  <tml@iki.fi>
4842
4843         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
4844         print_event_state, print_event): Use preprocessor macro to make
4845         code more compact. Print also GDK_WINDOW_STATE events.
4846         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
4847         
4848         * gtk/gtk.def
4849         * gtk/makefile.mingw.in: Update.
4850
4851         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
4852         to catch also Cygwin.
4853
4854 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
4855
4856         * gtk/gtkspinbutton.[hc]: added rc-style argument
4857         GtkSpinButton::shadow_type.
4858         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
4859         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
4860         rc-style settings.
4861
4862         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
4863
4864         * gtk/gtkwidget.c: quark cleanups.
4865
4866         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
4867         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
4868         to create_rc_style() (we don't do cloning in standard OO sense).
4869         added per rc style properties.
4870         
4871         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
4872         property values and for caching those. some cleanups.
4873         
4874         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
4875         
4876         * gtk/gtksettings.[hc]: new file for global rc-file properties
4877         (at least currently, should get extended to support X properties
4878         and other communication mechanisms).
4879         
4880         * gtk/gtkwidget.[hc]: added style property support:
4881         (gtk_widget_class_install_style_property_parser): install style
4882         property pspec with parser function for rc-file values other
4883         than LONG, DOUBLE or STRING.
4884         (gtk_widget_class_install_style_property): same as above without
4885         parser (parsers are going to be needed quite infrequently).
4886         (gtk_widget_style_get_property): retrive style property value.
4887         (gtk_widget_style_get_valist): same as above with varargs support,
4888         has NOCOPY semantics.
4889         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
4890
4891 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
4892
4893         * demos/gtk-demo/main.c (row_activated_cb): modified to use
4894         "row_activated" signal.
4895
4896         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
4897         stupidity.  Lets actually pass in the row with this signal...
4898
4899 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
4900
4901         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
4902
4903         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
4904
4905         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
4906         everything into the ::destroy function, and freed a lot more.
4907
4908 2001-03-16  Havoc Pennington  <hp@redhat.com>
4909
4910         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
4911         instead of gint16, to avoid overflow issues, since sizes > 16-bit
4912         are now allowed.
4913
4914 2001-03-16  Havoc Pennington  <hp@redhat.com>
4915
4916         * Applied patch from Nils Barth (bug # 51041) to 
4917         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
4918         in various places.
4919
4920 2001-03-15  Havoc Pennington  <hp@redhat.com>
4921         
4922         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
4923         for properties to set on the tag.
4924
4925         * gtk/testtext.c: fixups to reflect create_tag change
4926         
4927         * gtk/gtktexttag.c (gtk_text_tag_set_property):
4928         background/foreground stipple are objects, not boxed.
4929
4930         * demos/gtk-demo/textview.c: intellihancing
4931
4932 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
4933
4934         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
4935         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
4936
4937 2001-03-16  Alexander Larsson  <alexl@redhat.com>
4938
4939         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
4940         Fix sign error with queued region translations.
4941
4942 2001-03-15  HideToshi Tajima  <tajima@happy>
4943
4944         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
4945         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
4946         * gtk/gtkentry.c (update_im_cursor_location): 
4947         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
4948         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
4949         set_cursor_pos to set_cursor_location in GtkInputContext class
4950
4951 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
4952
4953         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
4954         the location of the cell relative to its area.
4955         * gtk/gtkcell*: modified for above change
4956         * gtk/gtktreeview.c: modified for above change.
4957
4958 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
4959
4960         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
4961          (gtk_tree_view_finalize): actually unref the model.  Thanks to
4962         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
4963
4964 2001-03-14  Havoc Pennington  <hp@redhat.com>
4965
4966         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
4967         
4968         * gtk/gtk.h: remove gtkdata.h
4969
4970         * gtk/Makefile.am: remove gtkdata
4971         
4972         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
4973         not "disconnect" on the adjustments.
4974         
4975         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
4976         GtkData
4977
4978         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
4979         not GtkData
4980
4981         * configure.in: handle case where X render exists, but Pango lacks
4982         Xft support.
4983
4984 2001-03-15 Alexander Larsson  <alexl@redhat.com>
4985
4986         * gtk/gtktoolbar.[ch]:
4987         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
4988         to add stock items to toolbars.
4989
4990         * gtk/Makefile.am:
4991         Remove ../gdk/gdkim.h from gdk_headers.
4992
4993 2001-03-15  Sven Neumann  <sven@gimp.org>
4994
4995         * gdk/gdkim.h: removed
4996         
4997         * gdk/gdkprivate.h
4998         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4999
5000 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
5001
5002         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
5003         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
5004         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
5005         set_cursor_pos() virtual method
5006
5007         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
5008         (gtk_im_context_xim_set_cursor_pos): add implementation for
5009         set_cursor_pos() method
5010
5011         * gtk/gtkentry.c (recompute_idle_func): set current cursor
5012         position to input methods
5013
5014 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
5015
5016         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
5017         code a lot.
5018
5019         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
5020         g_mem_chunk.
5021         (_gtk_tree_data_list_alloc): use g_mem_chunk.
5022         (_gtk_tree_data_list_node_to_value): Fix to switch on
5023         G_TYPE_FUNDAMENTAL.
5024         (_gtk_tree_data_list_value_to_node): Fix to switch on
5025         G_TYPE_FUNDAMENTAL.
5026         (_gtk_tree_data_list_node_copy): Fix to switch on
5027         G_TYPE_FUNDAMENTAL.
5028
5029 2001-03-12  Havoc Pennington  <hp@redhat.com>
5030
5031         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
5032         to convert to new property API. Also, change default_width and
5033         default_height get_property to return 0 as the flag value for
5034         "unset"; -1 is not a valid value for these fields.
5035
5036 2001-03-12  Havoc Pennington  <hp@redhat.com>
5037
5038         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
5039         enum with registration for icon sizes, instead of strings.
5040
5041         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
5042         gtkwidget.c: Fix to reflect GtkIconSize
5043         
5044 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5045
5046         Make GtkFB compile and link.
5047         
5048         * gdk/linux-fb/gdkdrawable-fb2.c:
5049         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5050         
5051         * gdk/linux-fb/gdkwindow-fb.c:
5052         window->mapped to GDK_WINDOW_IS_MAPPED(). 
5053         Added gdk_window_shape_combine_region.
5054         Added assorted placeholders for unimplemented new GdkWindow API calls.
5055
5056 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5057
5058         * gtk/gtkfilesel.c:
5059         Add more test when converting filenames from/to utf-8.
5060         Don't allow entering text in the filename entry which isn't allowed in
5061         a filename. Just beep instead.
5062
5063 2001-03-12  Alexander Larsson  <alexl@redhat.com>
5064
5065         * gtk/gtkclist.c:
5066         Scroll using gdk_window_scroll(). Don't wait for exposes.
5067         Move the column headers in an order that makes them flash less.
5068
5069 2001-03-10  Hans Breuer  <hans@breuer.org>
5070
5071         * gdk/gdk.def : updated
5072
5073         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
5074         to offseting the clip_mask at the right place
5075
5076         * gdk/win32/gdkwindow-win32.c : don't create background brushes
5077         for all the gdkClasses, especially not for the input_only case.
5078         Otherwise flickering wont be avoidable, because we don't get
5079         WM_ERASEBKGND message for these windows.
5080
5081         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
5082         and fixed massive redraw problems apparently triggered by Alexanders 
5083         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
5084         but it seems to work quite well :-)
5085
5086         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
5087         prototype
5088
5089 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
5090
5091         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
5092         (gtk_list_store_set_cell): Fix a stupid typo.
5093
5094 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
5095
5096         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
5097         select_all not work if you're in SINGLE mode (it doesn't make that
5098         much sense, anyway.)
5099
5100         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
5101         handle types more sanely.
5102         (_gtk_tree_data_list_value_to_node): handle types more sanely.
5103         (_gtk_tree_data_list_node_copy): handle types more sanely.
5104
5105         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
5106         GValue better. Converts the type as well.
5107
5108         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
5109         GValue better. Converts the type as well.
5110
5111 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
5112
5113         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
5114         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
5115         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
5116         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
5117
5118         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
5119         gdk_im/gdk_ic.
5120
5121 2001-03-09  Hans Breuer  <hans@breuer.org>
5122
5123         * gdk/gdk.def : updated
5124
5125         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
5126         for their palette
5127
5128         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
5129         removing
5130
5131         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
5132         removing and implemented Havoc's GdkWindow state functions; 
5133         stick/unstick only as no-op, cause I don't know how to emulate 
5134         on win32 ...
5135
5136         * gtk/gtk.def : updated
5137
5138         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
5139
5140         * gtk/gtktypeutils.c : #include <string.h>
5141
5142         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
5143
5144 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
5145
5146         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
5147         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
5148         not a boxed.
5149
5150 2001-03-09  Alexander Larsson  <alexl@redhat.com>
5151
5152         * docs/Changes-2.0.txt:
5153         Document expose event->region change and that gtk_widget_event
5154         doesn't allow passing expose events.
5155
5156         * gdk/gdkevents.h:
5157         Add region to expose event.
5158         
5159         * gdk/gdkevents.c:
5160         Handle event->region in gdk_event_copy() and gdk_event_free().
5161
5162         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
5163         Generate expose_event->region when creating expose events.
5164
5165         * gdk/x11/gdkevents-x11.c:
5166         Generate expose events with regions when translating X events.
5167
5168         * gtk/gtkcontainer.[ch]:
5169         Default expose handler that propagates expose events to NO_WINDOW
5170         children. New function gtk_container_propagate_expose()
5171
5172         * gtk/gtkwidget.[ch]:
5173         Moved gtk_widget_event implementation to gtk_widget_event_internal.
5174         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
5175         expose events. New function gtk_widget_send_expose() to send expose
5176         events. New function gtk_widget_region_intersect() to calculate
5177         window/region intersections.
5178         
5179         * gtk/gtkmain.c (gtk_main_do_event):
5180         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
5181         Use gtk_widget_send_expose() to send expose events.
5182         
5183         * gtk/gtkbin.c:
5184         * gtk/gtkbox.c:
5185         * gtk/gtkfixed.c:
5186         * gtk/gtkimagemenuitem.c:
5187         * gtk/gtklist.c:
5188         * gtk/gtkpacker.c:
5189         * gtk/gtktable.c:
5190         * gtk/gtktree.c:
5191         Remove expose handler, using the default container implementation
5192         instead.
5193         
5194         * gtk/gtkbutton.c:
5195         * gtk/gtkcheckbutton.c:
5196         * gtk/gtkeventbox.c:
5197         * gtk/gtkfixed.c:
5198         * gtk/gtkhandlebox.c:
5199         * gtk/gtklayout.c:
5200         * gtk/gtklistitem.c:
5201         * gtk/gtkmenu.c:
5202         * gtk/gtkmenubar.c:
5203         * gtk/gtkmenuitem.c:
5204         * gtk/gtknotebook.c:
5205         * gtk/gtkoptionmenu.c:
5206         * gtk/gtkpaned.c:
5207         * gtk/gtkscrolledwindow.c:
5208         * gtk/gtktogglebutton.c:
5209         * gtk/gtktoolbar.c:
5210         * gtk/gtktreeitem.c:
5211         * gtk/gtkviewport.c:
5212         Chain expose handler to parent class handler. Use
5213         gtk_container_propagate_expose() to propagate exposes.
5214
5215         * gtk/gtkclist.c (check_exposures):
5216         * gtk/gtktext.c (process_exposes):
5217         Use gtk_widget_send_expose instead of gtk_widget_event.
5218
5219 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
5220
5221         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
5222
5223 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5224
5225         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5226         unref the nodes.   Fixes bug #50058.
5227
5228         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5229         "::ref_iter" to "::ref_node".
5230         (gtk_tree_model_unref_node): change "::unref_iter" to
5231         "::unref_node". Fixes bug #50064.
5232
5233 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5234
5235         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5236         support for invisible cells.
5237          (gtk_tree_view_bin_expose): ditto
5238
5239 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5240
5241         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5242         on gobjects.
5243
5244         * tests/testtreefocus.c (main): New test file.
5245
5246         * tests/testtreeview.c: update to latest glib changes.
5247
5248         * tests/testtreecolumns.c: update to latest glib changes.
5249
5250 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5251
5252         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5253
5254 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5255
5256         * *.c: added accumulator data argument to g_signal_newc()
5257         functions.
5258
5259         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5260         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5261         * gtk/treestoretest.c (make_window):
5262         s/g_signal_connect/g_signal_connectc/.
5263
5264         * gtk/gtktextbuffer.c: completed signal arg fixups,
5265         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5266
5267 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5268
5269         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5270         G_CONST_RETURN.
5271
5272         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5273         ::hierarchy-changed signal when a widget changes
5274         from anchored to unanchored or vice versa.
5275         (anchored means 
5276          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5277         Use a private flag to keep track of this efficiently.
5278
5279 2001-03-07  Havoc Pennington  <hp@redhat.com>
5280
5281         * gtk/testgtk.c (create_spins): uglify so that size request gets
5282         tested.
5283
5284         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
5285         request on values for upper/lower, completes #6152
5286
5287 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
5288
5289         * Makefile.am: Remove gtk-config-2.0 again.
5290         (Grrrr, pkg-config. And stops make loops.)
5291
5292 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
5293
5294         * gtk/gtksignal.[hc]: removed old emission hook API.
5295         
5296         * docs/Changes-2.0.txt: fixed sections.
5297         
5298         * gtk/gtktextbuffer.c: signal arg fixups.
5299
5300 2001-03-07  Havoc Pennington  <hp@redhat.com>
5301
5302         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
5303
5304         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
5305         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
5306         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
5307         validation and the redraw which is higher priority than the
5308         validation.
5309
5310 2001-03-07  Havoc Pennington  <hp@redhat.com>
5311
5312         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
5313         (gtk_entry_set_property): remove trailer
5314
5315         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
5316         (gtk_entry_get_width_chars): new functions, to set size request to 
5317         a given number of characters
5318
5319         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
5320
5321         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
5322         (gtk_dialog_get_has_separator): new function
5323         (run_delete_handler): fix to not emit "response" signal
5324         because we already did in the delete event handler installed
5325         at dialog creation time.
5326         
5327         * gtk/gtkdialog.h: add a has_separator property,
5328         add GTK_DIALOG_NO_SEPARATOR flag
5329
5330 2001-03-07  Havoc Pennington  <hp@redhat.com>
5331
5332         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
5333         off decorations for a window.
5334
5335         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
5336         changes
5337
5338         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
5339         to get location of PangoLayout inside the label, closes #51198
5340
5341         * gtk/testgtk.c (create_bbox): fix up button box usage
5342
5343         * gtk/testcalendar.c (create_calendar): fix up button box usage
5344
5345         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
5346
5347         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
5348
5349         * gtk/gtkhbbox.h: deprecations
5350
5351         * gtk/gtkvbbox.h: deprecations
5352
5353         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
5354         emulate deprecated gtk_button_box_get_spacing
5355
5356         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
5357         the "set global default" functions
5358         (struct _GtkButtonBox): remove "spacing" field, use the one from 
5359         GtkBox base class
5360
5361         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
5362
5363         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
5364         render the icon, return the missing image icon.
5365
5366         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
5367         image icon if the load fails.   
5368
5369         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
5370         when no image is found; should be the Netscape "missing image"
5371         icon eventually but for now is a random image
5372
5373         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
5374         role for the session manager
5375
5376         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
5377
5378         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
5379         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
5380
5381         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
5382
5383 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
5384
5385         * gtk/*.c: marshaller fixes.
5386         
5387         * gtk/gtkmarshal.list: extreme cleanup.
5388
5389         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
5390         param spec for now.
5391
5392         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
5393         where appliable.
5394
5395         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
5396         special cased autogenerated boxed types from gtktypebuiltins_ids.c
5397         which are not reference counted:
5398         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
5399         PangoFontDescription, GtkTreeIter and GtkTreePath.
5400
5401 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
5402
5403         * gtk/gtktreeselection.h: 
5404         * gtk/gtktreemodel.c:
5405         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
5406         file should be included directly, and gobject/gmarshal.h
5407         as well as gtk/gtkmarshal.h even can't be included directly.
5408
5409         * Makefile.am: grr, install gtk-config-2.0.
5410
5411         * gtk/testgtk.c:
5412         * gtk/simple.c:
5413         * gtk/gtkmenu.c:
5414         * gtk/gtkitemfactory.c: use g_object_connect() instead of
5415         passing "*signal*::*" args to gtk_widget_set().
5416         
5417         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
5418         
5419         * gtk/*.c: removed trailer arg from property setters and getters.
5420         macro fixups.
5421
5422 2001-03-07  Alexander Larsson  <alexl@redhat.com>
5423
5424         * gtk/gtklabel.c (set_markup): Removed warning
5425
5426 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
5427
5428         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
5429         field to allow you to hide cell renderers.
5430
5431         * gtk/gtkcellrenderer.c: Add support for invisible cells.
5432
5433         * gtk/gtktreeview.c: Add support for invisible cells.
5434
5435 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
5436
5437         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
5438         Add "clicked" signal back to columns.
5439
5440         * ChangeLog: remove conflict markers.
5441
5442 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
5443
5444         * gtk/gtkbutton.c: Add animation of activation by, on 
5445         activate, pressing the button, and adding a timeout that 
5446         releases the button after 250ms or on key release and
5447         emits ::clicked. (#51501)
5448
5449         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
5450         action area, we connect to ::clicked instead of ::activate
5451         so the dialog stays up through the animation.
5452
5453 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
5454
5455         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
5456         check the ignore_enter flag for the menu shell that
5457         the item is actually a child of, not for attached
5458         submenus. (#51536)
5459
5460 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5461
5462         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5463         special key-press grab handling for widgets within
5464         GtkWindows. Otherwise, fall through to normal case.
5465
5466         This prevents key events being sent twice to GtkInvisible
5467         widgets, which can cause all sorts of mischief.
5468
5469 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5470
5471         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5472         widget is in effect, give the grab widget a first
5473         crack at KEY_PRESS/RELEASE events. (#424)
5474
5475 2001-03-06  James Henstridge  <james@daa.com.au>
5476
5477         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
5478         offset for the window_state_event to point at window_state_event
5479         rather than no_expose_event.
5480
5481 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
5482
5483         * gtk/gtkimmodule.h: fix busted /* comment */
5484
5485 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
5486
5487         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
5488         object properties.
5489
5490 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
5491
5492         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
5493         add object properties.
5494
5495         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
5496         to add object properties.
5497
5498         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
5499         object properties.
5500
5501         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
5502         add object properties.
5503
5504         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
5505         object properties.
5506
5507 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
5508
5509         * gtk/gtktreemodel.c: renamed "child_toggled" to
5510         "has_child_toggled".
5511
5512         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
5513         handle new signal name.
5514
5515         * gtk/gtktreestore.c: Updated to handle new signal name.
5516         * gtk/gtklisttore.c: Updated to handle new signal name.
5517         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
5518
5519 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5520
5521         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
5522         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
5523
5524 2001-03-05  Michael Natterer  <mitch@gimp.org>
5525
5526         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
5527         pixbuf-engine coincidentially also failed to make one of it's
5528         parent_class pointers static, causing overwriting of GtkLabel's
5529         parent_class pointer in pixbuf_style_class_init().
5530         (Will commit the fix to the pixbuf-engine too).
5531
5532 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5533
5534         * gdk/gdkwindow.h:
5535         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
5536         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
5537         gdk_window_set_icon_list for net wmspec functionality.
5538
5539         * gdk/x11/gdkwindow-x11.c:
5540         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
5541         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
5542         gdk_window_set_icon_list.
5543         Added gdk_wmspec_change_state helper function and used it in the code.
5544         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
5545
5546         * gtk/gtkdialog.c (gtk_dialog_init):
5547         Set GDK_WINDOW_TYPE_HINT_DIALOG.
5548
5549         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
5550         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
5551
5552         * gtk/gtkwindow.c:
5553         new function gtk_window_set_type_hint.
5554         On realize, set type hint and modal hint.
5555
5556         * gtk/gtkwindow.h:
5557         Added type_hint field and gtk_window_set_type_hint.
5558
5559 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5560
5561         * gtk/gtklabel.[ch]:
5562         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
5563         New function gtk_label_get_accel_keyval () to get the underline accelerator
5564         of the label. Setting the label pattern overrides other attributes.
5565
5566 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
5567
5568         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
5569         Added missing initializers to gtk_rc_style_init().
5570
5571 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
5572
5573         * gtk/gtktextview.c: fixed bug #51097 about setting 
5574         gtk_text_view_set_border_window_size() if the widget is 
5575         already realized.
5576
5577 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
5578
5579         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
5580
5581         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
5582         comment. Won't do to have duplicated doc comments between
5583         the platform subdirs.
5584
5585 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
5586
5587         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
5588           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
5589
5590         Detectable auto-repeat - make a repeating key generate
5591         press/press/press/release instead of press/release pairs.
5592
5593         If we have Xkb and XkbSetDectableAutoRepeat supports
5594         that, we do it that way. Otherwise, when we get
5595         a release event, we check ahead with XPending to see
5596         if the next key is a KeyPress with the same keycode
5597         and timestamp. (Not 100% reliable, but pretty close.)
5598           
5599 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5600         
5601         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5602         special key-press grab handling for widgets within
5603         GtkWindows. Otherwise, fall through to normal case.
5604  
5605         This prevents key events being sent twice to GtkInvisible
5606         widgets, which can cause all sorts of mischief.
5607  
5608 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5609  
5610         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5611         widget is in effect, give the grab widget a first
5612         crack at KEY_PRESS/RELEASE events. (#424)
5613  
5614 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
5615
5616         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
5617         to extend the selection. (Roughly based on patch
5618         from Jay Cox, #50939)
5619
5620         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
5621         to properly handle previous GDK_BUTTON_PRESS. 
5622         (Patch from Jay Cox, #50938)
5623
5624         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
5625         '\0' back along with the deleted text. (#51148)
5626
5627 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
5628
5629         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
5630         the group when extracting it from the X keyboard event.
5631
5632         * modules/input/Makefile.am modules/input/imipa.c: 
5633         Simple module for entering IPA. (Do we need a 
5634         gtk-stupid-input-tricks CVS module?)
5635
5636 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
5637
5638         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
5639         const.
5640
5641         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
5642
5643         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
5644         is no focus widget for the dialog currently, grab the focus as well
5645         as the default.
5646
5647         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
5648         the action area's children to iterate through, not the
5649         dialog's children.
5650
5651 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
5652
5653         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
5654         Add plug-socket tests. (Won't work worth a darn until I commit
5655         the rest of the plug-socket changes, but no reason these
5656         can't go into CVS now.)
5657
5658 2001-03-02  Havoc Pennington  <hp@redhat.com>
5659
5660         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
5661         _gdk_region_get_xrectangles()
5662
5663         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
5664
5665         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
5666
5667         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
5668         function, contributed by Ron Steinke    
5669
5670         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
5671         gdk_net_wm_supports
5672
5673         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
5674         New function, contributed by Ron Steinke
5675
5676         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
5677         used to line up the text in the entry when using the entry for
5678         editable sheet cell hacks
5679
5680         * gtk/testgtk.c (create_entry): test the activate_default setting
5681         on GtkEntry
5682
5683         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
5684         cause the entry to activate the default button for a dialog when 
5685         activated
5686         (gtk_entry_get_activates_default): new function
5687
5688 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
5689
5690         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
5691         Hwang to move call to sync_selection() up a few lines
5692         to before the row list is modified, to fix crash when
5693         removing rows in the undo_selection list.
5694
5695         (Test case provided by Daniel Elstner:
5696
5697         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
5698
5699 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
5700
5701         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
5702         of tree->root_tree in parent_set rather than _map(), 
5703         fixing #50892 in a bit better manner.
5704
5705 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
5706
5707         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
5708
5709 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
5710
5711         * gtk/gtkstyle.c : Remove duplicate fwd decl for
5712         gtk_default_draw_shadow.
5713
5714 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
5715
5716         * gdk/gdkimage.c (gdk_image_new): Remove excess 
5717         warning, make warnings more verbose, treat a error
5718         in shmat as permanent, and don't try again.
5719         (#51163, Ed Randall.)
5720
5721 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
5722
5723         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
5724         delay for the first click before starting to scroll.
5725         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
5726
5727         * gtk/gtktext.c: GtkText should have I-beam cursor. 
5728         (based on gtk-enf-990513-1.patch, Eric Fisher.)
5729
5730 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
5731
5732         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
5733         cleanup to remove some references to unused
5734         ->xoffset, ->yoffset.
5735
5736 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
5737
5738         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
5739         mask. (#51039, fix from Martin Maierhofer)
5740
5741 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
5742
5743         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
5744         for unshifted + and shifted = for non-us keyboards.
5745         Make <Control>+ and <Control>- work as well as 
5746         <Control>KP_Plus, <Control>KP_Minus for recursive
5747         open/close.  (#2682, René Seindal)
5748
5749 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
5750
5751         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
5752         the active menu item before deactivating the menu,
5753         so gtk_menu_popdown doesn't change the history. (#50964)
5754         
5755 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
5756
5757         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
5758         draw lines with text_gc rather than black_gc.
5759         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
5760
5761 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
5762
5763         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5764         Move handling of buttons fully in gtktreeviewcolumn.  This code is
5765         less interrelated then it was, but it still requires the
5766         GtkTreeView to map it.
5767
5768         * test/testtreecolumn.c: Now I can add a column to one view,
5769         remove it, add it to the another view, remove it, then re-add it
5770         to the first.  Nifty.
5771
5772 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
5773
5774         * docs/tutorial/gtk-tut.sgml: Minor corrections
5775
5776 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
5777
5778         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
5779         GtkRowReference.
5780
5781 2001-02-28  Havoc Pennington  <hp@redhat.com>
5782
5783         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
5784         draw_default
5785         (gtk_widget_draw_focus): remove this function; we could instead
5786         make it just gtk_widget_draw(), but in most cases I think the
5787         result would be broken user code, so think it's better to have
5788         that code not compile and get fixed
5789         (gtk_widget_draw_default): ditto
5790
5791         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
5792         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
5793         
5794         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
5795         widgets lose/get the default, instead of calling draw_default
5796         
5797         * docs/Changes-2.0.txt: note about all this
5798
5799         Then fixed every widget in GTK, I won't list all the filenames.
5800
5801 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
5802
5803         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
5804         _gtk_tree_row_reference_deleted.
5805         (inserted_callback): Proxy out to
5806         _gtk_tree_row_reference_inserted.
5807         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
5808         get around signal emission ordering problem.
5809
5810         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5811         fix to work with SINGLE 
5812         (_gtk_tree_selection_internal_select_node): Major sanitization on
5813         selections.  SINGLE now seems to work.
5814
5815         * tests/Makefile.am: add testtreecolumn.c:
5816
5817         * tests/testtreecolumn.c: New test.  Mostly points out selection
5818         bugs currently, but will test columns later.
5819
5820         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
5821         selection bug.  I hate touching this code -- it's scary.
5822
5823 2001-02-26  Havoc Pennington  <hp@redhat.com>
5824
5825         * gtk/testgtk.c: test the window state stuff
5826
5827         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
5828         window come to the user's attention as if it were just created
5829         (gtk_window_iconify): new function
5830         (gtk_window_deiconify): new function
5831         (gtk_window_stick): new function
5832         (gtk_window_unstick): new function
5833         (gtk_window_maximize): new function
5834         (gtk_window_unmaximize): new function
5835
5836         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
5837
5838         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
5839
5840         * gdk/x11/gdkevents-x11.c: create window state events when
5841         appropriate
5842         (gdk_wmspec_supported): new function
5843
5844         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
5845         iconification before showing the window
5846         (gdk_window_deiconify): new function
5847         (gdk_window_stick): new function
5848         (gdk_window_unstick): new function
5849         (gdk_window_maximize): new function
5850         (gdk_window_unmaximize): new function
5851
5852         * gdk/gdkwindow.c: store the window state in the window; 
5853         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
5854         window->mapped.
5855         (gdk_window_get_state): return the current window state
5856
5857         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
5858         (gdk_event_get_state): handle GDK_WINDOW_STATE
5859         (gdk_synthesize_window_state): function to create the window state
5860         events
5861
5862         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
5863         event, for changes to "window state" such as maximized, sticky, 
5864         etc.
5865         
5866         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
5867         focuses a window
5868
5869         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
5870         finds out if we support a given WM spec hint
5871
5872 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
5873
5874         * docs/faq/gtk-faq.sgml: New question re memory leaks.
5875
5876 2001-02-25  Hans Breuer  <hans@breuer.org>
5877
5878         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
5879         cause we want to loose those prototypes only in the latter case
5880
5881         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
5882         GdkPixmapImplWin32 because it itsn't derived from it. Use the
5883         impl member variable instead
5884
5885         * gtk/gtk.def : updated
5886
5887         * gtk/gtklist.c : 
5888         * gtk/gtkmenus.c : include <string.h> for memset ()
5889
5890         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
5891         for everthing built here, but for gtk-x.x.dll only. This solves
5892         problem of indifferent gtk type definitions
5893
5894 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
5895
5896         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
5897
5898 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
5899
5900         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
5901         column that is exposed.
5902
5903         (_gtk_tree_view_update_size): Changed name from set_size, and
5904         changed function to do more work, and not force people calling it
5905         to figure out the size.  Simplifies a lot of code elsewhere.
5906
5907 2001-02-23  Alexander Larsson  <alexl@redhat.com>
5908
5909         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
5910         return solid masks for xpms that have no transparent color.
5911         This makes the ..._create_from_xpm... API backwards
5912         compatible.
5913
5914 2001-02-23  Tor Lillqvist  <tml@iki.fi>
5915
5916         * README.win32: Update. Mention the gtk-1-3-win32-production
5917         branch.
5918
5919         * gdk/win32/bdfcursor.c: New file. A program that generates
5920         xcursors.h. Thanks to Stefan Ondrejicka.
5921
5922         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
5923         compact format.
5924
5925         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
5926
5927         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
5928         function, uses xcursors.h.
5929         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
5930         cursor from inline data instead of using LoadCursor() to generate
5931         it from a resource.
5932
5933         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
5934         event, must check the Windows message for mouse button state, as
5935         the GDK event state might not have been built if it is
5936         undelivered. Remove one goto.
5937
5938         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
5939         SetCursor() if the current cursor as returned by GetCursor() is
5940         the window's previous cursor. The ChildWindowFromPoint() test
5941         apparently didn't work correctly.
5942
5943         * gdk/win32/rc/*.cur: Remove.
5944
5945         * gdk/win32/rc/gdk.rc.in: Remove cursors.
5946
5947         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
5948
5949         * gtk/makefile.{mingw,msc}.in: Updates.
5950
5951 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
5952
5953         * gtk/gtktreemodel.h: add functions for signal emission.
5954
5955         * gtk/gtktreestore.c: move to use above functions instead of
5956         g_signal_emit.
5957
5958         * gtk/gtkliststore.c: ditto
5959
5960 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
5961
5962         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
5963         GObject instead of GtkObject.
5964
5965         * gtk/gtkliststore.c: ditto.
5966
5967         * gtk/gtktreemodelsort.c: ditto.
5968
5969         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
5970         GtkTreeModelIface, instead of in each model.
5971
5972 2001-02-21  Havoc Pennington  <hp@redhat.com>
5973
5974         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
5975         unbreak this function
5976
5977         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
5978         properties
5979
5980         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
5981         properties
5982
5983         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
5984         properties
5985
5986         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
5987         mean unset the max length
5988
5989 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
5990
5991         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
5992         Changed name to be set_cell_data_func to make it clear what
5993         the functino does.  Close bug #51069.
5994
5995 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
5996
5997         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5998         have memory actually freed.  Keeps box running longer.
5999
6000 2001-02-21  Alexander Larsson  <alexl@redhat.com>
6001         
6002         * gtk/gtkseparatormenuitem.[ch]:
6003         Added new menu separator item. The drawing and size handling
6004         is still done in GtkMenuItem, but the API is a bit more sane.
6005         
6006         * gtk/Makefile.am:
6007         Add gtkseparatormenuitem.[ch].
6008
6009         * gtk/gtk.h:
6010         Add gtkseparatormenuitem.h.
6011         
6012         * gtk/gtkentry.c:
6013         * gtk/gtkmenufactory.c:
6014         * gtk/gtktextview.c:
6015         Use the new API for menu separators.
6016         
6017         * demos/gtk-demo/menus.c (create_menu):
6018         Add some GtkSeparatorMenuItem demo code.
6019
6020 2001-02-20  Havoc Pennington  <hp@redhat.com>
6021
6022         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
6023         Lee Mallabone
6024
6025         * gtk/gtkarrow.c: Convert to new property API, patch from 
6026         Lee Mallabone
6027
6028 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
6029
6030         * tests/testtreeview.c (toggled_callback): fix to reflect change
6031         in GtkTreeModelStore.
6032
6033 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
6034
6035         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
6036         function to create an icon set from a pixbuf.
6037
6038 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6039
6040         * gtk/gtkcellrenderertext.[ch]:
6041         Add a "markup" property.
6042
6043         * gtk/treestoretest.c:
6044         Use the markup property, remove some leftover stuff from
6045         GtkTreeModelMapping.
6046
6047 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6048
6049         * gtk/gtklabel.c (gtk_label_set_selectable):
6050         Queue a redraw if the selectable setting was changed.
6051
6052 2001-02-20  Alexander Larsson  <alexl@redhat.com>
6053
6054         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
6055         Actually copy the whole gc, not just the public parts.
6056         
6057         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
6058         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
6059         labels.
6060
6061 2001-02-19  Havoc Pennington  <hp@pobox.com>
6062
6063         * gdk/gdkwindow.c: docs
6064
6065         * gdk/gdkrgb.c: docs
6066
6067         * gdk/gdkregion-generic.c: docs
6068
6069         * gdk/gdkgc.c (gdk_gc_set_values): docs
6070
6071         * gdk/gdkdraw.c: docs
6072
6073         * gdk/gdkdrawable.h: deprecate drawable get/set data
6074
6075 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
6076
6077         * demos/gtk-demo/dialog.c: Add simple new demo.
6078
6079 2001-02-19  Havoc Pennington  <hp@redhat.com>
6080
6081         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
6082         insert_child_anchor signal, bug #50245
6083
6084         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
6085         from create_child_anchor, so the anchor is passed in
6086
6087         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
6088         (_gtk_widget_segment_new): have the child anchor object passed in, 
6089         instead of creating it.
6090
6091         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
6092         to gtk_text_buffer_get_modified
6093
6094 2001-02-19  Havoc Pennington  <hp@redhat.com>
6095
6096         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
6097         changed GLib without fixing GTK
6098
6099         * gtk/gtkrange.h: Rename all the stupid implementation detail 
6100         functions to have an underscore in front. Most of them should 
6101         probably just go away, but for starters don't export them.
6102         Bug #50482
6103
6104 2001-02-19  Havoc Pennington  <hp@redhat.com>
6105
6106         * gdk/gdkcolor.h: test was backward, so deprecated functions were
6107         excluded by default
6108
6109         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
6110         clean up the old code a bit
6111
6112         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
6113         inconsistent state
6114
6115         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
6116         draw inconsistent state
6117
6118         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
6119         (create_menu): add inconsistent test
6120
6121         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
6122         new function
6123         (gtk_check_menu_item_get_inconsistent): new function
6124         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
6125         state (using etched in for now)
6126
6127         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
6128         draw inconsistent state
6129
6130         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
6131         function, used when the user has selected a range of stuff in
6132         different states
6133         (gtk_toggle_button_get_inconsistent): accessor for that
6134         (gtk_toggle_button_paint): draw inconsistent state (etched in?
6135         don't know what else to do)
6136
6137 2001-02-19  Hans Breuer <hans@breuer.org>
6138
6139         * gtk/gtk.def : updated exported symbols
6140
6141         * gtk/makefile.msc.in : updated
6142
6143         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
6144         a colormap, when invoked from testgtk::entry. I'm not sure where
6145         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
6146         avoids immediate crashing ...
6147
6148         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
6149         any objections ?
6150
6151         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
6152         0 parameter. At least msvc doesn't like macros with var args. 
6153         I simply removed the extra 0, was it a feature or a typo ?
6154
6155         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
6156         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
6157         because the value assignment to the internal struct wasn't working.
6158         I'm not absolutely sure. The problem could have been resolved by
6159         changing the "func" declartion in the struct, but was the pointer
6160         to the function pointer intended ?
6161
6162         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
6163
6164         * gdk/gdk.def : updated exported symbols
6165
6166         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
6167         only use SetDIBitsToDevice if there is a palette at the drawable
6168         and the image is GDK_VISUAL_PSEUDO_COLOR
6169
6170         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
6171
6172         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
6173
6174         * gdk/*/makefile.msc : updated
6175
6176 2001-02-19  Havoc Pennington  <hp@redhat.com>
6177
6178         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
6179         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
6180
6181         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
6182         (gdk_key_repeat_restore): nuke
6183
6184         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
6185         (gdk_init_check): no atexit func
6186
6187         * gdk/gdkrgb.h: mark some stuff deprecated
6188
6189         * gdk/gdkcolor.h: mark some stuff deprecated
6190         
6191         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
6192
6193         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
6194
6195 2001-02-16  Havoc Pennington  <hp@redhat.com>
6196
6197         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
6198         scroll steps.
6199
6200         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
6201         steps, and add Ctrl-arrow shortcuts for paging visually as with
6202         HScale, since Page Up and Page Down move logically.
6203
6204         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
6205         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
6206         
6207         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
6208         steps
6209         (gtk_range_scroll): handle the visual steps
6210
6211         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
6212         scroll steps
6213
6214         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
6215         steps, not the logical ones.
6216
6217         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
6218         (scroll_vertical): handle up/down steps
6219
6220 2001-02-19 Alexander Larsson  <alexl@redhat.com>
6221
6222         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
6223         Copy data and free data with free().
6224
6225         * gdk-pixbuf/gdk-pixbuf.c:
6226         * gdk-pixbuf/io-jpeg.c:
6227         * gdk-pixbuf/io-png.c:
6228         Use g_try_malloc/g_free instead malloc/free.
6229         
6230         * gdk-pixbuf/test-gdk-pixbuf.c:
6231         Must... initialize... gobject...
6232         
6233         * gdk-pixbuf/pixops/timescale.c:
6234         * gtk/gtkcalendar.c:
6235         Use g_malloc instead of malloc.
6236         
6237 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6238
6239         * gtk/testgtkrc:
6240         Comment out property assignments, these don't work yet.
6241
6242 2001-02-17  Havoc Pennington  <hp@pobox.com>
6243
6244         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6245         bit.
6246
6247 2001-02-17  Havoc Pennington  <hp@pobox.com>
6248
6249         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6250         shadowed variables that had broken size request in some cases,
6251         leading to bogus tooltips (#50996)
6252
6253 2001-02-06  Jon K Hellan  <hellan@acm.org>
6254
6255         Implement fast browsing of tooltips, bug #50619
6256         
6257         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6258         and last_popdown
6259         
6260         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6261         use_sticky_delay and last_popdown.
6262         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6263         time of popdown.
6264         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6265         is NULL.
6266         (gtk_tooltips_recently_shown): New static function.  Return true
6267         if < sticky_delay has elapsed since last popdown.
6268         (gtk_tooltips_event_handler): Display window after sticky_delay
6269         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6270         since last popdown.
6271         
6272 2001-02-17  Havoc Pennington  <hp@pobox.com>
6273
6274         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6275         instead of (). #6394
6276
6277         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6278         G_CONST_RETURN, make it return by reference, #50473
6279         
6280 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6281
6282         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
6283         generated ENTER_NOTIFY event with 0, otherwise not explicitely
6284         setup fields contain garbage (e.g. subwindow, breaking
6285         gdk_drawable_ref() upon event copy).
6286         (gtk_menu_stop_navigating_submenu_cb): same here.
6287
6288         * gtk/gtklist.c (gtk_list_vertical_timeout): 
6289         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
6290         * gtk/gtkclist.c (vertical_timeout): 
6291         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
6292         default-zero-intialization for unions to memset(,0,), as unions are
6293         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
6294         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
6295
6296         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
6297         g_closure_sink() warning.
6298
6299         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
6300         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
6301         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
6302         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
6303         
6304 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
6305
6306         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
6307         gtk_*_store_get, and moved to GtkTreeModel.
6308
6309         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
6310
6311         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
6312
6313         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
6314
6315         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
6316         set the func.
6317
6318         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6319         freeze/thaw notify between setting all the properties for a cell.
6320
6321         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
6322
6323 2001-02-15  Havoc Pennington  <hp@redhat.com>
6324
6325         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
6326         the X coordinates so they're with respect to the line, rather than 
6327         with respect to the layout.
6328
6329         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
6330         Mallabone
6331
6332         * gtk/testgtk.c (create_range_controls): add vscale tests, 
6333         and inverted test
6334
6335         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
6336         #50806
6337
6338         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
6339
6340         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
6341         gtk_text_iter_is_end
6342
6343         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
6344         rename gtk_text_buffer_get_end_iter
6345
6346         * gtk/testgtk.c (create_labels): Add test for selectable
6347
6348         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
6349         the selection stuff. This code is kind of broken since it doesn't 
6350         use the theme engine.
6351
6352         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
6353         fix infinite loop and y offset problem
6354         (gdk_draw_layout_line_with_colors): fix foreground color handling
6355
6356         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
6357         that makes the label selectable.
6358         
6359         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
6360         layout when the style is set, since fonts etc. could have changed.      
6361
6362 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
6363
6364         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
6365
6366         * gtk/gtktreemodelsimple.[ch]: removed.
6367
6368 2001-02-16  Alexander Larsson  <alexl@redhat.com>
6369
6370         * gtk/gtktreemodelmapping.[ch]:
6371         New files. Implement GtkTreeModelMapping.
6372         
6373         * gtk/Makefile.am:
6374         Add gtktreemodelmapping.[ch].
6375         
6376         * gtk/gtk.h:
6377         Add gtktreemodelmapping.h
6378
6379         * gtk/treestoretest.c:
6380         Test the GtkTreeModelMapping
6381
6382 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
6383
6384         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
6385         have a demo, we might as well pass in real values.  Thanks to
6386         clahey for pointing this out.
6387
6388 2001-02-14  Havoc Pennington  <hp@pobox.com>
6389
6390         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
6391         "static" to a private function
6392         (gtk_image_menu_item_class_init): remove destroy handler,
6393         add "image" object property
6394
6395 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
6396
6397         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
6398         Add a shortcut if the window and the current clip_region doesn't
6399         overlap. This is needed when there are a lot of windows in a
6400         window. The layout test in testgtk is a good test.
6401
6402         * gdk/linux-fb/gdkwindow-fb.c:
6403         Whitespace fix.
6404
6405 2001-02-13  Sven Neumann  <sven@convergence.de>
6406
6407         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
6408
6409 2001-02-13  Alexander Larsson  <alexl@redhat.com>
6410
6411         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
6412         Don't reference last_cursor if it is null. Fixes crash when rotating
6413         the screen before having moved the mouse.
6414
6415         * gdk/linux-fb/gdkcc-fb.c: Zapp!
6416
6417         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
6418
6419         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
6420         when using 90 or 270 degrees rotation.
6421
6422 2001-02-12  Havoc Pennington  <hp@pobox.com>
6423
6424         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
6425         it always set the foreground, even if we were only using
6426         a stipple.
6427         (gdk_draw_layout_line_with_colors): new function, allow
6428         override colors
6429         (gdk_draw_layout_with_colors): new function, allow override
6430         colors
6431         (gdk_pango_layout_line_get_clip_region): function to get the clip
6432         region for a logical text range
6433         (gdk_pango_layout_get_clip_region): get the clip region for a
6434         logical text range
6435
6436         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
6437         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
6438         the right number of arguments.
6439
6440         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
6441         enhance the function to check that node data corresponds to a 
6442         view still belonging to the tree.
6443
6444         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
6445         GtkTreePath
6446         (gtk_tree_view_inserted): ditto
6447         (gtk_tree_view_child_toggled): ditto
6448
6449         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
6450         simplify this code.
6451
6452         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
6453         a PangoAttrList
6454
6455         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
6456
6457         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
6458
6459         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
6460         size in the size request 
6461         (gtk_menu_bar_size_allocate): consider toggle size here
6462
6463         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
6464         that displays a widget in the toggle slot
6465
6466         * gtk/testgtk.c: test GtkImageMenuItem
6467
6468         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
6469         
6470         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
6471         request and allocation
6472
6473         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
6474
6475         * gtk/gtkcheckmenuitem.c
6476         (gtk_check_menu_item_toggle_size_request): ditto
6477         
6478 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
6479
6480         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
6481         reference.
6482
6483         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
6484         and refuse to initialize GTK+ if they fail.
6485
6486 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
6487
6488         * configure.in: Add check for gtk-doc version.
6489
6490 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
6491
6492         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
6493         where the xpad/ypad was only being used on one side!
6494
6495 2001-02-11  Tor Lillqvist  <tml@iki.fi>
6496
6497         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
6498         function, copied from X11 version.
6499
6500         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
6501         DestroyCursor failures. The reason for the problem (despite the
6502         inconsistent messages from GetLastError()) was that
6503         DestroyCursor() cannot be called while a cursor is set in a
6504         window. Set the new cursor first and then destroy the old one.
6505         Thanks to jpe@archaeopteryx.com.
6506
6507         * gdk/win32/gdkcc-win32.c: Remove.
6508
6509         * gdk/win32/Makefile.am: Remove from here, too.
6510         
6511         * gdk/gdk.def
6512         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
6513
6514         * gtk/gtk.def
6515         * gtk/makefile.mingw.in: Updates.
6516
6517 2001-02-08  Havoc Pennington  <hp@redhat.com>
6518
6519         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
6520         add a widget to a bin that already has a child.
6521
6522         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
6523
6524         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
6525         
6526         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
6527
6528         * gdk/gdk.h: remove gdkcc.h
6529
6530         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
6531
6532         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
6533         GdkPixbuf, since the previous implementation was GdkColorContext
6534         dependent.
6535
6536         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
6537         
6538 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
6539
6540         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
6541         a sane value!
6542
6543 2001-02-08  Havoc Pennington  <hp@redhat.com>
6544
6545         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
6546         lighten them.
6547
6548 2001-02-08  Havoc Pennington  <hp@redhat.com>
6549
6550         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
6551         validation idle
6552
6553         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
6554         cell renderer
6555
6556         * demos/pixbuf-demo.c (timeout): remove deprecated
6557         gtk_widget_draw
6558
6559         * demos/testpixbuf-save.c (main): remove deprecated
6560         gtk_drawing_area_size
6561
6562         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
6563         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
6564         at the start of the allocation.
6565         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
6566         unsetup or NULL model.
6567
6568         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
6569         even/odd/sorted cells in the tree view.
6570
6571         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6572         bugfixes
6573
6574         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
6575         backgrounds with draw_flat_box using different detail for even/odd
6576         rows.
6577
6578         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
6579         row, so we can draw the alternating colors thing
6580
6581         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
6582         property from a synonym property, notify for the synonym.
6583         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
6584         (gtk_text_tag_get_property): Always return the font, even if
6585         all its fields aren't set
6586
6587         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
6588         store the attr list; it leaves us with no way to change attributes
6589         in _render according to the render flags, and no way to implement
6590         get_property. Instead store all the specific text attributes. 
6591         Separate whether an attribute is enabled from its value. Sync all
6592         properties with GtkTextTag, make them all consistent, etc.
6593
6594         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
6595         renderers can highlight the sort row/column     
6596
6597         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
6598         accessor functions to get values; this has the side effect of
6599         showing up which accessor functions were missing. Added those.
6600
6601         * gtk/gtktreeviewcolumn.h: Replace set_justification with
6602         set_alignment, to be consistent with GtkLabel, GtkMisc
6603
6604         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
6605         arrow.
6606
6607         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
6608
6609         * gtk/gtktreesortable.h: updates in here
6610
6611 2001-02-07  Sven Neumann  <sven@convergence.de>
6612
6613         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
6614         pango dimensions after painting the background. We used to draw
6615         gigantic flat boxes here.
6616
6617 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
6618
6619         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
6620         error introduced with earlier commit) (pointed out by
6621         Ollie Lho)
6622
6623 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
6624
6625         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
6626         which are no longer necessary.
6627
6628 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
6629
6630         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
6631
6632 2001-02-04  Tor Lillqvist  <tml@iki.fi>
6633
6634         * gdk/gdk.def
6635         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
6636         Provide dummy implementations.
6637
6638 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
6639
6640         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
6641
6642         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
6643         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
6644         deprecated this function.
6645
6646         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
6647         argument.
6648
6649 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
6650
6651         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
6652
6653 2001-02-03  Havoc Pennington  <hp@pobox.com>
6654
6655         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
6656         Mikael Hermansson with patch from Mikael (if there was a toggle
6657         start one after the first character in the range, this function
6658         was broken). Bug #50380
6659
6660 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
6661
6662         * configure.in: Remove confusing comment about X11.
6663
6664 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
6665
6666         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
6667         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
6668         
6669 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
6670
6671         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
6672         it breaks things on BSD. If you want to compile GTK+ with
6673         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
6674         when configuring, since GTK+ simply can't be "pure ANSI" 
6675         in the header files it uses. (#8170, Greg Hudson)
6676
6677 2001-02-02  Havoc Pennington  <hp@redhat.com>
6678
6679         * gtk/gtkwindow.c: docs
6680
6681         * gtk/gtkwidget.c: docs
6682         (gtk_widget_set_colormap): add a reference to the colormap
6683         (gtk_widget_get_default_colormap): add a reference to the colormap
6684
6685         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
6686
6687         * gtk/gtktextiter.c: docs
6688
6689         * gtk/gtkmain.c (gtk_propagate_event): docs
6690
6691         * gtk/gtkpaned.c (gtk_paned_get_position): docs
6692         (gtk_paned_set_position): docs
6693
6694         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
6695         sort interface, no implementation yet.
6696
6697         * demos/testpixbuf.c (new_testrgb_window): replace
6698         gtk_drawing_area_size() with gtk_widget_set_usize()
6699
6700         * demos/testpixbuf-drawable.c (main): ditto
6701         
6702         * gtk/testgtk.c: remove use of GtkStatusbarMsg
6703
6704         * gtk/gtktextbuffer.c: docs
6705
6706         * gtk/gtkstock.c: docs
6707
6708         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
6709
6710         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
6711
6712         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
6713         
6714         * gtk/gtkimage.c: add some docs in here
6715         (gtk_image_size_request): change name of
6716         gtk_widget_render_stock_icon
6717         (gtk_image_get_icon_set): don't dup returned string
6718         (gtk_image_get_icon_set): don't dup returned string
6719
6720         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
6721         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
6722         and gtkiconfactory.h functions
6723
6724         * gtk/gtkiconfactory.c: add some docs in here
6725
6726         * gtk/gtkmain.c (gtk_get_default_language): document
6727         (gtk_get_current_event): document
6728         (gtk_get_current_event_state): document
6729         (gtk_get_event_widget): document
6730
6731         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
6732
6733         * gtk/gtkcontainer.c: Add some documentation
6734         (gtk_container_add): give a more explanatory warning on adding an
6735         already-parented widget, this is kind of a FAQ and also a common
6736         typo that's easier to debug with a nice warning 
6737
6738         * gtk/gtkcellrenderertoggle.c
6739         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
6740         adding this, it's useless
6741         (gtk_cell_renderer_toggle_set_active): remove
6742         (gtk_cell_renderer_toggle_get_radio): add
6743
6744         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
6745         the NULL cell renderer, that doesn't make any sense to me. 
6746
6747         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
6748         demo code should never use deprecated features.
6749
6750         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
6751         code should never use deprecated features.
6752
6753         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
6754         gtk_widget_queue_clear_area deprecated
6755
6756         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
6757         deprecated
6758
6759         * gtk/gtklabel.h: mark gtk_label_get() deprecated
6760
6761         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
6762         a GdkImage deprecated, replaced by new consistently-named
6763         functions       
6764
6765         * gtk/gtkmain.h: Mark gtk_exit() deprecated
6766
6767         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
6768
6769         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
6770         deprecated
6771
6772         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
6773         so it won't appear in docs and confuse people.
6774
6775         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
6776
6777         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
6778         macros deprecated. (can't mark the type itself deprecated, since
6779         GtkProgressBar is not deprecated and we need the type decl to use
6780         GtkProgressBar)
6781
6782         * gtk/gtkpixmap.h: Mark deprecated
6783
6784         * gtk/gtkoldeditable.h: Mark deprecated
6785
6786         * gtk/gtklist.h: Mark deprecated
6787
6788         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
6789         for anything anymore.
6790
6791         * gtk/gtkctree.h: Mark deprecated
6792
6793         * gtk/gtkclist.h: Mark deprecated
6794
6795         * gtk/gtkpreview.h: Mark deprecated
6796
6797         * gtk/gtkpacker.h: Mark deprecated
6798
6799         * gtk/gtktipsquery.h: Mark deprecated
6800
6801         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
6802
6803         * gtk/gtkvruler.h: Add comment that it will move out of GTK
6804
6805         * gtk/gtkhruler.h: Add comment that it will move out of GTK
6806
6807         * gtk/gtkruler.h: Add comment that it will move out of GTK
6808
6809         * gtk/gtkgamma.h: Add comment that it will move out of GTK
6810
6811         * gtk/gtkcurve.h: Add comment that it will move out of GTK
6812
6813 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
6814
6815         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
6816         gdk_colormap_sync private since it was never exported
6817         in a header file.
6818
6819         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
6820         colormap->colors[] for StaticGray, StaticColor colormaps.
6821
6822         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
6823         was being used as if it was image->bits_per_pixel.
6824
6825         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
6826         for the image in the GdkImage structure since it isn't
6827         reconstructable, and we need it to handle packed types
6828
6829         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
6830         the assumption that on Win32 image->bits_per_pixel == image->depth,
6831         always.
6832
6833         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
6834
6835         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
6836         warning message if no converter can be found. 
6837
6838 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
6839
6840         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
6841         chars to isupper() / tolower(). (#567)
6842
6843         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
6844         to clear up 64-bit warnings. (#567)
6845
6846 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
6847
6848         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
6849         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
6850
6851         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
6852         since some people set $(libdir) separately. (#1290, David Kaelbling)
6853
6854 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
6855
6856         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
6857         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
6858         MAXPATHLEN, but the code here depends on a fixed value.)
6859         (#4524)
6860
6861 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
6862
6863         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
6864         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
6865
6866 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
6867
6868         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
6869         viewable there is no way that moving the node will cause the 
6870         focus row to become not viewable, so omit check on the visibility
6871         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
6872
6873 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
6874
6875         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
6876         selection before inserting new text.
6877
6878 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
6879
6880         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
6881         Make the sensitivity of the reparented child track that of
6882         the original parent menu item. (#34218, David Hodson)
6883
6884         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
6885         the case where the current item is destroyed properly.
6886
6887         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
6888         some edge cases with child-less menuitems.
6889         
6890 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
6891
6892         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
6893         key pop down window. (#12074, Jon K Hellan)
6894
6895 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
6896
6897         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
6898         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
6899         The solution here isn't perfect - you get an extraneous
6900         emission of "toggle", which could conceivably confuse an app,
6901         but better than the current situation. LXR search seems to
6902         indicate that no apps in GNOME CVS connect to "toggle".
6903
6904 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
6905
6906         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
6907         gtk_public_h_sources to directly here to avoid warning when
6908         building srcdir != builddir. (#9656)
6909
6910 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
6911
6912         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
6913         handlers in gtkrange.c return the proper values (TRUE == handled)
6914         (#10316).
6915
6916         This is just the tip of the iceberg, but gtkrange.c is the
6917         most common place where the propagation is problematical,
6918         and also a place where it is almost certainly safe to change
6919         this in the stable branch.
6920
6921         (You don't want right click popups on a range control or anything...)
6922
6923 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
6924
6925         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
6926         area on focus out, even if a background pixmap isn't set.
6927         (#13941)
6928         
6929 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
6930
6931         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
6932         to deal with setting the shape properly when scrolling arrows are
6933         turned on, but not visible because there is sufficient space.
6934         (#13432)
6935
6936 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
6937
6938         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
6939         items with submenus, destroy the item along with the submenu.
6940         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
6941         properly.
6942
6943         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
6944         later.
6945
6946 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
6947
6948         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
6949         the focus widget sometimes wasn't drawn with the default if there
6950         was no default widget.
6951
6952         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
6953         unreference pixmaps. 
6954
6955         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
6956         for some extra safety.
6957
6958 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
6959
6960         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
6961         the text of a cell to the old pointer value better, by
6962         copying the new text before freeing the old text. Some code
6963         cleanup. (#8079, Karl Nelson)
6964
6965 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
6966
6967         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
6968         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
6969
6970 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
6971
6972         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
6973         item from a menu, check to see if it matches 
6974         menu->old_active_menu_item, and if so, unref and clear
6975         old_active_menu_item (Patch from Pavel Cisler)
6976
6977         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
6978         menu_shell->active_menu_item, if it is the child being
6979         removed. (Patch based on that of Gene Ragan, #50337)
6980
6981 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
6982
6983         * gdk/linux-fb/gdkselection-fb.c: 
6984         * gdk/linux-fb/gdkcolor-fb.c: 
6985         * gdk/linux-fb/gdkdrawable-fb2.c: 
6986         * gdk/linux-fb/gdkfont-fb.c: 
6987         * gdk/linux-fb/gdkim-fb.c: 
6988         * gdk/linux-fb/gdkinput.c: 
6989         * gdk/linux-fb/gdkkeyboard-fb.c: 
6990         * gdk/linux-fb/gdkmain-fb.c: 
6991         * gdk/linux-fb/gdkrender-fb.c: 
6992         A bunch of whitespace cleanup.
6993         
6994 2001-01-30  Havoc Pennington  <hp@pobox.com>
6995
6996         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6997         #ifdef GTK_ENABLE_BROKEN.
6998
6999         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
7000         GTK_ENABLE_BROKEN just before including the broken headers.
7001         
7002         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
7003         deprecated types registered.
7004
7005         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
7006         we have to test the broken stuff.
7007
7008         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
7009         
7010 2001-01-30  Havoc Pennington  <hp@redhat.com>
7011
7012         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
7013         here where prev pointer was set to the wrong thing
7014
7015         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
7016         (gtk_tree_path_is_descendant): new function
7017
7018         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
7019         cached length
7020         (gtk_list_store_get_iter): don't modify iter if we can't get the
7021         path.
7022
7023         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
7024         
7025         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
7026         GtkTreeDragDest
7027
7028         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
7029         was causing segfault
7030
7031         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
7032         pointer to NULL
7033
7034         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
7035
7036         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
7037         on returning FALSE
7038         (gtk_list_store_iter_children): ditto
7039         (gtk_list_store_iter_nth_child): ditto
7040         (gtk_list_store_iter_nth_child): ditto
7041         (gtk_list_store_iter_parent): ditto
7042
7043         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
7044         on iter->user_data != NULL instead of silently accepting it.
7045         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
7046         we are returning TRUE.
7047         (gtk_tree_store_iter_children): ditto
7048         (gtk_tree_store_iter_nth_child): ditto
7049         (gtk_tree_store_iter_parent): ditto
7050         (gtk_tree_store_insert): remove handling of parent->user_data ==
7051         NULL, replace with parent == NULL       
7052
7053         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
7054         and a comment explaining things
7055
7056         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
7057         interface support to GtkTreeStore.
7058
7059         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
7060         FALSE if no prev, fix
7061
7062         * gtk/gtktreeview.c (set_source_row): use a row reference
7063         (set_dest_row): use a row reference
7064
7065 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
7066
7067         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
7068         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
7069         (gtk_tree_selection_select_iter): The same as above.
7070
7071 2001-01-26  Havoc Pennington  <hp@redhat.com>
7072
7073         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
7074         which holds a handle to a specific row (particular set of values
7075         in the model, i.e. pointer-identity row).
7076
7077         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
7078         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
7079         Still need to use it for the src/dest row saved on the drag context.
7080
7081 2001-01-26  Havoc Pennington  <hp@redhat.com>
7082
7083         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
7084
7085         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
7086         not offset by TREE_VIEW_HEADER_HEIGHT
7087         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
7088         TREE_VIEW_HEADER_HEIGHT
7089
7090         * configure.in (included_loaders): for me, --with-included-loaders
7091         generates the error "the specified loader yes does not exist",
7092         i.e. the arg defaults to "yes", so change test for value ""
7093         to test for value "yes", and include all loaders in that case.
7094
7095         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
7096
7097         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
7098         handle TREE_VIEW_VERTICAL_SEPARATOR
7099         (gtk_tree_view_bin_expose): fix to consider the row offset as
7100         pointing halfway into vertical separator.       
7101         (gtk_tree_view_draw_node_focus_rect): ditto
7102
7103         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
7104         --gtk-debug=updates, which causes gdk_window_set_debug_updates
7105         (TRUE) to be called.
7106
7107         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
7108         debug mode where the invalid region is colored in on invalidate,
7109         so you can see the flicker and know whether your redraw code is 
7110         doing a good job.
7111
7112         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
7113         tree window coordinates (clip rect is in tree window coords)
7114
7115         * gtk/Makefile.am: add gtktreednd.[hc]
7116
7117         * gtk/gtkliststore.c: implement gtktreednd interfaces.
7118
7119         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
7120         drag-and-drop data operations on a model (so we can set up tree
7121         drag-and-drop automatically)
7122
7123         * gtk/testgtk.c: Add a window to change sensitivity in the
7124         GtkLabel test; add a way to change the entry frame in GtkEntry
7125         test
7126
7127         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
7128         (gtk_entry_get_has_frame): new functions to remove the frame
7129         around an entry
7130         (gtk_entry_size_request): shrink requisition if no frame
7131         (gtk_entry_draw_focus): don't draw frame if no frame
7132
7133         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
7134         checks inside a cell renderer
7135         (gtk_default_draw_option): ditto for options
7136
7137         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
7138         children from the alignment, not the button
7139         (gtk_tree_view_column_init): ref/sink the column, to emulate
7140         GObject refcounting.
7141
7142         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
7143         
7144         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7145         Use theme functions to draw the toggles 
7146
7147         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
7148
7149         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
7150         GdkPangoAttrEmbossed to use in rendering insensitive text
7151
7152         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
7153
7154         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
7155         using new GDK features
7156         
7157 2001-01-24  Alexander Larsson  <alexl@redhat.com>
7158
7159         * gtk/gtkimage.c:
7160         Splitted gtk_image_clear into gtk_image_clear() and
7161         gtk_image_reset(). Call gtk_image_clear() in ::destroy
7162         to avoid leaks.
7163
7164         * gtk/gtklabel.c (set_markup):
7165         Don't leak text.
7166
7167         * gtk/gtktextlayout.c:
7168         Always free display->shaped_objects.
7169
7170         * gtk/testgtk.c (create_clist):
7171         Don't leak custom style.
7172
7173 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7174
7175         * gtk/gtkcolorsel.c (grab_color_at_mouse):
7176         Don't leak image. Simplify using gdk_colormap_query_color().
7177         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
7178
7179         * linux-fb/gdkcolor-fb.c:
7180         Implemented gdk_colormap_query_color.
7181
7182 2001-01-23  Alexander Larsson  <alexl@redhat.com>
7183
7184         * linux-fb/gdkcursor-fb.c:
7185         Don't leak built-in cursors.
7186
7187         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
7188         Don't leak tmp_points.
7189
7190         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
7191         Don't modify desc. Don't leak font if the PangoFont
7192         isn't found.
7193         
7194         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
7195         Free dash_list.
7196
7197         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
7198         Don't leak string.
7199         
7200 2001-01-20  Havoc Pennington  <hp@pobox.com>
7201
7202         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
7203         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
7204         me, matches Pango
7205
7206 2001-01-22  Havoc Pennington  <hp@redhat.com>
7207
7208         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
7209
7210         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
7211
7212         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
7213         Remove, move back to gdk-pixbuf
7214
7215         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
7216         to all the word functions
7217
7218         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
7219         before doing anything on NULL layout or if we don't have the focus
7220
7221         * gtk/testtext.c (fill_example_buffer): "justification"
7222
7223         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7224         to be called "justification" not "justify"
7225
7226         * demos/gtk-demo/textview.c (create_tags): "justification"
7227         
7228         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7229
7230 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7231
7232         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7233         Don't leak visible_region. Use visible_region instead of region.
7234         
7235         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7236         Don't do extra gdk_drawable_ref(). This is not X.
7237         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7238         gdk_fb_focused_window is ref:ed.
7239         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7240         windows.
7241
7242 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7243
7244         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7245         Don't leak the PangoFontDescriptor.
7246
7247 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7248
7249         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7250         when not realized.
7251         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7252         (gtk_tree_view_realize): add scroll_to support
7253         (gtk_tree_view_finalize): add a finalize method.  Populate.
7254         (gtk_tree_view_insert_column): ref and sink the column.
7255         (gtk_tree_view_append_column): ref and sink the column.
7256         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7257         individual nodes.  Should make the code much more efficient, if
7258         actually used.
7259
7260 2001-01-19  Havoc Pennington  <hp@redhat.com>
7261
7262         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7263         byte_offset variable was being used to mean both "offset into
7264         layout" and "offset into buffer line" which was no longer true
7265         with addition of preedit string; fix
7266
7267 2001-01-19  Havoc Pennington  <hp@redhat.com>
7268
7269         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7270
7271         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7272         function
7273
7274         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7275         implement
7276
7277         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7278         scroll_to_cell, matches TextView scroll functions better
7279         (gtk_tree_view_tree_to_widget_coords): new function
7280         (gtk_tree_view_widget_to_tree_coords): new function
7281         (gtk_tree_view_get_visible_rect): new function
7282         (gtk_tree_view_get_path_at_pos): accept negative coordinates
7283         (gtk_tree_view_draw_node_focus_rect): new function moved from
7284         draw_focus, also, use width of bin_window as width of the focus
7285         rect
7286         (gtk_tree_view_expand_row): fix bug where it didn't recognize
7287         already-expanded rows
7288         (gtk_tree_view_get_cell_rect): new function
7289         (gtk_tree_view_get_path_at_pos): return the click position
7290         relative to the passed-in cell
7291         (gtk_tree_view_set_expander_column): new function
7292
7293         * configure.in: remove gtk-config-2.0 chmod
7294
7295         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
7296         and properly handle drags with targets we don't understand
7297         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
7298         scrolling anyway
7299         (gtk_text_view_drag_drop): stop scrolling here though, and set the
7300         mark invisible
7301
7302         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
7303         function
7304         (gtk_drag_dest_get_target_list): new function
7305         (gtk_drag_dest_set_target_list): new function
7306         
7307         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
7308
7309         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
7310         related to drag-and-drop
7311
7312 2001-01-19  Alexander Larsson  <alexl@redhat.com>
7313
7314         * gdk/linux-fb/gdkprivate-fb.h:
7315         Define EMULATE_GDKFONT.
7316         Add extra pango_font stuff to GfkFontPrivate.
7317         
7318         * gdk/linux-fb/gdkdrawable-fb2.c:
7319         * gdk/linux-fb/gdkfont-fb.c:
7320         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
7321         emulation using PangoFont.
7322
7323 2001-01-17  Havoc Pennington  <hp@pobox.com>
7324
7325         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
7326         all the non-deprecated set_foo functions. Added missing object
7327         properties, and added g_object_notify() to setters. 
7328         Wrote docs.
7329         
7330 2001-01-18  Tor Lillqvist  <tml@iki.fi>
7331
7332         * gtk/gtkmain.c
7333         * gtk/gtkrc.c: (Win32) Use the new
7334         g_win32_get_package_installation_(sub)directory() functions.
7335
7336         * config.h.win32.in: New file.
7337         
7338         * config.h.win32: Removed.
7339
7340         * configure.in: Output config.h.win32.
7341
7342         * Makefile.am: Add it to EXTRA_DIST.
7343
7344         * gtk/gtk.def: Update.
7345
7346 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
7347
7348         * gtk/gtklabel.c (gtk_label_size_request): Set the
7349         attributes onto the PangoLayout even if they are newly
7350         created from label->pattern.
7351
7352 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
7353
7354         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
7355
7356         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
7357         structures in functions. Fixes bug where gtk_dataset_*
7358         was accidentally still being used in one place, causing
7359         every dest side event to be treated independently.
7360
7361         * gtk/gtkdnd.c: Remove last vestages of handling
7362         ::draw (fixes warning)
7363         
7364         * gtk/gtkentry.[ch]: Add drag and drop support.
7365
7366         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
7367         new function gtk_check_drag_threshhold() for checking
7368         to check if (dx,dy) has exceeded the threshhold for starting
7369         a drag and use it everywhere.
7370
7371 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
7372
7373         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
7374         add -I{includedir}/gtk-2.0.
7375
7376         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
7377         gdk/gdk-pixbuf.h: Doc fixups.
7378         
7379         * gtk/gtkobject.h: Remove trailing , from enum
7380
7381 2001-01-17 Alexander Larsson <alexl@redhat.com> 
7382
7383         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
7384         Doh! Mixed up x and y.
7385
7386         * gdk/linux-fb/gdkglobals-fb.c:
7387         Removed gdk_fb_pointer_grab_window_events,
7388         added _gdk_fb_pointer_grab_owner_events and
7389         _gdk_fb_keyboard_grab_owner_events.
7390
7391         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
7392         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
7393         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
7394         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
7395         Send crossing events after ungrab finished.
7396         (gdk_keyboard_grab): Set ..._owner_events
7397         (type_masks): Move out of function.
7398         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
7399         gdk_fb_keyboard_event_window): New functions, return the
7400         window an event should be targeted at. Handles grabs and
7401         event propagation. Can return NULL.
7402         (gdk_event_make): Remove event_mask checking. Now always
7403         returns an event.
7404                 
7405         * gdk/linux-fb/gdkkeyboard-fb.c:
7406         * gdk/linux-fb/gdkproperty-fb.c:
7407         * gdk/linux-fb/gdkselection-fb.c:
7408         Use new event_window/gdk_event_make() behaviour.
7409         
7410         * gdk/linux-fb/gdkmouse-fb.c:
7411         Use new event_window/gdk_event_make() behaviour.
7412         Only send motion events if in the same window.
7413         If grabbed, use cursor from window if sibling of grabbed
7414         window, and cursor from grabbed window otherwise.
7415
7416         * gdk/linux-fb/gdkprivate-fb.h:
7417         Update gdk_fb_window_send_crossing_events, gdk_event_make
7418         and grab varaible declarations. Add gdk_fb_*_event_window().
7419
7420         * gdk/linux-fb/gdkwindow-fb.c:
7421         Use new event_window/gdk_event_make() behaviour.
7422         Keep correct track of focus window.
7423         (gdk_window_set_events): Set all specific button motion masks
7424         if GDK_BUTTON_MOTION_MASK set.
7425
7426         * gtk/gtkdnd.c (gtk_drag_update):
7427         Free info->last_event if gdk_drag_motion returned FALSE.
7428
7429 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7430
7431         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
7432         Eliminate redraws when input-only windows are shown or
7433         hidden. Thanks to jpe@archaeopteryx.com.
7434
7435 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
7436
7437         * docs/faq/gtk-faq.sgml: FAQ update:
7438           - Update to bugzilla
7439           - Add GTK+ and security/SUID/SGID
7440           - Add DnD question
7441
7442 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
7443
7444         * gdk/linux-fb/gdkdnd-fb.c:
7445         Some cleanups.
7446         
7447 2001-01-15  Havoc Pennington  <hp@pobox.com>
7448
7449         * tests/testtreeview.c: add test stuff for CellRendererToggle
7450
7451         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
7452         accessor
7453
7454         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
7455         only toggle on button press (would do release like GtkButton, but
7456         we'd need implicit grab code for treeview cells)
7457
7458 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7459
7460         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
7461
7462         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
7463         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
7464
7465         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
7466         to g_{locale,filename}_{to,from}_utf8 to match current API.
7467
7468         * gtk/makefile.msc.in (gtk_OBJECTS)
7469         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
7470
7471         * gtk/gtk.def: Update.
7472
7473 2001-01-15  Tor Lillqvist  <tml@iki.fi>
7474
7475         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
7476         implementaion that more closely mimics the events that an X server
7477         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
7478         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
7479         with nested preview widgets, for instance, more responsive when
7480         you move the mouse quickly into them.
7481         (find_window_for_pointer_event): Make it actually compile.
7482         (gdk_event_translate): Set send_event to the value of
7483         InSendMessage (). This doesn't really mean the same as X11's
7484         send_event flag, but is close enough, says jpe@archaeopteryx.com
7485
7486 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7487
7488         * gdk/linux-fb/gdkdnd-fb.c:
7489         Implemented drag and drop.
7490         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
7491         when it tries to free and then copy the same event (info->last_event).
7492         I am not sure about why this happens, but will continue looking.
7493
7494 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7495
7496         * gdk/linux-fb/gdkwindow-fb.c:
7497         Use gdk_window_invalidate_rect instead of
7498         gdk_window_invalidate_rect_clear to minimise flashing.
7499         When hiding windows you need to clear the root window though.
7500
7501 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7502
7503         * gdk/linux-fb/gdkdrawable-fb2.c:
7504         For optization, add an full_shapes argument to gdk_fb_clip_region.
7505         If this is false, only the cliprects of the shapes are used.
7506
7507         * gdk/linux-fb/gdkprivate-fb.h:
7508         Export gdk_fb_window_peek_shape.
7509         Add full_shapes to gdk_fb_clip_region.
7510
7511         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7512         When moving a window, don't clear everything under the it, just the
7513         root window. Makes stuff faster and flash less.
7514         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
7515         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
7516         offset of the shape.
7517         
7518
7519 2001-01-12  Havoc Pennington  <hp@redhat.com>
7520
7521         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
7522         current invalid region, fixes redraw bug while scrolling the 
7523         text widget
7524
7525         * gtk/gtktextview.c, gtk/gtktextview.h:
7526         Rearrange the scrolling/validation/etc. code in a major way, 
7527         so it seems to make sense to me. Probably isn't genuinely that
7528         much better, but...
7529
7530         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
7531         notifies
7532
7533         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
7534
7535 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
7536
7537         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
7538         Hide mouse pointer while rotation. Show it afterwards.
7539
7540 2001-01-12  Alexander Larsson  <alexl@redhat.com>
7541
7542         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
7543         windows in consideration when generating clip region.
7544
7545         * gdk/linux-fb/gdkfb.h:
7546         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
7547
7548         * gdk/linux-fb/gdkprivate-fb.h:
7549         Add shape to GdkWindowFBDatat.
7550         exported gdk_fb_window_get_abs_shape().
7551         removed gdk_fb_draw_lines declaration.
7552
7553         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
7554         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
7555         send focus changes when there is a grabbed window.
7556         (gdk_window_get_pointer): Handle shaped windows.
7557         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
7558         (gdk_fb_window_peek_shape): Returns the shape for a window,
7559         handles GDK_FB_USE_CHILD_SHAPE.
7560         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
7561         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
7562         (gdk_window_shape_combine_mask): Implement.
7563
7564         * gtk/gtkwindow-decorate.c:
7565         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
7566         setting the shape of a window makes the window transparent.
7567
7568 2001-01-11  Havoc Pennington  <hp@redhat.com>
7569
7570         * gtk/gtktreemodelsimple.h: Oops, broke some macros
7571
7572 2001-01-10  Havoc Pennington  <hp@redhat.com>
7573
7574         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
7575         add this function, bug 40251
7576
7577         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7578         of type macro   
7579
7580 2001-01-11  Alexander Larsson  <alexl@redhat.com>
7581
7582         * acconfig.h:
7583         Added ENABLE_SHADOW_FB
7584
7585         * configure.in:
7586         Added --disable-shadowfb
7587
7588         * gdk/linux-fb/gdkcursor-fb.c:
7589         Update shadowfb when updating cursor
7590
7591         * gdk/linux-fb/gdkdrawable-fb2.c:
7592         Added wrappers for shadowfb that calls  the normal drawable
7593         methods, but calls gdk_shadow_fb_update(bounding box) when
7594         GdkWindows are drawed to.
7595         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
7596         which also returns the bounding box.
7597
7598         * gdk/linux-fb/gdkfb.h:
7599         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
7600
7601         * gdk/linux-fb/gdkgeometry-fb.c:
7602         Update shadowfb when scrolling window.
7603
7604         * gdk/linux-fb/gdkglobals-fb.c:
7605         Add _gdk_fb_screen_angle.
7606         
7607         * gdk/linux-fb/gdkkeyboard-fb.c:
7608         Test code for screen rotation. Shift-F2 in the xlate driver
7609         rotates the screen.
7610
7611         * gdk/linux-fb/gdkmain-fb.c:
7612         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
7613
7614         * gdk/linux-fb/gdkmouse-fb.c:
7615         Use fb_width/height instead of modeinfo.xres/yres.
7616
7617         * gdk/linux-fb/gdkprivate-fb.h:
7618         Added fb_men, fb_width, fb_height & fb_stride. When using
7619         shadow fb these can differ from the framebuffer stuff.
7620         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
7621         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
7622         _gdk_fb_screen_angle. Removed CM, RP.
7623
7624         * gdk/linux-fb/gdkrender-fb.c:
7625         Added code for shadowfb handling and screen rotation using
7626         shadowfb.
7627
7628         * gdk/linux-fb/gdkwindow-fb.c:
7629         Use fb_mem, fb_stride, fb_width, fb_height.
7630         Added recompute_rowstride to reset the rowstride of all windows.
7631         Added gdk_fb_recompute_all() which recomputes rootwindow size,
7632         window abs positions and window rowstrides. Usefull when the
7633         rotation has changed.
7634
7635 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
7636
7637         * docs/faq/gtk-faq.sgml: update to make web site updating easier
7638
7639 2001-01-10  Havoc Pennington  <hp@redhat.com>
7640
7641         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
7642         where sibling == iter
7643         (gtk_tree_store_insert_after): handle sibling == iter
7644         (gtk_tree_store_prepend): remove stamp checks
7645         (gtk_tree_store_insert_before): ditto
7646         (gtk_tree_store_append): ditto
7647         (gtk_tree_store_get_path): ditto
7648         (gtk_tree_store_get_value): ditto
7649         (gtk_tree_store_iter_has_child): ditto
7650         (gtk_tree_store_iter_n_children): ditto
7651         (gtk_tree_store_iter_nth_child): ditto
7652         (gtk_tree_store_insert_after): ditto
7653         (gtk_tree_store_is_ancestor): ditto
7654         (gtk_tree_store_iter_depth): ditto
7655         (gtk_tree_store_insert_before): assert that sibling's parent is
7656         the same as the passed-in parent
7657         (gtk_tree_store_insert_after): assert that sibling's parent is
7658         the same as the passed-in parent
7659
7660         
7661         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
7662         function to get the first iterator in a model
7663         
7664         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
7665         conventionally the "root" in this sense is just NULL afaict.
7666
7667         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
7668         where sibling == iter
7669         (gtk_list_store_insert_after): handle case where sibling == iter
7670
7671         * tests/testtreeview.c (run_automated_tests): fairly lame basic
7672         automated tests for ListStore, TreeStore
7673
7674         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
7675         (gtk_list_store_insert): update tail pointer, and fix it to work
7676         (gtk_list_store_insert_before): update tail pointer, and fix it to work
7677         (gtk_list_store_append): use tail to be faster
7678         (gtk_list_store_prepend): fix it, update tail pointer
7679         (gtk_list_store_insert_after): fix it, update tail pointer
7680
7681         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
7682         the list
7683
7684 2001-01-09  Havoc Pennington  <hp@redhat.com>
7685
7686         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
7687         is NULL due to a pending resize
7688
7689         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
7690         column width to values less than 1
7691
7692         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
7693         width to be between min/max width, and still set the width 
7694         even if autosize is turned on, so the tree view can use this 
7695         function in order to autosize.
7696         (gtk_tree_view_column_init): set initial width to 1 not 0
7697
7698         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
7699         setter function to modify column width, so we get notification
7700         (gtk_tree_view_insert_iter_height): ditto
7701         (gtk_tree_view_calc_size): ditto
7702         (gtk_tree_view_check_dirty): ditto
7703
7704         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
7705         properties to change all the interesting attributes of the tree
7706         view column.
7707         (gtk_tree_view_column_set_header_clickable): rename set_clickable
7708         (gtk_tree_view_column_get_clickable): add
7709         (gtk_tree_view_column_set_cell_renderer): don't unset the current
7710         attributes; assume a cell renderer with equivalent object
7711         properties has been swapped in. Do g_object_notify().
7712         (gtk_tree_view_column_set_visible): g_object_notify
7713         (gtk_tree_view_column_get_sizing): rename from get_col_type
7714         (gtk_tree_view_column_set_sizing): g_object_notify
7715         (gtk_tree_view_column_set_width): add g_object_notify
7716         (gtk_tree_view_column_set_min_width): ditto
7717         (gtk_tree_view_column_set_max_width): ditto
7718         (gtk_tree_view_column_set_title): ditto
7719         (gtk_tree_view_column_set_clickable): ditto
7720         (gtk_tree_view_column_set_widget): ditto
7721         (gtk_tree_view_column_set_justification): ditto
7722
7723 2001-01-09  Havoc Pennington  <hp@redhat.com>
7724
7725         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
7726         there are no rows in the model
7727
7728         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
7729         NULL, then return the start of the list
7730
7731         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
7732         if we can't get any rows from an empty model 
7733
7734         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
7735         extraneous * after function pointer typedef usage
7736
7737         * Makefile.am: don't specify full path to cp and rm
7738
7739         * gtk/gtkcellrenderertextpixbuf.c
7740         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
7741         NULL before dereferencing, fixes a segfault that happened from
7742         time to time
7743
7744         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
7745         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
7746         and reindent the function
7747         (gtk_cell_renderer_pixbuf_get_size): indentation
7748
7749         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
7750         we quit it
7751         (gtk_dialog_add_buttons_valist): add g_return_if_fail
7752         (gtk_dialog_set_default_response): New function, to set default
7753         button
7754         (gtk_dialog_set_response_sensitive): New function, to set 
7755         sensitivity of buttons
7756
7757         * gtk/gtkcellrendererpixbuf.c
7758         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
7759         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
7760
7761         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7762         handle any G_TYPE_OBJECT subclass, not just the base class, and 
7763         also boxed types.
7764         (_gtk_tree_data_list_value_to_node): ditto
7765
7766         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
7767         --gtk-debug=tree
7768
7769         * gtk/gtkmain.c: add GTK_DEBUG_TREE
7770
7771         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
7772
7773 2001-01-09  Tor Lillqvist  <tml@iki.fi>
7774
7775         * gdk/win32/gdkevents-win32.c: Implement better mouse
7776         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
7777         (find_window_for_pointer_event): New function.
7778         (gdk_event_translate): Use it when handling mouse events.
7779
7780 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
7781
7782         * configure.in:
7783         Added --with-included-loaders option
7784
7785         * gdk-pixbuf/Makefile.am:
7786         * gdk-pixbuf/gdk-pixbuf-io.c:
7787         Add support for including selected gdk-pixbuf loaders only.
7788
7789         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
7790         gtk_window_set_has_frame):
7791         Added inline documentation.
7792
7793         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
7794         * docs/reference/gdk/tmpl/windows.sgml:
7795         Added inline documentation.
7796
7797 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
7798
7799         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
7800         realizing buttons that have already been realized.
7801
7802 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
7803
7804         * tests/testtreeview.c (main): Show menu items before adding to
7805         option menu.
7806
7807         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
7808         around if we kill them.
7809
7810         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7811         Return if we pass in a NULL model.
7812
7813 2001-01-08  Havoc Pennington  <hp@redhat.com>
7814
7815         * tests/testtreeview.c: hack on this some
7816
7817         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
7818         gtk_tree_store_set_valist, v is for arrays, valist for varargs
7819         list
7820         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
7821
7822         * gtk/gtkliststore.h: Add varargs set() and get() convenience
7823         functions
7824
7825 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7826
7827         * gtk/gtkwindow-decorate.[hc]:
7828         * gtk/Makefile.am:
7829         New files. Contains an implementation of a minimal WM for
7830         linux-fb.
7831
7832         * gtk/gtkwindow.h:
7833         Add the possibility for GtkWindows to specify a frame. This
7834         is used for the window decoration code, but could concievably
7835         be used for X programs too (xmms style windows).
7836         GtkWindow->frame is the toplevel window if the window is framed.
7837         The signal frame_event gets all events that are targeted to
7838         GtkWindow->frame.
7839         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
7840         
7841         * gtk/gtkwindow.c:
7842         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
7843         Call out to gtkwindow-decorate.c for WM support in linx-fb.
7844
7845 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7846
7847         * docs/README.linux-fb:
7848         Correct filename ~/.pangoft2_aliases
7849
7850         * gdk/gdkwindow.h:
7851         Added new function gdk_window_get_decorations.
7852
7853         * gdk/linux-fb/gdkfb.h:
7854         Removed _gdk_window_get_decorations declaration.
7855         Renamed _gdk_window_set_child_handler to
7856         gdk_fb_window_set_child_handler.
7857
7858         * gdk/linux-fb/gdkwindow-fb.c:
7859         Renamed _gdk_window_set_child_handler to
7860         gdk_fb_window_set_child_handler.
7861
7862         * gdk/x11/gdkwindow-x11.c:
7863         New function gdk_window_get_mwm_hints().
7864         Implemented gdk_window_get_decorations.
7865
7866         * docs/reference/gdk/tmpl/windows.sgml:
7867         * docs/reference/gdk/gdk-sections.txt:
7868         Added gdk_window_get_decorations docs.
7869         
7870 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
7871
7872         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
7873         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
7874         gdk_fb_window_send_crossing_events):
7875         Possibly send focus events when the mouse moves from one
7876         window to another.
7877
7878 2001-01-07  Tor Lillqvist  <tml@iki.fi>
7879
7880         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
7881         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
7882         to match current API.
7883
7884         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
7885         environment variable is set, don't call g_error when on a
7886         palettized (PseudoColor) display. Some people want to use GTK+ 
7887         in 256-colour mode even though works only partially.
7888
7889         * gdk/gdk.def
7890         * gtk/gtk.def
7891         * gtk/makefile.mingw.in: Update.
7892
7893 2001-01-05  Havoc Pennington  <hp@redhat.com>
7894
7895         * tests/testtreeview.c: hack on this a bit
7896
7897         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
7898         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
7899
7900         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
7901         was spelled incorrectly
7902         (GTK_IS_TREE_MODEL_SIMPLE): ditto
7903
7904         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
7905         from gtk_tree_view_set_headers_active   
7906
7907         * gtk/gtktexttag.c:
7908         (gtk_text_tag_get_property): handle PROP_DIRECTION
7909         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
7910         properties, bug 40235
7911
7912         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
7913         forward_to_line_end
7914
7915 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
7916
7917         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
7918         modules/input/gtkimcontextxim.c: Adapt to new prototypes
7919         for unicode,locale,filename conversion functions.
7920
7921 2001-01-05  Havoc Pennington  <hp@redhat.com>
7922
7923         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
7924         broken if called on the first position in the buffer.
7925
7926         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
7927         forward_to_delimiters to be called only if we aren't already at
7928         the delimiters.
7929
7930 2001-01-05  Havoc Pennington  <hp@redhat.com>
7931
7932         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
7933
7934 2001-01-05  Alexander Larsson  <alexl@redhat.com>
7935
7936         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
7937         colormap in here. Sync from X port.
7938         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
7939         Sync from X port.
7940         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
7941         This happens now and then, and i don't think it is a bug.
7942         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
7943         != endpoint.
7944         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
7945         GDK_LINE_SOLID.
7946
7947         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
7948         some of the fields filled in at least.
7949
7950         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
7951         miLineArcD is no more, remove it from the function definition.
7952
7953 2001-01-04  Havoc Pennington  <hp@redhat.com>
7954
7955         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
7956         this
7957
7958         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
7959         user_data instead of tree_node
7960
7961         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
7962         TREE_VIEW_COLUMN_SIZE
7963
7964         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
7965         "size" field to "width" finishes bug 40061
7966
7967         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
7968         for bitfields, bug 40268
7969
7970 2001-01-04  Havoc Pennington  <hp@redhat.com>
7971
7972         Rename some stuff:
7973         
7974         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
7975
7976         s/GtkModelSimple/GtkTreeModelSimple/g;
7977         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
7978         s/gtk_model_simple/gtk_tree_model_simple/g;
7979         s/gtkmodelsimple/gtktreemodelsimple/g;
7980
7981         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
7982
7983         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
7984         s/column_set_col_type/column_set_sizing/g;
7985
7986         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
7987         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
7988
7989         s/GtkCellRendererType/GtkCellRendererState/g;
7990         
7991         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
7992         (gtk_cell_renderer_toggle_class_init): change "state" property to
7993         "active", to match GtkToggleButton
7994         (gtk_cell_renderer_toggle_get_active): new function, bug
7995         40269
7996         (gtk_cell_renderer_toggle_set_active): new function
7997         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7998         state through gtk_cell_renderer_set_active
7999
8000 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
8001
8002         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
8003         temporarily until they work again.  Brought up to date with
8004         changes in the model.
8005         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
8006         model.
8007
8008 2001-01-04  Havoc Pennington  <hp@redhat.com>
8009
8010         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
8011         equal to the line length, then position iterator before paragraph 
8012         separators. Fixes crash reported by Mikael Hermansson when
8013         pressing left arrow from the start of a line.   
8014
8015         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
8016         about byte indexes off the end
8017         (iter_set_from_char_offset): add g_error about char offsets
8018         off the end
8019
8020 2001-01-03  Havoc Pennington  <hp@redhat.com>
8021
8022         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
8023
8024         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
8025         of private functions; remove inclusion of private headers.
8026
8027         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
8028         function, so we don't need private functions in gtktextdisplay.c
8029
8030         * gtk/gtktextiterprivate.h: underscore-ification
8031
8032         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
8033         to instead say "only useful to implement widgets"
8034
8035         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
8036         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
8037         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
8038
8039         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
8040         This function was completely broken
8041
8042         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
8043
8044         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
8045
8046         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
8047
8048         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
8049
8050         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
8051
8052         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
8053
8054         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
8055         gtk_paint_layout
8056
8057         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
8058         gtk_paint_layout
8059
8060         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
8061         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
8062         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
8063         which were not implemented.     
8064
8065         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
8066         insert_pixbuf signal. Rename delete_text to delete_range since it
8067         also deletes pixbufs and child anchors. This almost closes bug
8068         40245 (still need to deal with child anchors)
8069
8070         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
8071         insert_pixbuf, change signal names as appropriate, change types of
8072         signals taking marks/tags to have the specific type, not just
8073         G_TYPE_OBJECT
8074         
8075         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
8076         closes bug 40051
8077
8078         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
8079         unnecessary remove_contents() call
8080         (gtk_option_menu_class_init): add a "changed" signal, closes
8081         bug 40039
8082         (gtk_option_menu_update_contents): emit "changed" if the 
8083         active menu item changes
8084
8085         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
8086         cast to GtkObject, reported by Jonas Borgstrom
8087         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
8088         we can't do stuff with side effects in finalize. Instead, spew a
8089         warning if the loader isn't closed.
8090
8091         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
8092         colormap in here, non-X ports probably need to sync to this change
8093
8094         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
8095         assertion that colormap != NULL, you can set the colormap to NULL
8096         if you like.
8097         
8098         * Makefile.am: remove gtk-config-2.0
8099
8100         * configure.in: Use pkg-config to locate GLib. Remove
8101         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
8102         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
8103         Use pkg-config to locate Pango. Output correct Pango libs to
8104         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
8105
8106         * Makefile.am (pkgconfig_DATA): install only target-specific pc
8107         files
8108         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
8109         X11 pc files
8110
8111         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
8112         unref from here
8113
8114 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
8115
8116         * configure.in:
8117         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
8118
8119 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
8120
8121         * gtk/gtktextlayout.c
8122         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
8123         variable when moving back onto a single line.
8124
8125 2001-01-01  Havoc Pennington  <hp@redhat.com>
8126
8127         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8128
8129         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
8130
8131         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
8132         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
8133
8134 2001-01-01  Havoc Pennington  <hp@redhat.com>
8135
8136         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
8137
8138         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
8139         GtkTextAttributes
8140
8141         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
8142         #40246
8143         (gtk_text_attributes_copy_values): rename from 
8144         gtk_text_attributes_copy
8145         (gtk_text_attributes_copy): a more standard GTK copy function, 
8146         which returns a new object
8147
8148 2001-01-01  Havoc Pennington  <hp@redhat.com>
8149
8150         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
8151         
8152         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
8153         don't fill in tree_view->priv->selection, kind of an unexpected
8154         side effect
8155
8156         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
8157         gtkintl.h
8158         
8159         * gtk/gtkcellrenderer.c: Remove definition of _ and include
8160         gtkintl.h
8161         (gtk_cell_renderer_get_property): remove calls to g_value_init
8162
8163         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
8164         gtkintl.h
8165
8166         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
8167         and include gtkintl.h
8168         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
8169         property names
8170
8171         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
8172         GtkTreeSelection
8173         (_gtk_tree_selection_new_from_with_view): rename, return
8174         GtkTreeSelection
8175         (_gtk_tree_selection_set_tree_view): rename with uscore
8176         (gtk_tree_selection_get_selected): fill in the "model" out param
8177         first, so it gets filled in even if we return at the top of the 
8178         function
8179         (gtk_tree_selection_real_select_all): add a comment and an else{}
8180         to clarify this a bit
8181         (gtk_tree_selection_real_unselect_all): add the same else{}
8182
8183         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
8184         set_tree_view to have underscore prefixes, move them to the
8185         private header, fix return type of new_with_tree_view
8186         (struct _GtkTreeSelection): mark struct
8187         fields private  
8188
8189         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
8190         GtkTreeModelFlags, not a guint
8191         (gtk_tree_path_prev): return gboolean not gint
8192         (gtk_tree_path_up): return gboolean not gint
8193
8194         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
8195         return GtkTreeModelFlags, not a guint
8196
8197         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
8198         that child model is non-null before unrefing it
8199         (g_value_int_compare_func): make this a qsort compare func, not 
8200         a boolean predicate
8201
8202         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
8203         (add -umn to the end), and mark it unimplemented
8204         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
8205         I don't see what it's for - doesn't the model always sort itself?
8206         (gtk_tree_model_sort_set_compare): this had the wrong signature
8207
8208         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
8209         Fix the docs to say that it destructively replaces existing
8210         attributes (previously said that it added attributes).
8211         (gtk_tree_view_column_set_visible): canonicalize bool before
8212         equality testing. Also, check for realization before
8213         hiding/showing the tree_column->window; if this window could exist
8214         before realization, then it's busted and needs fixing, we can't 
8215         create GDK resources pre-realization. Also, remove
8216         superfluous queue_resize(), since set_size() does that for us.
8217         (gtk_tree_view_column_set_col_type): check realization before 
8218         using tree_column->window
8219
8220         * gtk/gtktreedatalist.c: fix filename in copyright notice
8221
8222 2000-12-31  Havoc Pennington  <hp@pobox.com>
8223
8224         * gtk/gtktextview.c: Rearrange all the
8225         scroll-while-dragging-or-selecting code to be different, not
8226         necessarily better. ;-)
8227         (gtk_text_view_scroll_to_mark): Change this
8228         function to take within_margin as a fraction instead of a pixel
8229         value, and to take alignment arguments (indicating where to align 
8230         the mark inside the visible area)
8231         
8232         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8233         to GtkObject
8234
8235         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8236         behavior so that offsets past the end of the line are not 
8237         allowed, and an offset equal to the line length moves the iterator
8238         to the next line
8239         (gtk_text_iter_set_line_index): make parallel change
8240         (gtk_text_iter_get_bytes_in_line): add this function
8241         
8242         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8243         of byte indexes off the end of the line; byte index at the end of
8244         the line now returns FALSE and doesn't fill in the requested
8245         values, byte index past the end of the line is an error.  Also,
8246         don't allow -1 offset anymore, since its meaning is unclear.
8247
8248         This change exposes some bug in visual cursor motion, where we
8249         end up with a huge invalid byte index; needs fixing. Symptom of 
8250         bug is a crash when you hit up arrow.
8251         
8252         (_gtk_text_line_char_locate): match the change to byte_locate
8253
8254         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8255         from start of line properly. fixes bug reported by Mikael
8256         Hermansson where backspace would delete all text before the
8257         cursor.
8258
8259 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8260
8261         * gdk/win32/gdkwindow-win32.c
8262         (gdk_window_impl_win32_get_visible_region): New function, as in
8263         the X11 backend.
8264         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8265         instead of duplicating the same code here.
8266
8267         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8268         GDK_COLORMAP macro.
8269
8270         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8271         destroy function.
8272         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8273         access that.
8274
8275         * gtk/gtk.def: Update.
8276
8277         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8278
8279 2000-12-30  Havoc Pennington  <hp@pobox.com>
8280
8281         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
8282         colormap on input only windows, to avoid special cases all over
8283         the code for these windows.
8284
8285 2000-12-26  Tor Lillqvist  <tml@iki.fi>
8286
8287         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
8288         we are on a palettized display ("PseudoColor" in X11), as the code
8289         for that doesn't work anyway, and never has.
8290
8291 2000-12-22  Alexander Larsson  <alexl@redhat.com>
8292
8293         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
8294         Don't use isprint() for chars > 255.
8295
8296 2000-12-21  Havoc Pennington  <hp@redhat.com>
8297
8298         * tests/testtreeview.c: more work
8299
8300 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8301
8302         * docs/README.linux-fb:
8303         Update the docs to the new pangoft2 way.
8304
8305 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8306
8307         * configure.in:
8308         For linux-fb get the pangoft2 cflags and libs. This needs a recent
8309         pango version.
8310         Remove modules/linux-fb/Makefile.
8311
8312         * gdk/linux-fb/gdkdrawable-fb2.c:
8313         Render glyphs using freetype.
8314
8315         * gdk/linux-fb/gdkfb.h:
8316         Add new fb-specific functions needed for managing windows.
8317
8318         * gdk/linux-fb/gdkmain-fb.c:
8319         Remove gdk_font_init/fini() calls.
8320
8321         * gdk/linux-fb/gdkpango-fb.c:
8322         Remove old implementation. Use pangoft2 instead.
8323
8324         * gdk/linux-fb/gdkprivate-fb.h:
8325         Remove PangoFBFont and related stuff.
8326
8327         * gdk/linux-fb/gdkwindow-fb.c:
8328         Implement drawable->get_visible_region.
8329         Implement support for _gdk_window_set_child_handler () and
8330         _gdk_window_get_decorations().
8331
8332         * modules/Makefile.am:
8333         Remove linux-fb subdir.
8334
8335         * modules/linux-fb/*:
8336         Removed all.
8337         
8338 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
8339
8340         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
8341         calls, as they are no longer needed.
8342
8343         * gtk/gtktreemodelsort.c: Fix up the comparison code.
8344         
8345         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
8346         figure out how to emit a signal on an interface.
8347
8348 2000-12-20  Havoc Pennington  <hp@redhat.com>
8349
8350         * tests: new directory to contain tests, gtk/test* should move
8351         here sometime (with appropriate on-cvs-server hackery)
8352
8353         * tests/testtreeview.c, tests/Makefile.am: a test
8354         
8355         * configure.in (AC_OUTPUT): add tests/Makefile
8356
8357         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
8358         and "invisible_set" which were missing
8359
8360         * gtk/gtkrbtree.h: some cheesy indentation fix
8361         
8362 2000-12-20  Alexander Larsson  <alexl@redhat.com>
8363
8364         * gtk/gtkinvisible.c (gtk_invisible_realize):
8365         Attach the style to the window so that the style it is not
8366         leaked when unrealizing the window.
8367
8368 2000-12-18  Havoc Pennington  <hp@redhat.com>
8369
8370         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
8371         begin/end user action where appropriate
8372         (gtk_text_view_commit_handler): add begin/end user action
8373
8374         * gtk/gtktextbuffer.c: add begin/end user action signals, and
8375         bracket interactive operations with begin/end user action pair.
8376         
8377         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
8378         "interactive" arg from insert_text and delete_text signals.
8379         Add begin_user_action, end_user_action signals
8380         (gtk_text_buffer_begin_user_action): 
8381         (gtk_text_buffer_end_user_action): New functions to delimit 
8382         a user-visible action
8383
8384         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
8385         signals.
8386         
8387 2000-12-18  Havoc Pennington  <hp@redhat.com>
8388
8389         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
8390         was pretty non-working.
8391
8392         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
8393         by passing the length to g_utf8_validate().
8394
8395 2000-12-16  Havoc Pennington  <hp@pobox.com>
8396
8397         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
8398         Port to GObject, can go back in gdk-pixbuf after setting up 
8399         a gdk-pixbuf-marshal.h header over there.
8400
8401         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
8402         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
8403         args
8404         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
8405         set
8406         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
8407         here, do it when we create the buttons later
8408         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
8409         (gtk_tree_view_map): paranoia checks that column->button is shown 
8410         and unmapped
8411         (gtk_tree_view_size_request): only request visible children.
8412         Move header size calculation in here, for cleanliness, and 
8413         to maintain invariants for child widgets if we eventually 
8414         let users set different children inside the buttons
8415         (gtk_tree_view_map_buttons): factor out code to map buttons,
8416         since it was being called several times
8417         (gtk_tree_view_size_allocate_buttons): move_resize the drag
8418         windows instead of just moving them; their height may change 
8419         if we allow random widgets in there, or the theme changes.
8420         (gtk_tree_view_size_allocate): move button size allocation 
8421         above emitting the scroll signals, to ensure a sane state when we
8422         hit user code
8423         (gtk_tree_view_button_release): remove queue_resize after
8424         tree_view_set_size(), set_size() will handle any resize queuing
8425         that's needed
8426         (gtk_tree_view_focus_in): just queue a draw, don't fool with
8427         draw_focus goo
8428         (gtk_tree_view_focus): use gtk_get_current_event() and
8429         gdk_event_get_state()
8430         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
8431         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
8432         semicolon
8433         (gtk_tree_view_create_button): show the button here
8434         (gtk_tree_view_button_clicked): actually emit the clicked signal
8435         on the column
8436         (_gtk_tree_view_set_size): return right away if the size is
8437         unchanged, as a cheesy optimization
8438         (gtk_tree_view_setup_model): rename set_model_realized to 
8439         setup_model to match the flag that indicates whether we've 
8440         called it
8441         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
8442         exist, because set_scroll_adjustment does that and it shouldn't
8443         matter what order you call these in
8444         (gtk_tree_view_get_vadjustment): ditto
8445         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
8446         for paranoia
8447         (gtk_tree_view_set_headers_visible): call
8448         gtk_tree_view_map_buttons() instead of using cut-and-paste code
8449         (gtk_tree_view_append_column): clarify whether the return value
8450         is the count of columns before or after, and do the increment 
8451         separately from the return statement so you can tell from the code.
8452         (gtk_tree_view_remove_column): ditto
8453         (gtk_tree_view_insert_column): ditto
8454         (gtk_tree_view_get_column): remove g_return_if_fail for columns
8455         outside the existing range, the docs say that outside-range
8456         columns are allowed, so we handle them as documented. (Presumably
8457         this allows a nice loop with column != NULL as test.)
8458         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
8459         mean (left/right/center etc.).
8460         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
8461         (gtk_tree_view_expand_row): add docs
8462         (gtk_tree_view_collapse_row): add docs
8463
8464         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
8465         function to emit the clicked signal on a column
8466         
8467         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
8468         state of an event
8469         (gdk_event_get_time): don't treat GDK_SCROLL 
8470         as a button event, remove default case from switch so gcc 
8471         will whine if we don't explicitly handle all event types
8472
8473         * gtk/gtktreeselection.h: added some FIXME 
8474         
8475         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
8476         "columns" to "n_columns" and "column" to "columns" for clarity
8477
8478 2000-12-16  Havoc Pennington  <hp@pobox.com>
8479         
8480         * gtk/gtktextiter.c: General cleanup of the log attr iteration
8481         stuff. This should make e.g. the delete key work again in the
8482         text widget...
8483         (gtk_text_iter_forward_cursor_positions): handle negative count
8484         (gtk_text_iter_backward_cursor_positions): handle negative count
8485         (gtk_text_iter_forward_word_ends): handle negative count
8486         (gtk_text_iter_backward_word_starts): handle negative count
8487
8488         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
8489         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
8490         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
8491         GObject. No doubt will cause breakage.
8492
8493         * demos/gtk-demo/textview.c: remove hacks around
8494         non-GObject-ification of the text objects
8495
8496         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
8497         the text tag
8498         
8499 2000-12-14  Havoc Pennington  <hp@pobox.com>
8500
8501         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
8502         that we have Xrender
8503
8504 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
8505
8506         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
8507         Add two virtualized functions gdk_drawable_get_clip_region - to
8508         get the clip region when drawing.
8509         
8510         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
8511         use invalidate_region.
8512
8513         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
8514         region.
8515
8516         * acconfig.h configure.in: Check for Xft. For now, assume
8517         that if Xft is found, Pango was compiled with Xft support
8518         as well.
8519
8520         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
8521         gdk_colormap_query_color().
8522         
8523         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
8524         with Xft if appropriate.
8525
8526         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
8527         a pangoxft context if we have XFT and the environment
8528         variable GD_USE_XFT is set.
8529         
8530         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
8531         and also possibly an XftDraw structure.
8532
8533         * gtk/gtkfontsel.c: Handle the case where the font from the
8534         style doesn't match any of the fonts a bit better.
8535         
8536         * gtk/testgtk.c: Add tabs between directional segments for
8537         hebrew/arabic test. (Not really necessary, just a little
8538         prettier.)
8539
8540 2000-12-14  Havoc Pennington  <hp@redhat.com>
8541
8542         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
8543         reading a file
8544
8545 2000-12-14  Havoc Pennington  <hp@redhat.com>
8546
8547         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
8548         unused call to get_last_line()
8549
8550         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
8551         here until boxed is working (and maybe after that - we should
8552         really not gratuitously break old code)
8553
8554         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
8555         specific types for font_desc and tabs args, move them to
8556         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
8557         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
8558
8559         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
8560         use GTK_TYPE_POINTER for signal signatures as a hack-around
8561
8562         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
8563         PangoTabArray
8564
8565         * gtk/gtktextlayout.c (line_display_iter_to_index): 
8566         make static
8567         (line_display_index_to_iter): make static
8568
8569         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8570         to marshal a string not a boxed
8571
8572         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
8573
8574         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
8575         since the UTF-8 isn't validated yet
8576
8577         * gtk/gtktextsegment.c (char_segment_check_func): don't require
8578         lines to end in '\n'
8579         
8580         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
8581         forward_to_delimiters, and grapheme boundaries
8582         (gtk_text_view_delete_from_cursor): properly handle non-newline
8583         delimiters, and grapheme boundaries
8584
8585         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
8586         to gtk_text_iter_forward_to_delimiters, and make it work properly
8587         if empty lines end with a character other than '\n'
8588
8589         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
8590         position
8591
8592 2000-12-15  Tor Lillqvist  <tml@iki.fi>
8593
8594         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
8595
8596         * gtk/gtk.def
8597         * gdk/gdk.def: Update.
8598
8599         * gdk/win32/gdkmain-win32.c
8600         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
8601         gdkmain-win32.c here.
8602
8603         * gdk/win32/makefile.mingw.in (all): No need to make
8604         gdk-win32res.o here, the makefile one step up will call us to make
8605         it.
8606
8607         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
8608         gdkkeys-win32.
8609
8610         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
8611
8612         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
8613         call to g_source_add().
8614
8615         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
8616         leak. Thanks to Andreas Kemnade.
8617
8618 2000-12-13  Havoc Pennington  <hp@pobox.com>
8619
8620         * gtk/gtktextbtree.h: Remove double _ in front of some functions
8621
8622         * gtk/gtktext*.[hc]: update accordingly
8623         
8624 2000-12-13  Havoc Pennington  <hp@pobox.com>
8625
8626         * gtk/gtktextbtree.h: Put _ in front of every function in this 
8627         header file
8628
8629         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
8630
8631 2000-12-13  Alex Larsson  <alexl@redhat.com>
8632
8633         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
8634         Add support for ps2 intellimouse.
8635
8636         * gdkkeyboard-fb.c:
8637         Move shift-F1 repaint handling to xlate handler only.
8638         
8639         * docs/README.linux-fb:
8640         Add imps2 to docs.
8641         Document the new refresh keys.
8642         
8643 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
8644
8645         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
8646
8647         * gtk/gtkbox.c: change property types from (u)long to (u)int for
8648         ::position and ::padding.
8649
8650         * gtk/gtkcontainer.c: make ::border_width an INT property.
8651
8652         * gtk/gtkpacker.c: make ::position an INT property.
8653
8654         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
8655         guard against NULL h/v scrollbars, since this is used at construction
8656         time.
8657
8658         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
8659         internal gtk_clist_constructor().
8660
8661         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
8662         gtk_ctree_constructor().
8663
8664         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
8665         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
8666
8667         * docs/reference/Makefile.am: fun stuff, disabled docs generation
8668         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
8669
8670         * gtk/gtkwidget.[hc]:
8671         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
8672         and gtk_widget_get().
8673         (gtk_widget_new): use g_object_new_valist().
8674         (gtk_widget_set): use g_object_set_valist().
8675
8676         * gtk/gtkobject.[hc]:
8677         removed gtk_object_arg_get_info(), gtk_object_getv(),
8678         gtk_object_query_args(), gtk_object_newv(),
8679         gtk_object_class_add_signals(),
8680         gtk_object_class_user_signal_new(),
8681         gtk_object_class_user_signal_newv(),
8682         gtk_object_arg_set(), gtk_object_arg_get(),
8683         gtk_object_args_collect(),
8684         gtk_object_default_construct(),
8685         gtk_object_constructed(),
8686         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
8687         removed nsignals, signals and n_args members from GtkObjectClass.
8688         (gtk_object_new): use g_object_new_valist().
8689         (gtk_object_set): use g_object_set_valist().
8690         (gtk_object_get): use g_object_get_valist().
8691         
8692         * gtk/gtkcompat.h: define gtk_object_default_construct().
8693         
8694         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
8695         g_object_new().
8696
8697         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
8698         fucntions, cleaned up method assignments (make sure your structures
8699         are setup properly before calling out). removed all GTK_CONSTRUCTED
8700         hacks ;)
8701
8702 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
8703
8704         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
8705         off-by-one error in checks. (Dave Lambert)
8706
8707 2000-12-12  Alexander Larsson  <alexl@redhat.com>
8708
8709         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
8710         Don't free gdk_fb_keyboard twice.
8711
8712 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
8713
8714         * gtk/testgtk.c:
8715         (create_tooltips): 
8716         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
8717         use GObject swapped_signal:: properties instead.
8718
8719         * gtk/gtkcellrenderertoggle.c: 
8720         * gtk/gtkcellrenderertextpixbuf.c: 
8721         * gtk/gtkcellrenderertext.c: 
8722         * gtk/gtkcellrendererpixbuf.c: 
8723         * gtk/gtkcellrenderer.c:
8724         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
8725         missing warnings for invalid property ids, install properties
8726         with g_object_class_install_property() now.
8727         
8728         * gtk/gtksignal.c:
8729         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
8730         
8731 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
8732         
8733         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
8734         to determine if a window is the focus widget within
8735         its toplevel.
8736
8737         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
8738         to be boolean.
8739
8740         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
8741         of the case where the container CAN_FOCUS to here instead
8742         of having it in each individual move-the-focus place.
8743
8744         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
8745         focusing to be geometric in a much more obvious sense. Arrowing
8746         around is still non-intuitive because it isn't perfect and
8747         because entries, etc, grab the arrow keys, but it at least
8748         usually will do what you expect now.
8749         
8750         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
8751         file.
8752
8753         * gtk/gtknotebook.c: Change tabs to be a single item in
8754         the focus chain. Make movement of focus on tabs with arrow
8755         keys wrap around.
8756         
8757         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
8758         CHECK_FIND_CHILD macro to give informative error messages
8759         instead of silent returns.
8760
8761         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
8762         flag since we handle GdkReturn on the tabs.
8763
8764         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
8765         windows rather than sending expose events directly.
8766
8767         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
8768         definition for GtkNotebookPage into .c file, since it is private.
8769
8770         * gtk/testgtk.c (create_notebook): Add option for 
8771         testing borderless notebook.
8772
8773         * gtk/testgtk.c (page_switch): Removed egregious poking
8774         around in GTK+ internals.
8775
8776         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
8777
8778         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
8779         properly through gtk_clist_focus. Make the title headers a
8780         single item in the tab-focus chain, and make left-right wrap
8781         around.
8782
8783         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
8784         focus method so that wrapping around works properly.
8785
8786         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
8787         that is handled for the widget now. 
8788
8789 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
8790
8791         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
8792         widgets as TOPLEVEL.
8793
8794         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
8795         TOPLEVEL widgets are containers.
8796
8797         * gtk/gtkinvisible.h: Remove useless include.
8798
8799 2000-12-11  Havoc Pennington  <hp@redhat.com>
8800
8801         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
8802         Handle chopping off \r\n and 0x2029 in addition to \n before
8803         passing to PangoLayout
8804
8805         * gtk/gtkimcontextsimple.c
8806         (gtk_im_context_simple_get_preedit_string): 
8807         return an empty string if no match is pending
8808
8809         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
8810         assertion that the returned preedit string was sane
8811
8812         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
8813         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
8814         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
8815
8816 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
8817
8818         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
8819         Fix up finalizer to chain to its parent.
8820
8821 2000-12-11  Alexander Larsson  <alexl@redhat.com>
8822
8823         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
8824         Clearified the difference between the keyboard types. Wrote a note
8825         about the magic sysrq key to get out of raw mode.
8826
8827 2000-12-09  James Henstridge  <james@daa.com.au>
8828
8829         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
8830         member to hold masks for detecting the start of a protocol packet.
8831         (mouse_devs): add packet start masks for ps2 and ms device types.
8832         Left the mask for fidmour blank, as I have no idea what it should
8833         be.
8834         (handle_mouse_io): skip bytes until we get to the start of a
8835         packet.  My Logitech mouse seems to be passing an extra NULL pad
8836         byte, and GPM does a similar thing here.
8837         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
8838         this is the ms mouse driver.
8839         (gdk_fb_mouse_ms_packet): fix up button handling, which was
8840         completely broken except for button1.  It was checking the wrong
8841         bit in the packet for the status of the right mouse button, and
8842         wrongly assuming right == button2 rather than 3.  I fixed that and
8843         also added support for middle button (button2).
8844
8845 2000-12-08  Havoc Pennington  <hp@redhat.com>
8846
8847         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
8848         that cause a segfault on text insertion
8849
8850         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
8851         warning
8852
8853         * gtk/gtktextiter.c (test_log_attrs): use
8854         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
8855
8856         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
8857         Get log attrs for a line, using a cache stored on the buffer
8858         
8859         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
8860         reported by Jeff Franks
8861
8862 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8863
8864         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
8865         /dev/ttyS0 -> /dev/mouse
8866
8867 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8868
8869         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
8870         Added dummy gdk_fontset_load.
8871
8872 2000-12-08  Alexander Larsson  <alexl@redhat.com>
8873
8874         * docs/README.linux-fb:
8875         * docs/Makefile.am:
8876         Initial GtkFB docs.
8877         
8878         * gdk/linux-fb/Makefile.am:
8879         Define GDK_DATA_PREFIX.
8880
8881         * gdk/linux-fb/gdkmain-fb.c:
8882         Fix typo.
8883         Change default display to /dev/fb0.
8884
8885         * gdk/linux-fb/gdkpango-fb.c:
8886         Add $(prefix)/share/fonts/ to font path.
8887         
8888 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8889
8890         * gdk/linux-fb/gdkkeyboard-fb.c:
8891         New file containing the abstracted keyboard driver. Most code
8892         taken from gdkinput-ps2.c
8893
8894         * gdk/linux-fb/gdkinput-ps2.c:
8895         Removed file.
8896         
8897         * gdk/linux-fb/Makefile.am:
8898         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
8899
8900         * gdk/linux-fb/gdkcolor-fb.c:
8901         display->fb was renamed to display->fb_fd.
8902
8903         * gdk/linux-fb/gdkcursor-fb.c:
8904         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8905
8906         * gdk/linux-fb/gdkinput.c:
8907         Moved gdk_input_init here from gdkinput-ps2.c
8908
8909         * gdk/linux-fb/gdkmain-fb.c:
8910         display->fb was renamed to display->fb_fd.
8911         Now the tty and the console is opened here instead
8912         of in the keyboard driver. Also check GDK_VT to see what
8913         tty to open.
8914         Move gdk_beep () here from gdkinput-ps2.c
8915         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8916
8917         * gdk/linux-fb/gdkmouse-fb.c:
8918         Add header.
8919         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8920         Return correct keyboard modifiers.
8921         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
8922
8923         * gdk/linux-fb/gdkprivate-fb.h:
8924         Add tty and vt info to display.
8925         Add orignal modeinfo storage to display
8926         Update global functions
8927
8928         * gdk/linux-fb/gdkwindow-fb.c:
8929         Added gdk_fb_window_find_focus().
8930         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8931
8932 2000-12-07  Havoc Pennington  <hp@pobox.com>
8933
8934         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
8935         function, noticed by Alex
8936
8937 2000-12-06  Elliot Lee  <sopwith@redhat.com>
8938
8939         * configure.in: Detect freetype properly
8940
8941         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
8942         above.
8943
8944 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8945
8946         * gdk/linux-fb/Makefile.am:
8947         Add gdkmouse-fb.c
8948         
8949         * gdk/linux-fb/gdkmouse-fb.c:
8950         New file. Abstracted the mouse drivers a bit.
8951
8952         * gdk/linux-fb/gdkcursor-fb.c:
8953         The cursor hide/show functions was moved here from gdkinput-ps2.c.
8954
8955         * gdk/linux-fb/gdkinput-ps2.c:
8956         Removed old mouse handling code. Moved cursor handling code
8957         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
8958         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
8959         gdk_mouse_get_info.
8960
8961         * gdk/linux-fb/gdkmain-fb.c:
8962         Pass NULL pointers for x,y in gdk_mouse_get_info call.
8963
8964         * gdk/linux-fb/gdkprivate-fb.h:
8965         Removed public gdk_fb_find_common_ancestor, added and renamed
8966         functions for the new mouse handling code.
8967
8968         * gdk/linux-fb/gdkwindow-fb.c:
8969         Moved gdk_fb_window_send_crossing_events here. added global
8970         variable gdk_fb_window_containing_pointer. made
8971         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
8972         renamed to gdk_mouse_get_info.
8973
8974 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8975
8976         * gdk/linux-fb/gdkevents-fb.c:
8977         Update to match latest gmain/gsource changes.
8978
8979         * gdk/linux-fb/gdkinput-ps2.c:
8980         Bogus gdk_keymap_get_entries_for_keycode implementation so that
8981         it links. Will be implemented later.
8982
8983 2000-12-03  Havoc Pennington  <hp@pobox.com>
8984
8985         * gdk/Makefile.am: add gdkkeys.[hc]
8986
8987         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
8988         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
8989
8990         * acconfig.h, configure.in: add checks and command line options
8991         for XKB
8992
8993         * gdk/x11/gdkkeys-x11.c: Implement the above functions
8994         
8995         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
8996         and group in the key event
8997
8998         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8999         field with the low-level hardware key code, and a group
9000         field with the keyboard group
9001
9002         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
9003         and declare a couple globals used for keymap handling
9004         
9005         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
9006         hold down Shift-Control and type a hex number to get a Unicode 
9007         character corresponding to the hex number
9008         (gtk_im_context_simple_get_preedit_string): Fix cursor position
9009         (return bytes not chars)
9010
9011 2000-12-05  Elliot Lee  <sopwith@redhat.com>
9012
9013         * gdk/gdkcolor.h: Make GdkColor specify element sizes
9014         to avoid waste on 64-bit platforms.
9015
9016 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
9017
9018         * INSTALL: Fix link to PNG home, remove reference
9019         to fribidi.
9020
9021         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
9022         
9023         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
9024         tested.)
9025
9026         * gtk/gtkcheckmenuitem.c: Permanently turn on
9027         always_show_toggle.
9028
9029         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
9030         be NULL. (Vladimir Klebanov, #26545)
9031
9032         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
9033         some signed/unsigned comparison problems. (#6510,
9034         David Kaelbling)
9035
9036         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
9037         return type to boolean (Oskar Liljeblad, #18648)
9038
9039 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9040
9041         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
9042         Remove bogus colormap setting.
9043
9044 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9045
9046         * gdk/linux-fb/gdkcolor-fb.c:
9047         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
9048
9049         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
9050         Must set colormap.
9051         
9052 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
9053
9054         * docs/tutorial/gtk-tut.sgml: DND updates
9055
9056 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
9057
9058         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9059         Remove old debug g_warning().
9060         (gdk_fb_draw_drawable): The src argument can be either a wrapper
9061         or an implementation, just pass the implementation to draw_drawable_2.
9062         
9063         * gdk/linux-fb/gdkprivate-fb.h:
9064         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
9065
9066         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9067         clear and invalidate area when window is destroyed.
9068         (send_map_events): Remove old commented out code.
9069
9070 2000-12-05  Alexander Larsson  <alexl@redhat.com>
9071
9072         * gdk/linux-fb/gdkpango-fb.c:
9073         Use italic instead of oblique in font aliases.
9074         
9075         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
9076         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
9077         other unsupported functions.
9078
9079 2000-12-04  Havoc Pennington  <hp@redhat.com>
9080
9081         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
9082
9083         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
9084
9085         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
9086
9087         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
9088         hack to avoid infinite loops (synthetic expose event) - 
9089         Owen has more appropriate fixes in a branch he'll check in later.
9090
9091         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
9092         separator, CR, and CRLF as line ends
9093
9094         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
9095         into lines using pango_find_paragraph_boundary(); other bits of
9096         the widget are still going to be broken if the boundary isn't '\n'
9097         though
9098
9099 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9100
9101         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
9102         multiply.
9103
9104         * gdk/linux-fb/gdkpango-fb.c:
9105         Copied some 26.6 scaling macros from pango to clean up the rounding.
9106         (pango_fb_font_get_glyph_info): Correct sign on x value.
9107
9108         * gdk/linux-fb/gdkprivate-fb.h:
9109         Removed unreferenced external functions.
9110
9111         * modules/linux-fb/Makefile.am: Use ` instead of '.
9112
9113         * modules/linux-fb/basic.c:
9114         Remove dead code. In particular the dummy lang engine which broke all
9115         pango layouts in GtkFB. Don't include tables-big.i anymore.
9116
9117         * modules/linux-fb/tables-big.i:
9118         Upgrade to latest version from pango. Left for reference, basic_ranges
9119         moved to basic.c.
9120         
9121 2000-12-04  Havoc Pennington  <hp@redhat.com>
9122
9123         Fix bugs Alex found:
9124         
9125         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
9126         to "draw"
9127
9128         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
9129
9130         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
9131
9132         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
9133         implementation in here, apparently the expose() implementation was
9134         dead code.
9135
9136 2000-12-04  Alexander Larsson  <alexl@redhat.com>
9137
9138         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9139         Return positive descent.
9140
9141 2000-12-02  Havoc Pennington  <hp@pobox.com>
9142
9143         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
9144         method and signal
9145         
9146         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
9147         calls gdk_window_process_updates() to push the exposes through
9148         (gtk_widget_class_init): No more draw signal, no
9149         gtk_widget_real_draw()  
9150         
9151         * gtk/gtkbin.c (gtk_bin_draw): remove
9152
9153         * gtk/gtkbox.c (gtk_box_draw): remove
9154
9155         * gtk/gtkbutton.c (gtk_button_draw): remove
9156
9157         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
9158
9159         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
9160
9161         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
9162
9163         * gtk/gtkclist.c (gtk_clist_draw): remove
9164
9165         * gtk/gtkentry.c (gtk_entry_draw): remove
9166
9167         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
9168
9169         * gtk/gtkfixed.c (gtk_fixed_draw): remove
9170
9171         * gtk/gtkframe.c (gtk_frame_draw): remove
9172
9173         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
9174
9175         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
9176
9177         * gtk/gtklayout.c (gtk_layout_draw): remove
9178
9179         * gtk/gtklist.c (gtk_list_draw): remove
9180
9181         * gtk/gtklistitem.c (gtk_list_item_draw): remove
9182
9183         * gtk/gtkmenu.c (gtk_menu_draw): remove
9184
9185         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
9186
9187         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
9188
9189         * gtk/gtknotebook.c (gtk_notebook_draw): remove
9190
9191         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
9192
9193         * gtk/gtkpacker.c (gtk_packer_draw): remove
9194
9195         * gtk/gtkrange.c (gtk_range_draw): remove
9196
9197         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
9198
9199         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
9200
9201         * gtk/gtktable.c (gtk_table_draw): remove
9202
9203         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
9204
9205         * gtk/gtktext.c (gtk_text_draw): remove
9206
9207         * gtk/gtktextview.c (gtk_text_view_draw): remove
9208
9209         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
9210
9211         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
9212
9213         * gtk/gtktree.c (gtk_tree_draw): remove
9214
9215         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
9216
9217         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
9218
9219         * gtk/gtkviewport.c (gtk_viewport_draw): remove
9220
9221         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
9222
9223         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9224
9225         * gtk/gtkwindow.c (gtk_window_draw): remove
9226
9227 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9228
9229         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9230         a GtkToggleButton is both insensitive and active, it was being
9231         drawn by the GtkButton draw handler which doesn't check the
9232         state. Now it's calling gtk_toggle_button_paint instead.
9233         
9234 2000-12-01  Havoc Pennington  <hp@redhat.com>
9235
9236         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9237         dangling pointers to the appearance attributes from the 
9238         line display
9239
9240         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9241         width/height to mean "full width/height of drawable"
9242
9243         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9244         click to select word/line
9245         
9246         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9247         when getting log attrs. Get a slice, so that pixmaps and stuff
9248         are properly handled.
9249
9250         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9251         paste into the selection (replaces selection now, previously
9252         crashed or added to selection). Reveals longstanding btree bug -
9253         select multiple lines, middle-click on the selection, boom. This
9254         isn't related to my changes though.
9255
9256         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9257         PangoLogAttrs changes
9258         (gtk_entry_move_backward_word): ditto
9259
9260         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9261         functions return bool whether the iter moved onto a
9262         dereferenceable position.
9263  
9264         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9265         functions for motion in terms of display lines.
9266
9267         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9268         get the buffer a mark is inside
9269         
9270 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9271
9272         * gdk/linux-fb/Makefile.am:
9273         * modules/linux-fb/Makefile.am:
9274         Freetype 2 final uses freetype-config
9275
9276         * gdk/linux-fb/gdkpango-fb.c:
9277         Upgrade to use Freetype 2 final.
9278         More flexible support for font aliases, this also fixes a bug with
9279         GtkFontSelector, as the aliases must be visible in the font/family list,
9280         or GtkFontSelector reads uninitialized memory.
9281
9282 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
9283
9284         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
9285         XGetIMValues to properly terminate variable argument list, and do
9286         NULL return check for ic_values and xim_styles.
9287
9288         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
9289         Restore preedit state after XmbResetIC().
9290         
9291         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
9292         XvaCreateNestedList() should take XvaNestedList, but not
9293         XvaNestedList*.
9294
9295         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
9296         preedit_draw_callback, preedit_caret_callback): Match
9297         "preedit-changed" signal name to "preedit_changed" to be
9298         consistent to the spec.
9299
9300         * gtk/gtkimcontextsimple.c (check_table):
9301         Match "preedit-changed" to "preedit_changed" to be consistent
9302         to the spec.
9303
9304 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
9305
9306         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
9307         gc->clip_region == NULL>
9308
9309 2000-11-30  Tor Lillqvist  <tml@iki.fi>
9310
9311         Changes by Hans Breuer:
9312         
9313         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
9314         Dont't use negative width and height as max_hints. This fixes
9315         Owen's recent testgtk changes for win32.
9316
9317         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
9318         gdk_win32_hdc_release): These are exported and may be called with
9319         other drawable types than our GdkDrawableImplWin32 (?).
9320
9321         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
9322         so always #define USE_BACKING_STORE.
9323
9324         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
9325         of printf for debugging output.
9326
9327         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
9328         
9329         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
9330
9331         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
9332         declaration.
9333
9334         * gtk/gtktexttypes.h: Ditto.
9335
9336         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
9337         (GDK_VoidSymbol) also if in case of arg check failure.
9338
9339         * gtk/gtkimcontextsimple.c
9340         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
9341         position to the pointer, but to the variable it points to.
9342
9343         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
9344
9345         * gtk/gtk.def: Updates.
9346
9347 2000-11-29  Elliot Lee  <sopwith@redhat.com>
9348
9349         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
9350         GTK_TYPE_TREE_MODEL.
9351
9352 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9353
9354         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
9355         Set the size of the font from the description.
9356         (gdk_text_width): Gross hack that calculates the width
9357         of text by text_length * size/2. This is necessary because
9358         GtkLabel does some ugly gtk_string_width call to calculate
9359         an good size.
9360         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
9361
9362 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
9363
9364         * docs/tutorial/gtk-tut.sgml: DND updates
9365
9366 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9367
9368         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
9369         If you pass width or height == 0 to gdk_window_clear_area they
9370         should be calculated from the window size.
9371
9372 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9373
9374         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
9375         a grab, but no grab-cursor, use the cursor from the grabbed
9376         window. (gdk_fb_window_send_crossing_events): Send normal
9377         enter/leave notifications if grab and owner_events == TRUE.
9378
9379 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9380
9381         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9382         Do implicit button grabs, even if the window doesn't
9383         want the event.
9384         (gdk_fb_window_send_crossing_events): If there is a
9385         grab, only the grabbed window gets normal enter/leave
9386         notifications. On ungrab go from grabbed window to current.
9387         Don't send any notification to b when propagating from c -> b.
9388         If setting a grab on window, don't set prev_window.
9389         (handle_mouse_input): Send enter/leave events to the window the
9390         mouse is over, not the grabbed one.
9391         
9392 2000-11-28  Elliot Lee  <sopwith@redhat.com>
9393
9394         * gdk/gdkregion-generic.c: Zap warning.
9395         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
9396         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
9397
9398 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
9399
9400         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9401         The cursor should be hidden if it is part of either the
9402         source or destination region. Not only if it is in both.
9403         (gdk_window_set_transient_for): Silence warnings.
9404
9405 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9406
9407         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
9408         The default mode in X is Pie Arcs, therefore that is
9409         what Gtk+ uses.
9410
9411 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9412
9413         * gdk/linux-fb/gdkinput-ps2.c:
9414         Implement correct EnterNotify/LeaveNotify:
9415         (gdk_fb_window_send_crossing_events): New function that sends
9416         all GdkCrossingEvents from the last mouse-window to the specified
9417         destination.
9418         (gdk_fb_window_visibility_crossing): Removed function.
9419         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
9420         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
9421         instead of gdk_window_get_pointer() for better readability.
9422
9423         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
9424         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
9425
9426         * gdk/linux-fb/gdkprivate-fb.h:
9427         removed gdk_fb_window_visibility_crossing, added
9428         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
9429
9430         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
9431         New function that finds the least common ancestor of two windows.
9432         (gdk_window_show, gdk_window_hide):
9433         Use gdk_fb_window_send_crossing_events.
9434         (gdk_fb_window_move_resize): Send configure events to toplevel
9435         windows. Use gdk_fb_window_send_crossing_events.
9436
9437 2000-11-27  Havoc Pennington  <hp@redhat.com>
9438
9439         * gtk/gtkprivate.h (enum): Remove a trailing comma
9440
9441 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
9442
9443         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
9444         the "changed" callback of the adjustment.  We need to redraw the
9445         spin button's arrows when the adjustment's range changes.
9446         (adjustment_changed_cb): Draw the arrows.
9447         (gtk_spin_button_value_changed): Draw the arrows.
9448
9449 2000-11-23  Alexander Larsson  <alexl@redhat.com>
9450
9451         * gdk/linux-fb/gdkselection-fb.c:
9452         Initial selection implementation.
9453
9454         * gtk/gtkselection.c:
9455         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
9456         requestor in gtk_selection_request.
9457         
9458         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
9459         Added gdk_selection_property atom.
9460
9461         * gdk/linux-fb/gdkprivate-fb.h:
9462         Export _gdk_selection_window_destroyed.
9463         Removed mask_off_x/y from GdkCursorPrivateFB.
9464         Removed hbearing, added top, left to PangoFBGlyphInfo.
9465
9466         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9467         Call _gdk_selection_window_destroyed
9468         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
9469         the root window has been created.
9470         (static_dx_hack, static_dy_hack, compare_draw_rects,
9471         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
9472         in region. They are already sorted. Instead just traverse them in
9473         reverse if draw_direction < 0.
9474         
9475         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9476         Double-clicks must be sent after the normal button_press.
9477         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
9478         
9479         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
9480         Pass _gdk_fb_screen_gc instead of NULL.
9481
9482         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
9483         Initialize gdk_selection_property.
9484         (gdk_event_make): Remove unused code.
9485
9486         * gdk/linux-fb/gdkcursor-fb.c:
9487         Make the pixmap for the cursor the same size as the mask. Also remove
9488         the mask_off_x/y fields in GdkCursorPrivateFB and combine
9489         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
9490         Now the whole cursor is visible.
9491
9492         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9493         Fix bug where xdest+height instead of ydest+height was used
9494         to calculate if the source and dest overlapped. This fixes the
9495         redraw bug when the main window in testgtk was scrolled when
9496         partially covered by a tall window.
9497         Copy rectangles in region in order depending on draw_direction.
9498         Also moved the draw_direction flipping of start_y and end_y into
9499         the gc functions, as this might not be what all of them want.
9500         (gdk_fb_draw_lines): Support dashed lines.
9501         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
9502         so that the text is positioned correctly (was 1 pixel high).
9503
9504         gdk/linux-fb/gdkgc-fb.c:
9505         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
9506         all lines were drawn a pixel to short. Also checked the default of
9507         the rest of the values, and they're the same as X now.
9508
9509         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
9510         Clean up pixel positioning of the glyphs. Just use bgy->top and
9511         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
9512         to all divisions to get correct rounding behaviour.
9513
9514         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
9515         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
9516         Moved start_y/end_y flip into draw_drawable implementations.
9517         Flip also x rendering when draw_direction < 0.
9518         Remove unneccesary multiply with draw_direction.
9519
9520 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
9521
9522         * docs/tutorial/gtk-tut.sgml:
9523           - get rid of gtk_toggle_button_toggled FUD
9524           - start DND section - needs work - based on:
9525                 http://wolfpack.twu.net/docs/gtkdnd/
9526
9527 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9528
9529         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9530         Correct calculation of font metrics. Now GtkEntrys have sane
9531         size.
9532
9533 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9534
9535         * gdk/gdktypes.h:
9536         Add new type GdkSpan
9537         
9538         * docs/reference/gdk/gdk-sections.txt,
9539         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
9540         gdk/gdkregion.h:
9541         Implement and document gdk_region_spans_intersect_foreach.
9542
9543         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
9544         Add new file gdkrender-fb.c which contains all core
9545         rendering code.
9546         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
9547         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
9548         (optimized rectangle fillers).
9549
9550         * gdk/linux-fb/gdkdrawable-fb2.c:
9551         Move all rendering code to gdkrender-fb.c.
9552         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
9553         Use the new span intersection functions in gdk_fb_fill_spans.
9554         gdk_fb_draw_rectangle() clips filled rectangles and calls
9555         gc->fill_rectangle with the result.
9556         gdk_fb_fill_spans() gets extra argument "sorted".
9557
9558         * gdk/linux-fb/gdkevents-fb.c:
9559         Remove unused includes and defines.
9560         New function gdk_fb_get_time() to get correct time for events.
9561
9562         * gdk/linux-fb/gdkinput-ps2.c:
9563         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
9564         Make sure to set the time of all events.
9565
9566         * gdk/linux-fb/gdkmain-fb.c:
9567         Use gdk_fb_get_time ().
9568
9569         * gdk/linux-fb/gdkprivate-fb.h:
9570         New virtual GC calls: fill_span & fill_rectangle.
9571         Export gdk_fb_get_time().
9572         gdk_fb_fill_spans() gets extra argument "sorted".
9573
9574         * gdk/linux-fb/mi*.c:
9575         Use GdkSpan instead of GdkRectangle.
9576         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
9577         from XFree 4 source)
9578         
9579 2000-11-22    <jrb@redhat.com>
9580
9581         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
9582         reversing the order in an if statement will do.  Doing so managed
9583         to make the treemodelsort half work.  Other half will follow after
9584         I get the insert function fully fixed.
9585
9586 2000-11-21  Elliot Lee  <sopwith@redhat.com>
9587         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
9588         more than 2 bits. Besides, I need to implement an evil hack. :)
9589
9590 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
9591
9592         * docs/tutorial/gtk-tut.sgml: minor corrections
9593
9594 2000-11-20  Jonathan Blandford <jrb@redhat.com>
9595         * gtk/gtktreemodelsort.h: Add convertion functions to let you
9596           convert to and from relative path's and iters.
9597
9598         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
9599           testing sorting functions a bit better.  Currently broken -- will
9600           fix in morning.
9601
9602 2000-11-20  Havoc Pennington  <hp@redhat.com>
9603
9604         * gtk/gtkwidget.c: Documented a bunch of functions in here
9605         (gtk_widget_realize): Warn if you try to realize
9606         a widget with no parent that isn't a toplevel
9607         (gtk_widget_intersect): return a gboolean
9608
9609 2000-11-20  Havoc Pennington  <hp@redhat.com>
9610
9611         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
9612         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
9613         scrolling to be implemented in GDK to finish. Also, right now
9614         we just size_allocate all children on every layout change,
9615         which is pretty lame. Test commented out of testtext.c, 
9616         until it works better.
9617
9618 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
9619
9620         * gdk/linux-fb/gdkdrawable-fb2.c:
9621         Removed unused arguments from gdk_fb_drawable_get_pixel().
9622
9623         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
9624         Renamed fidur specific mouse packet data in MouseDevice to
9625         generic. Used it in ps2 mouse handling code to avoid blocking
9626         reads.
9627
9628 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
9629
9630         * demos/gtk-demo/main.c: Changed to have the list become
9631         non-italic when the demo window is destroyed through an external
9632         event (like a close button).  Doing so found three bugs in the
9633         widget.
9634
9635         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
9636
9637         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
9638         we actually set the cell.
9639
9640         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
9641
9642         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
9643         free a leaked path.  Thanks memprof.
9644
9645 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
9646
9647         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
9648         off-by-one error when destroying allocated segments
9649         on failure. (Elliot)
9650
9651 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
9652
9653         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
9654         memleaks found by Evan Martin.
9655
9656 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
9657
9658         * Released 1.3.2
9659         
9660         * NEWS: Updates for 1.3.2
9661
9662 2000-11-17  Tor Lillqvist  <tml@iki.fi>
9663
9664         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
9665         but in general for window system specific events.
9666
9667         * gtk/gtk.def
9668         * gtk/makefile.mingw.in
9669         * gtk/makefile.msc.in: Update.
9670         
9671         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
9672
9673 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
9674
9675         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
9676         distribute gtk.immodules.
9677
9678         * gtk/Makefile.am (install-data-local): Don't install the
9679         gtk.immodules file created for the uninstalled modules;
9680         instead run gtk-query-immodules after install
9681
9682 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9683
9684         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
9685         -rpath to the right install location.
9686
9687         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
9688         -export-dynamic.
9689
9690         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
9691         properly.
9692
9693 2000-11-15  Havoc Pennington  <hp@pobox.com>
9694
9695         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
9696         patch from Mikael Hermansson to temporarily stop blinking while
9697         the user is using the keyboard to type or navigate. 
9698
9699         Also, when blinking, stay on for longer than we stay off. Also,
9700         return from start_cursor_blink if !cursor_visible, to save
9701         checking that flag all over the place before we call
9702         start_cursor_blink.
9703
9704 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
9705
9706         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
9707         only contain a "fontset" line, which is now ignored.
9708
9709         * gtk/gtkentry.c (gtk_entry_button_release): Make 
9710         double-click-to-select-word work.
9711         
9712 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
9713
9714         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
9715         Don't move back one char when we are actually at the end of the 
9716         paragraph.
9717
9718 2000-11-15  Robert Brady  <robert@suse.co.uk>
9719
9720         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
9721         'o' < 'p'.
9722         
9723         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
9724         bind_textdomain_codeset.
9725
9726         (gtk_init_check): Make the warning about translating default:LTR
9727         sterner.
9728         
9729 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
9730
9731         * **/Makefile.am : remove unecessary rules for win32-specific
9732         config-substituted targets. If you want these rules, use
9733         --enable-maintainer-mode (called automatically by autogen.sh).
9734         Stops a lot of unneccessary make-time warnings.
9735
9736         * gtk/gtktext{layout,display}.c: Factor in total width as
9737         well as screen when figuring alignment for word-wrap as well as
9738         no wrap; this is necessary to handle lines that cannot be wrapped
9739         at all.
9740
9741 2000-11-15  Havoc Pennington  <hp@redhat.com>
9742
9743         * gtk/testtext.c: Implement essential color cycling feature
9744
9745 2000-11-15  Havoc Pennington  <hp@redhat.com>
9746
9747         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
9748         when we invalidate the main window.
9749
9750         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
9751         GtkTextView will now invalidate the side windows for us when text
9752         changes.
9753
9754 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
9755
9756         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
9757         unconditionally, since we may need to update the horizontal
9758         scrollbars even if the height didn't change.
9759
9760         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
9761         the extra attrs, since some of them affect size.
9762
9763         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
9764         x_offset correctly.
9765
9766 2000-11-15  Havoc Pennington  <hp@redhat.com>
9767
9768         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
9769         don't move the first line out into the margin, instead move the
9770         whole paragraph in order to make space for the first line within 
9771         the margin
9772
9773 2000-11-15  Havoc Pennington  <hp@redhat.com>
9774
9775         * gtk/gtktextview.c (changed_handler): offset redraw rect by
9776         xoffset in addition to yoffset, so horizontal scrolling doesn't
9777         break redraws
9778
9779 2000-11-15  Havoc Pennington  <hp@redhat.com>
9780
9781         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
9782         from the cursor
9783         (render_layout_line): fix reversed test that caused weird
9784         underlines to get drawn
9785
9786 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9787
9788         * gdk/linux-fb/gdkprivate-fb.h:
9789         Fix debug macros.
9790         
9791 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9792
9793         * gdk/linux-fb/gdkprivate-fb.h:
9794         Added virtual functions set_pixel, get_color,
9795         fill_span and draw_drawable to the GC.
9796         Added global _gdk_fb_screen_gc to use instead of
9797         NULL when drawing to the screen.
9798         Added _gdk_fb_gc_calc_state() prototype.
9799
9800         * gdk/linux-fb/gdkgc-fb.c:
9801         Call _gdk_fb_gc_calc_state() on any gc state change.
9802
9803         * gdk/linux-fb/gdkglobals-fb.c:
9804         Add _gdk_fb_screen_gc
9805                 
9806         * gdk/linux-fb/gdkdrawable-fb2.c:
9807         _gdk_fb_gc_calc_state() calculates best functions
9808         for the GC state and depth.
9809         Moved bpp specialized code to separate functions.
9810         Added optimized 24 bpp AA draw_drawable.
9811
9812         * gdk/linux-fb/gdkevents-fb.c:
9813         Silence gcc warning.
9814
9815         * gdk/linux-fb/gdkimage-fb.c:
9816         Use _gdk_fb_screen_gc
9817
9818         * gdk/linux-fb/gdkwindow-fb.c:
9819         Init and use _gdk_fb_screen_gc
9820
9821         * gdk/linux-fb/mitypes.h:
9822         Remove unused types.
9823
9824 2000-11-14  Havoc Pennington  <hp@pobox.com>
9825
9826         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
9827         to pixels
9828
9829 2000-11-14  Havoc Pennington  <hp@pobox.com>
9830
9831         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
9832
9833         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
9834         unknown char, no real reason we were using a variable. 
9835         Remove gtk_text_unknown_char variable. Fix all the text widget
9836         files accordingly.
9837
9838         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
9839         since the Unicode spec seems to prefer that character for our
9840         purposes.
9841
9842 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
9843
9844         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
9845         value of g_getenv() isn't freeable, so g_strdup it.
9846
9847         * modules/input/inuktitut.c: Inuktitut input method.
9848
9849         * modules/input/Makefile.am: Build this.
9850         
9851 2000-11-14  Elliot Lee  <sopwith@redhat.com>
9852
9853         * gtk/Makefile.am: Install gtk.immodules, needed for operation
9854         of gtk programs.
9855
9856 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
9857
9858         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
9859         reversed > that was causing Home to go to end of previous line.
9860
9861         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
9862         modified-keypresses (leave for bindings.)
9863
9864         * modules/input/Makefile.am: Remove useless -export-dynamic
9865         from module LDFLAGS.
9866
9867 2000-11-14  Havoc Pennington  <hp@redhat.com>
9868
9869         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
9870         higher.
9871
9872         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
9873         account. Also, render rise, underline, background, etc. for
9874         pixbufs as well as text. Also, draw underlines one pixel higher.
9875
9876         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
9877         PangoAttribute for the rise, so it gets drawn properly. Also,
9878         add the GtkTextAppearance attribute for pixbuf/widget segments
9879         as well; we should go ahead and have rise, underline, background,
9880         stipple work for those
9881
9882         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
9883         Pango
9884
9885 2000-11-15  Tor Lillqvist  <tml@iki.fi>
9886
9887         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
9888
9889         * gtk/gtk.def: Update.
9890
9891         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
9892         included.
9893         (gtk_rc_get_im_module_file): Use run-time installation directory
9894         on Win32.
9895
9896         * gdk/win32/rc/gdk.rc: Remove.
9897         * gdk/win32/rc/gdk.rc.in: New file.
9898         * gdk/win32/rc/Makefile.am: New file
9899         * gdk/win32/Makefile.am: Corresponding changes.
9900
9901         * gtk/gtk.rc: Remove.
9902         * gtk/gtk-win32.rc.in: New file.
9903         * gtk/Makefile.am: Corresponding changes.
9904
9905         * configure.in: Corresponding changes.
9906
9907         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
9908         has a built gtkcompat.h. Developers using CVS code on Win32 can
9909         hand-edit it from gtkcompat.h.in.
9910
9911         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
9912         gtkcompat.h from gtkcompat.h.win32.
9913
9914 2000-11-14  Havoc Pennington  <hp@redhat.com>
9915
9916         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
9917         to default to GDK_ACTION_MOVE if the drag is within a single
9918         widget. Defaults to GDK_ACTION_COPY between widgets.
9919
9920 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
9921
9922         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
9923
9924         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
9925
9926         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
9927         srcdir != builddir
9928
9929         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
9930
9931         * configure.in (GTK_VERSION): Up to 1.3.2
9932
9933         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
9934         gtkimcontextxim.h
9935
9936         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
9937         missing doc comment.
9938
9939 2000-11-14  Alexander Larsson  <alexl@redhat.com>
9940
9941         * modules/linux-fb/basic.c:
9942         Use the glib iconv wrappers.
9943
9944 2000-11-13  Havoc Pennington  <hp@pobox.com>
9945
9946         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
9947         still more bugs.
9948
9949         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
9950         scroll the GdkWindows before realization.
9951
9952 2000-11-13  Havoc Pennington  <hp@redhat.com>
9953
9954         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
9955         where GC didn't always get updated properly
9956
9957         * demos/gtk-demo/textview.c (create_tags): Use subattributes
9958         of fonts instead of setting the entire font
9959
9960         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
9961         setting entire font
9962
9963         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
9964
9965         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
9966         a bunch of individually-settable font attributes. You can still 
9967         use the "font" and "font_desc" args, they just set all the font
9968         attributes at once.
9969
9970 2000-11-13 Elliot Lee <sopwith@redhat.com>
9971
9972         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
9973
9974 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
9975
9976         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
9977         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
9978
9979         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
9980         work better.
9981
9982 2000-11-13  Havoc Pennington  <hp@redhat.com>
9983
9984         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
9985         the module file.
9986
9987         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
9988         dest->language
9989
9990         * gtk/testtext.c: Test pixels above/below/inside paragraphs
9991         settings
9992
9993         * gtk/gtktextview.c: Implement object args and setters/getters for
9994         all the aspects of the GtkTextAttributes that are not set from
9995         GtkWidget attributes. This is spacing, justification, margins,
9996         etc.
9997
9998         (gtk_text_view_set_arg)
9999         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
10000         args
10001         (gtk_text_view_class_init): Add args for justify, left_margin,
10002         right_margin, indent, and tabs
10003         
10004
10005         * gtk/gtktextlayout.c (set_para_values): fix to display indent
10006         attribute properly
10007
10008         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
10009         replace with indent attribute
10010
10011         * gtk/gtktextlayout.c (set_para_values): multiply indent by
10012         PANGO_SCALE
10013
10014         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
10015         rearranging code to do that
10016         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
10017         i.e. don't subtract the top_margin first, just to keep
10018         all margin-futzing in one place.
10019
10020         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
10021
10022         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
10023         special case of last line, Pango now handles this itself.
10024         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
10025         Y coordinate
10026         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
10027         (find_display_line_above): wasn't moving the byte index as it
10028         iterated over lines, so always returned byte 0. Also, port to use
10029         PangoLayoutIter.
10030         (find_display_line_below): same problem as
10031         find_display_line_above. Also, port to use PangoLayoutIter.
10032
10033 2000-11-13  Alexander Larsson  <alexl@redhat.com>
10034
10035         * gdk/linux-fb/*.[ch]:
10036         Massive reindent to gtk+ standard. My hands hurt.
10037
10038         * gdk/linux-fb/gdkcolor-fb.c:
10039         Move GdkColorPrivateFB from inherited to windowing_data
10040
10041         * gdk/linux-fb/gdkcursor-fb.c:
10042         _gdk_cursor_new_from_pixmap made static
10043
10044         * gdk/linux-fb/gdkdnd-fb.c:
10045         GdkDragContextPrivate moved to windowing_data
10046
10047         * gdk/linux-fb/gdkdrawable-fb2.c:
10048         Removed endian.h, use glib endianness macros instead
10049         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
10050         and GDK_DRAWABLE_IMPL_FBDATA
10051
10052         * gdk/linux-fb/gdkfont-fb.c:
10053         Add empty gdk_font_load(). Needed for linking of Gtk+.
10054
10055         * gdk/linux-fb/gdkimage-fb.c:
10056         Removed endian.h, use glib endianness macros instead
10057         Moved GdkImagePrivateFB to windowing_data
10058         gdk_image_new_bitmap didn't always allocate enough
10059         memory.
10060
10061         * gdk/linux-fb/gdkinput-ps2.c:
10062         Added semi-working support for MS serial mice.
10063
10064         * gdk/linux-fb/gdkprivate-fb.h:
10065         s/GdkWindowPrivate/GdkWindowObject/
10066         Removed GdkWindowPrivate typedef
10067         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
10068         Removed GDK_DRAWABLE_P
10069         Move GdkColorPrivateFB from inherited to windowing_data
10070         Moved GdkImagePrivateFB to windowing_data
10071
10072         * gdk/linux-fb/gdkvisual-fb.c:
10073         Removed some unused debug code.
10074
10075         * gdk/linux-fb/gdkwindow-fb.c:
10076         Use stock cursors instead of including X headers.
10077         s/GdkWindowPrivate/GdkWindowObject/
10078
10079         * gdk/linux-fb/mitypes.h:
10080         Removed unused types.
10081
10082         * modules/linux-fb/basic.c:
10083         Use the pango fribidi wrappers.
10084
10085 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
10086
10087         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
10088         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
10089         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
10090         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
10091         GEqualFunc where applicable.
10092         
10093         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
10094         pango_font_description_equal as changed in pango.
10095         
10096         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
10097
10098         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
10099
10100         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
10101
10102         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
10103
10104         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
10105
10106         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
10107
10108         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
10109         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
10110
10111         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
10112         gtk_rc_styles_compare -> gtk_rc_styles_equal.
10113
10114 2000-11-12  Havoc Pennington  <hp@pobox.com>
10115
10116         * demos/gtk-demo/Makefile.am (democodedir): change demo install
10117         dir to datadir/gtk+-2.0/demo
10118
10119         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
10120         sorts of text widget and Pango font bugs. Urgh.
10121
10122         * demos/gtk-demo/Makefile.am (demos): Add textview.c
10123
10124         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
10125         tree that you should double click to see the demo. Fix 
10126         types of variables to reflect changed return values from 
10127         GtkTreeStore and GtkTreeViewColumn constructors.
10128
10129         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
10130         newly-created buffer to prepare for GObject semantics
10131
10132         * gtk/testtext.c: don't leak the buffer with GObject semantics
10133
10134         * gtk/testtextbuffer.c: ditto
10135         
10136 2000-11-12  Havoc Pennington  <hp@pobox.com>
10137
10138         Rename this testgtk to gtk-demo to avoid confusion, and 
10139         install it so people can use it as a supplement to 
10140         the documentation.
10141         
10142         * demos/gtk-demo: Moved from demos/testgtk
10143
10144         * demos/testgtk: Removed
10145
10146         * configure.in: make Makefile in gtk-demo
10147         
10148         * demos/gtk-demo/Makefile.am: Install sample source to 
10149         datadir/gtk-demo (maybe there's a better place?), and 
10150         rename the binary to gtk-demo
10151         
10152         * demos/gtk-demo/main.c (load_file): Load installed sample
10153         source if source isn't found in pwd.
10154
10155 2000-11-09  Havoc Pennington  <hp@pobox.com>
10156
10157         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
10158         argument to set the char displayed when visibility == FALSE
10159         (gtk_entry_create_layout): If !entry->visible, replace 
10160         all chars with the "invisible char"
10161
10162         * gtk/testgtk.c: Test the invisible_char deal
10163         
10164 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
10165
10166         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
10167         can't get a native font in the right encoding.
10168
10169 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
10170
10171         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
10172         respectively.
10173
10174 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
10175
10176         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
10177         Fix warning when moving between paragraphs.
10178
10179         * gtk/gtkentry.[ch]: Change move => move_cursor, 
10180         delete => delete_from_cursor, insert => insert_at_cursor
10181
10182 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
10183
10184         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
10185
10186         * modules/input/imthai-broken.c: A Thai input method for use if
10187         Thai keys are really generating Latin1 keysyms.
10188
10189         * modules/input/Makefile.am: Build these.
10190
10191 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
10192
10193         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
10194         g_filename_{to,from}_utf8 now takes an extra parameter.
10195
10196         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
10197         strftime into UTF-8.
10198
10199         (column_from_x, gtk_calendar_paint_day_names): Support RTL
10200         calendars.
10201
10202         (gtk_calendar_paint_day_names): Draw day names in the right 
10203         place.
10204         
10205 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
10206
10207         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
10208         problem with using result of g_get_charset() backwards -
10209         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
10210
10211         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
10212         negative min_width/height and max_width/height to
10213         mean "requisition"; this allows setting a window
10214         to be user-resizable in only one direction easily.
10215
10216         * gtk/testgtk.c (create_main_window): Remove hard-coded
10217         usize - set a default size in the vertical direction.
10218
10219 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
10220
10221         * gtk/gtkrange.c: Add some missing casts. Support 
10222         2 and 3 button clicks on the arrows to mean 
10223         "move by pages" and "jump to end". (Like gtkspinbutton)
10224
10225 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10226
10227         * gdk/win32/makefile.msc : reflect build module changes
10228
10229         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10230         from GdkPixmap*, cast implementation member instead.
10231
10232         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10233         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10234         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10235         more Gdi functions return value checking. 
10236         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10237         GdkImagePrivateWin32 *.
10238
10239         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10240         menus useable again. Add #pragma message to keep reminded on this issue.
10241         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10242         windows. This allows to enable backing store on Win32!
10243
10244         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10245         in drawable is of impl type. Correct specific type checks appropriate.
10246  
10247         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10248         GDK_WINDOW_DESTROYED before allocating new resources.
10249
10250         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10251
10252         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10253         (gdk_window_foreign_new) initialize parent handle.
10254         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10255
10256         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10257         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10258         problems (e.g. main buttons in testgtk). 
10259
10260 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10261
10262         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10263         gtk_widget_activate for GDK_Return.
10264
10265         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10266         of preedit cursor position.
10267
10268 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10269
10270         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10271         static.
10272
10273 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10274
10275         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10276         out support for multiple locales; that simple doesn't
10277         work reliably with current Xlib
10278
10279         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10280         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10281         Add support for positioning the cursor within the preedit string.
10282
10283 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
10284
10285         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
10286         at XIM input method module.
10287
10288         * gtk/gtktextview.c: Check for bindings after passing
10289         events to im context filter.
10290
10291 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
10292
10293         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
10294         empty attribute lists properly.
10295
10296 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
10297
10298         * gtk/queryimmodules.c (main): Return non-zero exit
10299         status if errors were encountered querying any
10300         modules.
10301
10302         * modules/input/Makefile.am (moduledir): remove
10303         leftover bin program target.
10304
10305         * docs/make-todo: Fix typo in error message.
10306
10307 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
10308
10309         * configure.in: Add modules/input/Makefile
10310
10311 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
10312
10313         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
10314         don't include gtkthemes.h.
10315
10316         * gtk/testgtk.c gtk/testtext.c: Set environment variables
10317         to point
10318
10319         * gtk/Makefile.am: Add new .c and .h files, build 
10320         gtk-query-immodules and use it to create a gtk.immodules
10321         file for use of test programs.
10322
10323         * gtk/gtkpreview.c: remove extra blank line.
10324
10325 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
10326
10327         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
10328         Add the ability to add extra tables beyond the default
10329         one, and also the ability to have compose sequences 
10330         that are prefixes of other compose sequences. 
10331
10332         * gtk/gtkimcontextsimple.c: Export a preedit string which
10333         consists of possible candidates for keystrokes that have
10334         been entered but not yet committed.
10335
10336         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
10337         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
10338
10339         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
10340         Add a function to add input-method switching menu items
10341         to a menu.
10342
10343         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
10344         when switching input methods.
10345
10346         * gtk/gtkimcontextsimple.[ch]: Change the format of
10347         the compose table to allow compose tables of different
10348         lengths / sequence.
10349
10350 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
10351
10352         * gtk/gtkimmodule.[ch]: Support routines for loading
10353         GtkIMContext implementations dynamically at runtime.
10354
10355         * modules/input/imcyrillic-translit.c: A sample input
10356         method (based on GtkIMContextSimple with an extra table),
10357         which demonstrates preedit strings and the module
10358         system for input modules
10359
10360         * gtk/queryimmodules.c: Program to query the available
10361         input modules and write the results into a file.
10362          
10363         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
10364         extra config options "im_module_file" (cache file for
10365         input method modules), and "im_module_path" - path
10366         to look for modules when generating cache file.
10367
10368         This doesn't scale.
10369
10370 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
10371
10372         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
10373         generic code from gtkthemes into a new abstraction
10374         GtkModule which has the logic for implementing
10375         a loadable module which implements a number of 
10376         GObject types.
10377
10378 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
10379
10380         * gtk/gtkeditable.[ch]: Convert GtkEditable from
10381         a class into an interface  
10382         
10383         * gtk/gtkoldeditable.[ch]: Move the old editable
10384         implementation into here, so legacy widgets can
10385         still rely on the implemenation. GtkOldEditable
10386         exports GtkEditable. Make selection handling
10387         code use new text conversion functions (and
10388         handle UTF-8 as a side-effect). Use GtkClipboard
10389         for CLIPBOARD.
10390
10391         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
10392         Adopt to match above changes.
10393
10394         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
10395         avoid GtkOldEditable implementation. Restructure
10396         to reduce number of places that modify state directly.
10397         Move to GtkBindingSet. Display the preedit string.
10398         Queue recomputation of PangoLayout and scroll position
10399         to improve effiency of doing complex changes naively.
10400         Add a menu with cut/copy/paste and input method selection.
10401
10402 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
10403
10404         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
10405         to set preedit string and attributes; display preedit string by
10406         inserting string and attributes at cursor when creating the
10407         GtkTextLineDisplay.
10408
10409         * gtk/gtktextlayout.c: Move all conversions between byte
10410         positions in PangoLayout and GtkTextIter into new functions
10411         line_display_iter_to_index/index_to_iter that properly
10412         handle the preedit string.
10413
10414         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
10415         it to return const char * (eventually will end up
10416         as GCONST char *, most likely.)
10417
10418         * gtk/gtktextview.[ch]: Handle the preedit string, call
10419         gtk_im_context_reset() as necessary, add a menu to switch
10420         input methods.
10421         
10422         * gtk/gtktextlayout.[ch]: Remove useless
10423         gtk_text_layout_get_log_attrs() function.
10424
10425 2000-11-11  Tor Lillqvist  <tml@iki.fi>
10426
10427         * gdk/gdk.def
10428         * gtk/gtk.def: Update.
10429
10430         * gdk/win32/*.c: Add last argument to g_type_register_static()
10431         calls.
10432
10433         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
10434
10435         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
10436         generated by older wheel mouse drivers. Get the correct y
10437         coordinate from WM_MOUSEWHEEL messages.
10438
10439         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
10440         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
10441         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
10442         Debugging functions.
10443
10444         * gdk/win32/gdkprivate-win32.h: Declare them.
10445
10446         * gdk/win32/gdkinput-win32.h: Add declaration for
10447         gdk_input_window_destroy().
10448
10449         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
10450
10451 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
10452
10453         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
10454         function to help handle keeping things in sync.
10455
10456 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
10457
10458         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
10459         BOXED marshallers.
10460
10461         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
10462         (gtk_list_store_class_init): use the new BOXED marshallers.
10463
10464         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
10465         new_with_values to new_with_types.
10466         (gtk_tree_store_get_column_type): add this.
10467         (gtk_tree_store_class_init): use the new BOXED marshallers.
10468
10469         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
10470         mirror some POINTER marshallers.
10471
10472 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
10473
10474         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
10475         allow more interesting iterators.  Also, made the lifecycle of
10476         iterators more explicit.
10477
10478         * gtk/gtktreemodelsort.[ch]: New model for sorting.
10479
10480         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
10481         types.
10482
10483 2000-11-09  Alexander Larsson  <alexl@redhat.com>
10484
10485         * demos/testgtk/menus.c:
10486         Changes to make the new testgtk compile after
10487         gtk_menu_append was removed.
10488
10489         * gdk/linux-fb/gdkdrawable-fb2.c
10490         (gdk_fb_get_depth, gdk_fb_get_visual,
10491         gdk_drawable_impl_fb_class_init): Implement
10492         these drawable functions. Now GtkImages work again.
10493
10494         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
10495
10496         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
10497         
10498         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
10499         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
10500         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
10501         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
10502
10503 2000-11-08  Havoc Pennington  <hp@pobox.com>
10504
10505         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
10506         visible_set args, don't know where these had gone, I thought they
10507         used to be there
10508
10509         * gtk/testtext.c: Add a menu item to apply invisibility tag;
10510         now we can test the feature and see that it's totally broken.
10511
10512 2000-11-08  Havoc Pennington  <hp@pobox.com>
10513
10514         Make DND copy pixbufs and tags when source and target share a 
10515         tag table.
10516         
10517         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
10518         in-process GTK_TEXT_BUFFER_CONTENTS target
10519         (gtk_text_view_drag_data_received): Paste from
10520         GTK_TEXT_BUFFER_CONTENTS if we receive it.
10521
10522 2000-11-08  Alexander Larsson  <alexl@redhat.com>
10523
10524         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
10525         API changes.
10526
10527         * gtk/gtkmenu.c: Add support for scrolling menus.
10528         Remove gtk_menu_append/prepend/insert, these have been moved to
10529         gtkcompat.h as #defines.
10530
10531         * gtk/gtkcompat.h.in:
10532         Add compatibility #defines for gtk_menu_append/prepend/insert
10533
10534         * gtk/gtkmenu.h: Add data needed for scrolling menus.
10535         GtkMenuPositionFunc gets an extra argument push_in.
10536         gtk_menu_append/prepend/insert removed.
10537         
10538         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
10539         positioning behaviour to fit to scrolling menus.
10540
10541         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
10542         into menuitem->submeny. That is wrong, and broke torn
10543         off submenus of torn off menus, since they were unrealized
10544         when the first menu was unrealized.
10545
10546         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
10547         gtk_menu_shell_select_item() since these need to be overridden in
10548         GtkMenu.
10549
10550         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
10551         positioning behaviour to fit to scrolling menus.
10552         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
10553         the current item so that it is prelighted when the menu pops up.
10554         This is a workaround to the fact that the menu doesn't get the
10555         initial enter event (due to grabs).
10556
10557         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
10558         s/gtk_menu_append/gtk_menu_shell_append/
10559
10560         * gtk/gtknotebook.c:
10561         s/gtk_menu_insert/gtk_menu_shell_insert/
10562
10563         * gtk/testgtk.c (create_menu, create_menus):
10564         Create the first menu with 50 items so that menu scrolling
10565         can be tested.
10566         
10567         
10568         Patch from Jonathan Blandford  <jrb@redhat.com>
10569
10570         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
10571         system to handle size requests.  First, we ask what the size of
10572         the toggle is.  Then, when allocating the size, we allocate the
10573         toggle_size first.  This way we can have multiple menu-item
10574         classes w/o needing a seperate class for each.
10575
10576         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
10577         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
10578
10579         * gtk/gtkcheckmenuitem.c
10580         (gtk_check_menu_item_toggle_size_request): New function to handle
10581         the toggle size-request.
10582
10583 2000-11-07  Havoc Pennington  <hp@redhat.com>
10584
10585         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
10586         Half-ass somewhat fix this function, so that scrolling to the
10587         insertion point works. Pango hacking is in the future to really
10588         fix it.
10589
10590         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
10591         length of data, no longer used.
10592
10593         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
10594         method contents in here, get rid of destroy method
10595         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
10596         that were backward. Remove debug spew.
10597         (cut_or_copy): Make the clipboard work with insert_range to
10598         preserve tags and pixbufs, not just the primary selection.
10599
10600 2000-11-07  Havoc Pennington  <hp@redhat.com>
10601
10602         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
10603         to gtk_text_mark_get_visible
10604
10605         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
10606         bug that was generating an invalid iterator
10607
10608         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
10609         ensure_char_offsets() in front of code placing the iter in an
10610         invalid state.
10611
10612         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
10613         make override_location arg const
10614         (paste): Replace the selection if we paste into the 
10615         current selection
10616
10617         * gtk/gtkselection.h: Remove "GtkSelectioData"
10618         (struct _GtkSelectionData): move the definition here.
10619
10620         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
10621         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
10622
10623         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
10624
10625         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
10626         (gtk_text_buffer_insert_range_interactive): implement
10627         (gtk_text_buffer_get_tags): Remove, replaced by
10628         gtk_text_iter_get_tags()
10629
10630         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
10631         limit parameter, to avoid infinite linear scan.
10632         (gtk_text_iter_backward_search): Add search limit
10633         (gtk_text_iter_forward_find_char): Add search limit
10634         (gtk_text_iter_backward_find_char): Add search limit
10635
10636 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
10637
10638         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10639         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
10640         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
10641         gdk/linux-fb/gdkwindow-fb.c:
10642         use g_object_new() instead of g_type_create_instance() which
10643         is a private function for fundamental type implementations.
10644
10645         * gdk/linux-fb/gdkinput-ps2.c:
10646         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
10647         instead just store the current modifier state. Add a (somewhat broken)
10648         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
10649         Rename exported function gdk_input_ps2_get_mouseinfo to
10650         gdk_input_get_mouseinfo.
10651
10652         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
10653         gdk/linux-fb/gdkwindow-fb.c:
10654         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
10655         
10656
10657 2000-11-02  Havoc Pennington  <hp@redhat.com>
10658
10659         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
10660         use stock buttons. Should be 100% source compatible, appropriate
10661         filesel fields now point to dialog->vbox and dialog->action_area.
10662         On the bizarre side, dialog->action_area and filesel->action_area
10663         are not the same widget.
10664         (gtk_file_selection_init): Put some padding around the selection
10665         entry, so it isn't touching the GtkDialog separator.    
10666
10667         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
10668         use stock buttons, etc. Should also be source compatible.
10669         Set the dialog default title in _init not _new().
10670         
10671         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
10672         Use stock buttons; don't put a button box inside the existing
10673         dialog button box. Don't bother with push/pop colormap anymore.
10674
10675         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
10676         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
10677         for message dialog, and necessary for the font selection and color
10678         selection with help and apply buttons.
10679         
10680         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
10681         to the created button widget. Set GTK_CAN_DEFAULT on the button.
10682         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
10683         between buttons, put less padding around the action area.
10684         (gtk_dialog_run): Exit on unmap rather than on destroy. 
10685         This will also exit the loop if the widget is hidden.
10686         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
10687         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
10688         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
10689         special-case delete event.
10690
10691         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
10692         formatting
10693         
10694 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
10695
10696         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
10697         button to temporarily disable position recording in the
10698         "saved position" test.
10699
10700 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
10701
10702         * gtk/gtkthemes.c: added compat code that temporarily implements
10703         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
10704         going to be revamped by owen's upcoming GtkModule patches, but
10705         untill then people want gtk to build, right? ;)
10706
10707 2000-11-04  Havoc Pennington  <hp@pobox.com>
10708
10709         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
10710         list
10711
10712         * docs/Changes-2.0.txt: Add note about
10713         gtk_container_get_toplevels()
10714
10715         * gtk/gtktextview.h: formatting
10716         
10717         * gtk/gtktextview.c: don't start descriptions with "Returns",
10718         confuses gtk-doc
10719
10720 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
10721
10722         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
10723         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
10724
10725 2000-11-03  Havoc Pennington  <hp@redhat.com>
10726
10727         * gtk/gtktexttagtable.c: Docs
10728         (gtk_text_tag_table_size): return a signed int
10729
10730         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
10731         (gtk_text_tag_event): make the event_object a GObject
10732
10733         * gtk/gtktextview.c: Write API docs for all functions.
10734
10735         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
10736         for gtk_text_view_get_window_type() called on one of the private
10737         windows.
10738
10739         * gtk/gtktextview.c: Instead of accessing text_view->buffer
10740         directly, call get_buffer() which demand-creates a default
10741         buffer. So gtk_text_view_new() can be used to create a view with a
10742         default buffer in it, if you just want an empty text box users can
10743         put data in. Useful for GUI builders also.
10744
10745 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
10746
10747         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
10748         the charset encodign portion MUST be in lowercase.
10749         * gtk/gtkrc.az: added file for Azeri language
10750
10751 2000-11-03  Havoc Pennington  <hp@redhat.com>
10752
10753         Get widgets working on the btree/buffer side. Display of them 
10754         still doesn't work.
10755         
10756         * gtk/gtktextview.c: start implementing child widget stuff
10757
10758         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
10759
10760         * gtk/gtktextlayout.c: handle embedded widgets
10761
10762         * gtk/gtktextdisplay.c: handle embedded widgets
10763
10764         * gtk/gtktextchild.c: Implement all the child anchor goo
10765
10766         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
10767         function
10768
10769         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
10770         (insert_pixbuf_or_widget_segment): abstract out common portions of 
10771         creating a child anchor or a pixbuf segment.
10772         (gtk_text_btree_create_child_anchor): new function
10773         (gtk_text_btree_unregister_child_anchor): new function
10774
10775         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
10776         allocate_child signal on GtkTextLayout
10777
10778         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
10779         values
10780         (gtk_text_iter_get_child_anchor): new function
10781
10782         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
10783         default handler for the changed signal, which calls
10784         gtk_text_buffer_set_modified(), instead of just always emitting
10785         changed then calling set_modified() manually. I guess this is
10786         maybe more flexible. It seems logical.
10787
10788 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
10789
10790         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
10791         now.
10792
10793         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
10794
10795 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
10796
10797         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
10798         been marked static.
10799
10800 2000-11-02  Havoc Pennington  <hp@redhat.com>
10801
10802         * gtk/testgtk.c (create_labels): had a test backward
10803
10804         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
10805         fields, so the dest GC ends up with the correct clip origin, 
10806         etc. Fixes a bug where colored labels didn't redraw 
10807         properly.
10808
10809 2000-11-02  Alexander Larsson  <alexl@redhat.com>
10810
10811         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10812         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
10813         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
10814         Add last argument to t_type_register_static call.
10815         
10816         * gdk/linux-fb/gdkdrawable-fb2.c:
10817         Add last argument to t_type_register_static call.
10818         export the get_image drawable virtual function.
10819
10820         * gdk/linux-fb/gdkimage-fb.c:
10821         Add last argument to t_type_register_static call.
10822         rename gtk_image_get to _gdk_fb_get_image and
10823         export it for use by gdkdrawable-fb2.
10824
10825         * gdk/linux-fb/gdkprivate-fb.h:
10826         export _gdk_fb_get_image.
10827
10828         * gdk/linux-fb/gdkselection-fb.c:
10829         Add new api call stubs.
10830
10831         * gtk/Makefile.am:
10832         Missing ( in linux-fb part.
10833
10834         * modules/linux-fb/Makefile.am:
10835         Must link with gdk_pixbuf or get unresolved symbol.
10836
10837 2000-11-01  Havoc Pennington  <hp@pobox.com>
10838
10839         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
10840         GTK_TYPE_TEXT_ITER and BOXED marshallers
10841
10842         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
10843
10844         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
10845         
10846         * gtk/gtk-boxed.defs: add GtkTextIter
10847
10848         * gtk/gtkmarshal.list: Add marshallers for text widget that 
10849         properly use OBJECT and BOXED
10850
10851 2000-11-01  Havoc Pennington  <hp@redhat.com>
10852
10853         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
10854
10855         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
10856         before returning it. 
10857         
10858 2000-11-01  Havoc Pennington  <hp@redhat.com>
10859
10860         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10861         Clip the rectangle to be rendered to the drawable, since
10862         get_from_drawable() requires a region within the drawable
10863
10864 2000-11-01  Havoc Pennington  <hp@redhat.com>
10865
10866         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
10867         from coordinates.
10868
10869 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
10870
10871         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
10872         it isn't NULL.
10873
10874 2000-11-01  Havoc Pennington  <hp@pobox.com>
10875
10876         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
10877         on a label
10878         (gtk_label_finalize): unref the attr list if any.
10879
10880         * gtk/testgtk.c (create_get_image): close test on second click
10881         (make_message_dialog): close dialog if it exists
10882
10883         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
10884
10885         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
10886         gdk-pixbuf
10887
10888         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
10889         from Pango markup format
10890         (gtk_label_set_markup_with_accel): ditto but with accelerator
10891         parsing
10892
10893         * gtk/gtkimage.c (gtk_image_expose): reformatting.
10894
10895         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
10896         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
10897         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
10898         call gdk_window_get_origin().
10899
10900         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10901         implement GDK_PIXBUF_ALPHA_FULL
10902         
10903 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
10904
10905         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
10906         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
10907         g_signal_handlers_disconnect_matched to block/unblock and disconnect
10908         multiple handlers respectively, instead of only treating the
10909         first handler found (bug reported by owen).
10910
10911 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
10912
10913         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
10914
10915         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
10916
10917         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
10918         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
10919         gtk/gtktreeviewcolumn.h: Fixed inline docs.
10920
10921         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
10922         widget.  Needs writing someday.
10923
10924         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
10925         the docs.
10926
10927 2000-10-30  Havoc Pennington  <hp@redhat.com>
10928
10929         * gtk/gtktextview.h, gtk/gtktextview.c:
10930         Rename delete_at_cursor delete_from_cursor, and 
10931         move to move_cursor.
10932
10933 2000-10-30  Havoc Pennington  <hp@redhat.com>
10934
10935         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
10936         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
10937         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
10938         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
10939         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
10940         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
10941         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
10942         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
10943         gtktexttypes.h, gtktextview.c, gtktextview.h:
10944
10945         Massive reindentation and reformatting. Arg alignment and comments
10946         still need fixing in various places.
10947
10948 2000-10-30  Havoc Pennington  <hp@redhat.com>
10949
10950         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
10951         to be named insert_at_cursor and delete_at_cursor so C++ can
10952         handle them.
10953
10954 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10955
10956         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
10957         to get a double directory separator in case the home directory
10958         ends with one. This would cause trouble especially on Windows,
10959         where the path will be confused with the syntax for an an UNC
10960         (network share) path \\server\share\path.
10961         (gtk_rc_add_initial_default_files): Ditto.
10962
10963 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
10964
10965         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
10966
10967         * gtk/gtktextview.c: Use correct marshallers.
10968
10969 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
10970
10971         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
10972         use new iter stuff, and added all the appropriate signals et al.
10973
10974         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
10975         code is internal to gtk only.
10976
10977 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10978
10979         * gtk/gtk.def
10980         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
10981         glib-genmarshal etc.
10982
10983 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
10984
10985         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
10986         parallel builds.
10987
10988 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
10989
10990         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
10991
10992 2000-10-27  Robert Brady  <robert@suse.co.uk>
10993
10994         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
10995         en_GB (British), ia (Interlingua).
10996
10997 2000-10-26  Havoc Pennington  <hp@redhat.com>
10998
10999         * gtk/gtktextiter.c (my_strrstr): fix constness warning
11000
11001         Fixed output of:
11002         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
11003         
11004         * gtk/gtktextsegment.c (char_segment_new): rename
11005         (_char_segment_new_from_two_strings): rename
11006         (_toggle_segment_new): rename
11007         
11008         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
11009         (make_clipboard_widget): make it static
11010         (text_get_func): static
11011         (text_clear_func): static
11012
11013         * gtk/gtkcolorsel.c (adjustment_changed): make this function
11014         static
11015         (hex_changed): make it static
11016         (hsv_changed): make it static
11017         (opacity_entry_changed): make it static
11018
11019         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
11020         (toggle_segment_check_func): rename with _gtk
11021
11022         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
11023         (_widget_segment_new): rename
11024         (_widget_segment_add): rename
11025         (_widget_segment_remove): rename
11026         (_widget_segment_ref): rename
11027         (_widget_segment_unref): rename
11028
11029         * gtk/gtktextmark.c (_mark_segment_new): Rename
11030         _gtk_mark_segment_new   
11031
11032 2000-10-26  Havoc Pennington  <hp@redhat.com>
11033
11034         * gtk/gtkmarshal.list: add new marshallers used by the text widget
11035         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11036         types
11037
11038         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
11039         marshaller types
11040
11041         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
11042         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
11043         license on these files.
11044
11045         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
11046         work.
11047
11048         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
11049         runtime random number different for each tree, instead of 
11050         a constant I made up.
11051
11052 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
11053
11054         * gtk/Makefile.am: buncha cleanups, kludged build sources
11055         dependencies with a Makefile: oldest-source-stamp dependancy
11056         for the moment. automake is really fighting us here, with
11057         intentionally not allowing user-defined rules or dependancies
11058         prior to it's -include $(DEP_FILES) statement. sucks rocks!
11059
11060         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
11061         to public headers. tehy have a comment stating that they are
11062         "semi-public" aren't included by gtk.h and if enums popup there,
11063         they can be /*< skip >*/-ed.
11064
11065         * gtk/gtktextlayout.h: 
11066         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
11067         added LGPL... <SIGH>
11068
11069 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
11070
11071         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
11072         GtkTreeIter.  Added iterators everywhere.
11073
11074         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
11075
11076         * gtk/gtktreeviewselection.c: Changed to use the iterators.
11077
11078         * gtk/gtktreestore.c: Changed to use the iterators.
11079
11080         * gtk/gtkliststore.c: Commented out the code.  Will convert to
11081         iterators tomorrow.
11082
11083         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
11084         iterators tomorrow.
11085
11086         * gtk/treestoretest.c: Changed to use iterators.
11087
11088         * demos/testgtk/main.c: Moved to use the new iterator system.
11089
11090 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
11091
11092         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
11093         localization misbehaviour.
11094
11095         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
11096         a useless type without copy/free.
11097
11098         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
11099         of GTK_TYPE_CTREE_NODE.
11100
11101 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
11102
11103         * gtk/gtksignal.c:
11104         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
11105         applicable.
11106
11107         * gtk/gtk-boxed.defs (GtkSelectionData): specify
11108         gtk_selection_data_copy and gtk_selection_data_free
11109         do GtkSelectionData work as params in signals.
11110
11111 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
11112
11113         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
11114         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
11115         couldn't they at least give it a non-standard name?
11116         
11117         * gtk/gtktextlayout.c: arg! yet another implementation of
11118         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
11119
11120         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
11121         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
11122         home. now i know this _is_ a conspiracy.
11123
11124         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
11125         ::state-changed.
11126
11127         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
11128         (gtk_accel_group_create_add): marshaller signature fixups.
11129
11130         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
11131         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
11132
11133         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
11134         anymore.
11135
11136 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
11137
11138         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
11139         due to the signal system changes, it wouldn't build currently. to
11140         be fixed soon.
11141
11142         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
11143
11144         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
11145         so it needs gtk_marshal_VOID__ENUM() instead of
11146         gtk_marshal_NONE__UINT().
11147
11148         * gdk/gdk*.c: adapted type registration functions.
11149
11150         * gtk/gtkbindings.c:
11151         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
11152         gone.
11153
11154         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
11155
11156         * gtk/gtkobject.c:
11157         (gtk_object_destroy):
11158         (gtk_object_shutdown): fixed recursion guards. basically we have to
11159         catch the case where any of GObject.shutdown() or gtk_object_destroy()
11160         is called during ::destroy, and avoid recursion there.
11161
11162         * gtk/gtktypeutils.c:
11163         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
11164         boxed_copy/boxed_free. this needs a more general solution based on a
11165         publically installed code-generator utility.
11166
11167         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
11168         glib's gobject has support for that now.
11169         define GtkSignalMarshaller in terms of GSignalCMarshaller.
11170
11171 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
11172
11173         * gtk/gtksignal.[hc]:
11174         * gtk/gtkmarshal.[hc]:
11175         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
11176         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
11177         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
11178         care of that.
11179
11180         * *.c: marshaller name fixups.
11181
11182         * gtk/gtkmarshal.list: added a comment briefing the format.
11183
11184 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
11185
11186         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
11187         compatibility macros here now. more specifically, most of
11188         the API is preserved (yes, _most_, nonwithstanding the
11189         following exceptions listed, the API is stil lHUGE ;)
11190         things that got removed completely:
11191         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
11192         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
11193         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
11194         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
11195         gtk_signal_remove_emission_hook().
11196         non-functional functions variants:
11197         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
11198         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
11199         not supported anymore.
11200         (gtk_signal_compat_matched): new internal function to aid
11201         implementation of the compatibility macros, it  provides
11202         functionality to block/unblock/disconnect handlers based
11203         on func/data.
11204
11205         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
11206
11207         * *.c: adaptions to new type registration API signatures.
11208
11209 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
11210
11211         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
11212
11213 2000-10-25  Robert Brady  <robert@suse.co.uk>
11214
11215         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
11216         gdk_property_delete): If window == NULL, assume the root window.
11217         (restoring the behaviour that was in 1.2).
11218         
11219         * gtk/testtext.c (save_buffer): Allow creation of new files when
11220         saving.
11221
11222         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
11223         calls to read().
11224
11225 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11226
11227         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11228
11229         * gdk/win32/gdkdrawable-win32.c
11230         * gdk/win32/gdkimage-win32.c
11231         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11232         X11 backend.
11233
11234         * gdk/win32/gdkcc-win32.c
11235         * gdk/win32/gdkcolor-win32.c
11236         * gdk/win32/gdkfont-win32.c
11237         * gdk/win32/gdkinput-win32.c
11238         * gdk/win32/gdkmain-win32.c
11239         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11240
11241 2000-10-24  Havoc Pennington  <hp@redhat.com>
11242
11243         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11244         it a static function
11245
11246         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11247         redraw text when a tag is applied to it.
11248
11249         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11250         (gtk_text_tag_affects_nonsize_appearance): private functions to
11251         see if a tag requires various kinds of redraw/layout to be queued
11252         up.
11253
11254         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11255
11256         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11257         at the start of the buffer, so search works by default
11258
11259         * gtk/gtktextiter.c (lines_match): init match_start always
11260
11261         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11262         function, get iter at a line + a byte index
11263
11264         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11265         to set byte position within a line
11266         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11267
11268 2000-10-23  Havoc Pennington  <hp@redhat.com>
11269
11270         * gtk/testtext.c: Re-enable the "find" dialog
11271
11272         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11273         
11274         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11275         the arguments to gdk_draw_drawable were in the wrong order
11276         (gdk_window_paint_init_bg): This function was ignoring the
11277         init_region, instead of clipping to it, so the entire backing
11278         pixmap was cleared on every begin_paint()
11279         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11280         was in here again, the loop kept using the same GtkWindowPaint
11281         over and over.
11282         (gdk_window_begin_paint_region): Fix a bug where we had two
11283         x_offset instead of x_offset and y_offset
11284
11285         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
11286         before we get the image.
11287         (gdk_draw_drawable): get the composite before we draw the drawable.
11288         (gdk_drawable_real_get_composite_drawable): default
11289         get_composite_drawable implementation that returns the drawable 
11290         itself
11291
11292         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
11293         get_composite_drawable virtual function
11294
11295         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
11296         list-walking bug
11297
11298         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
11299         make this work if the source drawable is a GdkDrawableImplX11
11300         instead of a public drawable type. This is really broken; the
11301         problem is that GdkDrawable needs a virtual method get_xid(), but
11302         of course that doesn't work in practice. Enter RTTI.
11303
11304         Also, improve mismatched depth message.
11305
11306         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
11307         GdkPixmap
11308
11309         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
11310         install _gdk_x11_get_image as our implementation of get_image
11311         
11312         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
11313         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
11314
11315         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
11316         gdk_drawable_get_image
11317
11318         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
11319
11320         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
11321         get_image
11322
11323         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
11324         trailing semicolon after for loop
11325
11326 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
11327
11328         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
11329         where font_desc for widget's context lagged widget's font_desc by
11330         one step.
11331
11332 2000-10-22  Tor Lillqvist  <tml@iki.fi>
11333
11334         * gdk/win32/gdkgc-win32.c
11335         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
11336
11337         * gtk/makefile.mingw.in
11338         * gtk/gtk.def: Updates.
11339
11340         * gtk/testgtk.c: sleep() is called _sleep in MS's C
11341         library.
11342
11343         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
11344
11345         * gtk/makefile.msc: Remove
11346
11347         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
11348
11349         * gtk/Makefile.am: Add it.
11350
11351         * configure.in: Generate it.
11352
11353         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
11354         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
11355         something even if not implemented, to satisfy picky MSVC.
11356
11357         Patches by Hans Breuer:
11358         
11359         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
11360         SetBkMode() and SetTextAlign() before calling
11361         pango_win32_render().
11362
11363         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
11364         Set hcliprgn to NULL after destroying it.
11365         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
11366
11367         * gdk/win32/gdkgeometry-win32.c
11368         (_gdk_windowing_window_queue_antiexpose): More effective
11369         implementation.
11370
11371         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
11372         depth as default, not the visual's.
11373
11374         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
11375         against empty title.
11376
11377         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
11378         IMAGE_PRIVATE_DATA.
11379
11380         * gdk/win32/gdkimage-win32.c: Use it.
11381
11382 2000-10-22  Robert Brady  <robert@suse.co.uk>
11383
11384         * configure.in: Check for bind_textdomain_codeset
11385
11386         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
11387         present, make use of it.
11388
11389         Add a translatable string "default:LTR" which, if translated
11390         to "default:RTL", will cause the default direction to be
11391         Right-to-Left.
11392
11393         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
11394         direction if marked as flippable.
11395
11396         * gtk/gtkhscale.c: Mark widget as flippable.
11397         
11398 2000-10-04  Havoc Pennington  <hp@redhat.com>
11399
11400         * gtk/testgtk.c (create_buttons): create some stock buttons
11401         with the default accel group
11402         (create_image): test some new GtkImage features
11403         (make_message_dialog): test GtkMessageDialog
11404         (create_modal_window): fix someone's bizzarro indentation
11405
11406         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
11407         GTK_WIN_POS_CENTER_ON_PARENT. 
11408         Add "destroy with parent" setting, which means the window goes
11409         away with its transient parent.
11410         (gtk_window_get_default_accel_group): get the default accel group
11411         for the window.
11412         (gtk_window_set_destroy_with_parent): set/unset destroy with
11413         parent flag
11414         (gtk_window_read_rcfiles): invalidate icon set caches
11415         after reloading rcfiles 
11416
11417         * gtk/gtkenums.h (GtkWindowPosition): add
11418         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
11419         on its parent window when the dialog is mapped for the first time.
11420
11421         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
11422         a simple message dialog class
11423         
11424         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
11425         handler to emit response signal, and maybe later it would
11426         honor a hide_on_delete flag - though that isn't there yet.
11427         Set border width on the vbox to 2, so we get some padding.      
11428         Use a button box for the action area.
11429         (gtk_dialog_key_press): synthesize a delete event if Esc
11430         is pressed and the GtkWidget key press handler didn't 
11431         handle the escape key.
11432         (gtk_dialog_new_with_buttons): new function creates a dialog
11433         with some default buttons in it.
11434         (gtk_dialog_add_action_widget): add an activatable widget
11435         as a button in the dialog - you can also add a non-activatable
11436         widget by accessing the action area directly.
11437         (gtk_dialog_add_button): add a simple button - stock ID or 
11438         label - to the action area
11439         (gtk_dialog_response): emit response signal
11440         (gtk_dialog_run): block waiting for the dialog, return 
11441         the response. Override normal delete_event behavior, so that 
11442         delete_event does nothing inside gtk_dialog_run().
11443
11444         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
11445         emitted when an action widget is clicked or the dialog gets
11446         delete_event
11447
11448         * gtk/gtk.h: add gtkmessagedialog.h
11449
11450         * gtk/Makefile.am: add gtkmessagedialog.[hc]
11451
11452 2000-10-18  Havoc Pennington  <hp@redhat.com>
11453
11454         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
11455         where any number of empty lines would get skipped
11456
11457         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
11458         edge.
11459
11460         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
11461         warning about invalid iterators (explain more thoroughly)
11462         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
11463
11464         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
11465         big
11466
11467         * demos/*.c: Add error handling
11468
11469         * gtk/gtktextbuffer.c: don't modify const iterators
11470
11471         * gtk/gdk-pixbuf-loader.c: Add full error handling here
11472
11473         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
11474         on file load
11475
11476         * gtk/gtkiconfactory.c: Update to reflect addition of error
11477         handling to gdk-pixbuf loaders
11478
11479 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
11480
11481         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
11482         move to new modularized testgtk.
11483
11484 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
11485
11486         * gtk/gtktreeview.c: Draw the arrows correctly.
11487
11488         * gtk/gtktreemodel.c: Added user docs.
11489
11490         * gtk/gtk.h: remove gtktreedatalist.h.
11491
11492         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
11493         parent when generating my type.
11494
11495         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
11496         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
11497
11498 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11499
11500         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
11501         GtkTreeModel from object to interface.
11502
11503 2000-10-16  Havoc Pennington  <hp@redhat.com>
11504
11505         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
11506         compilation
11507
11508 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11509
11510         * gtk/gtktreeselection.c: Add API documentation to all public
11511         functions.
11512
11513         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
11514         functions.
11515
11516 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
11517
11518         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
11519         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
11520         docs to all public functions.
11521
11522         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
11523         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
11524         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
11525         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
11526         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
11527         issue.
11528
11529 2000-10-14  Robert Brady  <robert@suse.co.uk>
11530
11531         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
11532
11533 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
11534
11535         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
11536         values other then G_TYPE_STRING.
11537         * gtk/gtktreeselection.c: Minor commenting updates.
11538         * gtk/gtktreeview.c: Format updates.
11539
11540 2000-10-09  Tor Lillqvist  <tml@iki.fi>
11541
11542         * README.win32: Update.
11543
11544         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
11545         lines that had been deleted by mistake (?).
11546
11547         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
11548         also the case fg==white and bg==black (but still not randomly
11549         coloured cursors). Thanks to Wolfgang Sourdeau.
11550
11551         * gdk/win32/*.c: Silence gcc -Wall.
11552
11553         * gtk/gtk.def: Add missing entry points.
11554
11555         Fixes by Hans Breuer:
11556
11557         * gdk/makefile.msc
11558         * gdk/win32/makefile.msc: Update.
11559
11560         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
11561         some MSVC thing, presumably), cause breakpoint on failures. Add
11562         GDK_NOR case. Call g_log_set_always_fatal.
11563
11564         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
11565         should be pased by reference.
11566         
11567         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
11568         
11569         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
11570
11571         * gdk/win32/gdkevents-win32.c
11572         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
11573
11574         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
11575         implementation object.
11576
11577         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
11578         not just windows.
11579         
11580         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
11581         Use the wrapper object.
11582         
11583 2000-10-06  Havoc Pennington  <hp@redhat.com>
11584
11585         * Makefile.am (SRC_SUBDIRS): contrib subdir
11586
11587         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
11588         so it can be used in Xlib version
11589
11590         * demos/testpixbuf.c (update_timeout): error checking from 1.0
11591         tree
11592
11593         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
11594         change from 1.0 tree that returns first frame of animation
11595         if the loaded file is an animation.
11596
11597         * contrib: add new directory to hold stuff that comes with GTK+
11598         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
11599         
11600         * configure.in: add contrib/*
11601
11602 2000-10-05  Havoc Pennington  <hp@redhat.com>
11603
11604         * demos/testpixbuf-save.c: add pixbuf save test
11605
11606         * demos/Makefile.am: add testpixbuf-save.c
11607
11608 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
11609
11610         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
11611         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
11612         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
11613         * gtk/gtktreeselection.[ch]: Replaced
11614         "node_selected"/"node_unselected" signal with "selection_changed"
11615         signal.
11616
11617 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11618
11619         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
11620         tree widget.
11621
11622 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11623
11624         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
11625         drawing.
11626
11627 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
11628
11629         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
11630         Move list pointer forwards before removing item from
11631         list. (Crash reported by Salmaso Raffaele)
11632
11633         * gdk/gdkwindow.h: Remove spurious trailing ,
11634
11635         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
11636         dependencies on uninstalled libraries, sorry folks.
11637
11638 2000-10-04  Havoc Pennington  <hp@redhat.com>
11639
11640         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
11641         gtk/gtkiconfactory.c: Fix copyrights    
11642
11643         * demos/testpixbuf.c: add inline pixbuf test
11644         
11645 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
11646
11647         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
11648         Add gdk_window_iconify.
11649
11650         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
11651         (gdk_window_set_geometry_hints): Add win_gravity
11652         to geometry structure.
11653
11654         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
11655         Implement _NET_WM_PING.
11656
11657         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
11658         Set _NET_WM_PID on the client leader.
11659
11660         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
11661         Handle UTF-8 better.
11662
11663         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
11664         UTF-8 better, set _NET_WM_NAME as well. Only set
11665         icon name if it hasn't previously been explicitely 
11666         set.
11667
11668 2000-10-03  Havoc Pennington  <hp@redhat.com>
11669
11670         * gtk/testtextbuffer.c: clean up trailing whitespace,
11671         add extensive tests for tag toggle iteration.
11672         
11673         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
11674         distance
11675
11676         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11677         optimize case where the tag root is on level 1
11678         (gtk_text_line_previous_could_contain_tag): attempt to implement
11679         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
11680         functionality
11681
11682         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
11683         Implement this, though not very efficiently.
11684
11685         * gtk/gtktextiterprivate.h: reformat
11686
11687         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
11688         iterator
11689
11690         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
11691         this to properly revalidate the iterators.
11692
11693         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
11694         properly at the end of the line (and therefore on empty lines)
11695
11696         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
11697         maybe we should return a value...
11698
11699 2000-10-03  Tor Lillqvist  <tml@iki.fi>
11700
11701         * config.h.win32: Guard definition of alloca(). glib.h now handles
11702         that.
11703
11704         * gdk/gdk.def
11705         * gtk/gtk.def: Add new entry points.
11706
11707         Changes just to make GTK+ build without errors on Win32. No hope
11708         of it working in its current state, though...:
11709         
11710         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
11711         some functions from the X11 backend, just to make GTK+ build.
11712
11713         * gdk/makefile.mingw.in
11714         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
11715         number. Add new object files.
11716
11717         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
11718         GetMessageTime to get timestamp (where on X11 uses
11719         gdk_x11_get_server_time()).
11720
11721 2000-10-02  Havoc Pennington  <hp@pobox.com>
11722
11723         * gtk/gtktextview.c: text_window_* weren't static and should have
11724         been.
11725         Start work on child widgets; not yet complete, syncing to 
11726         office computer.
11727
11728         * gtk/gtktextchild.h: change this to contain a public interface,
11729         starting work on child interfaces.
11730         * gtk/gtktextchildprivate.h: move private interfaces here
11731
11732         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
11733
11734         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
11735         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
11736         gtk/gtktextmark.c: copyright notices
11737
11738         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
11739         internal functions      
11740
11741         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
11742         internal function
11743
11744         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11745         Reformatting    
11746
11747 2000-09-30  Havoc Pennington  <hp@pobox.com>
11748
11749         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
11750         NULL start/end pointers
11751
11752         * gtk/gtktextbuffer.c: Write some docs
11753         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
11754         NULL, so you can just check whether there's a selection.        
11755
11756         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
11757         cleanup_line or segments_changed ourselves, it gets done 
11758         in unlink_segment
11759
11760         * gtk/gtktextmark.h:
11761         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
11762         
11763         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
11764
11765         * gtk/gtktextmark.c: delete some more old Tk cruft
11766
11767         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
11768         mark before removing it, so we can emit MARK_DELETED with a valid
11769         pointer.
11770         (gtk_text_buffer_mark_set): hold ref across signal emission
11771
11772         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
11773         whining about attempts to delete special marks
11774
11775         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
11776         underscore, since it's internal.
11777
11778         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
11779         now implemented in terms of iterators in gtktextiter.h
11780
11781         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
11782         New function, destructively sets contents of buffer. Also 
11783         a convenient way to clear the buffer by setting text to ""
11784
11785         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
11786         multiline string literal
11787
11788         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
11789         text changes.
11790
11791         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
11792         is not dereferenceable
11793         (gtk_text_iter_forward_lines): fix return value
11794
11795 2000-09-29  Havoc Pennington  <hp@redhat.com>
11796
11797         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
11798
11799         * gtk/gtktextview.c: Implement drag thresholding; change functions 
11800         that set border window size to have nicer name
11801         (gtk_text_view_mark_set_handler):  Fix this to have the 
11802         right signature.
11803
11804         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
11805
11806         * gtk/testtext.c: Update with API changes, put line numbers on 
11807         both sides.
11808         
11809         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
11810         with this
11811
11812         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
11813         pixbuf; delete a big block of #if 0 Tk code
11814
11815         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
11816         insert_pixmap with insert_pixbuf
11817
11818 2000-09-29  Martin Baulig  <baulig@suse.de>
11819
11820         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
11821         confusion with the GdkPixbuf of the GNOME 1.x platform.
11822
11823 2000-09-29  Havoc Pennington  <hp@pobox.com>
11824
11825         * gtk/gtktextview.c: Implement the side windows.
11826
11827         * gtk/testtext.c: Implement simple line numbering in the 
11828         left side window; seems to make scrolling sloooow. Oops.
11829         Also, cursor blink is for some reason causing redraws
11830         of the line numbers. Should investigate...
11831
11832 2000-09-28  Havoc Pennington  <hp@redhat.com>
11833
11834         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
11835         scrolling child windows, and draw focus rectangle properly.
11836         
11837         (gtk_text_view_buffer_to_window_coords):
11838         Coordinate transformation to deal with all these freaking windows
11839         and offsets
11840         (gtk_text_view_window_to_buffer_coords): transform the other way
11841
11842         * gtk/testtext.c (create_buffer): Update to match Pango API change
11843
11844         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
11845         anonymous tags
11846         (foreach_unref): don't emit remove signal from finalize, just
11847         set tag's parent to NULL
11848
11849 2000-09-26  Havoc Pennington  <hp@redhat.com>
11850
11851         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
11852         Fix some warnings       
11853
11854 2000-09-26  Havoc Pennington  <hp@redhat.com>
11855
11856         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
11857         headers into the private header list
11858
11859         * Makefile.am (pkgconfig_DATA): install pkg-config files
11860
11861         * configure.in: add pkg-config files
11862
11863         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
11864
11865         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
11866         outstanding icon caches on theme change.
11867
11868         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
11869         important types:
11870
11871         (GtkIconSource): Specification for creating a pixbuf 
11872         appropriate for a direction/state/size triplet from 
11873         a source pixbuf or filename
11874
11875         (GtkIconSet): List of GtkIconSource objects that are used to
11876         create the "same" icon (e.g. an OK button icon), and cache for
11877         rendered icons
11878
11879         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
11880         up the icon set for a given stock ID.  GTK maintains a stack of
11881         GtkIconFactory to search, and applications or libraries can add
11882         additional icon factories on top of the stack
11883         
11884         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
11885         the set of GtkIconSource specified for a given stock ID into 
11886         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
11887         RcStyle, under the specified stock ID.
11888
11889         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
11890         render_icon used to derive a GdkPixbuf from a GtkIconSource.
11891         This allows people to theme how prelight, insensitive, etc. are
11892         done.
11893
11894         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
11895         icon factories for a style, and return the resulting 
11896         icon set if any.
11897
11898         (gtk_style_render_icon): Render an icon using the render_icon 
11899         method in the GtkStyleClass.
11900
11901         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
11902         Use the style for a given widget to look up a stock ID, get the
11903         icon set, and render an icon using the render_icon method 
11904         of the style
11905
11906         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
11907         (contains information about a stock item), the built-in stock item
11908         IDs, and functions to add/lookup stock items.
11909
11910         * gtk/stock-icons/*: Stock icons that come with GTK
11911
11912         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
11913         a button based on a GtkStockItem
11914         (gtk_button_new_accel): Takes a uline string and accel group, and
11915         installs the accelerator.
11916
11917         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
11918         image-display widget.
11919
11920 2000-09-25  Havoc Pennington  <hp@redhat.com>
11921
11922         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
11923
11924         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
11925         Fix a bug when removing node data, we didn't properly 
11926         re-splice the linked list after removing the data.
11927
11928         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
11929         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
11930
11931         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
11932
11933         * gtk/gtktextlayout.c (set_para_values): Set tab array 
11934         for the layout from the GtkTextTag.
11935
11936         * gtk/gtktexttypes.h: delete tab and search cruft, 
11937         remove g_convert() in favor of GLib version
11938
11939         * gtk/gtktexttypes.c: remove tab implementation from here,
11940         move to Pango
11941
11942         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
11943         tab stuff using new PangoTabArray from Pango
11944
11945         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
11946         unused border_width stuff
11947
11948 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
11949
11950         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
11951         glib) and now useless utf_to_latin1() latin1_to_utf()
11952
11953         * gtk/gtktextview.[ch]: Change ::move_insert and
11954         ::delete_text action signals to ::move and ::delete;
11955         create the signals with the right enumeration type,
11956         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
11957         C-v bindings, change Home, End to move to beginning/end
11958         of line, Add C-Home C-End to move to beginning/end
11959         of buffer. Change ::cut_text to ::cut_clipboard, etc;
11960         combine ::scroll_text into ::move; use new GtkSelectionData
11961         functions to simplify DND text handling.
11962         
11963         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
11964         deletion enumerations here, rename enumeration values to 
11965         be consistently plural.
11966
11967         * gtk/gtktextbuffer.c: Use new clipboard interfaces
11968         for cut/copy/paste and primary selection.
11969
11970         * gtk/gtktextbuffer.[ch]: Remove excess time and
11971         'interactive' arguments from cut/copy/paste;
11972         rename cut to cut_clipboard, etc; remove
11973         gtk_text_buffer_get_clipboard_contents().
11974
11975         * gtk/gtktextlayout.[ch]: Add 
11976         gtk_text_layout_move_iter_to_line_end() to move the iter to 
11977         line ends.
11978
11979         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
11980         Functions to set or get a UTF-8 string on the selection
11981         data.
11982
11983         * gtk/gtkclipboard.[ch]: New, simplified selection handling
11984         interfaces.
11985
11986         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
11987         created widgets - one of these is useless if we don't.
11988
11989         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
11990         a public function clear all targets registered for the
11991         widget.
11992
11993         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
11994         Never call gtk_widget_realize() - that was just asking
11995         for bizarre side-effects.
11996
11997         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11998         gdk_selection_owner_set even if the widget is the
11999         same so that we reliably update the timestamp on
12000         the server.
12001
12002         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
12003         gdk_x11_get_server_time() function.
12004         
12005         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
12006         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
12007         Add some tricky filtering on serial numbers for
12008         selection clear events to fix up long-standard
12009         race condition FIXME's in gtkselection.c.
12010
12011         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
12012         routines to convert from utf8 to compound text or
12013         STRING and from a text property to UTF-8.
12014
12015         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
12016         a convenience function gdk_get_current_event_time().
12017
12018         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
12019         and free selection_data->data properly
12020
12021 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
12022
12023         * gtk/gtkthemes.c: Remove some unecessary includes.
12024
12025 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
12026
12027         * gtk/gtktextdisplay.c
12028         * gtk/gtktextlayout.c
12029         * gtk/gtktexttag.c
12030         * gtk/gtktexttag.h
12031         * gtk/testtext.c: Change the overstrike property to strikethrough,
12032         to closer match pango.
12033
12034 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
12035
12036         * gtk/gtktextview.c: Fix up visibility so that focus,
12037         cursor_visible and blink interact properly.  Reenable cursor blink
12038         which had been roughly disabled. Make blink and focus
12039         properly per-view.
12040
12041         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
12042         Add a flag for whether to display insertion cursor and
12043         a function to set the flag.
12044
12045         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
12046         get_line_y() to get_line_yrange(), to be a bit more generally
12047         useful.
12048
12049 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
12050
12051         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
12052           do stop_navigating_submenu, to clear last timeout properly.
12053           Also in gtk_menu_motion_notify move ignore_enter above
12054           the conditional to make it always happen as suggested by Owen
12055
12056 2000-09-07  Tor Lillqvist  <tml@iki.fi>
12057
12058         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
12059
12060         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
12061         w32api headers.
12062
12063         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
12064         declarations.
12065
12066         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
12067         (gdk_win32_get_colormap): A line had been deleted by mistake.
12068
12069         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
12070         (gdk_event_translate): Handle more virtual keycodes to be able to
12071         generate GDK events for Control-comma, Control-period, etc.
12072
12073         * gtk/gtk.def: Add some missing entry points.
12074
12075 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
12076
12077         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
12078         Doc comment fixing. (Mostly non-matching parameter names.)
12079
12080         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
12081         comments a little to avoid looking like a doc comment.
12082
12083         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
12084         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
12085         conversions be changed to GError?)
12086
12087         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
12088         Move private #defines into .c file.
12089
12090         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
12091         order of argument addition, remove duplicates.
12092
12093         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
12094         parent class is FrameClass, not BinClass.
12095
12096         * gtk/gtk.h: Add gtkinvisible, which was missing.
12097         (It's occasionalyl useful for client apps, if seldom.)
12098
12099         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
12100         #define.
12101
12102 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
12103
12104         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
12105         coordinates when creating window, instead of GDK-space
12106         coordinates. (Avoid BadValue on too large windows.)
12107
12108 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12109
12110         * configure.in (use_mmx_asm): Remove conftest* after use along the
12111         lines of AC_TRY_COMPILE.        
12112         
12113         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
12114         of g_dirname, which is deprecated.
12115         (gtk_rc_parse_any): Removed calls to
12116         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
12117
12118         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
12119         Removed calls to g_hash_table_{freeze,thaw}, as they are
12120         deprecated now.
12121
12122         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
12123         instead of g_basename.
12124         
12125 2000-09-04 Elliot Lee <sopwith@redhat.com>
12126         
12127         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
12128         ANSI warning.
12129
12130 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
12131
12132         * gtk/gtkwidget.h:  Add some documenting comments about 
12133           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
12134           just as owen said on irc.
12135
12136         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
12137           set HAS_DEFAULT.  Only set it if there isn't another window
12138           holding it (a focus window which RECEIVES_DEFAULT) and only unset
12139           it if the widget is not the focused window with RECEIVES_DEFAULT.
12140           This fixes weird double default bugs in dialogs which has things
12141           call gtk_window_set_default at times.
12142
12143 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
12144
12145         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
12146         Nils Barth and David Santiago to improve submenu
12147         navigation. The patch does this by creating a triangular
12148         region from the point where the pointer leaves the
12149         menu to the submenu.  While the pointer is in
12150         that region and a timeout has not expired, events 
12151         that would cause the active submenu to change are
12152         ignored.
12153
12154 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
12155
12156         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
12157         moving a toplevel window immediately after sizing it would
12158         result in it being sized back to the old size since 
12159         impl->width, impl->height aren't updated until we hear
12160         back from the server. There is still a (longstanding) bug
12161         here that gdk_window_get_size() will give the wrong size
12162         until we do hear back.
12163
12164 2000-08-31  Havoc Pennington  <hp@redhat.com>
12165
12166         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
12167         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
12168         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
12169         Rename GtkTextStyleValues to GtkTextAttributes
12170
12171 2000-08-31  Havoc Pennington  <hp@pobox.com>
12172
12173         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
12174         for rapid testing whether an iterator is the end iterator
12175         (gtk_text_btree_new): init end line cache
12176         (gtk_text_line_is_last): use fast cached line to 
12177         see if we're the last line.
12178         (get_last_line): use cached line here too, should 
12179         speed up some random unrelated code.
12180         
12181 2000-08-30  Havoc Pennington  <hp@pobox.com>
12182
12183         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
12184         signals.
12185
12186         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
12187         delete_text signals. This allows the signals to be used for
12188         implementing undo.
12189
12190         * gtk/gtktextbuffer.c: Change signal handler signatures; 
12191         provide "interactive" argument when emitting insert_text or
12192         delete_text signal.
12193         
12194 2000-08-30  Havoc Pennington  <hp@pobox.com>
12195
12196         * gtk/gtktextbuffer.c: Docs
12197
12198 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
12199
12200         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
12201         from switch statements, since Tor removed the enumeration
12202         value.
12203         
12204         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12205         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
12206
12207 2000-08-29 Elliot Lee <sopwith@redhat.com>
12208         * */*.h: Use G_GNUC_CONST.
12209
12210 2000-08-27  Havoc Pennington  <hp@pobox.com>
12211
12212         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
12213         minor indentation fixes, inserted some FIXME about stuff I
12214         realized was broken while documenting it.
12215         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
12216         GTK convention  
12217
12218 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
12219
12220         * gtk/testgtk.c (create_styles): Fix double free of
12221         font desc.
12222
12223 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12224
12225         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12226         
12227         * gtk/testgtk.c (create_styles): Add a test for modifying
12228         the style through gtk_widget_modify_*.
12229
12230         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12231         a function to get the current modifier style.
12232
12233         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12234         of the passed in GtkRcStyle instead of ref'ing it.
12235
12236         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12237
12238 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12239
12240         * gdk/gdkimage.h
12241         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12242         shared memory image+pixmap GdkImage type, or
12243         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12244         I am dropping that.
12245
12246         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12247         actually call gtk_init_abi_check(), passing also
12248         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12249
12250         * gtk/gtk.def
12251         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12252         New functions, used to check that the GTK+-using code has been
12253         compiled using the correct compiler and switches. In particular,
12254         with gcc one has to use the -fnative-struct switch as GTK+ is
12255         compiled with that.
12256
12257 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12258
12259         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12260         ->prev fields when merging lists. (Found simultaneously
12261         by Pawel Salek and Jakub Jelinek)
12262
12263 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12264
12265         * gdk/gdk.def
12266         * gtk/gtk.def: Add missing entries.
12267
12268         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12269         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12270
12271         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12272         function. Dummy implementation at this point.
12273
12274         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12275         rules. Undefine GTK_COMPILATION when compiling the test programs.
12276         
12277         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12278
12279 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12280
12281         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
12282         to convert back and forth from UTF-8 and the "system" (or "current
12283         locale") charset when necessary. Indentation/spacing cleanup.
12284
12285 2000-08-10  Havoc Pennington  <hp@redhat.com>
12286
12287         * Makefile.am (snapshot): Change the format of the snapshot
12288         version to match glib
12289
12290         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
12291         from EXTRA_DIST since it doesn't seem to exist
12292
12293 2000-08-10  Tor Lillqvist  <tml@iki.fi>
12294
12295         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
12296         version of the directory name (not the UTF-8 one) when building
12297         the path name to stat().
12298
12299 2000-08-03  Elliot Lee  <sopwith@redhat.com>
12300
12301         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
12302         PANGO_ATTR_SHAPE set.
12303
12304 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
12305
12306         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
12307         Peter Osterlund to simplify the code while keeping the
12308         functionality the same.
12309
12310 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
12311
12312         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
12313         is_viewable() test further inside the function, since removing the 
12314         window from the redraw list without clearing ->update_area
12315         was also very broken.
12316
12317 2000-08-02  Tor Lillqvist  <tml@iki.fi>
12318
12319         * configure.in: Check for <unistd.h>.
12320
12321 2000-08-01  Martin Baulig  <baulig@suse.de>
12322
12323         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
12324         to display the message that this is a development version of GTK+.
12325
12326 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
12327
12328         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
12329         was depending on widget->allocation instead of the width of text_area,
12330         which was incorrect for subclasses like GtkSpinButton.
12331
12332         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
12333         with width == 1 tests that should be width == -1.
12334
12335 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
12336
12337         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
12338         (broken, Elliot, every single window blank on X) custom code with call
12339         to gdk_window_is_viewable() which a) prevents code duplicate and
12340         b) works. 
12341
12342 2000-07-31  Elliot Lee  <sopwith@redhat.com>
12343
12344         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
12345         to get the GDK_PARENT_ROOT() macro to work.
12346         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
12347         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
12348         of, windows that aren't shown.
12349         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
12350         pointer grab stuff.
12351
12352 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
12353
12354         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
12355           s/gtk_main_iteration/g_main_iteration/
12356
12357           Did this already in change:
12358                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12359           don't know how it got reverted.
12360
12361 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
12362
12363         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
12364         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
12365
12366         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
12367         not gdk_pixbuf.
12368
12369 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
12370
12371         * configure.in,po/{sp,sr}.po: Added Serbian files
12372
12373 2000-07-30  Tor Lillqvist  <tml@iki.fi>
12374
12375         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
12376
12377         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
12378         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
12379         GIOChannel implementation.
12380
12381         * gdk/win32/gdkinput.c
12382         * gdk/win32/gdkpango-win32.c: Update license name here, too.
12383
12384         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
12385         definition to match prototype.
12386
12387         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
12388
12389 2000-07-27  Elliot Lee  <sopwith@redhat.com>
12390
12391         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
12392         function, to allow handling image formats that cannot be detected
12393         by looking at content alone.
12394
12395 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
12396
12397         * docs/tutorial/*.gif *.jpg *.eps
12398           Update these to the same look-n-feel.
12399           Why does including images in DocBook suck so badly?
12400
12401 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
12402
12403         * gtk/gtktable.c: applied patch from Phil Thompson
12404         <phil@river-bank.demon.co.uk> that enables space settings for
12405         the last row/columns as well.
12406
12407 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
12408
12409         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
12410         updates the license headers to the GNU Lesser General Public License,
12411         as well as updating the copyright year to 2000.
12412
12413 2000-07-26  Robert Brady  <rwb197@zepler.org>
12414
12415         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
12416           and po/Makefile, was installing and looking for them under gtk20
12417           and gtk2 respectively.
12418
12419 2000-07-25  Havoc Pennington  <hp@redhat.com>
12420
12421         * gtk/testtext.c: Comment out some stuff that depends on the rest
12422         of my patches.
12423
12424 2000-07-25  Havoc Pennington  <hp@redhat.com>
12425
12426         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
12427         buffer
12428
12429 2000-07-25  Havoc Pennington  <hp@redhat.com>
12430
12431         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
12432         widget changes.
12433
12434         * gtk/gtktextview.h: To be consistent with usage of "line"
12435         throughout the API to mean "newline-terminated thingy", change
12436         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
12437         to MOVEMENT_LINE.
12438
12439         (GtkTextView): Add flags for default editability, and whether to
12440         show the cursor. Add functions to get/set that. Add 
12441
12442         (gtk_text_view_get_iter_location): new function
12443
12444         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
12445         gtktextlayout.h
12446         (g_convert): Add g_convert temporarily, will go in glib in a bit
12447         
12448         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
12449         GtkTextTagTableForeach instead of brokenly using GHFunc.
12450         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
12451
12452         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
12453         moved to public header.
12454
12455         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
12456         "invisible", since "elide" was a bad name.
12457         (gtk_text_tag_get_priority): Added
12458
12459         (GtkTextStyleValues): put this in public header, along with
12460         functions to use it.
12461
12462         * gtk/gtktextmarkprivate.h: Include more headers, since we no
12463         longer include gtktextbtree.h.
12464
12465         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
12466         gtk_text_mark_deleted
12467
12468         * gtk/gtktextlayout.h: Don't include the "really private" headers,
12469         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
12470         to make this possible. Now we only need to install
12471         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
12472         (However the Makefile.am isn't changed yet because of the
12473         logistics of merging gtk-hp-patches piecemeal)
12474
12475         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
12476         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
12477         gtk_text_iter_get_line is now used in the public API for a
12478         different purpose.
12479
12480         * gtk/gtktextiter.h: Clean up function names to be more
12481         consistent. Always call char offset "offset" and byte index
12482         "index". A "line" is always a line number. 
12483
12484         (gtk_text_iter_is_last): new function, more efficient than 
12485         the existing way to check
12486         (gtk_text_iter_is_first): new function, also more efficient
12487
12488         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
12489
12490         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
12491         gtk_text_iter_forward_char, etc.
12492
12493         (gtk_text_iter_forward_to_tag_toggle): Renamed from
12494         forward_find_tag_toggle, since this isn't a linear search
12495
12496         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
12497
12498         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
12499         New functions, search for a buffer substring.
12500
12501         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
12502         interactive and default editable (since we need to store that info
12503         until we receive the selection data).
12504
12505         Remove all the _at_char and at_line etc. versions of functions;
12506         only have iterator versions.
12507
12508         Add _interactive() versions of functions, that consider the
12509         editability of text. (FIXME add interactive flag to the 
12510         insert/delete signals per Darin's suggestion)
12511
12512         (gtk_text_buffer_get_tag_table): new function, demand-creates the
12513         tag table if necessary
12514
12515         Remove declaration of gtk_text_buffer_get_iter_from_string
12516
12517         (_gtk_text_buffer_get_btree): private/internal function, added.
12518         
12519
12520         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
12521         (gtk_text_line_is_last): new function
12522
12523 2000-07-25  Havoc Pennington  <hp@redhat.com>
12524
12525         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
12526         using GtkProgressBar. See Changes-2.0.txt for details.
12527
12528         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
12529         "pulse_step" which are the equivalent of
12530         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
12531         Implement new API.
12532         
12533         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
12534         (use_text_format) to mark whether text set on the progress bar is
12535         a format string. Deprecate entire GtkProgress interface.
12536
12537         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
12538         (gtk_progress_build_string): make this a no-op if use_text_format
12539         is FALSE
12540
12541         * docs/Changes-2.0.txt: Describe progress bar changes.
12542
12543 2000-07-25  Tor Lillqvist  <tml@iki.fi>
12544
12545         * Makefile.am: Include the build directory.
12546
12547         * configure.in: Generate build/Makefile, build/win32/Makefile,
12548         gdk/, gdk/win32/, and gtk/makefile.mingw.
12549
12550         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
12551         Add GETTEXT_PACKAGE.
12552         
12553         * gdk/gdk.def
12554         * gtk/gtk.def: Updates.
12555
12556         * gdk/gdkfont.h
12557         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
12558         need them any longer.
12559
12560         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
12561
12562         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
12563         PANGOWIN32_LIBS and gdk_pixbuf.
12564
12565         * gdk/win32: Compiles, but no doubt doesn't work at all.
12566
12567         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
12568
12569         * gdk/win32/gdkinput.c: New file, temporarily.
12570         
12571         * gdk/win32/gdkinput-win32.h: New file
12572
12573         * gdk/win32/gdkinputprivate.h: Remove.
12574
12575         * gdk/win32/gdkpango-win32.c: New file.
12576
12577         * gtk/makefile.mingw.in: New file
12578
12579         * gtk/makefile.cygwin: Removed
12580         
12581         * gtk/Makefile.am: Update accordingly.
12582
12583         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
12584         made externally visible.
12585
12586         * gtk/gtkmain.c: Use it.
12587         
12588         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
12589         is enough.
12590
12591         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
12592
12593 2000-07-24 Elliot Lee <sopwith@redhat.com>
12594         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
12595         individual backends already.
12596         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
12597         again. Yes, there really is a good reason for this, if you are using the gdkregion
12598         internals, and if you're not, why do you care?
12599         * gdk/gdkwindow.c: Fix inverted condition
12600         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
12601         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
12602         * gtk/gtkrange.c: Redraw trough when moving.
12603         * gtk/gtktypeutils.c: Fix warning by adding const cast.
12604         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
12605
12606 2000-07-23  Tor Lillqvist  <tml@iki.fi>
12607
12608         * configure.in: Check for mkstemp and sigsetjmp. Output
12609         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
12610
12611         More work on GDK for Win32. Still in an intermediate state.
12612
12613         * gdk/makefile.cygwin
12614         * gdk/win32/makefile.cygwin: Removed.
12615         
12616         * gdk/makefile.mingw.in
12617         * gdk/win32/makefile.mingw.in: New files.
12618
12619         * gdk/Makefile.am
12620         * gdk/win32/Makefile.am: Generate and distribute them.
12621
12622         * gdk/win32/gdkwindow-win32.h
12623         * gdk/win32/gdkdrawable-win32.h
12624         * gdk/win32/gdkpixmap-win32.h: New files.
12625
12626         * gdk/win32/gdkcolor-win32.c
12627         * gdk/win32/gdkcursor-win32.c
12628         * gdk/win32/gdkdrawable-win32.c
12629         * gdk/win32/gdkgc-win32.c
12630         * gdk/win32/gdkimage-win32.c
12631         * gdk/win32/gdkprivate-win32.h
12632         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
12633         Rename fields and variables called xcursor, xid, etc (these names
12634         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
12635
12636 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
12637
12638         * gtk/gtkentry.[ch]: Fix some problems with vertical
12639         alignment.
12640
12641         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
12642         char/byte confusion.
12643
12644 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
12645
12646         * gtk/gtktextview.c (changed_handler): Fix bug where
12647         redraw wasn't being done properly when height of
12648         dirty region changed.
12649
12650         * demos/Makefile.am: Remove various references to
12651         -lgmodule
12652
12653 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
12654
12655         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
12656         PangoAttrShape to reserve space for pixmaps, add 
12657         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
12658         in the display functions.
12659         
12660         * gtk/testgtk.c (create_layout): Set some more exotic
12661         scrolled window options
12662
12663         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
12664         Add function to set the shadow type of a window, to allow
12665         putting a shadow around widgets such as GtkLayout or GnomeCanvas
12666         which don't draw their own frame.
12667
12668 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
12669
12670         * docs/tutorial/package-db-tutorial.sh: New file for
12671           packaging DocBook format tutorial
12672
12673 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
12674
12675         * docs/tutorial/gtk-tut.sgml: Minor updates
12676
12677         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
12678
12679 2000-07-19  Tor Lillqvist  <tml@iki.fi>
12680
12681         * gtk/gtksignal.c: Fix C++ comment.
12682
12683         * gtk/gtkimmulticontext.c
12684         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
12685         don't return value from void functions.
12686
12687         * gtk/gtk.def: Add gtk_rc_style_unref.
12688
12689 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12690
12691         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
12692         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
12693         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
12694         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
12695         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
12696         gtk/gtktypeutils.h: Include files outside of the extern "C"
12697         block. Makes some C++ compiler happy. Reported by Denis Vakatov
12698         <vakatov@peony.nlm.nih.gov>.
12699
12700 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
12701
12702         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
12703           Completes first pass. Hurrah!
12704
12705 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
12706
12707         * docs/tutorial/gtk-tut.sgml: More clean ups.
12708
12709 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
12710
12711         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
12712         paint the background of the text area which was accidentally
12713         removed at some point.
12714
12715         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
12716           
12717          - Move most of the functionality from the theme vtable
12718            into GtkRcStyleClass and GtkStyleClass. The moved
12719            vtable functions were changed a bit in the move to
12720            work better in their new home.
12721
12722          - Get rid of the engine and engine_data fields from
12723            GtkRcStyle and GtkStyle; instead the theme
12724            engine derives theme-specific subclasses of GtkRcStyle
12725            and GtkStyle
12726
12727          - Add extra dlsym() found entry point to themes,
12728            theme_create_rc_style().
12729
12730         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
12731         in gtk_style_real_copy.
12732
12733         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
12734         to register a type associated with an engine. (The engine
12735         won't be unloaded as there is an instance of the type.)
12736
12737
12738 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
12739
12740         * docs/tutorial/gtk-tut.sgml: Clean ups.
12741
12742 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
12743
12744         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
12745           of cleaning up to do.
12746
12747 2000-07-15  Tor Lillqvist  <tml@iki.fi>
12748
12749         * gdk/testgdk.c: New file, quick hack to test backends for
12750         pixel-by-pixel correctness of the most simple graphic operations.
12751
12752 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
12753
12754         * Really release 1.3.1
12755         
12756         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
12757         include structure.
12758
12759 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
12760
12761         * Released 1.3.1
12762
12763 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
12764
12765         * gtk/gtktextlayout.c: use FALSE for size_only most
12766         of the time when calling gtk_text_layout_get_line_display()
12767         to avoid causing double reshapes when a redraw follows
12768         immediately after.
12769
12770 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
12771
12772         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
12773         appropriate region and gdk_window_process_updates() so trough
12774         updating doesn't lag behind the window being scrolled.
12775
12776         * gdk/gdkgc.c: Make parent_class pointer static.
12777          
12778 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
12779
12780         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
12781         include <string.h>.
12782          
12783         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
12784         cut-and-paste error in computing memory offset for 4 channels.
12785
12786 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
12787
12788         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
12789         gtk_rc_append_default_pixmap_path(), since it wasn't
12790         adding an interesting path and we don't have a meaningful
12791         default for this value.
12792
12793 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
12794
12795         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
12796         gtk-config to gtk-config-2.0 move gtk_.m4 to
12797         gtk-2.0.m4
12798
12799         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12800         gdk/Makefile.am demos/Makefile.am: Change 
12801         library names to libgtk-1.3.la, etc, so that we
12802         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
12803
12804         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12805         gdk/Makefile.am gdk/x11/Makfile.am
12806         Move include files into /usr/include/gtk-2.0, 
12807         /usr/lib/gtk-2.0/include/
12808          
12809         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
12810         gtk/gtkintl.h: Change package for gettext from 
12811         gtk+ to gtk20. Put hack in autogen.sh to modify
12812         po/Makefile.in.in after gettextize to make this
12813         possible.
12814
12815         * gtk+.spec: Some updates, not tested.
12816
12817         * gdk-pixbuf/Makefile.am: Move loaders into
12818         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
12819
12820         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
12821         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
12822         to THEMENAME/gtk-2.0/. Move engine directory  to
12823         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
12824         
12825 2000-07-12  Tor Lillqvist  <tml@iki.fi>
12826
12827         Win32 changes, still doesn't build though.
12828
12829         * gdk/makefile.cygwin
12830         * gdk/win32/makefile.cygwin
12831         * gtk/makefile.cygwin: Updates.
12832
12833         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
12834         default values for fg and bg pixel as X11 does (0 and 1), not
12835         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
12836         Use 0 for pen width by default (treated as 1 anyway later, but for
12837         apps that might check the value in the GdkGC).
12838         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
12839         interface to gdk_gc_predraw and _postdraw.
12840
12841         * gdk/win32/gdkwin32.h
12842         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
12843
12844         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
12845         extraneous semicolon.
12846
12847         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
12848
12849         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
12850         not the Win32 bitspixel value.
12851
12852         * gdk/win32/gdkcc-win32.c:
12853         * gdk/win32/gdkcolor-win32.c 
12854         * gdk/win32/gdkprivate-win32.h
12855         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
12856         GDK object structure.
12857
12858 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
12859
12860         * docs/tutorial/gtk_tut_12.es.sgml (name): 
12861         * docs/tutorial/gtk_tut_it.sgml (name): 
12862         * docs/tutorial/gtk_tut_fr.sgml (name): 
12863         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
12864         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
12865
12866 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
12867
12868         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
12869           small changes.
12870
12871 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
12872
12873         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
12874         a bug here, never been here and never fixed anything ;(
12875         (don't segfault if tree->root_tree is NULL, which happens prior
12876         to widget realization, but puke instead).
12877
12878 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
12879
12880         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
12881         add the necessary tokens.
12882
12883         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
12884         (gtk_rc_style_to_style): copy thicknesses.
12885         (gtk_rc_init_style): apply thicknesses.
12886         (gtk_rc_parse_style): parse xthickness and ythickness.
12887
12888         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
12889
12890         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
12891         (gdk_window_new): 
12892         (_gdk_windowing_window_init): 
12893         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
12894         (gdk_pixmap_create_from_data): 
12895         (gdk_bitmap_create_from_data): 
12896         (gdk_pixmap_new): 
12897         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12898         (gdk_image_new): 
12899         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
12900         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
12901         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
12902         (gdk_colormap_get_system): 
12903         (gdk_colormap_new): 
12904         * gdk/gdkwindow.c (gdk_window_init): 
12905         * gtk/gtkstyle.c (gtk_style_new):
12906         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
12907         * gdk/gdkpixmap.c (gdk_pixmap_init): 
12908         * gtk/gtkrc.c (gtk_rc_style_new):
12909         use g_object_new() instead of g_type_create_instance() which
12910         is a private function for fundamental type implementations.
12911
12912 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
12913
12914         * configure.in: Add check for db2html
12915
12916 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
12917
12918         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
12919         hack to set glib_debug_objects based on gtk_debug_flags.
12920
12921 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
12922
12923         * INSTALL.in: Update the Prerequisites section.
12924
12925         * Makefile.am demos/Makefile.am docs/Makefile.am
12926         docs/tutorial/Makefile.am gdk/x11/Makefile.am
12927         gdk/linux-fb/Makefile.am: Dist fixes
12928
12929 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
12930
12931         * NEWS: 10,000 foot view of 1.3.1 changes.
12932
12933 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
12934
12935         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
12936         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
12937         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
12938         gdk/x11/gdkmain-x11.c: 
12939
12940         Patch from George Lebl to add a GdkGrabStatus enumeration to use
12941         as a return value of gdk_*_grab(). Previously, we just
12942         returned the X11 values directly.
12943
12944 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
12945
12946         * gdk/x11/Makefile.am: Patch from George Lebl to 
12947         install all the headers in the right place.
12948
12949 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
12950
12951         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
12952           initial conversion to DocBook.
12953
12954 2000-07-04  Tor Lillqvist  <tml@iki.fi>
12955
12956         * README.win32: Improve a bit.
12957
12958         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
12959         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
12960         Alt+0nnn on the numpad (used to enter characters by numeric code
12961         from current DOS or ANSI codepage) working correctly, as in other
12962         Windows apps.
12963
12964         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
12965         same argument validity tests as in X11 version.
12966         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
12967
12968         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
12969         definitions in case missing from headers.
12970
12971         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
12972         destroy the window-specific cursor.
12973         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
12974         calling GetModuleHandle(NULL).
12975         (gdk_window_set_cursor): Reworked to always copy the passed cursor
12976         with CopyCursor before setting it as the window-specific
12977         cursor. It is OK for the caller to destroy the GdkCursor (and thus
12978         also its Windows cursor) after calling this function. Destroy any
12979         previous window-specific cursor.
12980
12981 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
12982
12983         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
12984         font charset is iso8859-1, not iso-8859-1.
12985
12986 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
12987
12988         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
12989         Use g_get_charset() instead of g_get_codeset().
12990
12991         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
12992         Comment out some strdup'ing functions to keep timj
12993         happy until we finish fighting this out.
12994
12995 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
12996
12997         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12998         <= width or height.
12999
13000         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
13001         from 1.2 for parent/child states.
13002
13003         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
13004         of typos.
13005
13006         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
13007         event structures, replace with a generic axes field. Replace 
13008         deviceid/sourec with GdkDevice *device.
13009
13010         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
13011         to extract particular axis use value from event. (Also
13012         can be used for normal X/Y.)
13013
13014         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
13015         allow for arbitrary number of axes, namespace everything
13016         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
13017         everywhere.
13018
13019         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
13020         Get rid of the gdk_input_vtable setup if favor of simply
13021         defining the functions in gdkinput-none/gxi/xfree.c in
13022         a similar fashion to the way that the port structure is 
13023         done.
13024
13025         * gtk/gtkdnd.c: Fix fields of synthesized button press event
13026         for new event structures. 
13027
13028         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
13029         new device interfaces.
13030
13031 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
13032
13033         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
13034         set the initial text.
13035
13036         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
13037         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
13038         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
13039         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
13040
13041         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13042         pango_layout_set_font_description to simplify.
13043
13044 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
13045
13046         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
13047         pango_layout_set_font_description to simplify.
13048
13049 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
13050
13051         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
13052         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
13053         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
13054
13055         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
13056         PANGO_PIXELS() macro.
13057
13058 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
13059
13060         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
13061         that returns a PangoContext owned by the widget and updated to
13062         match future changes in the widget. Also, make 
13063         gtk_widget_create_pango_layout() use this context. If we ever
13064         add a ::changed signal to PangoContext, this will make things
13065         much more convenient. 
13066
13067         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
13068         in the appropriate places instead of destroying the layouts and
13069         creating new ones.
13070
13071         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
13072         in a few strategic places.
13073
13074 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
13075
13076         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
13077         gtk_widget_size_request() on reparented child, if one. Otherwise,
13078         queue_resize() on the child never results in it getting size-requested
13079         at all.
13080
13081         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
13082         in option menus, so that (with luck) people won't copy it into
13083         their apps in the future.
13084
13085         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
13086         to gtk_option_menu_calc_size. This isn't perfect, but should fix
13087         a lot of problems with changing the size of the menu's menu
13088         items after adding it to the option menu.
13089
13090         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
13091
13092         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
13093         the text direction for a widget changes.
13094
13095         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
13096         ::direction_changed to get rid of various hacks.
13097
13098 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
13099
13100         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
13101         name.
13102
13103 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
13104
13105         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
13106         flag to the structure. Do not call XFreePixmap on pixmaps created
13107         by gdk_pixmap_foreign_new().
13108
13109 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
13110
13111         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
13112         value using GdkRGB functionality given GdkColormap and GdkColor.
13113         (name not final, waiting for inspiration.)
13114         
13115         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
13116         set the foreground/background of a GC using the GC's colormap
13117         and GdkRGB. (name not final, waiting for inspiration.)
13118
13119         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
13120         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
13121
13122         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
13123         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
13124         purely a function of the corresponding colormap. Make
13125         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
13126
13127         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
13128         gdk_pixbuf_*create_from_xpm_* in terms of
13129         gdk_pixbuf_new_from_xpm_data(), move into platform independent
13130         code.
13131
13132         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
13133         advantage of the new draw_rgb_32_image_dithalign.
13134
13135         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
13136
13137         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
13138         on each created GC.
13139
13140         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
13141
13142         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
13143         which we initialize from the drawable when the GC is created,
13144         if the drawable has a colormap.
13145
13146         * gdk/x11/gdkgc-x11.c: include string.h for memset.
13147
13148         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
13149
13150         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
13151
13152 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
13153
13154         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
13155         actually returning expose events, make sure to set
13156         the count field properly.
13157
13158         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
13159         accidentally reintroced bug which always cleared
13160         the graphics_exposures value. 
13161
13162 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
13163
13164         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
13165
13166 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
13167
13168         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
13169
13170 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
13171
13172         * docs/faq/gtk-faq.sgml: Start of Section 6.
13173
13174 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
13175
13176         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
13177         
13178         (Fixes problem with drawing childless frames. Pointed out
13179         by and a first patch from Anders)
13180         
13181         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
13182         compute a child_allocation, even if we don't have a child.
13183
13184         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
13185         Always chain to the parent's impl, even if we don't have a child.
13186
13187 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13188
13189         * gdk/gdkrgb.c: If possible, create only a single shm segment and
13190         use multiple parts of it instead of creating a bunch of separate
13191         segments, since the maximum number of segments per system is not
13192         large. (This might be worth backporting to GTK+-1.2.x if we make a
13193         new release )
13194
13195         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
13196         structure in preparation for per-colormap GdkRGB.
13197
13198         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
13199         to False when we get EINVAL from shmget so that the caller of
13200         gdk_image_new can retry with a smaller segment size.
13201
13202 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
13203
13204         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
13205
13206 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
13207
13208         * configure.in: make the current version number 1.3.1 (binary age 0,
13209         interface age 0).
13210         
13211         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
13212         gtkcompat.h is all we want.
13213
13214         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
13215         GLib primitive types. fixed g_type_register_fundamental() argument
13216         ordering.
13217
13218         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
13219         compiles.
13220
13221         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
13222         object code cleanup, comment trigraph fixes, etc...
13223
13224 2000-06-23  Havoc Pennington  <hp@redhat.com>
13225
13226         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13227         instead of making up a bogus name for first_para_mark
13228
13229         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13230         0 as a context ID
13231
13232 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13233
13234         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13235
13236 2000-06-21  Havoc Pennington  <hp@pobox.com>
13237
13238         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13239         we didn't check window->bg_pixmap != GDK_NO_BG.
13240
13241         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13242         gdk-pixbuf
13243
13244 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13245
13246         * docs/faq/gtk-faq.sgm: Move file to here.
13247           TODO: Update Makfile.am 
13248
13249 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13250
13251         * docs/gtk-faq.sgm: Add Section 2
13252
13253 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13254
13255         * docs/gtk-faq.sgm: New file. Start of DocBook
13256           version of the FAQ.
13257
13258 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13259
13260         * configure.in (GDK_PIXBUF_MAJOR): Define version
13261         numbers for GDK_PIXBUF_*, as they get substituted
13262         into a header file. Need to consider versioning
13263         for gdk-pixbuf more carefully later.
13264
13265 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13266
13267         Work with srcdir != builddir.   
13268         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13269         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13270         * demos/testpixbuf.c: Likewise.
13271         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13272         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13273         <gdk/x11/gdkx.h>.
13274         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13275         "gdk-pixbuf.h".
13276         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13277
13278 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13279
13280         * TODO.xml: Change 1.4 version numbers to 2.0.
13281
13282 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
13283
13284         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
13285         fixups to GTK+ standard.
13286
13287 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
13288
13289         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
13290         gdk-pixbuf.
13291
13292         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
13293         fixups for GObject.
13294
13295         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
13296         gdk-pixbuf with GDK dependencies moved into GDK.
13297         
13298         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
13299         move gdk-pixbuf-loader here until GObject has signals.
13300
13301         * demos/: New directory of demos. Move demos from
13302         gdk-pixbuf here.
13303
13304         * demos/pixbuf-init.c: Small bit of code to check for
13305         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
13306         set GDK_PIXBUF_MODULEDIR appropriately.
13307
13308         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
13309         define which no longer makes sense.
13310
13311 2000-06-21  Havoc Pennington  <hp@redhat.com>
13312
13313         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
13314         gtk_get_default_language
13315
13316         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
13317         new function to get the default language
13318
13319         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
13320         s/gtk_text_view_style_values/gtk_text_style_values/
13321
13322         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
13323         Add a "language" field to tags.
13324
13325         (gtk_text_tag_set_arg): Fix bug in setting
13326         "bg_full_height_set" tag.
13327
13328 2000-06-21  Havoc Pennington  <hp@redhat.com>
13329
13330         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
13331         in the interfaces
13332
13333         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
13334         stuff instead when possible.
13335
13336         * gtk/gtktexttypes.h: Delete some unused constants
13337
13338         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
13339         testtextbuffer.c: use glib instead of custom unicode routines
13340
13341 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
13342
13343         * docs/es/: Removed mistakenly added generated sgml
13344
13345         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
13346         Remove outdated info files.
13347
13348         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
13349         Moved tutorial files into subdir
13350
13351         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
13352         subdir.
13353
13354         * docs/man/gtk_button.pod: Remove. (contents will be
13355         integrated into gtk-reference button page.)
13356
13357         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
13358         docs/faq/Makefile.am: Adjust for new organization
13359
13360 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
13361
13362         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
13363         not $(MKINSTALLDIRS)
13364
13365 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
13366
13367         * gtk/testgtk.c (create_text): Finish the job Elliot started
13368         of removing font setting test for text widget. (Since text widget
13369         and GdkFont are not deprecated, and cause portability problems.)
13370
13371 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
13372
13373         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
13374         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
13375         Remove use of libunicode in favor of new GLib functions.
13376
13377         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
13378         nano-x, framebuffer. The X11 include is just a hack until we get
13379         the necessary functions in gdkcolor.h, so there is no reason to
13380         add other includes of platforms.
13381
13382         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
13383         window bigger than the screen change.
13384
13385         * gtk/testgtk.c: Revert some random changes from Elliot
13386         that had no particular point and were causing testgtkrc
13387         not to function correctly.
13388         
13389         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
13390         because GdkSegment and GdkRegionBox have the same fields,
13391         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
13392         results in clearer code.
13393
13394         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
13395         gdk_input_translate_coordinates): Fix missed GdkObjectification
13396
13397 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13398
13399         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
13400         * gtk/gtk{plug,socket}.h: Missed commits from previous.
13401
13402 2000-06-20  Havoc Pennington  <hp@redhat.com>
13403
13404         * modules/linux-fb/Makefile.am: Make this compile
13405         without framebuffer enabled
13406
13407         * gdk/linux-fb/Makefile.am: Add conditional to not build
13408         framebuffer unless specified in configure
13409
13410         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
13411         the size of the target instead of source if -1 was passed for
13412         width/height
13413
13414         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
13415         width/height confusion.
13416
13417 2000-06-19  Havoc Pennington  <hp@redhat.com>
13418
13419         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
13420         GDK_DRAWABLE_XID. In the future, we probably want to make it
13421         faster with G_DISABLE_CHECKS turned on.
13422
13423 2000-06-14  Havoc Pennington  <hp@redhat.com>
13424
13425         * gdk/Makefile.am: add gdkpixmap.c
13426
13427         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
13428         s/gdk_image_init/_gdk_windowing_image_init
13429
13430         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
13431         ref/unref
13432
13433         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
13434
13435         * gdk/gdkcompat.h: remove GdkWindowType compat, since
13436         GdkWindowType is now non-deprecated; 
13437         change gdk_window_get_type() compat to be
13438         gdk_window_get_window_type().
13439
13440         * gdk/gdkdnd.h: make GdkDragContext a GObject.
13441
13442         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
13443         virtual GObject. Make all functions call into the vtable.
13444         Move gdk_image_put() guts in here. Remove GdkDrawableType
13445         and gdk_drawable_get_type(), these are now GdkWindow-specific.
13446         draw_image, get_depth, get_size, set_colormap, get_colormap,
13447         get_visual added to the vtable.
13448         
13449         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
13450         GObject. Virtualize everything. 
13451         (gdk_gc_new_with_values): remove check for destroyed window,
13452         because now GdkWindow::create_gc will check this.
13453         (gdk_gc_set_values): New function to set GC values, this 
13454         was already implemented but wasn't in the header
13455
13456         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
13457
13458         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
13459         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
13460         remove _gdk_window_class; add _gdk_window_impl_get_type() and
13461         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
13462         _gdk_windowing_window_init, rename gdk_image_init to
13463         _gdk_windowing_image_init.
13464         
13465         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
13466         (gdk_draw_layout): Remove check for destroyed window, 
13467         because all the drawable methods already check it.
13468         
13469         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
13470         Add gdkpixmap.c which contains implementation of GdkDrawable
13471         virtual table (by chaining to a platform-specific implementation
13472         object).
13473         
13474         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
13475         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
13476         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
13477         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
13478         GdkColormapPrivate. 
13479
13480         * gdk/gdktypes.h: #include <glib-object.h>
13481
13482         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
13483         Move most functionality to platform-specific implementation
13484         object. GdkWindow itself now handles the backing store, then
13485         chains to the platform-specific implementation.
13486         (gdk_window_get_window_type): return GdkWindowType of the window.
13487         (gdk_window_peek_children): New routine, returns the children of 
13488         a GdkWindow
13489         (gdk_window_get_children): Was in X11-specific code and did 
13490         XQueryTree. Changed to simply return a copy of window->children; 
13491         so it can go in cross-platform code.
13492         
13493         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
13494
13495         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
13496         GdkColormap; just changed to use the new private data instead
13497         of casting to GdkColormapPrivate.
13498
13499         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
13500         gdk_cursor_new().
13501
13502         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
13503         (private data member in the GObject). 
13504         (xdnd_manager_source_filter): Function had broken 
13505         error handling, fix it (use gdk_error_trap_push).
13506
13507         * gdk/x11/gdkdrawable-x11.c: This file now implements
13508         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
13509         base class is purely for the convenience of the X port,
13510         and not part of the interface to cross-platform GDK.
13511
13512         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
13513         
13514         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
13515         specific to X, and returned by the create_gc virtual method
13516         of GdkDrawableImplX11. 
13517         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
13518         rather than gchar, this was also changed in the GdkGC vtable.
13519         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
13520         mask is 0, return immediately, instead of checking every flag.
13521         This is faster, and keeps us from segfaulting if values is NULL
13522         and the mask contains some nonzero flags.
13523
13524         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
13525         GdkWindow.
13526
13527         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
13528         GdkWindowPrivate is gone.
13529
13530         * gdk/x11/gdkim-x11.c: rename things that got renamed.
13531
13532         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
13533         remove the image_put stuff that got transferred to GdkDrawable.
13534         
13535         * gdk/x11/gdkinput.c: renamings
13536
13537         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
13538
13539         * gdk/x11/gdkpixmap-x11.c: GObject conversion
13540
13541         * gdk/x11/gdkprivate-x11.h: indentation fixes
13542
13543         * gdk/x11/gdkproperty-x11.c: renamings
13544
13545         * gdk/x11/gdkselection-x11.c: renamings
13546
13547         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
13548         implements the platform-specific "impl" object.
13549         Moved gdk_window_get_children to gdk/gdkwindow.c
13550
13551         * gdk/x11/gdkx.h: Remove all the private structs and private datas
13552         that no longer exist. Add declaration of GdkGCX11 object here.
13553         Fix all the macros to still work. 
13554
13555         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
13556         GdkDragContext from the boxed types since they are now GObjects.
13557
13558         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
13559         moved xthickness/ythickness into the instance. GtkStyleClass
13560         functions are now in the standard vtable for GtkStyle, so you have
13561         to create a GObject subclass to write a theme engine.
13562         (gtk_style_copy): fixed a leaked PangoFontDescription
13563         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
13564         can be the standard GObject function.
13565         
13566         * Throughout GTK:
13567         s/style->klass->[xy]thickness/style->[xy]thickness
13568         s/pango_layout_unref/g_object_unref/
13569
13570         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
13571         
13572         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
13573         accessing GDK internals.
13574
13575         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
13576         accessing GDK internals.
13577
13578 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13579
13580         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
13581
13582         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
13583         problem by calculating event position relative to the trough
13584         rather than the slider.
13585         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
13586
13587         * gdk/gdkgc.h: Add GDK_NOR.
13588
13589         * configure.in, Makefile.am: Add modules top level dir
13590         * configure.in: Only use pangox library if building x11 target.
13591         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
13592
13593 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13594
13595         * gtk/gtkcolorsel.c: Change private class member to be named
13596         private_data throughout the file.
13597
13598         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
13599         private_data to avoid clashing with keyword.
13600
13601 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13602
13603         * gdk/gdkdnd.h: Add comment to remove warning.
13604
13605 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
13606
13607         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
13608         Byelorussian language; changed the Makefile and file names 
13609         to reflect that.
13610
13611 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
13612
13613         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
13614         rather than gdk_window_hide; this makes things work
13615         correctly if the window is programmatically hidden while
13616         iconified.
13617
13618 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
13619
13620         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
13621         cut and paste typo where wrong pixmap was being
13622         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
13623
13624 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
13625
13626         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
13627         Add helper function to compute format / bytes 
13628         relationship. Use in a couple places to fix up
13629         errors which assume 8 * format.
13630
13631         * gtk/gtkselection.c (gtk_selection_request): Use 32
13632         rather than 8 * sizeof (GdkAtom), to work correctly
13633         on Alpha.
13634
13635 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
13636
13637         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
13638         libgtk.la
13639         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
13640         versions
13641
13642         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
13643         checking macros return NULL since the function has a return value.
13644
13645 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
13646
13647         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
13648         GTK+ from building at all.
13649
13650         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
13651
13652 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
13653
13654         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
13655         gtk/Makefile.am: make it possible to configure gtk for different
13656         targets on the same platform. The library name is now 
13657         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
13658         flag. Only the x11 target compiles right now.
13659         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
13660         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
13661         * gdk/nanox/gdk*generic*: delete generic region code.
13662         * gdk/linux-fb/gdk*generic*: delete generic region code.
13663         * README.nanox: update information.
13664         
13665 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
13666
13667         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
13668         prepend not append. (Pointed out by Brett Hall.)
13669
13670 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
13671
13672         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
13673
13674 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
13675
13676         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
13677         need this later, and this makes sure that the atexit for
13678         glib gets called after that for GDK, so atexits are
13679         properly ordered for object leak checking.
13680
13681         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
13682
13683         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
13684         pango_x_shutdown_display()
13685
13686         * gtk/simple.c (main): Close window on destroy.
13687
13688 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
13689
13690         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
13691         to treat initial creation different from setting with 
13692         regards to the graphics-exposures parameter, so add a parameter
13693         indicating whether this is initial or not.
13694
13695 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
13696
13697         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
13698         to sort of work by adding an extra return_exposes arg
13699         to gdk_event_translate() - it might be better to simply
13700         deprecate the function altogether and force people to rewrite
13701         without it. gdk_window_scroll() handles most of it, and where
13702         gdk_window_scroll() doesn't work, simply redrawing more does.
13703
13704         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
13705         assertion.
13706
13707         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
13708
13709         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
13710         bunch of pretty much useless /* Print debugging info */ comments 
13711         which had drifted away from the code they were commenting.
13712
13713 2000-06-02  Havoc Pennington  <hp@pobox.com>
13714
13715         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
13716         is in working order.
13717         
13718         * gtk/testtext.c: Change to reflect anonymous mark API
13719
13720         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
13721
13722         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
13723         field, which was unused.
13724
13725         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
13726         saves some typing.
13727
13728         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
13729
13730         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
13731         flag on the insertion point and selection bound
13732
13733         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
13734         make mark-manipulation functions take a GtkTextMark* instead of a
13735         mark name.
13736         
13737         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
13738         GtkTextMarkBody; will be used to detect attempts to delete
13739         the permanent marks (insert and selection bound)
13740
13741         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
13742
13743 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
13744
13745         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
13746         flag to on.
13747
13748         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
13749         Honor DOUBLE_BUFFRED_FLAG
13750
13751         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
13752         function to set the DOUBLE_BUFFERED flag.
13753
13754         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
13755         or not exposes done on the widget should be double-buffered.
13756
13757         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
13758         to be what would be expected. (Fixes problem with a
13759         g_return_if_fail() validating a TextDirection enumeration)
13760
13761 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
13762
13763         * gtk/gtkwidget.c: Remove all references to 
13764         offscreen flag which was no longer used.
13765
13766         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
13767
13768         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
13769         for non-null label_widget->parent.
13770
13771         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
13772         which no longer was used.
13773
13774         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
13775
13776         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
13777         for null arguments.
13778
13779         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
13780         check for destroyed windows.
13781
13782 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
13783
13784         * gtk/gtkimmulticontext.c: Add a finalize method and unref
13785         the slave context there.
13786
13787         * gtk/gtkinvisible.[ch]: Make reference counting behavior
13788         identical to GtkWindow.
13789
13790 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
13791
13792         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
13793         pangox to here, so we can write them independent of rendering
13794         system, using GDK primitives.
13795
13796         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
13797         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
13798         since we have a rendering-system independent implementation in
13799         terms of draw_glyphs().
13800         
13801         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
13802         function to render a single line.
13803
13804         * gdk/x11/gdkpango.c: Move the guts of this file mostly
13805         into ../gdkpango.c, which simplifies things, since we
13806         don't have to deal with raw X gc's.
13807
13808 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
13809
13810         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
13811         get the logical attributes for a given GtkTextLine.
13812
13813 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
13814
13815         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
13816         g_locale_get_codeset() to g_get_codeset() change.
13817
13818 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
13819
13820         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
13821         descriptions.
13822
13823         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
13824         the entry.
13825
13826         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
13827         redoing (vastly simplifying) for Pango. Still needs quite
13828         a bit of work. (Size selection is currently poor. List of 
13829         predefined sizes is not a good idea, since all of these
13830         sizes won't necessarily be distinct.)
13831
13832 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
13833
13834         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
13835         CODESET results for LANG=C.
13836
13837 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
13838
13839         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
13840         which takes a stringized pango font description;
13841         ignore the older 'font' and 'fontset' declarations.
13842
13843         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
13844         field with a GdkFont derived via gdk_font_from_description(),
13845         for compatibility. (Should we just remove it entirely?
13846         Probably too much compatibility breakage, but people
13847         should be migrating to the new Pango stuff as quickly
13848         as possible.)
13849
13850 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
13851
13852         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
13853
13854 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
13855
13856         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
13857         redoing; there are some bugs in size allocation right
13858         now, the semi-existant distinction between header / day
13859         fonts was removed, but, with Pango, could actually
13860         be made functional in a nice way.
13861         
13862         * gtk/testcalender: Move calender from examples into this
13863         directory as a test program. (We really need to restrcture
13864         testgtk into a whole directory full of tests for every
13865         widget or functionality group, separated into multiple .c
13866         files.)
13867
13868 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
13869
13870         * gtk/testgtk.c (file_exists): Fix stupid typo that
13871         was keeping RC file from being loaded.
13872
13873         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
13874         RC file font code.
13875
13876 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
13877
13878         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
13879         Add function to load a GdkFont from a PangoFontDescription.
13880
13881 2000-05-29  Tor Lillqvist  <tml@iki.fi>
13882
13883         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
13884         variable should be of type GdkEventPrivate.
13885
13886 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
13887
13888         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
13889         to have any widget for the label, use a GtkLabel widget
13890         to display the text. (Based partially on a patch from
13891         Anders Carlson.)
13892
13893         (Quite a bit of code reorganization - strip 90% of the
13894         guts out of gtkaspectframe and add a single virtual
13895         func to GtkFrameClass - compute_child_allocation.)
13896
13897 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
13898
13899         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
13900         (Removed clist->row_center_offset field because caching
13901         it wasn't saving time or code, added private function
13902         _gtk_clist_create_cell_layout()).
13903
13904 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
13905
13906         * gtk/gtkaccellabel.c: Pangoized.
13907
13908         * gtk/[hv]ruler.c: Pangoized
13909
13910 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
13911
13912         * gtk/gtkfilesel.c (gtk_file_selection_init):
13913         Use gtk_clist_set_column_auto_resize() to remove need
13914         need for manual column width computations.
13915
13916 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
13917
13918         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
13919         ensuring Pango correctness, and considerably simplifying the
13920         code.
13921         
13922         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
13923
13924         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
13925         getting of numbers of lines.
13926
13927         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
13928         to the actual requested width of the lable, not to the wrap
13929         width we set.
13930
13931         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
13932
13933         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
13934           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
13935
13936         * gtk/gtktextview.c: Fix structure inheritance.
13937
13938         * gtk/gtkprogressbar.c: Pangoize.
13939
13940 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
13941
13942         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
13943         in a function.
13944
13945         * gtk/gtktextlayout.c (find_display_line_above): Fixed
13946         bug with computing line tops.
13947
13948         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
13949
13950 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13951
13952         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
13953         and y_offset coordinates to do what we need now. (The offset between
13954         buffer and layout coordinates has been reintroduced, but is a 
13955         bit different than before.)
13956
13957         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
13958         handle the adjustments ourselves, and scroll as necessary using
13959         the new gdk_window_scroll().
13960         
13961         The advantage of this is that when we are incrementally revalidating,
13962         we are essentially rearranging things around the visible portion
13963         of the screen. With the old setup, the visible portion of the
13964         screen was moved around in the layout, so scrolling and redrawing
13965         to track that caused jumping of the display. Since we now
13966         control the scrolling ourselves, we can suppress this and
13967         only redraw when things actually change.
13968
13969 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
13970
13971         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
13972         the region not just redisplay it after-all, since we store the
13973         cursors in the LineDisplay. (Ugly interactions here between
13974         GtkLayout and GtkTextBTree here.)
13975         
13976         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
13977
13978 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13979
13980         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
13981         Added function to scroll contents of a window while keeping the
13982         window constant. Works by XCopyArea or guffaw-scrolling depending
13983         on the details of how the window is set up. (guffaw-scrolling
13984         still needs to be filled in.)
13985
13986 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
13987
13988         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
13989         move the debugging that was tied to a global variable
13990         to that.
13991
13992         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
13993
13994         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
13995         validated flag, in line data instead of setting height/width to
13996         -1. This allows us to perform operations with partially invalid
13997         buffer (using the old size for invalid lines) and thus to do
13998         incremental vaidation. Keep height/width aggregates up to date
13999         when deleting text and rebalancing the tree.
14000
14001         * gtk/gtktextbtree.[ch]: Add functions validate a line
14002         (gtk_text_btree_validate_line), and to validate up
14003         to a number of pixels (gtk_text_btree_validate).
14004
14005         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
14006         that indicates that something is changed and a revalidation
14007         pass is needed. Change ::need_repaint to ::changed, and
14008         make it take old and new yranges instead of a rectangle.
14009
14010         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
14011         the line_data_destroy() function from 
14012         gtk_text_btree_add_view() to a virtual function in 
14013         GtkTextLayout
14014
14015         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
14016         since we are handling partial repaints in a different fashion
14017         now.
14018
14019         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
14020         of the selection instead of queueing a repaint on the
14021         entire widget.
14022
14023         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
14024         get_selection_bounds() down to btree, make the function
14025         in buffer a wrapper around the btree function.
14026
14027         * gtk/gtktextlayout.[ch]: Add functions to check if the
14028         layout is valid and to recompute either a range of pixels
14029         aroudn a line or a certain total number of pixels.
14030
14031         * gtk/gtktextlayout.[ch]: Cache a single line display;
14032         now that we only redraw the needed portions, the hit rate
14033         for this cache is quite high.
14034         
14035         * gtk/gtktextview.[ch]: Keep track of the first paragraph
14036         on the screen so that when re-laying-out the buffer, we can
14037         keep the same place. This requires connecting to ::value_changed
14038         on the adjustments
14039
14040         * gtk/gtktextview.[ch]: Add idle functions to revalidate
14041         the buffer after we receive an ::invalidated signal.
14042         
14043 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
14044
14045         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
14046         to max of allocation and layout size, not just to the
14047         layout size.
14048
14049         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
14050         Invalidate window so it gets redrawn properly.
14051
14052         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
14053         to mean the entire window.
14054
14055         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
14056         into public header.
14057
14058 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
14059
14060         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
14061         to get the name of a mark.
14062
14063         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
14064         to find the paragraph from a y position.
14065
14066 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
14067
14068         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
14069         nodes have width/height >= 0, not > 0.
14070
14071 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
14072
14073         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
14074         Add a size_only flag, so when we only need the size, we don't create
14075         useless appearance attributes.
14076
14077         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
14078         duplicate setting of font description.
14079
14080         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
14081
14082 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14083
14084         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14085         EXTRA_DIST. It does not work well when the file that
14086         everything depends on is not in the tarball.
14087
14088 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14089
14090         * gtk/testgtk.c: Some hacks and fixes so that it basically
14091         works when not sitting in the GTK+ build tree.
14092
14093 2000-05-03  Havoc Pennington  <hp@redhat.com>
14094
14095         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14096         Properly determine the ordering of the tag root and the current
14097         line within the tree. Previous algorithm only worked if the tag
14098         root's immediate parent was the common root of both the current
14099         line and the tag root.
14100
14101 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
14102
14103         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
14104         alignment.
14105
14106         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
14107         the widget text directional dynamically.
14108
14109         * gtk/gtktextview.[ch]: Added functions to get and set default
14110         wrap mode.
14111
14112 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
14113
14114         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
14115         in cursor location computation.
14116
14117 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
14118
14119         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
14120         vadjusment values properly when layout gets smaller.
14121
14122         * gtk/gtktextview.c (need_repaint_handler): Areas being
14123         passed in are far completely inaccurate, and sometimes
14124         too small, so, for now, just queue a redraw on the
14125         whole visible region.
14126
14127 2000-04-25  Havoc Pennington  <hp@redhat.com>
14128
14129         * gtk/gtktextbtree.c (summary_destroy): new function to 
14130         destroy tag summary nodes
14131         (gtk_text_line_next_could_contain_tag): this function was 
14132         totally broken if the line passed in wasn't below the tag
14133         root. Fix it.
14134         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
14135         "wildcard" case, we have to do a linear scan. Blah.
14136         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
14137         we have to do the linear scan
14138         (tag_removed_cb): When a tag is removed from the tag table, 
14139         remove the GtkTextTagInfo node from the btree.
14140         (gtk_text_btree_spew): Implement the spew function, for 
14141         our debugging pleasure.
14142
14143 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
14144
14145         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
14146         a problem with referring to the wrong buffer.
14147
14148         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
14149
14150         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
14151         font description to gtk_style_new() - otherwise things
14152         don't work without a .gtkrc file.
14153
14154         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
14155         tags table if we create it ourself, too.
14156
14157         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
14158         it was conflicting with XKB modifiers.
14159
14160         * gtk/gtktextview.[ch]: Add simple support for 
14161         GtkIMContext.
14162
14163 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
14164
14165         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
14166         with deletion from last commit.
14167
14168 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
14169
14170         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
14171         in the context from the current locale.
14172         
14173         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
14174         context, not hardcoded value.
14175
14176         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
14177         not logical.
14178
14179 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14180
14181         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
14182         attributes - that doesn't handle partial-glyph selection
14183         properly. Instead use new pango_layout_line_get_x_ranges()
14184         functionality to draw the selection.
14185
14186         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
14187         now properly handles out-of-range coordinates.
14188
14189         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
14190
14191         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
14192         public.
14193
14194         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
14195         for paragraphs opposite to the base direction of the widget.
14196
14197         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
14198
14199         * gtk/gtktextlayout.c: Don't split segments on marks, since that
14200         causes Arabic words to reshape as you cursor through.
14201
14202         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
14203         cursor position when moving vertically with the arrow keys and
14204         scrolling with page-up/page-down. (Arrow keys save only the X,
14205         scrolling saves both X and Y.)
14206
14207         This means you can line-up / line-down or page-up / page-down
14208         without losing your place, and also that moving vertically
14209         with the cursor keys keeps the same X position, not the same
14210         character count:
14211
14212         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
14213         arrow keys move by display lines, not paragraphs.
14214
14215 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14216
14217         * gtk/gtklayout.c: Make sure that the bin window is at least
14218         as big as the allocation. (Should we also make sure that the
14219         bin window is big enough to completely cover widget->window?)
14220
14221         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
14222         function to get the onscreen rectangle.
14223
14224         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14225         for offsets in window coordinates.
14226
14227 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14228
14229         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14230         confusion.
14231
14232         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14233         from the widget direction.
14234
14235         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14236         Add a "direction" attribute.
14237
14238         * gtk/gtktextview.c: global s/tkxt/text_view/.
14239
14240         * gtk/testtext.c: Added long block of text in Arabic, to test out
14241         the direction attributes. (Some problems with the shaping system
14242         for arabic become obvious - like the fact the cursor splits words
14243         into unjoined pieces.)
14244
14245 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14246
14247         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14248
14249         * gtk/gtktextlayout.c: Fix up alignment.
14250
14251         * gtk/testtext.c: Add some tests for centering, wrapping.
14252
14253 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14254
14255         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14256         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14257         If we wrote GTK+-specific layout-render function this could just replace
14258         the draw_layout() operation in the vtable.
14259
14260         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14261         pango_layout_get_cursor_pos() and use that function.
14262
14263         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14264         is a non-static symbol.
14265
14266         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14267         with gtk_text_btree_find_line_by_y()
14268
14269         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14270         renderer that handles GtkTextAppearance attributes.
14271
14272         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14273
14274           - Move the values in the style that don't affect geometry into a
14275             GtkTextAppearance structure.
14276           - Change underline to take a PangoUnderline and "font" a string
14277             representation of a font description
14278           - Add a "font_desc" attribute which takes a FontDescription structure.
14279
14280         * gtk/gtktextlayout.[ch]:
14281
14282           - Get rid of the display-line list per each line. Instead, we
14283             generate, on demand, a GtkTextLineDisplay structure which]
14284             contains a PangoLayout * and other necesary information
14285             (offsets, cursor locations) for displaying a paragraph.
14286           - Get rid of the code to wrap lines, create display chunks,
14287             etc. Instead, we just go through a paragraph and convert
14288             it into the necessary inputs to a PangoLayout.
14289           - Implement a new attribute type, GtkTextAttrAppearance. This
14290             holds a GtkTextAppearance, and is used to pass colors, 
14291             stipple, etc, through from the layout to the display without
14292             having to use lots and lots of individual attributes.
14293           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
14294             in terms of PangoLayout functions.
14295         
14296         * gtk/gtktextview.c: 
14297          
14298           - Handle passing the necessary PangoContext to the layout
14299           - Some fixups in painting to deal with the automatic backing store
14300             and offsetting of GTK+-1.4
14301           - Add a style_set handler so that the default style reacts
14302             properly to theme changes.
14303         
14304         * gtk/gtktext?*.[ch]: Random code-style fixes.
14305
14306         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
14307
14308 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
14309
14310         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
14311         in original form preparatory to Pango-ization and gdkimcontext-ization.
14312
14313 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
14314
14315         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
14316         so that we can derive from gtkimcontext in language bindings properly.
14317
14318 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
14319
14320         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
14321         Add a compose table including (almost) all the compose combinations
14322         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
14323         data in the XIM implementation.
14324
14325         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
14326         Moved functions to convert keyvalues from and to unicode here from
14327         the win32 port and made them public.
14328
14329 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14330
14331         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
14332
14333 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
14334
14335         * gtk/gtkimcontext.[ch]: Base class for new input context system
14336
14337         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
14338         the real input context implementation to be loaded from modules
14339         and switched on the fly.
14340
14341         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
14342         context that just does direct keysymbol => unicode translation.
14343
14344         * gtk/gtkentry.[ch]: Start switching editing over to using
14345         GtkInputContext. (No handling of preedit yet.)
14346
14347 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
14348
14349         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
14350         many substitutions. (klass should not be subsituted.)
14351
14352 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
14353
14354         * configure.in: Add checks for Pango
14355
14356         * configure.in docs/Makefile.am: Add test for sgml2html
14357         and allow 'make dist' without building html, but print out
14358         warnings in that case. (For making snapshots)
14359
14360         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
14361         Add Pango libraries and C flags
14362
14363         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14364         Add function (gdk_draw_layout) to draw a pango layout.
14365
14366         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
14367         for getting Pango contexts for GDK.
14368
14369         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
14370
14371         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
14372         editing.
14373
14374         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
14375         keysym => unicode translations. More languages can be added
14376         here, but real input-method support is needed.
14377
14378         * docs/Changes-1.4.txt: Added note about entry behavior.
14379         
14380         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
14381         to set the reading direction for a widget and the global direction.
14382         Add test which allows toggling the global direction. Two private
14383         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
14384
14385         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
14386           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
14387
14388         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
14389
14390         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
14391         underlining now handled by Pango.
14392
14393         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
14394         to RCStyle and Style. (Having both this and the old font name and GdkFont 
14395         is temporary.)
14396
14397         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
14398         convenience functions for creating contexts and layouts for widgets.
14399
14400         * gtk/testgtk.c: Enhance label tests with multilingual labels.
14401
14402 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
14403
14404         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
14405         titles to be active, even if they aren't visible.
14406         (gtk_clist_column_titles_passive):  Ditto.
14407
14408 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
14409
14410         * gtkmenu.c:
14411         * gtkmenu.h:
14412         * gtktypeutils.h: Spelling/grammar fixes in comments.
14413
14414 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
14415
14416         * gdk/nanox/*.h: add missing header files.
14417
14418 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
14419
14420         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
14421         send_event to TRUE.
14422         (gtk_drawing_area_size): queue a resize.
14423
14424 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
14425
14426         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
14427         the handlers, also invalidate them. bug nailed down by Karl Nelson
14428         <kenelson@ece.ucdavis.edu>.
14429
14430 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
14431
14432         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
14433         "(nil)" foundries, patch from Grigorios Magklis.
14434
14435         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
14436         on non-available fonts, based on a patch by Grigorios Magklis
14437         <maglis@cs.rochester.edu>.
14438
14439 2000-05-18  Elliot Lee  <sopwith@redhat.com>
14440
14441         * gdk/x11/gdkregion-generic.c: If a region does not have any
14442         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
14443         instead of GDK_OVERLAP_RECTANGLE_IN.
14444
14445 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
14446
14447         * gtk/gtklayout.c (gtk_layout_map): Remove references to
14448         OFFSCREEN, as it is no longer necessary.
14449
14450 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
14451
14452         * gtk/gtkcolorsel.c: Patch from David Santiago
14453         <mrcooger@cyberverse.com> to change things so that the 
14454         indicator of the active palette entry is done independently,
14455         not via the focus, since it should always be visible.
14456
14457 2000-05-17  Tor Lillqvist  <tml@iki.fi>
14458
14459         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
14460         refcount leaks as in the X11 backend.
14461
14462         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
14463         cosmetics.
14464
14465         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
14466         backend. Add _gdk_windowing_window_destroy().
14467
14468         * gtk/gtkcolorsel.c: Include correct backend-specific header.
14469         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
14470         either, but these probably do exist on nanox?)
14471         
14472         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
14473         which isn't necessarily defined by <math.h>.
14474
14475         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
14476         ancestry past GtkObject.
14477
14478         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
14479         from DLL on Win32.
14480
14481         * gtk/gtk.def: Update corresponding to recent changes.
14482
14483         * gtk/makefile.{cygwin,msc}: Updates.
14484
14485 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
14486
14487         * docs/Changes-1.4.txt: A bit of editing.
14488
14489         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
14490         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
14491         to clear the update area for the window, and clear it
14492         when hiding a window.
14493
14494         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
14495         if window destroyed.
14496
14497         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
14498
14499         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
14500         gdk_window_destroy() to the generic code, since there was a lot of 
14501         window-system-independent logic it in. Add a function:
14502         
14503          _gdk_window_destroy() 
14504
14505         to the internal API to destroy a window without unreferencing it.
14506         Add a function:
14507
14508          _gdk_windowing_window_destroy()
14509
14510         That does the windowing-system-dependent part of destroying 
14511         the window.
14512
14513 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
14514
14515         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
14516
14517 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
14518
14519         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
14520         Make gtk_widget_shape_combine_mask() keep a reference count on
14521         the pixmap since it keeps it around.
14522
14523 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
14524
14525         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
14526         leak.
14527
14528         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
14529         leak with event filters.
14530
14531 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
14532
14533         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
14534         signal handlers with the right data arguments. (Fixes
14535         some warnings when a widget was repeatedly set as a drag
14536         destination.)
14537
14538         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
14539         window so we can avoid avoid setting the DND properties on the
14540         toplevel window repeatedly.
14541
14542 2000-05-13  Tor Lillqvist  <tml@iki.fi>
14543
14544         * gdk/win32/gdkwin32.h: Define more message types missing from
14545         mingw headers.
14546
14547         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
14548         call gdk_window_destroy_notify(). It was never called. This
14549         probably meant that the GdkWindow was never freed. Thanks Owen for
14550         noticing (!).
14551
14552         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
14553         window as destroyed before calling DestroyWindow(). DestroyWindow()
14554         causes a call to the window procedure (gdk_WindowProc), which
14555         calls gdk_event_translate(), which calls
14556         gdk_window_destroy_notify(), which gets confused unless the window
14557         is set as destroyed.
14558
14559         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
14560         this function to indicate it's win32 only. Put inside #ifdef
14561         G_ENABLE_DEBUG.
14562
14563         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
14564         debugging function. (gdk_event_translate:) Add a default branch
14565         that uses the above function to print debug messages with all
14566         Windows messages symbolically.
14567
14568         * gdk/win32/gdkprivate-win32.h: Declare it, and
14569         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
14570
14571 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
14572
14573         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
14574         public header file.
14575
14576 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
14577
14578         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
14579
14580         * gtk/gtktext.c: made the adjustments no-construct args, simply
14581         provide default adjustments.
14582         (gtk_text_destroy): release adjustments.
14583
14584         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
14585         adjustment argument non-construct.
14586
14587         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
14588         instead of in finalize.
14589         (gtk_progress_get_text_from_value): 
14590         (gtk_progress_get_current_text): 
14591         (gtk_progress_set_value): 
14592         (gtk_progress_get_percentage_from_value): 
14593         (gtk_progress_get_current_percentage): 
14594         (gtk_progress_set_percentage): 
14595         (gtk_progress_configure): ensure an adjustment is present.
14596
14597 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
14598
14599         * gtk/gtkcolorsel.[hc]:
14600         * gtk/gtkcolorseldialog.[hc]:
14601         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
14602         their parent implementation, use bit fields for boolean values, don't
14603         create unused widgets, usage of glib types, braces go on their own
14604         lines, function argument alignment, #include directives etc. etc. etc..
14605
14606         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
14607
14608 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
14609
14610         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
14611
14612         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
14613         of NULL.
14614
14615         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
14616         to freed data.
14617         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
14618
14619         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
14620         to NULL when the toplevel is getting destroyed.
14621         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
14622         (gtk_menu_destroy): 
14623         (gtk_menu_init): store the information of whether we have to
14624         readd the initial child ref_count during destruction in a new
14625         GtkMenu field needs_destruction_ref_count.
14626
14627         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
14628         here, those reading: learn from my mistake! ;)
14629         in order for set_?adjustment to support a default adjustemnt if
14630         invoked with an adjustment pointer of NULL, the code read (pseudo):
14631         if (v->adjustment) unref (v->adjustment);
14632         if (!adjustment) adjustment = adjustment_new ();
14633         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
14634         now imagine the first unref to actually free the old adjustment and
14635         adjustment_new() creating a new adjustment from the very same memory
14636         portion. here, the latter comparision will unintendedly fail, and
14637         all hell breaks loose.
14638         (gtk_viewport_set_hadjustment):
14639         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
14640         after unreferencing it.
14641
14642         * gtk/gtkcontainer.[hc]: removed toplevel registration
14643         functions: gtk_container_register_toplevel(),
14644         gtk_container_unregister_toplevel() and
14645         gtk_container_get_toplevels() which had wrong semantics
14646         anyways: it didn't reference and copy the list.
14647
14648         * gtk/gtkwindow.c: we take over the container toplevel registration
14649         bussiness now. windows are registered across multiple destructions,
14650         untill they are finalized. the initial implicit reference count
14651         users are holding on windows is removed with the first destruction
14652         though.
14653         (gtk_window_init): ref & sink and set has_user_ref_count, got
14654         rid of gtk_container_register_toplevel() call. add window to
14655         toplevel_list.
14656         (gtk_window_destroy): unref the window if has_user_ref_count
14657         is still set, got rid of call to
14658         gtk_container_unregister_toplevel().
14659         (gtk_window_finalize): remove window from toplevel list.
14660         (gtk_window_list_toplevels): new function to return a newly
14661         created list with referenced toplevels.
14662         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
14663
14664         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
14665         adjustment a non-construct arg.
14666         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
14667         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
14668         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
14669
14670         * gtk/gtkrange.c: added some realized checks.
14671         (gtk_range_destroy): get rid of the h/v adjustments in the
14672         destroy handler instead of finalize. remove timer.
14673         (gtk_range_get_adjustment): demand create adjustment.
14674
14675         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
14676         we simply create them on demand now and get rid of them in
14677         the destroy handler.
14678         (gtk_viewport_destroy): get rid of the h/v adjustments in the
14679         destroy handler instead of finalize.
14680         (gtk_viewport_get_hadjustment): 
14681         (gtk_viewport_get_vadjustment): 
14682         (gtk_viewport_size_allocate): demand create h/v adjustment
14683         if required.
14684
14685         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
14686         gtk_widget_real_destroy () functionality.
14687         (gtk_widget_real_destroy): reinitialize with a new style, instead
14688         of setting widget->style to NULL.
14689
14690 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
14691
14692         * gtk/gtkcalendar.c:
14693         * gtk/gtkbutton.c: ported _get_type() implementation over to
14694         GType, either to preserve memchunks allocation facilities,
14695         or because Gtk+ 1.0 GtkTypeInfo was still being used.
14696
14697         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
14698         over. prepare for ::destroy to be emitted multiple times.
14699         removed reference tracer magic. chain into GObjectClass.shutdown()
14700         to emit ::destroy signal.
14701
14702         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
14703         fundamental.
14704
14705         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
14706         cludge.
14707
14708         * gtk/gtksocket.c:
14709         * gtk/gtkplug.c:
14710         * gtk/gtklayout.c:
14711         * gtk/gtklabel.c:
14712         * gtk/gtkargcollector.c:
14713         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
14714         not being a fundamental anymore, and to work with the new
14715         type system (nuked fundamental type varargs clutter).
14716
14717         * gtk/*.c: install finalize handlers in the GObjectClass
14718         part of the class structure.
14719         changed direct GTK_OBJECT()->klass accesses to
14720         GTK_*_GET_CLASS().
14721         changed direct object_class->type accesses to GTK_CLASS_TYPE().
14722
14723         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
14724         GType. made most of the GTK_*() type macros and Gtk* typedefs
14725         simple wrappers around macros and types provided by GType.
14726         most notably, a significant portion of the old API vanished:
14727         GTK_TYPE_MAKE(),
14728         GTK_TYPE_SEQNO(),
14729         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
14730         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
14731         GTK_TYPE_ARGS,
14732         GTK_TYPE_CALLBACK,
14733         GTK_TYPE_C_CALLBACK,
14734         GTK_TYPE_FOREIGN,
14735         GtkTypeQuery,
14736         gtk_type_query(),
14737         gtk_type_set_varargs_type(),
14738         gtk_type_get_varargs_type(),
14739         gtk_type_check_object_cast(),
14740         gtk_type_check_class_cast(),
14741         gtk_type_describe_tree(),
14742         gtk_type_describe_heritage(),
14743         gtk_type_free(),
14744         gtk_type_children_types(),
14745         gtk_type_set_chunk_alloc(),
14746         gtk_type_register_enum(),
14747         gtk_type_register_flags(),
14748         gtk_type_parent_class().
14749         replacements, where available are described in ../docs/Changes-1.4.txt.
14750         implemented compatibility functions for the remaining API.
14751
14752         * configure.in: depend on glib 1.3.1, use gobject module.
14753
14754 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
14755
14756         * TODO.xml: Various updates to current status.
14757
14758 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
14759
14760         * gtk.m4: Print out version when test succeeds.
14761
14762 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
14763
14764         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
14765         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
14766         
14767         (Original triangle color selector from Simon Budig
14768         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
14769         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
14770         Santiago <mrcooger@cyberverse.com>)
14771
14772         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
14773         out into a separate widget.
14774
14775         * gtk/testgtk.c: Add some checkbuttons for toggling palette
14776         and opacity controls.
14777
14778 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
14779
14780         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
14781         snuck in prematurely.
14782
14783 2000-05-07  Tor Lillqvist  <tml@iki.fi>
14784
14785         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
14786         had deleted a ! operator by mistake, which caused
14787         GDK_SELECTION_CLEAR events never to be generated, which caused
14788         only the first copy to the clipboard from an gtkeditable to
14789         actually cause a copy to the Windows clipboard.
14790
14791 2000-05-06  Tor Lillqvist  <tml@iki.fi>
14792
14793         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
14794         compilation, too. Current mingw gcc distributions include the
14795         necessary headers. Also the necessary IIDs are now in mingw
14796         headers/libraries, and own definitions unnecessary.
14797
14798         More hacking on OLE2 DND, still doesn't work though, and thus
14799         ifdeffed out.
14800
14801         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
14802         here, too.
14803
14804 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
14805
14806         * gdk/nanox/*: nano-X port work in progress.
14807         * gdk/simple.c: simple test for Gdk.
14808         * README.nanox: notes about the port: read this first!
14809         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
14810         with nano-X.
14811
14812 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
14813
14814         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
14815         gdk_window_clear() into common code, implement in terms of
14816         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
14817         not redirected to the backing rectangle.
14818
14819 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14820
14821         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14822         EXTRA_DIST. It does not work well when the file that
14823         everything depends on is not in the tarball.
14824
14825 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
14826
14827         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
14828         with recursion where process_updates() is called from
14829         an expose handler. (GtkTextView is highly broken in
14830         doing this, but it should work, so it is a nice test
14831         case.)
14832
14833 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14834
14835         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
14836         handle the case where updates are queued during processing of
14837         updates.
14838
14839 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14840
14841         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
14842         window is on gdk_display - use that instead of segfaulting.
14843
14844 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
14845
14846         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
14847         broken and require an empty arg, give it to them.
14848
14849 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
14850
14851         * gtk/gtklabel.h: indentation fixes.
14852
14853 2000-05-02  Tor Lillqvist  <tml@iki.fi>
14854
14855         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
14856         draw too narrow or too low arcs, they seem to fail, at least with
14857         some display drivers.
14858
14859         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
14860
14861         Large changes to the Win32 backend, partially made necessary by
14862         the changes to the backend-independent internal
14863         structures. Attempts to implement similar backing store stuff as
14864         on X11. The current (CVS) version of the Win32 backend is *not* as
14865         stable as it was before the no-flicker branch was merged. A
14866         zipfile with that version is available from
14867         http://www.gimp.org/win32/. That should be use by "production"
14868         code until this CVS version is usable. (But note, the Win32
14869         backend has never been claimed to be "production quality".)
14870
14871         * README.win32: Add the above comment about versions.
14872
14873         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
14874
14875         * gdk/gdk.def: Update.
14876
14877         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
14878         presumably be replaced by some more better mechanism as 1.4 gets
14879         closer to release shape.
14880
14881         * gdk/makefile.{cygwin,msc}: Update.
14882
14883         * gdk/win32/*.c: Correct inclusions of the backend-specific and
14884         internal headers. Change code according to changes in these. Use
14885         gdk_drawable_*, not gdk_window_* where necessary.
14886
14887         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
14888         our old DND.
14889
14890         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
14891         to interpret single characters as UTF-8. Thanks to Hans Breuer.
14892         Use correct function name in warning messages.
14893
14894         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
14895         GSourceFuncs gdk_event_prepare and gdk_event_check.
14896         (gdk_event_get_graphics_expose): Do implement, use
14897         PeekMessage. Thanks to Hans Breuer.
14898         (event_mask_string): Debugging function to print an GdkEventMask.
14899         (gdk_pointer_grab): Use it.
14900
14901         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
14902         (old) book I used claimed was Hangul actually is CJK Unified
14903         Ideographs Extension A. Also, Hangul Syllables were missing.
14904         Improve logging.
14905
14906         * gdk/win32/gdkgc-win32.c: Largish changes.
14907
14908         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
14909         g_win32_getlocale() from GLib, and not setlocale() to get current
14910         locale name.
14911
14912         * gdk/win32/gdkprivate-win32.h
14913         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
14914         gdkwin32.h, similarily as in the X11 backend.
14915
14916         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
14917         assignment was used instead of equals in if test. Thanks to Hans
14918         Breuer.
14919
14920         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
14921         the X11 version.
14922
14923         * gdk/win32/makefile.{cygwin,msc}
14924         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
14925         path to the Win32 headers that works also with the mingw compiler.
14926
14927         * gtk/gtkstyle.c: Include <string.h>.
14928
14929 2000-04-26  Havoc Pennington  <hp@redhat.com>
14930
14931         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
14932         replacing the broken gtk_label_get ()
14933
14934 2000-04-15  Havoc Pennington  <hp@pobox.com>
14935
14936         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
14937         this keeps scanner scripts from getting confused.
14938
14939         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
14940         data, rather than void
14941
14942 2000-04-15  Tor Lillqvist  <tml@iki.fi>
14943
14944         * gtk/gtkclist.c (gtk_clist_motion)
14945         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
14946         with is_hint FALSE, get x and y from the event. They used to be
14947         used uninitialised. The Win32 backend never sends motion events
14948         marked as hints. This for instance fixes the annoying file and
14949         font selector behaviour in the Win32 version.
14950
14951 2000-04-14  Tor Lillqvist  <tml@iki.fi>
14952
14953         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
14954         gtk_private_n_signals variables, they are used by some software,
14955         sigh.
14956
14957         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
14958         installation directory from the Registry, where the installer
14959         should have put it.
14960
14961 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
14962
14963         * gdk/x11/Makefile.am: Fix problem with installation directory for
14964         gdkx.h
14965
14966         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
14967         <mrcooger@cyberverse.com> so that when selecting menus with the
14968         mouse, the first item will not be selected, but when selecting
14969         with an accelerator, or navigating left-right on a menubar with
14970         the menus popped up, the first item will be selected.
14971
14972 2000-04-05  Dan Damian  <dand@dnttm.ro>
14973
14974         * configure.in: Added "ro" to ALL_LINGUAS.
14975
14976 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
14977
14978         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
14979         indentation.
14980
14981         * Makefile.am (EXTRA_DIST): Fix typo.
14982
14983         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
14984         to catch gdkconfig.h
14985
14986         * gtk/gtkitemfactory.c: Added FIXME.
14987
14988 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
14989
14990         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
14991         s/return_if_fail/return_val_if_fail/g and add a return value.
14992
14993 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14994
14995         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
14996         merge slipup.
14997
14998         * gdk/gdkinput.h: Fix missing line from merge.
14999
15000 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
15001
15002         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
15003         instead of gdkprivate.h.
15004
15005 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
15006
15007         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
15008         parent class to correctly be GtkDialogClass.
15009
15010 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
15011
15012         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
15013         toplevel windows and their immediate children by their parents,
15014         since the size of toplevel windows is out of our immediate
15015         control and we don't get any real benefit from trying to track
15016         this size for clipping.
15017
15018         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
15019         for input_only windows.
15020
15021         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
15022         to fix some hacks and make sure that we don't try to set the
15023         background of input only windows.
15024
15025 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
15026
15027         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
15028         the _really_ internal stuff, and leave gdkprivate.h for the fake private
15029         stuff that we've traditionally exposed.
15030
15031         * gdk/**.c: Use gdkinternals.h where appropriate.
15032
15033         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
15034         not include gdkprivate-x11.h, move all stuff of conceivable public
15035         interest into gdkx.h; keep all really private stuff in
15036         uninstalled header gdkprivate-x11.h.
15037
15038         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
15039         image->image_put on windows through a new function _gdk_window_draw_image()
15040         to allow us to do backing store for images. (Sort of ugly)
15041
15042         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
15043         contexts locally so that we can offset them properly when drawing 
15044         onto backing pixmaps.
15045
15046         * gdk/gdkinput.h: Reindented
15047
15048         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
15049         pixmap or color for the window, so we can properly initialize
15050         our double-buffer pixmaps, and also so that we temporarily set
15051         a background of None while scrolling.
15052
15053         * gdk/gdkregion.h: Revise region boolean operators to have an
15054         interface that is actually convenient - switch from creating new
15055         regions on every op, to "methods" that modify existing regions
15056         (A = A OP B). 3 argument forms which allow dest == src, would also
15057         be possible, but the current interfaces seem to map nicely
15058         onto what needs to be done. (There is quite a lot of region
15059         code in GDK now.)
15060
15061         * gdk/gdkregion.h: Add constructor from rectangle and a copy
15062         operator.
15063
15064         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
15065         gdkpoly-generic.h: Copy region code from Xlib, switch it over
15066         to 32 bit coordinates, modify it to be mostly GTK+ style
15067         and to have interfaces that match gdkregion.h.
15068
15069         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
15070         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
15071         create a backing pixmap and redirect all drawing to
15072         that backing pixmap until a matching gdk_window_end_paint().
15073
15074         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
15075         Create a special drawable class for GtkWindow's that 
15076         redirects the drawing to the backing pixmap as necessary
15077         and then calls the real operations in _gdk_windowing_window_class.
15078
15079         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
15080         Store invalid region for each window. Generate expose events for invalid
15081         region in an idle. This replaces both the expose compression
15082         and the redrawing queuing in GTK+. It is both more efficient and
15083         simpler than either one individually and far more so then the
15084         combination.
15085
15086         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
15087         Emulate 32 bit coordinates for windows with 16 bit coordinates
15088         by offsetting drawing, guffaw scrolling techniques and
15089         mapping/unmapping child windows as necessary.
15090
15091         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
15092         where, when invalid regions are processed, the region is stored,
15093         and if expose events come in that are detectably duplicate
15094         the processed exposes (by comparison of event serial numbers),
15095         the stored region is subtracted out of those exposes.
15096
15097         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
15098         regions newly exposed when scrolling or resizing windows.
15099         This, combined with forcing processesing of queued invalidated
15100         regions, gives nice flicker-free scrolling.
15101
15102         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
15103         invalidated regions after every scroll.
15104
15105         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
15106         emulation in GDK. Its, for all practical purposes just a
15107         GtkViewport/GtkFixed hybrid now.
15108
15109         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
15110         (16-bit) structures as necessary instead of just casting.
15111
15112         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
15113         in terms of the structures from gdkregion-generic.c, using appropriate
15114         offsets from GDK to X11 coordinates. Cache clip mask and
15115         origin and ts origin locally and only flush to the server
15116         when drawing, to avoid constantly setting and resetting these
15117         values when offsetting GC's for scrolling and backing pixmaps.
15118
15119         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
15120
15121         * gtk/gtkcontainer.c: Call process_all_updates at end
15122         of resizing to reduce flicker. (Avoids having redraw
15123         lag arbitrarily behind resize under some circumstances)
15124
15125         * gtk/gtkentry.c: Remove old backing store code, and simply take
15126         advantage of the new backing store capabilities of GDK.
15127
15128         * gtk/gtkmain.c: Simple implementation of widget backing
15129         store - simply push a paint while handling each expose.
15130         (Should really be configurable widget for widget.)
15131         
15132         * gtk/gtkwidget.c: Remove all the old complicated redraw
15133         code, and simply invalidate the GDK windows from
15134         gdk_window_queue_clear(), etc. (Sigh, so much carefully
15135         debugged complexity ... gone to the winds.)
15136
15137         Remove all the code for suppressing expose events while
15138         resizes are pending; this isn't needed since the invalid
15139         areas won't be processed until after the resizes are
15140         processed, since they are in a lower priority idle.
15141
15142 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
15143
15144         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
15145         and height of dest rectangle for non-intersecting rectangles.
15146
15147 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
15148
15149         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
15150         for GdkRectangle.
15151
15152 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
15153
15154         * gdk/gdk{events,image,private,types,window}.h
15155          gdk/x11/gdkinputprivate.h: Change all coordinates
15156          from int16 to int. Also, Change width and height from
15157          unsigned to signed to avoid all the stupid C 
15158          signedness bugs.
15159
15160 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
15161
15162         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
15163         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
15164         Add some more detailed checking.
15165
15166         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
15167         New function to retrieve the depth of a drawable.
15168
15169         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
15170         field, reorder fields to save memory. 
15171
15172 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
15173
15174         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
15175         of the background image instead of scaling the background down to
15176         a line.
15177
15178         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
15179         which temporarily set slider to wrong size.
15180
15181         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
15182         queue_clear().
15183
15184 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
15185
15186 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
15187
15188         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
15189
15190 2000-03-17  Tor Lillqvist  <tml@iki.fi>
15191
15192         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
15193         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
15194
15195         * gdk/win32/gdkfont-win32.c
15196         * gdk/win32/gdkproperty-win32.c
15197         * gdk/win32/gdkselection-win32.c
15198         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
15199         now declared such.
15200
15201 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
15202
15203         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
15204
15205 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
15206
15207         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
15208         is called without trapping X errors.
15209
15210 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
15211
15212         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
15213         way into the fontset lists.
15214
15215 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
15216
15217         * gtk/gtkthemes.h: add extern "C" scope.
15218
15219 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
15220
15221         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
15222         to make appends to the list constant. (gtk-guy-990901-0.patch)
15223
15224 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15225
15226         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15227         for the typename hash table.
15228
15229 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15230
15231         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15232         to make sure we never divide by zero. 
15233         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15234
15235 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15236
15237         * gtk/gtkfontsel.c: Apply patch from
15238         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15239         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15240
15241         Also, some cleanups in atom handling.
15242
15243 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15244
15245         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15246         not GtkWidget.
15247
15248 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15249
15250         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15251         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15252         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15253         more guint wrap-around bugs before going to bed.
15254
15255 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15256
15257         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15258         guint wrap arounds in allocation.width.
15259
15260         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15261         process untill we fit the allocation given.
15262
15263 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15264
15265         * gtk/gtkwidget.c:
15266         (gtk_widget_unrealize): guard widget access with ref/unref
15267         around signal emission.
15268         (gtk_widget_hide): same here, but also check its destroyed
15269         state before queueing a resize.
15270
15271 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15272
15273         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15274         of gtk_default_insensitive_bg as insensitive base color.
15275
15276         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15277         to the widget's state.
15278         (gtk_text_realize): same here.
15279         (gtk_text_state_changed): same here.
15280         (draw_bg_rect): compare background color against base[] from
15281         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
15282
15283 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
15284
15285         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
15286         grabs are active, unless a delete event is send to the toplevel
15287         of the currently grab holding widget.
15288
15289 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
15290
15291         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
15292         debugging g_print's.
15293
15294 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
15295
15296         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
15297         ever make the scrolled-window requisition ever depend on the 
15298         visibility state of the scrollbars for the AUTOMATIC policy. 
15299         This breaks the GTK+ requisition model, and causes loops.
15300
15301 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
15302
15303         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
15304         the default font to avoid problems with XFree86-4.0 where the
15305         default charset is iso10646-1, not iso8859-1.
15306
15307 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
15308
15309         * acinclude.m4
15310         * config.guess
15311         * config.sub
15312         * ltconfig
15313         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
15314
15315         * gtk/Makefile.am: minor cosmetic consistency tweak
15316
15317 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
15318
15319         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
15320         the activate_time to 0, so that we handle a quick
15321         press/release press/release properly and don't suppress
15322         the second release. (Red Hat bug #7545)
15323
15324 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
15325
15326         * gtk/gtkctree.c (row_delete):
15327         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
15328         bugs with destruction notifier, *always* update internal
15329         structures *before* calling user code.
15330
15331 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
15332
15333         A few more fixes for bug #5487, #2051, #2677.
15334         * gtk/gtkclist.c : 
15335         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
15336         not GDK_BUTTON_PRESS.
15337         (resync_selection): resync only if selection_mode is
15338         GTK_SELECTION_EXTENDED
15339         * gtk/gtkctree.c (resync_selection): same here
15340
15341 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
15342
15343         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
15344         gdk_drag_get_selection() and gtk_menu_detach().
15345
15346         [ From Jeroen Ruigrok/Asmodai ]
15347
15348 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
15349
15350         * gtk/gtknotebook.c (gtk_notebook_size_request): 
15351         page->tab_label can be NULL.
15352
15353 2000-01-25  Havoc Pennington  <hp@pobox.com>
15354         
15355         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
15356         arg is boolean
15357
15358         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
15359
15360         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
15361
15362         * gdk/gdkproperty.c (gdk_property_get): return boolean
15363
15364         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
15365
15366         * gdk/gdkim.c (gdk_im_ready): return boolean
15367
15368         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
15369
15370         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
15371         glib clash, should fix glib)
15372
15373         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
15374         (gdk_get_show_events): return gboolean, and canonicalize 
15375         to TRUE/FALSE
15376
15377         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
15378         colormap is private
15379         (gdk_colors_alloc): gboolean whether to be contiguous
15380         (gdk_color_equal): return gboolean since we are a predicate
15381         and not a qsort() (this looks semi-wrong due to glib breakage,
15382         IMO glib should be fixed)
15383         
15384         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
15385         (gdk_get_use_xshm): return gboolean
15386         (gdk_pointer_is_grabbed): return gboolean
15387
15388         * gdk/gdk.h: Change prototypes to match all the above changes,
15389         and re-run egtk-format-protos as required.
15390
15391 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
15392
15393         * gtk/gtkctree.c (resync_selection): 
15394         * gtk/gtkclist.c (resync_selection):
15395
15396         Return immediately if clist->drag_pos < 0. This is a workaround
15397         for the corrupt state that the clist gets into when a
15398         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
15399
15400         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
15401         
15402         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
15403         variable from recent commit.
15404
15405 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
15406
15407         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
15408
15409 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
15410
15411         * gtk/Makefile.am: prefix all autogenerated source that get build in
15412         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
15413         in builddir. since we subsequently cd into srcdir for autogeneration,
15414         the paths have to be stripped from the target file names, thusly we
15415         use $(@F) as target names now.
15416         put a comment about configure.in's --disable-rebuilds option,
15417         which can be used for non-writable source directories, for development
15418         setups though, srcdir has to be *writable*.
15419
15420 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
15421
15422         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
15423           Finish the job of allowing event to be NULL.
15424           (Fixes bug #4283, reported by Chris Blizzard)
15425
15426         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
15427           things so that the cursor appears on screen, properly
15428           take into account INNER_BORDER.
15429           (Fixes bug #4754, reported by Antonio Campos)
15430
15431 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
15432
15433         * gtk/gtknotebook.c (gtk_notebook_map): Don't
15434           show the tab_label unless it itself is visible.
15435
15436           gtk/gtknotebook.c (gtk_notebook_size_request):
15437           Do a better job of making sure that the visibility
15438           of the tab label corresponds to whether it should
15439           be mapped or not.
15440
15441 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
15442
15443         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
15444           Use the requisition, not the allocation, since the
15445           allocation has not necessarily been computed yet.
15446           (Pointed out by Eugene Osintsev)
15447
15448 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
15449
15450         * gtk/gtkstyle.c (gtk_style_new): Dont' set
15451           style/base[GTK_STATE_INSENSITIVE] both to
15452           gtk_default_insensitive_bg!
15453           (Bug #2187, reported by Jonathan Blandford)
15454
15455         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
15456           Add Alt_L, Alt_R to list of invalid accelerators.
15457           (Bug #3736, reported by Vlad Harchev)
15458
15459 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
15460
15461         * gtk/gtkfilesel.c (open_ref_dir): Fix several
15462         bugs which occured after an attempt to open 
15463         invalid home directory left cmpl_state->reference_dir == NULL.
15464
15465          - completion on files in home directory didn't work
15466          - completion on an empty string caused  segfault
15467
15468          (Bug #3678, reported by Steve Ratcliffe)
15469
15470         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
15471         cut and paste error that was causing scales to
15472         be incorrectly positioned.
15473         (Bug #2956,
15474          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
15475
15476 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
15477
15478         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
15479         when checking for dcgettext, if we've found we needed
15480         it for dgettext.
15481 +
15482 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
15483
15484         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15485         queue_clear on NO_WINDOW widgets during a reparent,
15486         since at that point the window and widget heirarchies
15487         are out of sync. This stops crashing in some cases
15488         (the scrolled window reparent test, for instance), and
15489         _probably_ won't cause drawing errors.
15490
15491         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
15492         test do what it was supposed to do and be robust against
15493         window closings, etc. (Bug #2443)
15494
15495 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
15496
15497         * gtk/gtkentry.c: Fix return values on mouse events.
15498         (Bug #2686, Sky <seb_sky@yahoo.com>)
15499
15500         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
15501         (pointed out by George Lebl)
15502
15503         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
15504         (From Ettore Perazzoli  <ettore@helixcode.com>)
15505  
15506 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
15507
15508         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
15509         clicks between rows or outside calender area correctly.
15510         (Patch from Damon Chaplin)
15511
15512         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
15513         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
15514           Call destroy function when overwriting existing data. 
15515           (Pointed out by Damon Chaplin)
15516
15517 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
15518
15519         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
15520           which was causing problems on various systems with Xmu.
15521           This hasn't been needed for a very long time.
15522           (Fixes #1185 3167)
15523
15524 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
15525
15526         * gdk/gdki18n.h: Include <ctype.h> when defining
15527           gdk_isw* in terms of is* as a fallback.
15528           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
15529
15530 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
15531
15532         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
15533           realize the widget when it is size allocated!
15534           (old, old bug)
15535
15536         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
15537           Removed unused call to gdk_window_get_size() that
15538           showed up when the above was fixed.
15539
15540 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
15541
15542         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
15543           fix up widget->window when the widget is a
15544           NO_WINDOW container widget.
15545
15546 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
15547
15548         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
15549           to account for the fact that feof() does _not_ 
15550           return TRUE on errors, and thus avoid infinite loops
15551           when trying to use gdk_pixmap_create_from_xpm()
15552           on unreadable values.
15553
15554 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
15555
15556         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
15557
15558 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
15559
15560         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
15561           gdk_gc_set_dashes to take gint8 instead of gchar to
15562           make it clearer that it is _not_ a NULL terminated string.
15563
15564         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
15565           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
15566           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
15567           arguments.
15568
15569 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
15570
15571         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
15572         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
15573         background size relative to our allocation, guard against small
15574         allocations, we may have not yet been size allocated.
15575
15576 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
15577
15578         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
15579         not just version == 3. We implement all 3 + most of 4 - 
15580         (we don't support matching text/plain;charset=iso-8859-1
15581         to a dest that expects text/plain). We'll still advertise
15582         3 to be safe, but any client implementing version >= 3
15583         must interoperate with 3.
15584         
15585 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15586
15587         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
15588         background and gc members, add a warning in gtk_tooltips_set_color()
15589         indicating that this function is deprecated.
15590
15591 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
15592
15593         * docs/gtkfaq.sgml: FAQ Update:
15594           - Minor cleanups (Emmanuel, me)
15595           - New questions:
15596                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
15597                 How can I retrieve the text from a GtkMenuItem? (timj)
15598                 How do I validate/limit/filter the input to a GtkEntry? (me)
15599                 Memory does not seem to be released when I free the list
15600                         nodes I've allocated (timj)
15601
15602 2000-03-07  Tor Lillqvist  <tml@iki.fi>
15603
15604         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
15605         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
15606         for which it is no use to call GetLastError onWin9x.
15607         (gdk_other_api_failed) New function, for general error
15608         reporting without calling GetLastError.
15609         (gdk_win32_api_failed) OTOH, this function always calls
15610         GetLastError. (gdk_win32_last_error_string) Remove this function,
15611         GLib has the equivalent now.
15612
15613         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
15614         call them with function name, file name and line number in the
15615         arguments.
15616
15617         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
15618         functions.
15619         
15620         * gtk/gtk.def: Add some missing entry points.
15621
15622         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15623         gtk_paned_set_gutter_size, which don't exist any longer, as void.
15624         
15625         Fixes by Hans Breuer:
15626
15627         * gdk/makefile.msc: Update for debugging.
15628
15629         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
15630         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
15631         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
15632         in the dash_list.
15633
15634         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
15635         the x11 backend.
15636
15637         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
15638
15639         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
15640
15641 2000-03-04  Tor Lillqvist  <tml@iki.fi>
15642
15643         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
15644         just pixel value of background colour.
15645
15646         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
15647         containing code snippet previously duplicated in a couple of
15648         places.
15649         
15650         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
15651         gdk_colormap_color.
15652
15653         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
15654         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
15655         events for autorepeated Shift, Control and Alt keys. Use
15656         gdk_colormap_color.
15657
15658         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
15659         pointer is inside the window the cursor of which we are setting,
15660         call SetCursor immediately.
15661
15662         * gdk/win32/makefile.cygwin
15663         * gtk/makefile.cygwin: If we don't have the build number stamp
15664         file, use zero.
15665
15666         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15667         gtk_paned_set_gutter_size as empty.
15668
15669         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
15670         
15671 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
15672
15673         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
15674           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
15675           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
15676           docs/gtk_tut.sgml docs/gtk.texi TODO:
15677
15678           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
15679
15680 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
15681
15682         * gtk/gtkcalendar.c: Implement num_marked_dates,
15683           and don't emit mutiple day_selected signals on
15684           month_prev.
15685
15686 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
15687
15688         * docs/make-todo (lineno): let title and logo be configurable so
15689         that GNOME can use this script too.
15690
15691         * TODO.xml: added logourl and a title
15692
15693 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
15694
15695         * TODO.xml: Added some UI items, and an explanatory
15696         comment at the top of the file.
15697
15698 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
15699
15700         * TODO.xml: some updates, added abunch of new entries.
15701         a note for those fiddeling with this file, when done
15702         with it, invoke:
15703         $ ./docs/make-todo TODO.xml >/dev/null
15704         and correct output errors before comitting changes.
15705
15706 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
15707
15708         * TODO.xml: Added XML-structured TODO file.
15709         * docs/make-todo: python script to turn TODO.xml into
15710           pretty XML output. 
15711
15712 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
15713
15714         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
15715         the function to let it draw the seven dots, instead of the old,
15716         much maligned, method.
15717         (draw_dot): New function to draw a dot.
15718
15719         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
15720         to draw the handle inside the border width as opposed to outside.
15721         Use paint function instead of gdk_draw_point.
15722
15723         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
15724         to draw the handle inside the border width as opposed to outside.
15725         Use paint function instead of gdk_draw_point.
15726
15727         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
15728         Change indenting to be more GTK like.
15729
15730 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
15731
15732         * docs/gtk_tut.sgml: New section on GtkCalendar
15733         * examples/calendar: Update example code
15734
15735 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
15736
15737         * docs/gtkfaq.sgml: FAQ Update
15738
15739 2000-02-19  Anders Carlsson  <andersca@gnu.org>
15740
15741         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
15742         to prevent the scroll event to be propagated upwards.
15743
15744 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15745
15746         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
15747         OwnerGrabButtonMask from button entries for
15748         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
15749
15750         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
15751         to the event mask (which will result in button/press release
15752         being added to the event mask on Unix) so scrolling works
15753         for layouts in scroll windows.
15754
15755         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
15756
15757         Patch from Anders Carlsson  <andersca@gnu.org> to add
15758         a scroll event.
15759
15760         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
15761         scrolling to the "Test Scrolling" part of testgtk.
15762  
15763         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
15764  
15765         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
15766         it against GDK_SCROLL.
15767  
15768         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
15769         way of mouse wheel scrolling.
15770  
15771         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
15772  
15773         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
15774  
15775         * gtk/gtkmain.c: Removed previous mouse wheel hack.
15776  
15777         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
15778         gdk_event_mask_table.
15779  
15780         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
15781         GdkEventScroll handler.
15782  
15783         * gdk/gdkevents.h: Added GdkEventScroll structure.
15784  
15785 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
15786
15787         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
15788         and Anders Carlsson to change the Paned widgets so that they
15789         can be dragged from anywhere along the length. Also change
15790         the way that this is drawn to make this apparent.
15791
15792         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
15793         from George Lebl to check that option_menu->menu is present
15794         before getting history.
15795
15796 2000-02-14  Tor Lillqvist  <tml@iki.fi>
15797
15798         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
15799         before the assertion for non-NULL segment list.
15800
15801         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
15802         Seems that pattern brushes *must* be 8x8 pixels! At least on my
15803         machine, but it might be display driver dependent. Sigh, so make
15804         sure the stipple is that size. Does Windows suck or what?
15805
15806         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
15807         places.
15808
15809 2000-02-13  Havoc Pennington  <hp@pobox.com>
15810
15811         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
15812         refcount to 1
15813         (gdk_cursor_new): init refcount to 1
15814
15815         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
15816
15817 2000-02-13  Tor Lillqvist  <tml@iki.fi>
15818
15819         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
15820         so that we don't have to do unnecessary settings to the HDC.
15821
15822         * gdk/win32/gdkdrawable-win32.c
15823         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
15824         gdk_gc_predraw.
15825
15826         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
15827         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
15828         GDI paths, call WidenPath to get the outline of the stroken path,
15829         and then fill the outline (with the brush that was built from the
15830         stipple).
15831
15832         * gdk/win32/gdkgc-win32.c: Factor out common code from
15833         _gdk_win32_gc_new and gdk_win32_gc_set_values into
15834         gdk_win32_gc_values_to_win32values. Use correct colour for
15835         SetBkColor() (Until now the code actually used a random colour in
15836         the call to SetBkColor()... but that didn't show up as not many
15837         GDI APIs use the background colour. Pattern (opaque stippled)
15838         brushes do.)
15839
15840         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
15841         gdk_win32_api_failed): New functions for error logging.
15842
15843         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
15844         WIN32_API_FAILED to call them, passing function or file name and
15845         line number.
15846
15847         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
15848
15849         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
15850         GdkColor for foreground and background in GdkGCWin32Data.
15851
15852         * gdk/makefile.cygwin: Link in the resource object separately.
15853
15854         * gdk/win32/rc/gdk.rc
15855         * gtk/gtk.rc (New file)
15856         * gdk/win32/makefile.cygwin
15857         * gtk/makefile.cygwin: Update build number in DLLs automatically,
15858         as in GLib.
15859
15860 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
15861
15862         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
15863         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
15864         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
15865         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
15866         parameters given and cursor->ref_count. coding style fixups.
15867
15868         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15869         not GtkWidget.
15870         
15871         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
15872         fix up widget macros and add _GET_CLASS() variant.
15873         
15874         * gtk/*.c: some GtkType fixups.
15875
15876 2000-02-09  Tor Lillqvist  <tml@iki.fi>
15877
15878         * gdk/win32/gdkproperty-win32.c
15879         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
15880         were reversed.
15881
15882 2000-02-04  Tor Lillqvist  <tml@iki.fi>
15883
15884         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
15885         g_filename_to_utf8 to convert the font names Windows gives us from
15886         whatever is the default codepage to UTF-8.
15887         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
15888         in the other direction.
15889
15890         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
15891         error in debugging output.
15892
15893 2000-02-02  Tor Lillqvist  <tml@iki.fi>
15894
15895         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
15896         and height parameters to gdk_window_clear_area(). Not minus one.
15897
15898 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
15899
15900         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
15901         checks if the widget passed to gtk_drag_get_data() was not the
15902         dest widget.
15903
15904 2000-02-01  Tor Lillqvist  <tml@iki.fi>
15905
15906         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
15907         g_filename_from_utf8 functions (which were added a moment ago to
15908         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
15909         size buffers.
15910
15911         gtk_file_selection_get_filename returns the filename in the C
15912         runtime encoding. It calls g_filename_from_utf8, but copies the
15913         returned string to a static buffer, which is returned. I think
15914         this is better than returning the result from g_filename_from_utf8
15915         directly, which would mean all apps that use it would have to free
15916         the return value. Or should this function care about this issue at
15917         all? Maybe a new function with clearly defined semantics.
15918
15919         * gtk/gtkfilesel.h: Add comment about
15920         gtk_file_selection_get_filename returning the filename in the C
15921         runtime's encoding.
15922
15923         * README.win32
15924         * gdk/gdk.def
15925         * gdk/makefile.{cygwin,msc}
15926         * gtk/gtk.def: Updates.
15927
15928         * gdk/gdkcursor-win32.c: Initialise refcount.
15929
15930 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
15931
15932         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
15933
15934 2000-01-30  Havoc Pennington  <hp@pobox.com>
15935
15936         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
15937         destroy
15938
15939         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
15940
15941         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
15942         implemented in platform-specific code
15943
15944         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
15945
15946         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
15947         underscore in front
15948
15949         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
15950         put an underscore in front
15951
15952         * gdk/gdkcursor.c: new file, implements
15953         gdk_cursor_ref/gdk_cursor_unref
15954
15955         * gdk/gdkcursor.h: Refcount GdkCursor
15956
15957         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
15958
15959 2000-01-29  Tor Lillqvist  <tml@iki.fi>
15960
15961         * gdk/gdkwindow.h
15962         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
15963
15964 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15965
15966         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
15967         structures to properly inherit from GtkWidget not GtkBin.
15968
15969 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
15970
15971         * gtk+.spec.in: Added lib/gtk+/include/* to %files
15972         (bug #5178 - Peter Wainright)
15973         
15974         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
15975         so that it will be installed.
15976         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
15977
15978 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
15979
15980         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
15981         for the GtkStyleClass vtable const.
15982
15983         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
15984         take a const string argument like GtkTranslateFunc. This will
15985         require changes in use code.
15986
15987 2000-01-19  Tor Lillqvist  <tml@iki.fi>
15988
15989         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
15990         semantics (to mimic the X11 backend, which just calls XClearArea)
15991         is to check for zero width (and height), and in that case use the
15992         window's width minus x (height minus y). This fixes for instance
15993         some redraw problems with gtkclist, which were easily noticeable
15994         in the gtk file selection widget.
15995
15996         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15997         windows.
15998
15999 2000-01-13  Tor Lillqvist  <tml@iki.fi>
16000
16001         * configure.in
16002         * gdk/Makefile.am
16003         * gdk/x11/Makefile.am
16004         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
16005         (bug #5177).
16006         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
16007         out later.
16008
16009 2000-01-09  Tor Lillqvist  <tml@iki.fi>
16010
16011         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
16012         WM_MOVE for iconified or invisible windows. This fixes various
16013         problems when minimising windows. Thanks to Bernd Herd.
16014
16015 2000-01-05  Tor Lillqvist  <tml@iki.fi>
16016
16017         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
16018         backend's draw_lines method, not draw_points.
16019
16020 2000-01-02  Tor Lillqvist  <tml@iki.fi>
16021
16022         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
16023         before Owen's reorganisation: Don't have queued_events and
16024         queued_tail statics in this file, but use gdk_queued_events and
16025         gdk_queued_tail. This makes exposure event compression work again.
16026
16027         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
16028         seem to be needed?
16029
16030 1999-12-30  Tor Lillqvist  <tml@iki.fi>
16031
16032         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
16033         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
16034         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
16035         doesn't do anything.
16036
16037         * gdk/gdk.def: Add gdk_xid_table_insert.
16038
16039         * gdk/win32/gdkprivate-win32.h
16040         * gdk/win32/gdkevents-win32.c
16041         * gdk/win32/gdkinput-win32.c
16042         
16043         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
16044         extension_events field in the GdkWindowWin32Data struct. Use only
16045         the extension_events field in GdkWindowPrivate. Previously one was
16046         set, and the other one tested, which broke tablet
16047         functionality. Thanks to Keishi Suenaga for pointing this out.
16048
16049 1999-12-18  Tor Lillqvist  <tml@iki.fi>
16050
16051         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
16052         When handling a single character (text length == 1), don't handle
16053         it as if it was UTF-8.
16054
16055 1999-12-11  Tor Lillqvist  <tml@iki.fi>
16056
16057         * Makefile.am: Distribute README.win32.
16058         
16059         * gdk/Makefile.am
16060         * gdk/win32/Makefile.am: Distribute Win32 files.
16061
16062         * gdk/makefile.msc: New file.
16063
16064         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
16065         after label).
16066
16067         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
16068         gdk_error_code as GDKVAR, as they are referred outside GDK.
16069
16070         * gdk/win32/makefile.msc: Update.
16071
16072         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
16073         tweaks. Check only if at least one of those Unicode subrange bits
16074         we care for is set. If no code page bits are set, guess (wildly)
16075         based on the charset.
16076
16077         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
16078
16079         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
16080         non-NULL.
16081
16082         * gtk/gtkdnd.c
16083         * gtk/gtklayout.c
16084         * gtk/gtkplug.c
16085         * gtk/gtkselection.c
16086         * gtk/gtksocket.c
16087         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
16088         appropriate. There must be a cleaner way to handle this?
16089
16090         * gtk/gtkrc.c: Must include windows.h on Win32.
16091
16092         * gtk/testgtk.c: No need to include gdkx.h.
16093
16094         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
16095
16096 1999-12-07  Tor Lillqvist  <tml@iki.fi>
16097
16098         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
16099         the rbearing is set to the same as the width, but this should be
16100         fixed.
16101
16102 1999-12-06  Tor Lillqvist  <tml@iki.fi>
16103
16104         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
16105         function. If Windows doesn't tell us what Unicode subranges a font
16106         covers, guesstimate based on the codepages it covers. This will
16107         hopefully help those Windows versions or fonts that don't give us
16108         any useful Unicode subrange information with GetTextCharsetInfo.
16109         Call this function in gdk_font_load_internal.
16110
16111         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
16112         minor changes.
16113
16114 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
16115
16116         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
16117         New function, long needed.
16118
16119 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
16120
16121         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
16122         only_if_exists argument of gdk_atom_intern to
16123         bool.
16124
16125 1999-11-25  Tor Lillqvist  <tml@iki.fi>
16126
16127         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
16128         Fix two copy&paste errors.
16129
16130         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
16131         win32 has changed.
16132
16133         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
16134         GdkWin32SingleFont struct.
16135
16136         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
16137         subranges of loaded fonts. Clear font signature first, in case
16138         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
16139         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
16140
16141         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
16142         Unoffset clip region.
16143
16144 1999-11-23  Tor Lillqvist  <tml@iki.fi>
16145
16146         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
16147         event->any.window before calling filter functions.
16148
16149 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
16150
16151         * gtk/gtkgamma.h: Adapt cast macros to standard.
16152
16153 [ Merges from 1.2 ]
16154
16155 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
16156
16157         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
16158         If translation does not include a '/', use entire
16159         translation instead of crashing.
16160
16161 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
16162
16163         * docs/gtk_tut.sgml:
16164         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
16165
16166 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
16167
16168         * gtk/gtkselection.c (gtk_target_list_remove): Use
16169         g_list_remove_link, not g_list_remove.
16170
16171         [ From Geert Bevin <gbevin@thunderstorms.org> ]
16172         
16173 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
16174
16175         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
16176         statement upon unselection (how the heck did that slip in?).
16177
16178 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
16179
16180         * gtk/gtktext.c (gtk_text_freeze): 
16181         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
16182         in frozen state (and aparently crashes). patch provided by Anders
16183         Melchiorsen <and@kampsax.dtu.dk>.
16184
16185 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
16186
16187         * fix insensitive default/focus widget activation,
16188         reported by Matt Goodall <mgg@isotek.co.uk>.
16189
16190         * gtk/gtkwindow.c (gtk_window_key_press_event): 
16191         (gtk_window_activate_default):
16192         (gtk_window_activate_focus):
16193         return handled=FALSE for actiavtion of insensitive default
16194         widgets. return handled=TRUE for activation of insensitive
16195         focus widgets. don't activate in either case.
16196
16197 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
16198
16199         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
16200         and $glib_cflags to match library order and in the
16201         theory that an old version of GLib is more likely to
16202         be in the include directory for X then vice-versa.
16203         (Bug #2776)
16204
16205 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
16206
16207         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
16208         to determine the locale for fontsets, not LC_MESSAGES;
16209         the user may want English messages with a handling
16210         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
16211         will still be broken) (Bug #2891)
16212
16213 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16214
16215         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
16216
16217 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
16218
16219         * gtk/gtkrc.ko: Changed the Korean default fontset.
16220
16221 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
16222
16223         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16224         where when scrolling to the left or top double exposes
16225         were done, causing major slowdowns.
16226
16227 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16228
16229         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16230         names to lowercase and alphanumeric, before looking
16231         them up.
16232
16233         * gtk/Makefile.am: Install codeset variant gtkrc files
16234         with normalized names.
16235
16236 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16237
16238         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16239         popup menus when the menu is already visible, but its parent
16240         is still hidden, (happens after tornoff window got hidden).
16241
16242 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16243
16244         * gtk/Makefile.am (install-data-local): Fix
16245         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16246         deleted, causing error messages on install.
16247
16248 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16249
16250         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16251         the handle as well, since we now sometimes ignore
16252         exposes on the handle while resizing.
16253
16254 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16255
16256         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16257         extra g_free introduced in one of the last one or two 
16258         commits.
16259
16260 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16261
16262         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16263         consistent, put each style that a gtkrc.* file creates
16264         in a unique namespace, remove old files before installing.
16265
16266 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16267
16268         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16269         gtk_rc_init is called multiple times. (Yes, people who
16270         do that have bugs in their code.)
16271
16272 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16273
16274         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16275         Remove it since it's generated by the Makefile anyway
16276
16277 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16278
16279         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16280         device->info.axes for core pointer.
16281
16282 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
16283
16284         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
16285         idle_id, to deal with obsolete, broken C libraries.
16286
16287 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
16288
16289         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
16290         allocation->x/y twice!
16291
16292         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
16293         consistent with gtk_vscale_pos_trough().
16294
16295 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
16296
16297         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
16298         be queueing a resize on a toplevel container between
16299         the time we show it and when we map it. So, we need
16300         to test GTK_WIDGET_VISIBLE() for toplevels, and only
16301         use GTK_WIDGET_DRAWABLE() for child windows.
16302
16303 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
16304
16305         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
16306         (fixes bug #2144)
16307
16308 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
16309
16310         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
16311         container DRAWABLE (instead of VISIBLE), so we don't queue
16312         resizes on non-toplevel containers.
16313
16314 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
16315
16316         * gtk/gtkselection.[ch]: Make the data argument
16317         const guchar *.
16318
16319 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
16320
16321         * gtk/gtkwindow.c: Try to behave sensibly if 
16322         the focus widget is the window itself. (Should
16323         we allow this at all?)
16324
16325 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16326
16327         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
16328         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
16329         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
16330         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
16331         in prototypes and implementations consistent (Tomas Ogren).
16332
16333         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
16334         before the widget is unparented (reported by damon).
16335
16336         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
16337         since we provide unsigned data anyways.
16338
16339 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
16340
16341         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
16342         the call to gtk_tooltips_layout_text() until later.
16343
16344         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
16345         Call gtk_widget_ensure_style() before using the style.
16346
16347 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
16348
16349         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
16350         for old widgets that don't propagate draws to all
16351         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
16352
16353 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
16354
16355         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
16356         for a redraw but just the widget that requested the resize.
16357
16358 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
16359
16360         * gtk/gtkcontainer.c: added new widget level method
16361         gtk_container_set_reallocate_redraws() and a GtkContainer flag
16362         reallocate_redraws : 1 to reflect the setting, exported this through
16363         the argument system as a boolean ::reallocate_redraws.
16364
16365         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
16366         on the widget because the allocation changes, do so as well for
16367         widget->parent if the parent has reallocate_redraws set to TRUE.
16368         with that containers requesting reallocation redraws get automatically
16369         redrawn if their children changed allocation (this unfortunately
16370         affects also other children that didn't change allocation, but we
16371         cannot work around that before 1.3).
16372
16373 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16374
16375         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
16376         _and_ height are >0 (not _or_).
16377
16378         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
16379         instead of gtk_container_queue_resize(), which is a core gtk internal
16380         function (must have been on crack when i queued that).
16381
16382         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
16383         we can check more reliably if we want to discard expose events.
16384         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
16385         flag.
16386         
16387         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
16388         we simply trust these events. for deciding whether to discard exposes,
16389         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
16390         
16391 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
16392
16393         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16394         queues of areas that are completely off screen.
16395
16396         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
16397         logic for handleboxes.
16398
16399         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
16400         check on width/height.
16401
16402 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
16403
16404         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
16405         we are fine with using $@ the way we do (if we actually encounter
16406         brokeness with $@ in VPATH builds because of additional path prefixes,
16407         we need to use $(@F) actually).
16408
16409 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
16410
16411         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
16412         short lived bugs, that would allow language bindings to do surgeries
16413         to our guts.
16414
16415 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
16416
16417         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
16418         where comparison was being done against an uninitialized
16419         value causing intermittant results depending on
16420         compiler flags. Also make it clearer that we aren't
16421         ever initializing the child as 0x0 (though this will
16422         be caught in gtk_widget_size_allocate())
16423
16424 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
16425
16426         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
16427         gtk_window_unset_transient_for() call after we do checks
16428         involving the old transient parent.
16429         [ From Lance Capser <lmc@cyberhighway.net> ]
16430
16431 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
16432
16433         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
16434         an empty file.
16435
16436 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
16437
16438         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
16439         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
16440
16441 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
16442
16443         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
16444         `$@' is valid only in the build dir, not after we've done 
16445         `cd $srcdir'.  Also use `test -f' instead of less portable
16446         `test -e'.
16447
16448 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
16449
16450         * gtk/gtktext.c (correct_cache_insert): Rewrite
16451          for simplicity, and hopefully correctness.
16452          (Fixes bug #1322, which was a segfault when
16453           on some insertions with the properties around
16454           the insertion set up just wrong.)
16455
16456         * gtk/gtktext.c (gtk_text_adjustment): When we receive
16457          a "changed" signal, clamp the new value to the adjustment
16458          bounds to avoid segfaulting if someone tries to change
16459          the adjustment to a bogus value. (Bug #1795)
16460
16461 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16462
16463         * gtk/gtkmain.c: Ignore unexpected destroy notifies
16464         for children, for toplevel windows handle them
16465         like delete_event.
16466
16467         * gtk/gtkplug.c: Add an unrealize handler so that
16468         we unref plug->socket_window when we are done
16469         with it.
16470
16471 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
16472
16473         * gtk/gtktext.c (clear_area): Fix stupid signedness
16474          problem that was causing background to sometimes
16475          be misaligned.
16476
16477 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
16478
16479         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
16480         
16481         * gtk/gtkmenu.c (gtk_menu_position): Make
16482          sure we never position menus with negative x, y,
16483          since gtk_widget_set_uposition() can't handle that.
16484
16485         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
16486          Modify the positioning code a bit so that we always
16487          put the top-left corner onscreen. (This is for
16488          UI reasons, gtk_menu_position() now takes care of
16489          gtk_widet_set_uposition() brokeness.)
16490
16491 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
16492
16493         * gtk/Makefile.am: fixed up things for -jx, x > 1.
16494
16495 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
16496
16497         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
16498           RC style that is passed in. The lack of the ref
16499           before was a bug. If people worked around this
16500           bug, this will introduce a slight memory leak
16501           in their code. The code should typically look like:
16502
16503             rc_style = gtk_rc_style_new ();
16504             [...]
16505             gtk_widget_modify_style (widget, rc_style);
16506             gtk_rc_style_unref (rc_style);
16507
16508         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
16509           the style if it was already set.
16510
16511         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
16512           style if it was set before.
16513
16514 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16515
16516         * gtk/testgtk.c (main): Add a check to see if we
16517           are being run from the correct directory and
16518           to quit nicely if we are not.
16519
16520         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
16521           static.
16522
16523 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
16524
16525         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
16526
16527         * gtk/gtkwindow.c:
16528         queue resizes unconditionally (gtk_widget_queue_resize will figure
16529         what to do if the window is not realized).
16530         (gtk_window_move_resize): only recenter the window
16531         for GTK_WIN_POS_CENTER_ALWAYS.
16532         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
16533         the same way as GTK_WIN_POS_CENTER.
16534
16535 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
16536
16537         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
16538         with (!(info->last_flags & GDK_HINT_POS)) instead of
16539         (!info->last_flags & GDK_HINT_POS).
16540
16541         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
16542         new_height unconditionally, because we use these values even if
16543         !default_size_changed && !hints_changed.
16544         comented the (default_size_changed || hints_changed) case with
16545         respect to resize rejects from the window manager.
16546
16547         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
16548         in the zvt condition hack, since this includes the window hints, set
16549         the hints after the handling_resize case.
16550
16551         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
16552         window is initially shown with to the geometry.
16553
16554 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
16555
16556         * gtk/gtkwindow.c (gtk_window_move_resize):
16557         s/size_changed/default_size_changed/g so i know what's
16558         really going on (frying brain on smaller flame now).
16559
16560 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
16561
16562         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
16563         we have size_changed upon handling_resize. this is a gross
16564         workaround for the broken zvt widget and should be removed in
16565         1.3 again (search for FIXME).
16566         Owen provided an accurate comment for this:
16567
16568         /* We could be here for two reasons
16569          *  1) We coincidentally got a resize while handling
16570          *     another resize.
16571          *  2) Our computation of size_changed was completely
16572          *     screwed up, probably because one of our children
16573          *     is broken. It's probably a zvt widget.
16574          *
16575          * For 1), we could just go ahead and ask for the
16576          * new size right now, but doing that for 2)
16577          * might well be fighting the user (and can even
16578          * trigger a loop). Since we really don't want to
16579          * do that, we requeue a resize in hopes that
16580          * by the time it gets handled, the child has seen
16581          * the light and is willing to go along with the
16582          * new size. (this happens for the zvt widget, since
16583          * the size_allocate() above will have stored the
16584          * requisition corresponding to the new size in the
16585          * zvt widget)
16586          *
16587          * This doesn't buy us anything for 1), but it shouldn't
16588          * hurt us too badly, since it is what would have
16589          * happened if we had gotten the configure event before
16590          * the new size had been set.
16591          */
16592
16593 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
16594
16595         * gtk/gtkrc.c: deal properly with the fact that RC
16596           style lists may include rc styles more than once.
16597
16598         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
16599           unused static function.
16600
16601         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
16602           stack of directories of RC files currently being
16603           parsed and implicitely add them to pixmap path.
16604           
16605           This fixes a bug where the directory would get
16606           appended then overwritten by pixmap_path declarations.
16607
16608           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
16609
16610         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
16611           theme's exit function. (Patch from Peter Wainwright,
16612           bug #1454)
16613
16614         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
16615           Add a destroy() handler to take care of removing
16616           group for menu item. (Fixes bug #1197)
16617
16618         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
16619           in warning message.
16620
16621 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
16622
16623         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
16624         roundtrip to figure window's width and height, since we know that
16625         anyways from widget->allocation.
16626
16627 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
16628
16629         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
16630           the hints after we request the new size.
16631
16632 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
16633
16634         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
16635           GTK_WIDGET_REALIZED() assertion - we can compute the
16636           hints before we are realized.
16637
16638         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
16639           hint changing so that we have a value of hints_changed
16640           when we decide whether to constrain the window size.
16641
16642         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
16643
16644         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
16645         change back to G_MAXINT.
16646
16647 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
16648
16649         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
16650         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
16651         contain uncluttered values.
16652         (gtk_window_compute_hints): simply assert that window is realized
16653         and that geometry_info is valid, since we rely on this anyways.
16654         (gtk_window_constrain_size): major cleanups to the code.
16655         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
16656         for the base size, instead of the minimums. use 32767 as max width
16657         and height (like in gtkwindow.c) instead of G_MAXINT.
16658
16659 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
16660
16661         * cleaned up the GtkContainer.need_resize flag handling mess, we
16662         only need to force resize requests when we were prematurely
16663         realized, or our widget tree was modified when we were temporarily
16664         hidden. handling these cases directly upon showing the window (i.e.
16665         while the GdkWindow is still unmapped) avoids the need to wait for
16666         a configure event response and therefore makes the GUI more snappier
16667         and avoids blank windows during the roundtrip.
16668
16669         * gtk/gtkwidget.c:
16670         (gtk_widget_hide): 
16671         (gtk_widget_show): don't queue resizes on toplevels, they know how
16672         to deal with matters.
16673
16674         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
16675         flag directly for not visible resize containers and spare us unecessary
16676         signal emissions.
16677
16678         * gtk/gtkwindow.c:
16679         (gtk_window_realize): if we need to enforce premature size allocation,
16680         queue a container resize so we are correctly resized later on.
16681         (gtk_window_init):
16682         (gtk_window_size_request):
16683         don't freak around with the ->need_resize flag,
16684         gtk_container_queue_resize() will care about that.
16685         (gtk_window_show):
16686         handle initial resizing issues here, we can handle matters better in
16687         this place, especially since we know that our GdkWindow is still
16688         unmapped.
16689         (gtk_window_move_resize):
16690         don't care about ->need_resize at all.
16691         handle size changes properly that occoured while we waited for a
16692         configure event.
16693
16694 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
16695
16696         * gtk/gtkwidget.c (gtk_widget_set_uposition):
16697         * gtk/gtkwindow.[hc] (gtk_window_reposition):
16698         Move the hint setting code from gtk_widget_set_uposition
16699         to here; set the hints so that we respect any previously
16700         set geometry hints.
16701
16702         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
16703         change the window hints here or move the window here,
16704         let that happen in gtk_window_move_resize().
16705
16706 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
16707
16708         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
16709         to already queued resizes (and therefore redraws) on a widget, check
16710         its anchestry as well.
16711
16712         * gtk/gtkcontainer.c:
16713         (gtk_container_queue_resize): clear resize widgets for resize
16714         containers before aborting prematurely. this is especially important
16715         for toplevels which may need imemdiate processing or their resize
16716         handler to be queued.
16717         (gtk_container_dequeue_resize_handler): added new internal function for
16718         gtkwindow.c.
16719
16720         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
16721         configure event, take possible changes in window position into account
16722         as well.
16723         if we request a new window size, queue up a resize handler that will
16724         last until the configure event response arrives.
16725         combined the ->need_resize case (initial show) with the general size
16726         (hints) changed case and added even more comments.
16727         if !auto_shrink, only revert to the old allocation if the new size
16728         is smaller than the current allocation.
16729
16730 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
16731
16732         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
16733                            gtk_window_set_geometry_hints
16734                            gtk_window_set_default_size):
16735         When hints are set, queue a resize so that the hints will
16736         be eventually reset on the toplevel.
16737
16738         * gtk/gtkwindow.c (gtk_window_show): Use
16739         gtk_window_compute_default_size(). Clear the need_resize flag
16740         on the initail map so that we don't unnecessarily trigger the
16741         resize code.
16742
16743         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
16744         into separate functions. Compare the hints we are setting
16745         with what we set last time so that we can accurately
16746         tell when we need to reset the hints.
16747
16748         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
16749         function to figure out the size from requisition
16750         and default_size.
16751
16752         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
16753         from fvwm to constrain a size to the geometry hints.
16754
16755         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
16756         to compare two sets of geometry hints.
16757
16758         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
16759         from gtk_window_set_hints(), just compute the hints,
16760         don't set them.
16761
16762         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
16763         code from gtk_window_move_resize() to separate function,
16764         rationalize a bit.
16765
16766 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
16767
16768         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
16769         structure into a new private structure.
16770
16771         * gtkrc.c: Split GtkRcStyle into public/private.
16772         In the private part, add a list of pointers to the
16773         RcStyle lists this RcStyle participates in.
16774
16775         * gtkrc.c: When a RcStyle is free, remove all
16776         lists referencing it from the 
16777         realized_style_ht hash, and free those lists.
16778         
16779         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
16780         gtk_rc_init(), since that adds the default styles
16781         to the list of parsed RC files again.
16782
16783         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
16784         
16785 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
16786
16787         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
16788         checks that ensure that a widget's allocation is at least 1 in width
16789         and height. (GNOME note: this doesn't affect old panel code anymore,
16790         because GtkSocket will request width and height of at least 1 since
16791         Fri Jul 23).
16792
16793         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
16794         allocated yet (happens if the user realizes the window prematurely),
16795         size request and allocate it.
16796         (gtk_window_size_allocate): guard against guint underflows.
16797
16798 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
16799
16800         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
16801         in gtk_built_sources, so gtk.defs gets built prior to all other
16802         sources.
16803
16804 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16805
16806         * gtk/Makefile.am:
16807         invoke indent on gtkmarshal.*. 
16808         rewrote source generation rules, use COPYING as oldest source tag for
16809         a piggyback rule to generate all sources from (don't touch it ;).
16810         major cleanups, strip spaces on build rules for GNU Make.
16811
16812         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
16813         source and target files from commandline arguments. don't invoke indent.
16814
16815 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16816
16817         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16818         notebook after switch to avoid drawing problems.
16819         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16820         
16821         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16822         show them instead. 
16823         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16824
16825 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16826
16827         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16828         notebook after switch to avoid drawing problems.
16829         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16830         
16831         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16832         show them instead. 
16833         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16834
16835 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
16836
16837         * gtk/gtkwindow.c:
16838         we use window->need_resize from configure_event now, to indicate that
16839         the gtkwindow should keep its allocation (e.g. because the user resized
16840         the window through window manager handles). resize_count is now reliably
16841         used to figure whether we got the allocation we requested from the
16842         window manager.
16843         configure events get queued as resizes now, the real stuff (size
16844         computation and allocation) now only goes on in gtk_window_move_resize().
16845         GtkWindow's requisition now contains its *real* requisition (like all
16846         other widgets), *not* taking usize into account.
16847         geometry_info->last_{width|height} is now updated from set_hints() only
16848         so it always contains the last hints we set for the window manager.
16849         made some event handlers return TRUE instead of FALSE.
16850         the overall code should be much more straight forward now, and the
16851         significant code portions are accompanied by comments now.
16852         (gtk_window_set_hints):
16853         removed requisition argument and made it
16854         fetch the requisition through gtk_widget_get_child_requisition.
16855         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
16856         does that now.
16857         (gtk_window_show):
16858         ensure that the widget is realized before calling 
16859         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
16860         ensure that we got properly size requested and allocated before
16861         realization.
16862         (gtk_window_configure_event):
16863         ignore plain window moves, or reallocate the widget tree through the
16864         resize queue otherwise.
16865         (gtk_window_move_resize):
16866         mostly rewrote this function to figure window manager hints more
16867         reliably, coalesce window moves and resizes to reduce configure events
16868         and do actuall size allocations.
16869
16870 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16871
16872         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
16873         that have a resize pending, because a redraw is already queued for them.
16874
16875         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
16876         hack to clear resize_widgets.
16877
16878         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
16879         for resize containers prior to size allocation. (this is also a bit
16880         ugly, but avoids side effects for stopped emissions and is thus more
16881         reliable).
16882         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
16883
16884         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
16885         function from gtk_tooltips_expose, as we connect to ::expose_event
16886         *and* ::draw now.
16887
16888 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16889
16890         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
16891         checks.
16892         (gtk_target_list_unref): Likewise.
16893
16894         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
16895
16896 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
16897
16898         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
16899         guard against division by zero. (Fixes bug #1339)
16900
16901 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
16902
16903         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
16904         Prevent the trivial leak of information of allowing
16905         word motion when the entry is not visible.
16906
16907 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
16908
16909         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
16910         modality to error dialog as well as confirmation dialogs.
16911         (Bug #1803, reported by Rosanna Wing Sze Yuen)
16912
16913 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16914
16915         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
16916         tree->view_lines.
16917         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
16918
16919         * gtk/Makefile.am (install-data-local): Solaris apparently
16920         has various troubles with ln -f; use rm first instead.
16921         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
16922
16923 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
16924
16925         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
16926         use `cp' followed by `rm' (the `rm' was already there).
16927
16928 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16929         
16930         * configure.in: Fix autoconf warnings about cross compilation by
16931         trying to provide sane defaults for AC_TRY_RUN.
16932         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
16933         put them into $(srcdir) when generated. Also add a dependency of
16934         gtksignal.h on gtkmarshal.h for -j builds. 
16935         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
16936
16937 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
16938
16939         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
16940         GDK_THREADS_{LEAVE,ENTER} pair.
16941         (From Paul Fisher <pnfisher@redhat.com>)
16942
16943 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
16944
16945         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
16946         width and height are always >0 (owen).
16947
16948 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
16949
16950         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
16951         change that assured that a widget's allocated with and height are
16952         always >1, since this breaks *buggy* panel code. unfortunately this
16953         back-breaks the gimp's color selector.
16954
16955         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
16956         allocation is always >0 in width and height, before sending the
16957         configure event; this is a *gross* hack to get the gimp back to work.
16958         
16959         * marked both cases with TODO-1.3
16960
16961 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
16962
16963         * gtk/gtktext.c: Don't display wrap indicators when
16964         text is not editable and word wrap is on.
16965
16966 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
16967
16968         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
16969         option menus here as they are not derived from menu shell, assure that
16970         the option menu has a menu we can add items to.
16971
16972 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
16973
16974         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
16975         width/height to (gint) before calculations and check against < 0 to
16976         avoid guint wraparounds.
16977
16978 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
16979
16980         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
16981         width and height is never zero. sanity check both dimensions against
16982         32767 and issue a warning if the allocation is greater than that.
16983
16984 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
16985
16986         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
16987         to g_main_pending() as well.
16988
16989 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
16990
16991         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
16992         call to g_main_iteration() - since that will regrab
16993         GTK+ lock to process events.
16994
16995 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
16996
16997         * gtk/gtkwindow.c
16998         - Regularize with the rest of GTK+ by making widget->requisition
16999           not reflect the set_usize()
17000         - Always recompute geometry hints, then check if they
17001           changed before sending them to the X server. The
17002           previous checks for changes would fail in a number
17003           of circumstances. 
17004
17005 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
17006
17007         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
17008
17009 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
17010
17011         * gtk/gtkdnd.c:
17012         - Code cleanups
17013         - Instantaneously update on modifier key presses
17014         - Allow cancellation of the drag with Escape.
17015
17016 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
17017
17018         * gtk/testgtk.c (create_handle_box): Set the policy
17019         to auto_shrink - otherwise the appearance is rather
17020         strange when flipping between horizontal and vertical.
17021
17022 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
17023
17024         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
17025         (gtk_window_set_default_size): don't change a value if it's < 0.
17026         queue a resize.
17027
17028 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
17029
17030         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
17031
17032 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
17033
17034         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
17035         add an extra "/" when concating "/" + filename.
17036         (From Matt Grossman <mattg@oz.net>)
17037
17038 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
17039
17040         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
17041         for fg_gc if we set it for drawing pixmap.
17042
17043 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
17044
17045         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
17046         
17047         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
17048         already set, call old engine's destroy function and
17049         unref the old engine.
17050
17051 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
17052
17053         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
17054
17055 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
17056
17057         * gtk/gtkaccelgroup.h: mark certain functions as internal.
17058
17059 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
17060
17061         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
17062         expand behaviour changed.
17063
17064         * gtk/gtklabel.c (gtk_label_set_pattern):
17065         (gtk_label_set_justify):
17066         (gtk_label_set_line_wrap):
17067         don't bother invoking queue_clear, the reallocation does
17068         that for us, always free_words so the upcoming resize will
17069         relayout the label's contents.
17070
17071 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
17072
17073         * applied argument implementation patches from Elena Devdariani
17074         <elena@cogent.ca>.
17075
17076         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
17077         ::space_style, ::relief
17078         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
17079         * gtk/gtkpreview.c: ::expand
17080         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
17081         * gtk/gtknotebook.c: ::homogeneous
17082         * gtk/gtklabel.c: ::wrap
17083         * gtk/gtklist.c: ::selection_mode
17084         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
17085         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
17086         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
17087         * gtk/gtkclist.c: ::sort_type
17088         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
17089         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
17090
17091 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
17092
17093         * gtk/gtkstyle.c: Removed ill-thought-out part of last
17094         comment.
17095
17096 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
17097
17098         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
17099         counting right when we have to attach a new style
17100         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
17101
17102         * gtk/gtkstyle.c: Documented the refcounting
17103         peculularities of gtk_style_attach.
17104
17105 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17106
17107         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
17108         window types.
17109
17110         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
17111         of GTK_TOPLEVEL for creating the window.
17112
17113 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
17114
17115         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
17116         the last argument (reported by Per Winkvist).
17117         
17118 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
17119
17120         Fixes for invisible XOR lines (Frank Loemker
17121         <floemker@TechFak.Uni-Bielefeld.DE>)
17122         
17123         * gtk/gtkclist.c (gtk_clist_realize): Always use
17124         a non-zero pixel for GDK_XOR.
17125
17126         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
17127         Use GDK_INVERT instead of GDK_XOR.
17128
17129 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
17130
17131         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
17132         signals if h/voffsets differ from adjustment values.
17133         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
17134
17135 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
17136
17137         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
17138         ::selection-done emissions up to the topmost menu shell.
17139
17140 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
17141
17142         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
17143         the user data on the window before destroying it.
17144
17145         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
17146         unrealize handler to take care of destroying 
17147         notebook->panel properly. 
17148         (Bug #1198 - Morten Welinder <terra@diku.dk>)
17149
17150         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
17151         of g_new and g_realloc to stop memory leak. (Actually,
17152         we could just use g_realloc(), but I'm not 100% sure
17153         that is portable).
17154         (Bug #1196 - Morten Welinder <terra@diku.dk>)
17155
17156 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
17157
17158         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
17159
17160         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
17161         for fontsets.
17162
17163         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
17164         with bin/button confusion.
17165
17166 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
17167
17168         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
17169         and show how preselection of radio items is done.
17170
17171 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
17172
17173         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
17174         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
17175         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
17176         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
17177         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
17178         * gtk/gtktable.c (gtk_table_attach): 
17179         * gtk/gtklist.c (gtk_list_insert_items): 
17180         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
17181         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
17182         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
17183         * gtk/gtkbin.c (gtk_bin_add): 
17184         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
17185         * gtk/gtkfixed.c (gtk_fixed_put): 
17186         * gtk/gtklayout.c (gtk_layout_put):
17187         general fixups to container_add logic. always realize child if
17188         child->parent is realized, only map the child and queue a resize
17189         if child and child->parent are both visible.
17190
17191 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
17192
17193         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
17194         instead of gtk_container_foreach to walk and unrealize children, so
17195         composite children get also unrealized.
17196         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
17197         (gtk_widget_map): assert that the widget is visible (basic constrain).
17198         (gtk_widget_real_map): assert that the widget is realized (basic
17199         constrain).
17200
17201 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
17202
17203         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
17204
17205 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
17206
17207         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
17208         file for iso-8859-2 locales.
17209
17210         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
17211
17212 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
17213
17214         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
17215          (Pointed out by andy@rz.uni-karlsruhe.de and others).
17216          Remove some suspicious and useless lines. 
17217
17218 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
17219
17220         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
17221         width,height = 0, 0 to mean - here to edge of window,
17222         instead of -1, -1, since the former is all we support.
17223
17224 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17225
17226         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17227         when removing from quit_functions list.
17228
17229 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17230
17231         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17232
17233 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17234
17235         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17236          When redrawing characters on non-visible entry, use appropriate
17237          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17238
17239 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17240
17241         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17242         from drag coordinates.
17243         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17244         use drag_dest_cell.
17245
17246         * gtk/gtktree (drag_dest_cell)
17247         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17248         (Bug #1129)
17249
17250 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17251
17252         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17253         translate_* fields.
17254         (gtk_item_factory_finalize): invoke translate_notify independant from
17255         translate_data.
17256         (gtk_item_factory_set_translate_func): likewise.
17257         (gtk_item_factory_destroy): only remove ifactory pointer from those
17258         widgets that belong to us (stupid me).
17259
17260 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17261
17262         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17263         rc_style list when lookup succeeeds.
17264
17265 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17266
17267         * gtk/gtkctree.c (resync_selection): 
17268         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17269         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17270         bug.
17271
17272 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17273
17274         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17275         Add some missing GDK_THREADS_ENTER()/LEAVE around
17276         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17277
17278 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17279
17280         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17281         rather than emit_by_name.
17282
17283         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
17284         on the widget across multiple signal emissions.
17285         (gtk_editable_delete_text): same here.
17286         (gtk_editable_class_init): set widget_class->activate_signal after
17287         editable_signals[ACTIVATE] has been created.
17288
17289 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
17290
17291         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
17292         position here prematurely -- we might not have the
17293         right ->min_position and ->max_position yet.
17294
17295 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17296
17297         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
17298         Add error traps so if the other end of the connection
17299         dies, we survive.
17300
17301         * gtk/gtkselection.c (gtk_selection_notify): Clean
17302         up properly when selection property retrieval fails.
17303         
17304         * gtk/gtkselection.c (gtk_selection_request): Correctly
17305         reject SelectionRequest notifies where the handler
17306         returns no data.
17307
17308 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17309
17310         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
17311         when we've previously highlighted.
17312
17313         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
17314         emit two "drag_leave" signals for Motif drops.
17315
17316         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
17317         back the correct status messages when dropping from
17318         Motif onto a proxy window that is rejecting the
17319         drop.
17320
17321 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
17322
17323         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
17324         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
17325         to compare two argument values. added gtk_arg_to_valueloc() to set a
17326         variable from an arg through its location (pointer).
17327
17328         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
17329         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
17330         as gfloat*, uchars are collected as guchar*, ints are collected as
17331         gint*, etc...
17332
17333 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
17334
17335         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
17336         Include <string.h> instead of <strings.h>.
17337
17338         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
17339         (actually, a lot more duplicate includes occur if
17340          you trace through the sequence of #include's)
17341         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
17342         
17343 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17344
17345         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17346         gtk-a-higuti-990322-[0-3]
17347
17348         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17349         that was causing -DX_LOCALE not to work.
17350
17351         * gtk/gtkrc.c (gtk_rc_init):
17352         X_LOCALE will never have LC_MESSAGES defined
17353
17354 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
17355
17356         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
17357         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
17358
17359         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
17360         left/right as well (gtk-michael-980726-0.patch.gz).
17361
17362         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
17363         for pointer values, use gchar instead of char. fixed uline allocation
17364         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
17365         chunks instead of G_ALLOC_ONLY.
17366         (gtk_label_size_request): always alter requisition as passed and leave
17367         widget->requisition alone.
17368         (gtk_label_set_text): allow NULL strings.
17369         (gtk_label_new): likewise.
17370
17371 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
17372
17373         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
17374
17375 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
17376
17377         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
17378         *and* mapped (i.e. drawable).
17379         (gtk_bin_expose): only send exposes to drawable children.
17380
17381         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
17382         (gtk_box_expose): only send exposes to drawable children.
17383
17384         * gtk/gtkhscale.c (gtk_hscale_draw): 
17385         * gtk/gtkvscale.c (gtk_vscale_draw):
17386         hm, this is an ugly one. we first compute the size of our trough area
17387         here (window relative) and then check intersection with the draw_area
17388         which is parent relative because we're a NO_WINDOW widget, so we need
17389         to offset the trough area by allocation.x and allocation.y before the
17390         check. (this must not be done for the background area though, since
17391         that's already computed parent relative).
17392
17393 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
17394
17395         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
17396         unrealize title buttons.
17397
17398 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
17399
17400         * gtk/gtkclist.c (gtk_clist_column_title_passive)
17401         (gtk_clist_column_title_active): 
17402         only connect/disconnect to GtkWidgetClass::event to block mouse events.
17403
17404         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
17405         zero initialize event, removed superfluous gdk_window_get_pointer call
17406
17407         * gtk/gtklist.c (gtk_list_vertical_timeout)
17408         (gtk_list_horizontal_timeout): removed superfluous
17409         gdk_window_get_pointer call
17410
17411 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17412
17413         * plugging problems reported by "Bruce Mitchener, Jr."
17414         <bruce@puremagic.com> due to a purify session.
17415
17416         * gtk/gtkstyle.c:
17417         (gtk_style_ref): 
17418         (gtk_style_unref): assert ref_count to be > 0.
17419
17420         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
17421         the requisition.
17422         (gtk_clist_set_shift): likewise.
17423
17424         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
17425         adjustments.
17426
17427         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
17428         event before sending it and set send_event to TRUE (which needs to
17429         be done for *all* synthesized events).
17430         (gtk_list_vertical_timeout): likewise.
17431
17432         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
17433         leaks.
17434
17435         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
17436         to TRUE when synthesizing events.
17437
17438 [ *** end of merges from 1.2 *** ]      
17439         
17440 1999-11-21  Tor Lillqvist  <tml@iki.fi>
17441
17442         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
17443         (or copied from gdkconfig.h.win32 on Win32, sigh).
17444
17445         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
17446
17447         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
17448
17449         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
17450
17451         * gdk/gdkconfig.h.win32: New file.
17452
17453         * gdk/win32/makefile.cygwin: Build just a static archive here.
17454
17455         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
17456         for the DLL from the static archive built above.
17457
17458         * gdk/gdk.def: Moved here from the win32 subdirectory.
17459
17460         * gdk/win32/*: Adapt for the changed private struct organisation.
17461
17462         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
17463
17464 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
17465
17466         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
17467         for wheel mice (buttons 4 and 5).
17468
17469 1999-11-18  Tor Lillqvist  <tml@iki.fi>
17470
17471         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
17472         drawables use just the pixel field in the foreground and
17473         background GdkColor of the GdkGC.
17474
17475         gdk_gc_set_{fore,back}ground() are called in the GIMP with
17476         GdkColors containing uninitialized (red,green,blue) fields, and
17477         just the pixel field filled in, and furthermore in the
17478         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
17479         It thus turns out that we really don't need to have the full
17480         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
17481         it later to have just the pixel values.
17482
17483 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
17484
17485         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
17486
17487 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
17488
17489         * docs/gtkfaq.sgml: threads example from Erik Mouw.
17490         New question on GtkLabel background colors.
17491
17492         * docs/gtk_tut.sgml:
17493           - Correct the example code callback
17494             function definitions.
17495           - Update the gtkdial example code, from Frans van Schaik.
17496           - Update setselection.c to current API.
17497
17498         * examples/Makefile examples/*/*.c: Update to code
17499         listed in tutorial.
17500
17501 1999-11-10  Tor Lillqvist  <tml@iki.fi>
17502
17503         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
17504         subrange table (from the "Developing International Software for
17505         WIndows 95 and Windows NT" book) was missing the Hangul syllable
17506         block... Get the loaded font's charset correctly.
17507
17508         (Note that this, and the other *-win32.c files, still really are
17509         the old ones, the win32 subdirectory is not ready for compilation
17510         yet after the reorg.)
17511
17512 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
17513
17514         * gtk/gtkclist.c: Fix off-by-one bug in parameter
17515         check.
17516
17517 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
17518
17519         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
17520         on results of XQueryDeviceState().
17521
17522 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
17523
17524         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
17525         we need to accesss only ->children. We need an accessor
17526         for the children.
17527
17528         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
17529         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
17530         to get rid of gdkx.h include.
17531         
17532         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
17533         and random references to 'None'.
17534
17535         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
17536         Get rid of unused #include <gdk/gdkx.h>
17537
17538         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
17539         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
17540         gdkconfig.h.
17541
17542 1999-11-08  Tor Lillqvist  <tml@iki.fi>
17543
17544         * gdk/win32/gdkdraw.c
17545         * gdk/win32/gdkfont.c
17546         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
17547         following yesterday's changes. (Unrelated to Owen's reorg.)
17548
17549 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
17550
17551         * gdk/x11/gdkinput-gxi.c: Add missing include,
17552           fix GdkWindowPrivate => GdkDrawablePrivate.
17553
17554         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
17555
17556         * gdk/x11/Makefile.am (xinput_sources): Add missing
17557         backslash to fix building with --with-xinput=none
17558
17559 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
17560
17561         Move all X specific code into the x11/ directory.
17562         Aside from shuffling things around, did the following:
17563
17564        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
17565          gdk_arg_context_* - a simple argument parsing system
17566          in the style of popt.
17567
17568        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
17569          gdk/x11/gdkprivate-x11.h:
17570          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
17571          add ->klass and ->klass_data fields. The klass_data
17572          field points to an auxilliary structure that is
17573          windowing system dependent.
17574
17575        * gdk/gdkfont.c: Make most of the measurement functions
17576          simply wrappers around gdk_text_extents().
17577
17578        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
17579          _gdk_font_strlen() function that hides the weird
17580          behavior in gtk+-1.[02] where a string is interpreted
17581          differently for 8-bit and 16-bit fonts.
17582
17583        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
17584          to store common code for synthesizing double/triple
17585          press events.
17586         
17587        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
17588          Make all the function that modify an existing GC
17589          simply wrappers around gdk_gc_set_values().
17590          
17591        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
17592          for throwing out later.
17593
17594        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
17595          GdkImagePrivate and GdkColormapPrivate to have a
17596          windowing system dependent part (GdkFontPrivateX etc.)
17597          that "derives" from the system-independent part.
17598
17599        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
17600          Got rid of the included-source-files for XInput in
17601          favor of automake conditionals. (Which didn't exist
17602          when XInput support was originally added.)
17603
17604        * gdk/gdkrgb.c: Remove the visual id from the debugging
17605          statements since that is X11 specific; print out
17606          type/depth info instead.
17607          
17608
17609 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
17610
17611         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
17612         loading duplicates of hashed fonts.
17613
17614         * gdk/gdk.c (gdk_keysym_convert_case): rename
17615         gdk_XConvertCase to gdk_keysym_convert_case, allow
17616         results to be NULL in the GTK+ style.
17617
17618         * gdk/gdkcompat.h: Started compatibility header
17619         for renames.
17620
17621 1999-11-07  Tor Lillqvist  <tml@iki.fi>
17622
17623         * gdk/win32/gdkprivate.h: New font private structures, related to
17624         fontsets.
17625
17626         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
17627         gdk_font_list_free(). On X11, will just be wrappers to
17628         XListFonts() and XFreeFontNames(). On Win32, the code previously
17629         in gtkfontsel.c is now here.
17630
17631         New function gdk_font_xlfd_create(). On X11 will get the FONT
17632         property of the font (for GDK_FONT_FONTs), or call
17633         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
17634         builds a XLFD style name from the font information in the LOGFONT
17635         struct(s).
17636
17637         New function gdk_font_xlfd_free(), which correspondingly frees the
17638         string returned by gdk_font_xlfd_create().
17639
17640         Implement fontsets on Win32. Add a function that iterates over a
17641         wide char string and calls a callback function for each substring
17642         of wide chars from the same Unicode subrange (and thus probably
17643         available in the same real font).
17644
17645         Improve the XLFD emulation a bit.
17646
17647         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
17648
17649         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
17650         Beta3, WM_IME_CHAR messages don't seem to contain the composed
17651         multi-byte char as with the Active IMM on Win9x. Oh well, handle
17652         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
17653         ImmGetCompositionStringW() to get the composed Unicode chars.
17654
17655         * gdk/win32/gdkgc.c
17656         * gdk/win32/gdkdraw.c: Changes needed because of the font private
17657         struct changes.
17658
17659         * gdk/win32/gdk.def: Add the new functions.
17660
17661 1999-11-04  Tor Lillqvist  <tml@iki.fi>
17662
17663         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
17664         get the Platform SDK to get <dimm.h>.
17665
17666         * gdk/win32/gdkevents.c: More event handling fixes and
17667         simplification. Never generate motion events with is_hint true. We
17668         used to do that on bogus grounds earlier. Windows sends
17669         WM_MOUSEMOVE messages on button events even if the mouse hasn't
17670         moved, ignore these.
17671
17672         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
17673
17674         * gdk/win32/gdkglobals.c
17675         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
17676         the TrackMouseEvent function, and use it.
17677
17678         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
17679         char before calling WideCharToMultiByte in order to get a string
17680         for the window title.
17681
17682         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
17683
17684         * gdk/win32/gdk.def: Remove obsolete functions.
17685
17686         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
17687         /nodefaultlib and /defaultlib switches.
17688
17689         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
17690
17691 1999-10-31  Tor Lillqvist  <tml@iki.fi>
17692
17693         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
17694         EuroSign).
17695
17696         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
17697         same type as GdkWChar, especially on Win32.
17698
17699         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
17700
17701         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
17702         before passing to Windows GDI for drawing etc. Convert to the
17703         system default codepage before passing to Windows as window
17704         titles.
17705
17706         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
17707         support changing input locale on the fly.
17708
17709         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
17710         on-the-fly changes. Convert incoming characters from the current
17711         codepage to Unicode (and then to a UTF-8 multi-byte string) based
17712         on the current input language. Use keysym<->Unicode mapping tables
17713         and functions borrowed from xterm sources.
17714
17715         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
17716         editions of Win9x, use the ActiveX-based Active IMM (Input Method
17717         Manager) if available. IMEs and the Active IMM are available under
17718         the disguise of Chinese, Korean and Japanese support for IE and
17719         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
17720         support is present in all editions (as long as you install it).
17721
17722         Call DispatchMessage from gdk_events_queue() (and thus
17723         gdk_WindowProc()), instead of duplicating the code in
17724         gdk_WindowProc().
17725
17726         Reworked the grab handling and propagation code, factored out
17727         duplicated code snippets into separate functions. Other cleanups,
17728         too.
17729
17730         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
17731         the <dimm.h> header describing the Active IMM.
17732
17733         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
17734         just do the same as for "single" fonts.
17735
17736         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
17737         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
17738         the new keysyms from gdkkeysyms.h.
17739
17740         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
17741         fontset, so that gtkentry uses wide characters.
17742
17743         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
17744         GTk+'s system directory "gtk+", not "gtk".
17745
17746 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
17747
17748         * docs/gtkfaq.sgml: FAQ update
17749
17750 1999-10-21  Tor Lillqvist  <tml@iki.fi>
17751
17752         * gdk/win32/gdkprivate.h: Add more font private data.
17753
17754         * gdk/win32/gdkfont.c
17755         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
17756         fonts and strings. Now works much better. You still have to
17757         have a correct font selected, though. No fontset emulation yet.
17758
17759 1999-10-19  Tor Lillqvist  <tml@iki.fi>
17760
17761         * gtk/maketypes.awk: Use G_OS_WIN32.
17762
17763         * gtk/gtk.def: Add some missing entry points. Also some non-public
17764         ones, but PyGTK porter claims to need them.
17765
17766         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
17767         built-in type generation.
17768
17769 1999-10-14  Tor Lillqvist  <tml@iki.fi>
17770
17771         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
17772         GDK_FONT_FONT fonts (which is all we have for now, we don't
17773         emulate fontsets). The X11 version uses plain XDrawString in that
17774         case, too. The string passed to gdk_draw_text_wc seems to be in
17775         fact (at least, when used by gtkentry and gtktext) either in a
17776         single-byte charset, or a DBCS. Not Unicode.
17777
17778         This fixes the problem in gtkfontsel, where even if you had
17779         selected a font with a non-Latin1 charset (windows-greek, for
17780         instance), the preview still used Latin-1 glyphs.
17781
17782         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
17783         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
17784         (gdk_font_load): Recognize the demibold etc weights, even if we
17785         don't have the corresponding constants in the headers.
17786         (gdk_font_hash_insert): Use same hash mechanism as in the X11
17787         version. Should save font resources a bit, when we don't have
17788         multiple HFONTs for the same font.
17789
17790         * gdk/win32/gdkprivate.h: Add the names field as in the X11
17791         version.
17792
17793 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
17794
17795         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
17796         X values
17797
17798 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
17799
17800         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
17801         layout support (as mentioned on
17802         http://www.jcinteractive.com/gnome-ui/software/widgets/)
17803
17804 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
17805
17806         * gtk/fnmatch.c
17807         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
17808
17809 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
17810
17811         * configure.in (ALL_LINGUAS): Added Galician (gl)
17812
17813 1999-10-05  Tor Lillqvist  <tml@iki.fi>
17814
17815         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
17816
17817         * gdk/win32/gdkcompat.c: New file, actually provide an
17818         implementation for the deprecated functions. (Just temporarily.)
17819
17820         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
17821
17822         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
17823
17824         * gdk/win32/gdk.def gtk/gtk.def: Updates.
17825
17826 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
17827
17828         * configure.in: Added "uk" to ALL_LINGUAS.
17829         
17830 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
17831
17832         * configure.in: correct checking for BeOS check
17833
17834         * gdk/gdktypes.h
17835         * gtk/fnmatch.c
17836         * gtk/gtkfilesel.c
17837         * gtk/gtkitemfactory.c
17838         * gtk/gtkmain.[ch]
17839         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
17840
17841 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17842
17843         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
17844         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
17845         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
17846         by Bulgarian). 
17847
17848 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
17849
17850         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
17851         Fix a reference to window_private->destroyed.   
17852
17853         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
17854         (ugly) setting of an internal GdkWindow member to use
17855         a _slightly_ cleaner macro.
17856
17857         * gdk/gdkprivate.h: Split GdkWindowPrivate into
17858         GdkDrawablePrivate and GdkWindowPrivate.
17859         Add extra macros for accessing GDK_DRAWABLE_ components.
17860
17861         * *.[ch]: Massive adjustments for the above, use the
17862         new macros in a lot of places.
17863
17864 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
17865
17866         * gdk/gdktypes.h: Make GdkDrawable the base type,
17867         not GdkWindow.
17868
17869 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
17870
17871         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
17872
17873 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
17874
17875         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
17876
17877 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
17878
17879         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
17880         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
17881
17882         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
17883
17884         * docs/gtk-config.1: Now autogenerated.
17885         * docs/Changes-1.4.txt: started
17886         
17887 1999-10-03  Tor Lillqvist  <tml@iki.fi>
17888
17889         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
17890         to #ifdef also here.
17891
17892         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
17893         Owen did to the X11 backend.
17894
17895         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
17896         ScrollWindowEx when blitting inside a window, it can't be correct
17897         in the general case.
17898
17899         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
17900         WM_GETMINMAXINFO is easier.
17901
17902         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
17903         depth equal to the bitspixel value, not the visual's depth.
17904
17905         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
17906         to 24 even if the bitspixel value is 32.
17907
17908         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
17909         need to check for depth==32 when bpp==32, depth will always be 24.
17910
17911 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
17912
17913         * docs/Changes-1.4.txt: Started
17914         
17915         * gtk/Makefile.am (gdk_headers): Include all the new headers.
17916
17917         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
17918         
17919         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
17920         into C file.
17921         
17922         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
17923         header to gdkinputprivate.h.
17924
17925         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
17926         unused since before 1.2.
17927
17928 1999-09-30  Tor Lillqvist  <tml@iki.fi>
17929
17930         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
17931         expand possible hex escapes in the font family (put there by
17932         logfont_to_xlfd if the font name isn't a legal XLFD font family,
17933         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
17934         On Win32, add hex escapes here, too.
17935
17936 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
17937
17938         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
17939         to #ifdef GDK_WINDOWING_X11.
17940
17941 [ Merges from gtk-1-2 ]
17942
17943 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
17944
17945         * configure.in: fixed "GNU Make" check to pass with new make version
17946         3.77.95.
17947
17948 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
17949
17950         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
17951         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
17952         AM_PATH_GTK() macros don't get confused by the -pre1.
17953
17954 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17955
17956         * configure.in (REBUILD): Change check for perl5
17957           to check explicitely for v >= 5.002. (5.001
17958           does not work with our scripts.)
17959
17960 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
17961
17962         * configure.in: evaluate $PERL for the perl version check. added
17963         --disable-rebuilds to give the user an option to completely disable
17964         any source autogeneration rules.
17965
17966 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
17967
17968         * configure.in: evaluate $ac_make when checking for GNU Make.
17969
17970 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17971
17972         * docs/Makefile.am: added generation.txt.
17973
17974         * Makefile.am: require automake 1.4, build README from README.in and
17975         INSTALL from INSTALL.in in dist-hook.
17976         
17977         * README.in:
17978         * INSTALL.in: new files to autogenerate README and INSTALL from.
17979
17980         * configure.in: figure whether we have GNU Make
17981
17982         * docs/generation.txt: minor additions/corrections.
17983
17984 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17985
17986         * docs/gtkfaq.sgml: FAQ Update
17987
17988 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17989         
17990         * configure.in: Fix autoconf warnings about cross compilation by
17991         trying to provide sane defaults for AC_TRY_RUN.
17992
17993 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
17994
17995         * ltconfig
17996         * ltmain.sh: upgrade to libtool 1.3.3
17997
17998 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17999
18000         * INSTALL: Indicate that the --with-glib= configure
18001         time flag is unsupported.
18002
18003 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
18004
18005         * docs/generation.txt: Added a file that gives
18006         documenation about the autogeneration process for
18007         various autogenerated files.
18008         
18009 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18010
18011         * configure.in (LIBS): Look for libgmodule in the
18012         right location.
18013
18014 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
18015
18016         * docs/gtk_tut.sgml: Removed references to
18017         code examples in my directory on gtk.org as
18018         they should all be in the tutorial now.
18019
18020         * docs/gtk_tut.sgml: Added sources for dial-test
18021         and scribble-xinput programs that were previously
18022         missing.
18023
18024 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
18025
18026         * TODO: Added entry about menu keyboard navigation, removed
18027         some finished items.
18028
18029 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
18030
18031         * acinclude.m4: Standardize on func_dgettext
18032         not func_gettext, so that the checks for dgettext
18033         actually are paid attention to.
18034
18035 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
18036
18037         * configure.in (LIBS): Add $INTLLIBS into $LIBS
18038         directly, rather than repeating the checks for
18039         gettext.
18040
18041         * INSTALL: Added information about gettext and
18042         NLS support.
18043
18044         * acinclude.m4 (LIBM): Check for dgettext, not
18045         just gettext. This should hopefully fix things wrt
18046         systems with old versions of GNU gettext installed.
18047
18048 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
18049
18050         * configure.in (LIBS): Look for libgmodule in the
18051         right location.
18052
18053 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18054
18055         * autogen.sh: add --enable-maintainer-mode
18056
18057         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
18058
18059 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
18060
18061         * docs/gtk-config.1.in:
18062           docs/Makefile.am:
18063           configure.in: gtk-config is now generated.
18064
18065         * docs/gtk-config.1: Removed, now generated.
18066
18067 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
18068
18069         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
18070         handle CreateNotify itself, still put out a debuging message for
18071         --gdk-debug=events. made the ReparentNotify debugging message more
18072         verbose.
18073         wrap xcoords translation for ConfigureEvents into an error trap,
18074         a destroy event may already be pending, and in that case, the
18075         actuall coordinate values are not at all critical.
18076
18077 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
18078
18079         * gdk/gdkcc.c: Stop leaking the color_hash all over
18080         the place. Simplify and improve the logic.
18081
18082 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18083
18084         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
18085         for prototypes and function implementations consistent (reported
18086         by Tomas Ogren).
18087
18088 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18089
18090         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
18091         send_event set in debugging output.
18092         (gdk_compress_exposures): default initialize the event so we don't
18093         operate on bogus values (namely send_event).
18094
18095 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18096
18097         * gdk/gdkwindow.c: When we receive an unexpected
18098         destroy notify on one of our windows, don't just
18099         warn about it, also mark our windows as destroyed.
18100
18101 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
18102
18103         * gdk/gdkfont.c (gdk_font_hash_insert): Add
18104           name => font and name => fontset hashes. The 
18105           name => fontset hash is a _big_ win since we
18106           weren't previously caching fontsets at all and loading
18107           fontsets is expensive. The name => font hash
18108           is less of a win, but it does save us from doing
18109           repeated XQueryFont calls on the same font.
18110
18111         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
18112           list so we can remove font/fontset from hash.
18113
18114 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18115
18116         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
18117           and slightly confusing test. [ XInternAtom (,,TRUE)
18118           will never return None ].
18119
18120 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
18121
18122         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
18123           gdk/gdkwindow.c (gdk_window_set_hints):
18124
18125         Don't omit setting the properties if flags == 0 -
18126         there may be an existing set of properties there
18127         already. (Very old bug. Would it be better to
18128         delete the property instead?)
18129
18130         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
18131           spelling error in comment.
18132
18133 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
18134
18135         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
18136           to avoid stomping over gdk_error_warnings.
18137
18138         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
18139           as (bits_per_pixel + 7) / 8. This gives the same
18140           result as before for multiples of 8, but actually
18141           a "reasonable" value for 1bit or 4bit displays.
18142
18143 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18144
18145         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
18146         GNU Make.
18147
18148 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18149
18150         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
18151         discarding configure events.
18152
18153 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18154
18155         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
18156         refcount is greater than zero.
18157
18158         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
18159
18160         * gdk/gdkfont.c (gdk_font_unref): Likewise.
18161
18162         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
18163
18164         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
18165
18166 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18167
18168         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
18169         that format 32 => sizeof(item) == 4. It really is
18170         sizeof(long).
18171
18172 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
18173
18174         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
18175         core dump at all on X IO errors, only core dump
18176         if --enable-debug for X errors.
18177
18178 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
18179
18180         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
18181         unknown window:" message. disabled ConfigureNotify discarding code,
18182         because it led to events being processed out of order.
18183
18184 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
18185
18186         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
18187
18188         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
18189         we export this function, supress error warnings and don't reset the
18190         error code in the first half of this function.
18191
18192         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
18193         code (instead of just -1) so gdk_error_trap_pop() reveals something
18194         actually informative about the error that happened.
18195
18196         * gdk/*.c:
18197         don't rely on gdk_error_code being -1 if an error occoured, but just
18198         gdk_error_code != 0.
18199
18200 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
18201
18202         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
18203         pointer *before* invoking the filter function, so we at least don't
18204         crash if a filter is removed that is currently executed. window filters
18205         *really* need to be made truely reentrant at some point.
18206
18207 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
18208
18209         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
18210         PropertyNotify debug messages.
18211
18212 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
18213         
18214         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
18215         
18216         * gdk/gdkim.c: Fix cut-and-paste errors for 
18217         x/y and PreeditAttributes/StatusAttributes.
18218
18219 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18220
18221         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
18222         G_MAXINT to 2^16 to alleviate overflow problems in
18223         various window managers.
18224
18225 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18226
18227         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18228         for fontsets.
18229
18230 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18231
18232         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18233         Initialize size_hints.x and size_hints.y because kwm
18234         brokenly pays attention to them.
18235         (Bug #1181 -  Lars Heete <hel@admin.de>)
18236
18237 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18238
18239         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18240         return value of gdk_list_visuals(). 
18241         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18242
18243 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18244
18245         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18246         XSetIMValues to (void *) when comparing to NULL, to workaround
18247         the problem of some compilers barfing since older X headers don't
18248         have the prototype for it.
18249
18250 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18251
18252         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18253         for pseudocolor where colormap->colors was double
18254         allocated.
18255
18256         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18257         color value in the hash table with the pixel filled
18258         in so when we do later hash table lookups, the color
18259         value is correct.
18260         
18261 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18262
18263         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18264         making the call
18265
18266 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18267
18268         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18269         pointed out by Morten Welinder <terra@diku.dk>.
18270
18271 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18272
18273         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18274           default filter from the list
18275
18276 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18277
18278         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18279           default filter from the list
18280
18281 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
18282
18283         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
18284
18285         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
18286         g_strdup_printf instead of calcing the length separately
18287
18288 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
18289
18290         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
18291         that we don't do in many other places. (Fixing duplicate 
18292         #include of config.h)
18293
18294         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
18295         Otherwise, #ifndef XINPUT_NONE check in the latter
18296         doesn't work. (Bug #546)
18297
18298 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
18299
18300         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
18301         "None" case insensitive.
18302
18303 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18304
18305         * gdk/gdkselection.c: 
18306         Add error traps so if the other end of the connection
18307         dies, we survive.
18308
18309 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18310
18311         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
18312         dest_xid field into two fields - one for the window
18313         to send in messages, one to indicate the last looked
18314         up window for caching purposes. This is needed, so
18315         that Leave messages get the correct window.
18316
18317 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
18318
18319         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
18320         Fix warning created by people mucking around
18321         with the gsource API.
18322
18323         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
18324         Change mapping between GIOCondition and GdkInputCondition
18325         to match the way the Linux kernel does it. This should
18326         fix problems where closed pipes were no longer signalling
18327         GDK_INPUT_READ on systems with a native poll().
18328
18329 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
18330
18331         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
18332         explicitly for the string "None" - it is in the XPM
18333         spec and some servers treat unknown colors in odd ways
18334         (like asking the user!)
18335
18336 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18337
18338         * gdk/gdkevents.c: made "->" into a "." of previous change so
18339         it compiles
18340
18341 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
18342
18343         * gdk/gdkevents.c (gdk_compress_exposures): Set the
18344         window field of the event structure before calling
18345         user filters.
18346
18347 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18348
18349         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
18350         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
18351
18352 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
18353
18354         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
18355         intermediate text property - prevents major memory
18356         leak when gdk_use_mb.
18357         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
18358
18359 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18360
18361         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18362         gtk-a-higuti-990322-[0-3]
18363
18364         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
18365         sizeof(wchar_t) != sizeof (GdkWChar)
18366
18367         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18368         that was causing -DX_LOCALE not to work.
18369
18370         * gtk/gtkrc.c (gtk_rc_init):
18371         X_LOCALE will never have LC_MESSAGES defined
18372
18373         * gdk/gdk.c (gdk_init_check):
18374         Remove --xim-preedit and --xim-status from argv properly.
18375
18376         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
18377         that the client window is present on the X server
18378         before we pass it to the input method.
18379
18380 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18381
18382         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
18383         if --display is specified on the command line, than
18384         the drag window will not be created on that display.
18385         
18386 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
18387
18388         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
18389         lookups with only_if_exists == TRUE were inserting
18390         bogus values into the atom cache.
18391
18392 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18393
18394         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
18395         then reset it to NULL.
18396
18397         * gdk/gdkcolor.c:
18398         (gdk_colors_free): 
18399         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
18400         key for g_hash_table_remove() in both functions, this prevents us
18401         from accessing possibly uninitialized portions of a GdkColor structure
18402         where we are only interested in its pixel value.
18403
18404 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18405
18406         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18407         font hash table, if we have a GdkFontPrivate entry for this font
18408         already, simply increment its reference count, provided by Olaf Dietsche
18409         <olaf.dietsche+list.gtk@netcologne.de>.
18410
18411 1999-09-21  Tor Lillqvist  <tml@iki.fi>
18412
18413         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
18414         just to be sure.
18415
18416         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
18417         unused variables, leftovers from the X11 version.
18418
18419         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
18420
18421         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
18422         downcase fields on X11.
18423
18424 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18425         
18426         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
18427         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
18428
18429 1999-09-17  Tor Lillqvist  <tml@iki.fi>
18430
18431         * gdk/win32/gdk.def: Add gdk_threads_mutex.
18432
18433         * gtk/makefile.msc: Correct path to libintl.
18434
18435         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
18436         use of gint vs. int, and gint vs. gboolean in headers and
18437         definitions. Use GtkType for the *_get_type functions. Note that
18438         these changes preserve binary compatibility.
18439
18440         * gdk/gdk.c
18441         * gdk/win32/gdk.c
18442         * gdk/gdk.h: Fix inconsistencies: gint vs int.
18443
18444         * gtk/gtkmain.c
18445         * gtk/gtkclist.c
18446         * gtk/gtkmenufactory.c
18447         * gtk/gtknotebook.c
18448         * gtk/gtkwidget.c: Fix inconsistencies, also gint
18449         vs. gboolean.
18450
18451         * gtk/gtkcolorsel.[ch]
18452         * gtk/gtkcombo.[ch]
18453         * gtk/gtkdrawingarea.[ch]
18454         * gtk/gtkgamma.[ch]
18455         * gtk/gtkhandlebox.[ch]
18456         * gtk/gtkhpaned.[ch]
18457         * gtk/gtkhruler.[ch]
18458         * gtk/gtkplug.[ch]
18459         * gtk/gtkpreview.[ch]
18460         * gtk/gtkruler.[ch]
18461         * gtk/gtksocket.[ch]
18462         * gtk/gtkstatusbar.[ch]
18463         * gtk/gtktoolbar.[ch]
18464         * gtk/gtkvbbox.[ch]
18465         * gtk/gtkvpaned.[ch]
18466         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
18467         functions.
18468
18469         * gtk/gtkgamma.h: Fix bug, missing () in call of
18470         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
18471
18472 1999-09-14  Tor Lillqvist  <tml@iki.fi>
18473
18474         * gdk/gdkcolor.c (gdk_colormap_new)
18475         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
18476         colormap->colors was allocated twice.
18477
18478         * gdk/win32/gdk.c: Remove some unused stuff.
18479
18480         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
18481         colormap.
18482
18483         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
18484         * gtk/gtklabel.h (gtk_label_get_type)
18485         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
18486         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
18487         in a couple of places, not guint.
18488
18489 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18490
18491         * configure.in,po/et.po: added Estonian language file
18492
18493 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18494
18495         * configure.in,po/da.po: added Danish file
18496
18497 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
18498
18499         * docs/gtkfaq.sgml: Minor FAQ Update
18500
18501 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
18502
18503         * docs/gtkfaq.sgml: FAQ update
18504
18505 1999-08-27  Tor Lillqvist  <tml@iki.fi>
18506
18507         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
18508         way to get window contents continually refreshed while resizing. I
18509         didn't like the effects myself, so it's not on by default.
18510
18511         * gdk/win32/gdkprivate.h: New flag variable
18512         gdk_event_func_from_window_proc, FALSE by default.
18513
18514         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
18515         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
18516         are passed --gdk-event-func-from-window-proc.
18517
18518         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
18519         and we have am event_func, call it instead of enqueing the event.
18520
18521 1999-08-23  Tor Lillqvist  <tml@iki.fi>
18522
18523         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
18524         Kelley: Set expose_count in GdkEventExposes correctly.
18525
18526         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
18527         MULTIPLE_WINDOW_CLASSES).
18528
18529         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
18530         for bug in NT, apparently NT *does* draw the end pixel, too, in
18531         LineTo with a one-pixel pen, so we don't have to do it ourselves.
18532
18533 1999-08-21  Tor Lillqvist  <tml@iki.fi>
18534
18535         Improvements by Hans Breuer: 
18536
18537         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
18538
18539         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
18540         CS_?REDRAW flags as they cause lots of (late) redraws when "show
18541         window contents while dragging" is turned on. Allocate at least
18542         one unique class for every GdkWindowType. If support for single
18543         window-specific icons is ever needed (eg. Dialog specific), every
18544         such window should get its own class.
18545
18546 1999-08-19  Tor Lillqvist  <tml@iki.fi>
18547
18548         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
18549         error that caused crashes.
18550
18551 1999-08-17  Tor Lillqvist  <tml@iki.fi>
18552
18553         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
18554         window, use ScrollWindowEx, and call UpdateWindow. This prevents
18555         bugs when for instance part of the window was outside the
18556         display. Thanks to Philippe Colantoni for finding and fixing this.
18557
18558 1999-08-16  Tor Lillqvist  <tml@iki.fi>
18559
18560         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
18561         endpoint calculations which were totally wrong. (A little RTFMing
18562         helps a lot ;-)
18563
18564         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
18565         from a separate directory, not from gettext, because of licensing
18566         issues (we want to use the LGPL version).
18567
18568         * README.win32: Mention the intl from glibc vs from gettext issue.
18569
18570 1999-08-13  Tor Lillqvist  <tml@iki.fi>
18571
18572         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
18573         in the key event handling: Now AltGr chars work again. Also,
18574         now Alt-digits are passed up as well as Control-digits.
18575         Pass keypad plus and minus as normal plus and minus.
18576
18577 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18578
18579         * docs/gtkfaq.sgml: FAQ Update
18580
18581 1999-07-25  Tor Lillqvist  <tml@iki.fi>
18582
18583         * README.win32
18584         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
18585         the Wintab SDK.
18586
18587         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
18588         OK, but getting closer. Guard against bogus tilt data from Wacom
18589         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
18590         enable easier building without Wintab.
18591
18592         * gdk/win32/gdkinput.h
18593         * gdk/win32/gdkevents.c 
18594         * gdk/win32/gdkwindow.c: Minor changes related related to above.
18595         
18596         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
18597         code. As we have just one visual on Win32, no sense to have it in a
18598         table, and no need for the hash table.
18599
18600         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
18601         better on white background.
18602
18603 1999-07-21  Tor Lillqvist  <tml@iki.fi>
18604
18605         * README.win32: Update gcc build instructions. Mention gettext is
18606         GPL.
18607
18608         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
18609         supported cursor size with GetSystemMetrics.
18610
18611         * gdk/win32/gdkfont.c
18612         * gtk/gtkfontsel.c: Guard against some font weight and charset
18613         symbols being undefined (in mingw32 headers).
18614
18615         * gdk/win32/makefile.cygwin
18616         * gtk/makefile.cygwin
18617         * gtk/gtkthemes.c: No longer need to have differently named
18618         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
18619
18620 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
18621
18622         * docs/gtkfaq.sgml: Long awaited FAQ update.
18623
18624 1999-07-15  Tor Lillqvist  <tml@iki.fi>
18625
18626         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
18627         it. Obscure bit manipulation needed.
18628
18629         * gdk/win32/gdkevents.c: Logging.
18630         
18631         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
18632         style (file name include compiler name) for theme engines.
18633
18634 1999-07-13  Tor Lillqvist  <tml@iki.fi>
18635
18636         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
18637
18638         * gdk/win32/gdkevents.c: Fix long-standing bug in key
18639         events. The key.string wasn't zero-terminated, still we strdup'ed
18640         it in gdk_event_copy(). Synthesize crossing events for button
18641         events before possible propagation.
18642
18643         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
18644
18645         * gdk/win32/makefile.cygwin
18646         * gtk/makefile.cygwin: Use new DLL naming style for the
18647         GCC-compiled ones.
18648
18649         * gdk/win32/makefile.msc
18650         * gtk/makefile.msc: Cosmetics mostly.
18651
18652         * gtk/gtk.def: Add missing entry points.
18653
18654         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
18655
18656 1999-07-09  Tor Lillqvist  <tml@iki.fi>
18657
18658         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
18659         or height is zero. Don't print a warning if Pie or Arc fails, they
18660         always fail (?) for very narrow ellipses.
18661
18662         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
18663         the part or the destination window corresponding to source area
18664         outside of the source drawable's boundary.
18665
18666         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
18667         anything if less than two points.
18668
18669         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
18670         return NULL. Gtk cut-and-paste inside a single program works
18671         better this way. (It always gets the clipboard contents from
18672         Windows, not from its own copy, which is cleared anyway. I can't
18673         say I fully understand what happens... Emulating the X selection
18674         and property stuff is a bit of a mess.)
18675
18676         * gdk/win32/gdkevents.c
18677         * gdk/win32/gdkproperty.c: A bit more verbose logging.
18678
18679         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
18680         that never got deleted). Revamp gdk_region_shrink.
18681
18682         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
18683         after use.
18684
18685         * gtk/gtk.def: Add some missing entry points.
18686
18687         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
18688         component.
18689
18690 1999-07-04  Tor Lillqvist  <tml@iki.fi>
18691
18692         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
18693         Control-digits specially.
18694
18695 1999-07-03  Tor Lillqvist  <tml@iki.fi>
18696
18697         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
18698
18699 1999-06-28  Tor Lillqvist  <tml@iki.fi>
18700
18701         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
18702         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
18703         finding this.)
18704
18705 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
18706
18707         * gtk+.spec.in: Corrected some typos in files section.
18708         
18709 1999-06-15  Tor Lillqvist  <tml@iki.fi>
18710
18711         * README.win32: Mention using GNU gettext.
18712         * config.h.win32: Enable NLS stuff.
18713         * gtk/makefile.msc: Use GNU gettext.
18714         * gdk/win32/gdkdnd.c: Minor header reorg.
18715         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
18716         cosmetics.
18717         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
18718         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
18719
18720 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
18721
18722         * acinclude.m4
18723         * config.guess
18724         * config.status
18725         * ltconfig
18726         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
18727
18728 1999-05-30  Tor Lillqvist  <tml@iki.fi>
18729
18730         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
18731         SafeAdjustWindowRectEx. Don't override all calls to
18732         AdjustWindowRectEx by it, but use it only in two places: When
18733         creating a new top-level window and when moving a top-level
18734         window.
18735
18736         Use screen coordinate rectangle, not client rectangle, in
18737         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
18738         when we try to place a window so that the decoration (mainly,
18739         title bar) isn't visible.
18740
18741         These changes fix the bug that showed up for instance as the
18742         GIMP's saved top-level windows moving right and down (by an amount
18743         equal to the window decoration) for each session. This bug showed
18744         up also in testgtk's "Saved Position".
18745
18746         gdk_window_resize also redone a bit.
18747
18748 1999-05-25  Tor Lillqvist  <tml@iki.fi>
18749
18750         * gtk/testgtkrc: Add (commented out) Windows-style theme
18751         include line.
18752
18753         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
18754
18755 1999-05-18  Tor Lillqvist  <tml@iki.fi>
18756
18757         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
18758         gdkx.h to a gdk subdirectory, so that applications can include
18759         these with <gdk/*.h> without trouble.
18760
18761         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
18762         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
18763         have their bitmap destroyed.
18764
18765         * gdk/win32/gdk.def: Add gdk_root_parent.
18766
18767 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
18768
18769         * configure.in
18770           gtk-config.in
18771           ltconfig
18772           ltmain.sh     
18773           gtk/Makefile.am: changes to compile nicely (with xlib) 
18774           on BeOS
18775
18776 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
18777
18778         * acinclude.m4
18779         * config.guess
18780         * config.sub
18781         * ltconfig
18782         * ltmain.sh: upgrade to libtool 1.3
18783
18784 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
18785
18786         * gtk/gtkclist.c:
18787         * gtk/gtkctree.c: merges from gtk-1-2
18788
18789 1999-04-25  Tor Lillqvist  <tml@iki.fi>
18790
18791         Support added for building using a GNU toolchain on Win32,
18792         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
18793
18794         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
18795         * config.h.win32: Changes for gcc.
18796         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
18797         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
18798         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
18799         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
18800         Protect shl stuff unavaiilable with mingw32 headers.
18801         * gdk/win32/gdkevents.c: Fix typo.
18802         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
18803         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
18804         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
18805         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
18806         the mingw32 headers.
18807         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
18808         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
18809         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
18810         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
18811         Test for NATIVE_WIN32, not _MSC_VER.
18812         * gtk/gtkmain.c: No use warning about developer version on Win32,
18813         there aren't any non-developer versions anyhow.
18814         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
18815         * gtk/makefile.msc: Use pthread from another directory. Minor other
18816         changes. 
18817
18818 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18819
18820         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18821           default filter from the list
18822
18823 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
18824
18825         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
18826          when gtk_widget_grab_default() is called for a widget that
18827          is not within a GtkWindow.
18828
18829 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
18830
18831         * docs/gtk_tut.sgml, examples/clist.c: use a
18832           scrolled window in the clist example. Minor
18833           tutorial fixes.
18834
18835 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
18836
18837         * docs/gtk_tut.sgml: Style check from David King
18838           <dking@youvegotmail.net>
18839
18840 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
18841
18842         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
18843         compile with unknown value of GDK_WINDOWING
18844
18845 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
18846
18847         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
18848         after the rule is fired.
18849         (install-exec-local): Install gdkconfig.h only if the contents are
18850         different from the currently installed gdkconfig.h.
18851
18852 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
18853
18854         * gdk/Makefile.am (configexecincludedir): Rename from 
18855         configincludedir so that gdkconfig.h will be installed 
18856         as part of `make install-exec'. 
18857
18858 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
18859
18860         * acinclude.m4
18861         * config.guess
18862         * config.sub
18863         * ltconfig
18864         * ltmain.sh: upgrade to libtool 1.2f
18865
18866         * autogen.sh: libtool is not required to autogen gtk+
18867
18868         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
18869         needed)
18870
18871 1999-03-18  Tor Lillqvist  <tml@iki.fi>
18872
18873         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
18874         declaring gdk variables exported/imported from the DLL. New image
18875         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
18876         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
18877         GDK_DRAG_PROTO_OLE2.
18878
18879         * gdk/gdk.h: Merge in Win32 version: Two new functions,
18880         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
18881         declared only for the Win32 version, but could be in the X11
18882         version as well. (Needed for a Xlib-less gdk_imlib.)
18883         gdk_color_hash should have only one parameter. Declare
18884         gdk_threads_mutex with GDKVAR.
18885         
18886         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
18887         just one parameter.
18888
18889         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
18890         per pixel, not bits.
18891
18892         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
18893         Fetch bpp (which means bits-per-pixel here) from another place on
18894         Win32. Accept also depth==32 (which we might get on Win32) with
18895         bpp==32.
18896
18897         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
18898         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
18899         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
18900         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
18901         in the backend-dependent directory, not in the common gdk
18902         directory.
18903
18904         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
18905         headers.
18906
18907 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
18908
18909         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
18910         want to use the Gtk+ devel version (which is true, and yes - even i am
18911         currently working with the 1.2.x branch). so everyone reading this, you
18912         probably want to issue
18913         cvs checkout -r glib-1-2 glib
18914         and
18915         cvs checkout -r gtk-1-2 gtk+
18916         as your next two comands.
18917
18918 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
18919
18920         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
18921         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
18922
18923         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
18924         file. strongly deprecated the GTK_HAVE_* macros, we provide
18925         GTK_CHECK_VERSION() for people that need to check for certain
18926         Gtk+ versions.
18927
18928         * gtk/gtkcompat.h: removed this from CVS.
18929         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
18930         idea right from the start, it just didn't seem like that back then.
18931
18932 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
18933
18934         * merges from gtk-1-2:
18935
18936 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
18937
18938         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
18939         item factory class has been created.
18940         (gtk_item_factory_parse_rc): likewise.
18941
18942         * gtk/gtkmenu.c:
18943         keep proper references for old_active_menu_item.
18944         (gtk_menu_reparent): unset the usize of the new parent,
18945         so the menu can sanely be size requested and we don't get nasty screen
18946         artefacts upon next reparentation.
18947         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
18948         enter notify. only synthesize enter notifies if the pointer really is
18949         inside the event window.
18950         (gtk_menu_popdown): use gtk_menu_shell_deselect().
18951         (gtk_menu_popup): move the background setting stuff into
18952         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
18953
18954         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
18955         gtk_menu_shell_select_item() to select the new item.
18956         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
18957         do the right thing for deselection as well.
18958
18959 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
18960
18961         * gtk/gtkwidget.[hc]:
18962         (gtk_widget_accelerators_locked): return whether a widget's accelerators
18963         are locked.
18964
18965         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
18966         existing accelerators if the widget's accelerators are locked.
18967
18968 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
18969
18970         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
18971
18972         * gtk/gtkmenu.c: truely forward key press and key release events to
18973         the menu widget from the toplevel or tearoff window. we can't simply
18974         connect to that, we need to stop further processing of the events as
18975         well.
18976
18977 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
18978
18979         * gtk/gtkmenu.c:
18980         (gtk_menu_key_press): pass event->keyval, event->state to
18981         gtk_accelerator_valid, instead of event->keyval twice.
18982         refuse to install single letter accelerators for menus that use
18983         single letter shortcuts.
18984
18985         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
18986         gtk_menu_ensure_uline_accel_group().
18987
18988         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
18989         which will always return an uline accel group, made
18990         gtk_menu_get_uline_accel_group() return NULL if the group isn't
18991         yet created.
18992
18993 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
18994
18995         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
18996
18997         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18998         Leave button sensitive, trap  button_press, button_release,
18999         motion_notify, enter_notify and leave_notify events instead.
19000         (gtk_clist_column_title_active): disconnect event handler.
19001         (gtk_clist_drag_data_get): fixed memory leak. Reported by
19002         Guillaume Laurent <glaurent@worldnet.fr>
19003
19004 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
19005
19006         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
19007         width/height mixups.
19008
19009         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
19010         if needed.
19011
19012 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
19013
19014         * gtk/testgtk.c (create_item_factory): unref the item factory after
19015         window's destruction.
19016
19017         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
19018         count on the menu shell around the menu item's activation, since the
19019         signal emission may cause menu shell destruction.
19020
19021         * gtk/gtkitemfactory.c:
19022         the previous code leaked one accel group per menu. we use
19023         gtk_menu_get_uline_accel_group() now to fix that, and with that
19024         also create the underline accelerator group of the menus only if
19025         required (i.e. an underline accelerator has been specified).
19026         (gtk_item_factory_construct):
19027         (gtk_item_factory_create_item): removed code that would create an
19028         extra accel group for the menu (and leak references).
19029         (gtk_item_factory_create_item): adapted the underline accelerator
19030         installation code to properly feature gtk_menu_get_uline_accel_group().
19031
19032         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
19033         menu->accel_group, this may return NULL if the accelerator group
19034         hasn't been set yet.
19035         added gtk_menu_get_uline_accel_group() to retrive the underline
19036         accelerator group of the menu, this will be created on demand
19037         and proper care is taken about its reference count.
19038
19039         * gtk/gtkitemfactory.h:
19040         * gtk/gtkitemfactory.c:
19041         dumped the approach of keeping a widgets by action list on the
19042         factory since the factory<->widget destroy negotiation didn't work
19043         and would be hard to get going at all. instead we keep a list of
19044         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
19045         persistant throughout a program's life time).
19046         also, i removed the static const gchar *key_* variables, and made
19047         them inline strings (they weren't actually used anyways).
19048         (gtk_item_factory_add_item): update ifactory->items.
19049         (gtk_item_factory_destroy): destroy ifactory->items (and remove
19050         the item factory pointer from the remaining ifactory widgets).
19051         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
19052         list to find the widget.
19053         (gtk_item_factory_get_item): new function that works around
19054         gtk_item_factory_get_widget() limitations, this function will only
19055         return menu items, even for <Branch> entries.
19056
19057 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19058
19059         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19060         font hash table, if we have a GdkFontPrivate entry for this font
19061         already, simply increment its reference count, provided by Olaf Dietsche
19062         <olaf.dietsche+list.gtk@netcologne.de>.
19063
19064         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19065         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19066
19067 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
19068
19069         * gtk/gtkcontainer.c:
19070         (gtk_container_add_with_args):
19071         (gtk_container_addv):
19072         (gtk_container_add): before adding a child to a conatiner, make sure
19073         it is (default) constructed, this is neccessary because under certain
19074         circumstances the child will get relized and mapped immediatedly, in
19075         which case it has to be constructed already.
19076
19077 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
19078
19079         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
19080         values > 1 as TRUE also.
19081
19082 1999-03-16  Tor Lillqvist  <tml@iki.fi>
19083
19084         * README.win32: New file.
19085                 
19086         * configure.in: Check for lstat.
19087
19088         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
19089         completeness.
19090
19091         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
19092
19093         * gtk/gtk.def: Removed CRs.
19094
19095         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
19096         ..\gdk\win32).
19097
19098         * gdk/win32/makefile.msc: Correct upwards relative paths.
19099         
19100 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
19101
19102         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
19103           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
19104           it was connecting a void function to expose_event and the int
19105           returning function to the draw signal
19106
19107 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
19108
19109         * configure.in:
19110         Use correct path to libgmodule.la when ref'ing uninstalled copy
19111         of glib.  (Already in stable branch, Bug #417)
19112
19113 1999-03-15  Tor Lillqvist  <tml@iki.fi>
19114
19115         Win32 merge and general portability stuff:
19116                 
19117         * acconfig.h,configure.in: Check for <sys/time.h>.
19118
19119         * gdk/win32: New directory (actually, been there for a while).
19120         
19121         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
19122         NATIVE_WIN32, and use these. Always case fold on Win32. No
19123         backslashed escapes on native Win32.
19124
19125         * gtk/{gtk.def,makefile.msc}: New files.
19126
19127         * gtk/Makefile.am: Add above new files.
19128         
19129         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
19130         instead of <strings.h>.
19131
19132         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
19133         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
19134         <unistd.h> appropriately.
19135
19136         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
19137         Use ABS() (from <glib.h>) instead of abs().
19138         
19139         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
19140         of gtk (and thus glib) headers, so that WIN32 will be
19141         defined. With MS C, include <direct.h> for mkdir prototype.
19142
19143         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
19144         some casts, needed by MS C.
19145
19146         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
19147         implemented).
19148
19149         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
19150         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
19151         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
19152
19153         * gtk/gtkmain.h: Mark variables for export/import on Win32.
19154                 
19155         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
19156         the event is not a hint, or its window is not the slider. Needed
19157         on Win32, at least.
19158
19159         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
19160         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
19161         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
19162         a subdirectory of the Windows directory as gtk system
19163         configuration directory.
19164
19165         * gtk/gtkselection.c: No chunks on Win32.
19166
19167         * gtk/gtksocket.c: Not implemented on Win32.
19168
19169         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
19170
19171         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
19172
19173         * gtk/maketypes.awk: Declare variables with a macro that expands to
19174         necessary export/import magic in the case of Win32.
19175                 
19176         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
19177
19178 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
19179
19180         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
19181         since those were meant only for gdki18n.h.  
19182         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
19183         for widechar tests.
19184         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
19185
19186 1999-03-13  Tor Lillqvist  <tml@iki.fi>
19187
19188         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
19189         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
19190
19191         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
19192         installed) to CFLAGS.
19193
19194         * gdk/Makefile.am: Add rules for gdkconfig.h.
19195
19196         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
19197         APIs.
19198
19199         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
19200         gdkx.h anyway when compiling for X11.
19201         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
19202         general): Merge in Win32 version.
19203         
19204         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
19205         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
19206         expansion (if we don't have HAVE_PWD_H), allow for drive
19207         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
19208         included code from Craig Setera's port to Win32 (the one that uses
19209         X11, and the cygwin dll), even if it probably will be abandoned.
19210
19211         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
19212         the user entered one herself.  This way one can complete *.h and
19213         don't get matches on any .help files, for instance.
19214         
19215 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19216
19217         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19218         font hash table, if we have a GdkFontPrivate entry for this font
19219         already, simply increment its reference count, provided by Olaf Dietsche
19220         <olaf.dietsche+list.gtk@netcologne.de>.
19221
19222         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
19223         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19224
19225 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19226
19227         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19228         the number of calls to gdk_draw_point() (and thus to X) by
19229         clipping the points by hand.
19230
19231         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19232         the clip parameter.
19233         (gtk_handle_box_paint): Only paint the handle if the expose area
19234         intersects it.
19235
19236 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19237
19238         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19239
19240 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19241
19242         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19243         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19244
19245 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19246
19247         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19248          textmode (O_TEXT) for OS/2 version.
19249
19250 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19251
19252         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19253         GtkSpinButton, "input" and "output", to make the output more flexible.
19254         The user has to provide a mapping between adjustment->value and the
19255         output string (and vice versa, if the spin button is editable). 
19256         See testgtk for examples.
19257
19258 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19259
19260         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19261         new one.
19262         
19263         * configure.in: set gtk+ version to 1.3.0.