]> Pileus Git - ~andy/gtk/blob - ChangeLog
Fix up warnings, #58928.
[~andy/gtk] / ChangeLog
1 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtkliststore.c: Fix up warnings, #58928.
4
5         * gtk/gtktreeselection.h: Change signal prototype, #58647
6
7         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
8         #59221.
9
10         * gtk/gtkstyle.c: Actually prelight arrow, #50981
11         
12 2001-08-18  Hans Breuer  <hans@breuer.org>
13
14         * gdk/gdk.def : updated externals
15
16         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
17         is required to get (at least) visible in entry fields. Some selections
18         are really handled now - even on win32 - but copying via middle
19         mouse button into a different app needs to wait ... 
20
21         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
22         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
23
24         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
25         handling. I'm not sure if it is better now, but at least not worse
26
27         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
28         with SetWindowPos () which allows more fine-tuning backing-store wise
29
30         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
31         Also changed move/resize to be more like the X version.
32
33         * gtk/gtk.def : updated externals
34
35 2001-08-19  Sven Neumann  <sven@gimp.org>
36
37         * gtk/gtktooltips.c
38         * tests/testtreesort.c
39         * tests/treestoretest.c: inserted some casts to get rid of compiler
40         warnings.
41
42 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>>
43
44         * gtk/gtktreeviewcolumn.c
45         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
46
47         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
48         (_gtk_tree_view_find_node): If *node is NULL,
49         *tree should be NULL too.
50
51         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
52         column/renderers.
53         * tests/testtreecolumns.c: ditto
54         * tests/testtreefocus.c: ditto
55         * tests/testtreesort.c: ditto
56         * tests/testtreeview.c: ditto
57         * tests/treestoretest.c: ditto
58
59 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
60
61         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
62         signals; is_expander/is_expanded.
63
64         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
65         pixbufs.
66
67         * gtk/gtktreeview.c: set above properties.
68
69 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
70
71         * gtk/gtkwidget.h: Really remove set_default_style().
72
73         * docs/Changes-2.0.txt: added a note about
74         gtk_widget_push/pop/set_default_style.
75
76 2001-08-18  Havoc Pennington  <hp@pobox.com>
77
78         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
79         hints_changed in addition to the other cases.
80         (gtk_window_move_resize): include last position from configure
81         notify in debug spew
82
83 2001-08-18  James Henstridge  <james@daa.com.au>
84
85         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
86         second argument to the weak ref notify, cleaning up some uglyness.
87         (gtk_accel_group_attach): remove and add the weak notifier when
88         changing the accel groups slist.
89         (gtk_accel_group_detach): same here.
90
91 2001-08-17  Darin Adler  <darin@bentspoon.com>
92
93         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
94         missing parameters to utf8 functions to make it compile.
95
96 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
97
98         * gtk/gtktreeprivate.h:
99         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
100         (gtk_tree_view_init), (gtk_tree_view_set_property),
101         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
102         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
103         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
104         (gtk_tree_view_set_destroy_count_func),
105         (gtk_tree_view_set_enable_search),
106         (gtk_tree_view_get_enable_search),
107         (gtk_tree_view_get_search_column),
108         (gtk_tree_view_set_search_column),
109         (gtk_tree_view_get_search_equal_func),
110         (gtk_tree_view_set_search_equal_func),
111         (gtk_tree_view_search_dialog_destroy),
112         (gtk_tree_view_search_position_func),
113         (gtk_tree_view_interactive_search),
114         (gtk_tree_view_search_delete_event),
115         (gtk_tree_view_search_button_press_event),
116         (gtk_tree_view_search_key_press_event),
117         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
118         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
119         * gtk/gtktreeview.h:
120         Add heavily modified patch from Kristian Rietveld to handle
121         interactive searching.
122
123 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
124
125         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
126         string parameter.
127
128         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
129         GtkMenuShell::selection_done, now that we have it, instead of 
130         ::deactivate so we're not tearing the menu apart and notify
131         the user prematurely.
132
133 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
134
135         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
136         window, clear window->need_default_position to avoid infinite loops.
137         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
138
139 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
140
141         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
142         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
143         (gtk_tree_view_set_property): don't cast possible NULL objects.
144         (gtk_tree_view_destroy): reset the model to NULL.
145
146         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
147         parent_class handler.
148
149 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
150
151         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
152
153 2001-08-17  Anders Carlsson  <andersca@gnu.org>
154
155         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
156         point numbers so that the result will be floating point.
157
158 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
159
160         * tests/testgtk.c (create_handle_box): 
161         (create_toolbar): Replace gtk_window_set_policy calls by
162         gtk_window_set_resizable.
163
164 2001-08-16  Jakub Steiner <jimmac@ximian.com>
165
166         * gtk/stock-icons/dialog_info.png: new style bulb
167         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
168         * gtk/stock-icons/dialog_warning.png: need a hand?
169         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
170           the aa border gets chopped off ok
171         * gtk/stock-icons/stock_colorselector.png: using the new hand
172         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
173           this one is for, but the old icon was butt ugly.
174         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
175         * gtk/stock-icons/stock*_insert_object.png: "
176         * gtk/stock-icons/stock_index.png: using new hand icon
177         * gtk/stock-icons/stock*_new.png: the document template being used 
178           elsewhere too
179         * gtk/stock-icons/stock*_print*.png: new print and print preview 
180           icons (panel/menu)  
181         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
182           icons based on Tuomas' floppy image.
183         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
184         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
185         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
186         * gtk/stock-icons/stock*_undelete.png: "
187         * gtk/stock-icons/stock_preferences.png: I have a version with a 
188           document base if the sliders are no good.
189         * gtk/stock-icons/stock_properties.png: properties 
190         
191
192         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
193           (tigert@ximian.com) clipboard icons
194         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
195         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
196         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
197           little bigger IMHO
198
199 2001-08-16  Sven Neumann  <sven@gimp.org>
200
201         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
202
203 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
204
205         * gtk/gtkcellrenderertext.c:
206         Avoid warning when specifying NULL for "attributes" property
207
208 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
209
210         * docs/debugging.txt: Add a warning about --enable-debug=no,
211         some editorial changes.
212
213 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
214
215         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
216         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
217         debugging info, remove unused debug flags. (#58330)
218
219 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
220
221         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
222         (gtk_tree_selection_select_all): Remove strict checking for rows.
223
224 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
225         
226         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
227         Don't remove the tooltip window when the tip text changes. (#15891)
228
229 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
230
231         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
232         $(srcdir).
233
234 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
235
236         * Makefile.am (EXTRA_DIST): Fix problem with trying to
237         dist files from intl/, which is no longer there.
238
239 2001-08-11  Hans Breuer  <hans@breuer.org>
240
241         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
242           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
243           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
244           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
245           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
246           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
247
248         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
249           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
250         GDK_TYPE_EVENT signals
251
252         * gtk/gtkalignment.c : removed 'direct allocation bug',
253         which Tim discovered while reading the patch
254
255 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
256
257         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
258         compat macros for push/pop/set_visual that were supposed
259         to be added a long time ago, but got dropped. 
260
261 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
262
263         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
264         property notifies.
265
266 2001-08-07  Havoc Pennington  <hp@pobox.com>
267
268         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
269
270         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
271         some fixage is needed here, but nothing simple. Owen understands
272         it. ;-)
273
274         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
275         sizing and positioning.  Also, fix bug in compute_geometry_hints
276         (width/height confusion for setting min size). 
277         (gtk_window_move): new function
278         (gtk_window_resize): new function
279         (gtk_window_get_size): new function
280         (gtk_window_get_position): new function
281         (gtk_window_parse_geometry): new function
282         
283         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
284         (gtk_widget_get_size_request): new function
285         (gtk_widget_get_usize): delete, that was a short-lived function
286         ;-)
287         (gtk_widget_set_usize): deprecate
288         (gtk_widget_set_uposition): deprecate, make it a trivial 
289         gtk_window_move() wrapper
290         (gtk_widget_class_init): remove x/y/width/height properties,
291         add width_request height_request
292         
293         * demos/*: update to avoid deprecated functions
294         
295         * gtk/gtklayout.c: add x/y child properties
296
297         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
298         uses of "gint16"
299
300         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
301         sizing test
302
303         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
304         configure events on toplevel windows are always in root window
305         coordinates, following ICCCM spec that all synthetic events 
306         are in root window coords already, while real events are 
307         in parent window coords. Previously the code assumed that 
308         coords of 0,0 were parent window coords, which was 
309         really broken.
310   
311         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
312         warning
313  
314         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
315         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
316         hints in gtk_window_parse_geometry()
317  
318         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
319         new USER_POS USER_SIZE hints    
320
321 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
322
323         * tests/prop-editor.c (properties_from_type): Use 
324         g_object_class_list_properties to get the param specs 
325         for a given type. (#58609)
326
327 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
328
329         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
330         free the text_aa parts. (#57549)
331
332 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
333
334         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
335         not the foreground color. (#57621)
336
337 2001-08-09  Alexander Larsson <alexl@redhat.com>
338
339         * gdk/win32/gdkfont-win32.c:
340         Update to the new pango win32 api.
341
342 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
343
344         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
345         COMPOUND_TEXT instead of TEXT
346         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
347         interpret the return value of g_string_to_compound_text()
348         (#55152)
349
350 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
351
352         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
353         fail if iter is NULL. (#58347)
354
355 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
356
357         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
358         some off-by-one issues, fixing selection of line-ends. (#50323)
359
360 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
361
362         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
363         functions in order to make mouse operation work again in the
364         color wheel. (#58604)
365
366 2001-08-07  James Henstridge  <james@daa.com.au>
367
368         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
369         the accelerator when the accel object is changed.  Fixes bug
370         #58628.
371
372 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
373
374         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
375         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
376         (gnome bugzilla #58202)
377
378 2001-08-06  Havoc Pennington  <hp@pobox.com>
379  
380         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
381         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
382         it was expecting a GdkWindow, not a GdkWindowImplX11.
383  
384         Also, we were getting the window rect in screen coords 
385         and the screen rect in window coords then intersecting 
386         them; instead, get window rect in window coords.
387  
388         Finally, there were codepaths that resulted in a stuck server grab
389         (when the window was fully onscreen, or on gdk_image_new()
390         failure); make the server ungrab thing a bit more
391         robust/consistent.
392
393 2001-08-06  Sven Neumann  <sven@gimp.org>
394
395         * gdk/gdkpango.c (gdk_pango_context_destroy): 
396         check if info->colormap != NULL before unref'ing it. It might have
397         been set to NULL using gdk_pango_context_set_colormap().
398
399 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
400
401         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
402         Fix conversion from float to int so that we don't get
403         skew in the int => float => int roundtrip. 
404         (#58120, reported by Vitaly Tishkov). Also fix problem
405         where if no alpha was set, the returned alpha
406         from (say) set_current_alpha() was returned as 1, not 65535.
407
408 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
409
410         * gtk/gtklist.c (gtk_list_clear_items): Fix
411         problem with selecting a new focus child.
412
413         * gtk/gtklist.c (gtk_list_clear_items): Clear 
414         list->undo/list_focus_child after unparenting
415         child, since unparenting the child can result
416         in list->last_focus_child being set. (#58024)
417
418         * Makefile.am (SUBDIRS): Add target specific pc
419         files to DISTCLEANFILES.
420
421         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
422         (58327, Matthias Clasen)
423
424 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
425
426         * tests/testgtk.c: Patch from Hans (with various modifications),
427         to add the ability to use testgtk as a rough-and-ready
428         benchmark. Try, 'testgtk --bench all:5' (if you want decent
429         numbers, run without a window manager)
430
431 2001-08-04 Alexander Larsson <alexl@redhat.com>
432
433         * gdk/win32/gdkinput.c:
434         Add #ifdef HAVE_WINTAB around wintab.h include.
435
436         * gtk/gtk.def:
437         Removed marshals that have been moved to glib.
438         Commented out plug and socket. They didn't compile for me 
439         on win32.
440
441 2001-08-04  Hans Breuer  <hans@breuer.org>
442
443         * gtk/stocks-icons/makefile.msc : new file
444         * gtk/makefile.msc.in : use it
445
446         * gtk/gtkstyle.c : not all platforms do provide M_PI and
447         friends, but luckily there is G_PI
448
449         * gtk/gtk.def : updated
450
451         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
452         windows WS_POPUP, but only those without a parent. This fixes the 
453         mis-alignment between the selectable (temp, input only) window and 
454         the window text of GtkLabel.
455
456         (gdk_window_show) : respect private->state when actually showing
457         the window.
458
459         (gdk_window_set_transient_for) : Implementation from Wolfgang 
460         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
461         error handling. Should fix #50586.
462
463         * gdk/win32/gdkevents-win32.c : beautify log output
464
465 2001-08-04  Michael Natterer  <mitch@gimp.org>
466
467         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
468         Need to show the image after adding it to the GtkImageMenuItem.
469         This used to work without in testgtk because of the
470         gtk_widget_show_all() at the end of the function.
471         (Closes #54978).
472
473 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
474
475         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
476         (gtk_notebook_set_child_property): fix finding of child's page,
477         since we have to validly deal with labels and menus here as well.
478         (gtk_notebook_get_child_property): fix warning.
479         (gtk_notebook_class_init): property tab_pack is of type
480         GTK_TYPE_PACK_TYPE (enum) not boolean.
481         (gtk_notebook_find_child): don't always warn, we might be looking
482         for a label or menu child.
483         (gtk_notebook_map): fix mapping of panel.
484
485         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
486         widget's mapped state, regardless of the value being set equals
487         old settings, since things like REALIZED(parent) or MAPPED(parent)
488         may have changed since the old value was set. make it an error to
489         invoke this function on a toplevel widget.
490
491 2001-07-31  Darin Adler  <darin@bentspoon.com>
492
493         * gdk/gdkprivate.h:
494         * gdk/x11/gdkx.h:
495         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
496
497         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
498         GTK_OBJECT.
499
500 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
501
502         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
503         scoping error pointed out by matthiasc@poet.de.
504
505 2001-07-31  Sven Neumann  <sven@gimp.org>
506
507         * demos/gtk-demo/appwindow.c
508         * demos/gtk-demo/item_factory.c
509         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
510
511 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
512
513         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
514         argument order for g_signal_has_handler_pending.
515
516 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
517
518         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
519         instead of long deprecated g_scanner_stat_mode().
520
521 2001-07-29  Hans Breuer  <hans@breuer.org>
522
523         * gdk/makefile.msc : build in the backend dir after
524         auto-generating files
525
526         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
527         with code from win32-production-branch.
528
529         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
530         before calling DestroyWindow, which indirectly calls 
531         gdk_window_destroy_notify ()
532
533         (performance patch merged from win32-production-branch)
534         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
535         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
536         R2_COPYPEN rop). It is claimed to be much faster.
537
538 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
539
540         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
541         add an "attributes" property to the text renderer for ATK.
542
543 2001-07-26  Alex Larsson  <alexl@redhat.com>
544
545         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
546         Initialize image->bits_per_pixel from the drawable, not from
547         the root window.
548
549         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
550         Fix cast. argument is an IMPL already.
551
552 2001-07-15  James Henstridge  <james@daa.com.au>
553
554         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
555         (gtk_window_remove_accel_group): same here.
556         (gtk_window_key_press_event): same here.
557
558         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
559         (gtk_widget_remove_accelerator): same here.
560         (gtk_widget_remove_accelerators): same here.
561
562         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
563
564         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
565         instead of GtkObject.
566
567         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
568         now takes GObjects.
569
570         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
571         pass a GObject to gtk_accel_group_entries_from_object.
572         (gtk_item_factory_create_item): s/accel_widget/accel_object/
573
574         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
575
576         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
577
578         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
579         GObjects can have accelerators set now.  Add compatibility
580         defines.
581
582         * gtk/gtkmarshal.list: add missing marshallers.
583
584         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
585         accelerators on plain GObjects.  gtk_accel_group_object_destroy
586         has been converted into a weak reference, and
587         gtk_accel_group_delete_entries is now a destroy notify for that
588         piece of data.
589
590 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
591
592         * gdk/gdkdraw.c: Added a check on the colormap depth to
593         gdk_drawable_set_colormap()
594         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
595         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
596         for pixmaps without visuals (more specifically, bitmaps)
597         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
598         doesn't set a colormap with the wrong depth
599
600
601 2001-07-22  Anders Carlsson  <andersca@gnome.org>
602
603         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
604         expander_height and expander_width properties with a single
605         property, expander_size.
606         (gtk_tree_view_init): Set the tab_offset to expander_size
607         plus some padding.
608         (gtk_tree_view_unrealize): Remove the expand/collapse
609         timeout if it exists.
610         (coords_are_over_arrow): Fix a small bug.
611         (gtk_tree_view_motion_draw_column_motion_arrow): Use
612         expander_size.
613         (gtk_tree_view_draw_focus): Use "treeview" instead of
614         "add-mode" as detail when drawing the focus.
615         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
616         instead of "add-mode" as detail when drawing the focus.
617         (gtk_tree_view_deleted): If we have a node currently being
618         expanded or collapsed, remove the timeout and set the node 
619         to NULL.
620         (gtk_tree_view_queue_draw_arrow): New function that just
621         redraws the arrow of a node.
622         (gtk_tree_view_draw_arrow): Use expander_size instead of
623         expander_width/expander_height, also pass a different
624         expander_style to gtk_paint_expander depending on the 
625         state of the node being drawn.
626         (expand_collapse_timeout): New function for expanding 
627         or collapsing a node depending on the previous state.
628         (gtk_tree_view_real_expand_row): Add timeout and set 
629         correct state for node being expanded.
630         (gtk_tree_view_real_collapse_row): Add timeout and set
631         correct state for node being collapsed.
632
633         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
634         information about the node currently being expanded or
635         collapsed, and also a timeout id.
636
637         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
638         with expander_style for draw_expander.
639
640         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
641         expander_style.
642         (create_expander_affine): New function for creating an 
643         expander affine.
644         (apply_affine_on_point): New function for applying an 
645         affine to a point.
646         (gtk_default_draw_expander): Modified to take expander_style
647         instead of is_open, and to draw the rectangle rotated differently
648         depending on the expander style.
649         (gtk_paint_expander): Replace is_open with expander_style.
650
651         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
652
653         * gtk/gtkenums.h: Add expander style enum.
654
655 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
656
657         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
658         value from gtk_tree_model_get_iter, the model might be empty.
659
660 2001-07-20  Hans Breuer  <hans@breuer.org>
661
662         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
663         gdk/gdkinput.c like the other backends
664
665         * gdk/win32/gdkinput-win32.h :
666         * gdk/win32/gdkinput.c :
667         * gdk/win32/gdkvisual-win32.c :
668         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
669         GdkVisual GObjectification. UNTESTED for pen-devices because
670         I simply have none.
671
672         * gdk/gdk.def :
673         * gtk/gtk.def : updated externals
674
675         * gtk/gtkiconfactory.c :
676         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
677         before passing &error to functions to avoid strange crashes
678         
679         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
680
681         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
682
683         * gtk/makefile.msc.in : updated
684
685 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
686
687         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
688         Add property support. (#51858)
689
690 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
691
692         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
693         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
694         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
695
696 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
697
698         * gtk/gtkcolorsel.c: Add propery support (roughly
699         based on patch from Lee Mallabone, #51014)
700
701         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
702         deprecated, since we already g_warning() on it.
703
704 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
705
706         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
707         typo that sometimes caused selection not to work properly.
708
709         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
710         entry when tabbing in. (#57743)
711         
712         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
713         user drags up above or down below the entry, move
714         to the end or the beginning of the entry. (Suggestion
715         from Jay Cox, #50940)
716
717         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
718         a current selection, then when moving by chars or
719         words, move to the end of the selection rather than
720         from entry->current_pos. (Suggestion from Jay Cox,
721         #50942)
722         
723 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
724
725         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
726         set window->decorated. (Patch from Hidetoshi Tajima,
727         #55846)
728
729 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
730
731         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
732         the widget/child realization/mapping invariants.
733
734         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
735         gtk_widget_[get/set]_child_visible() to control
736         whether visible children of a mapped window are
737         mapped.
738
739         * docs/widget_system.txt: Updated for changes in
740         container contract, and addition of GTK_CHILD_VISIBLE.
741
742         * gtk/gtkcontainer.c: Add generic map()/unmap()
743         functions that work for almost all containers.
744
745         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
746         gtk_widget_set_child_visible() where necessary.
747
748         * gtk/*.c: Remove excess map(), unmap(), and 
749         realization/mapping invariant enforcing code
750         from many containers.
751
752 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
753
754         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
755         Get the foreground color from 'text', nor 'fg'. (#57568)
756
757 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
758
759         * gtk/*.c: Patch from Matthias Clasen to remove remove
760         all instances of g_return_if_fail (foo != NULL); that are
761         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
762         since the second check catches the NULL anyways.
763
764 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
765
766         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
767         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
768         GDK_THREADS_ENTER()/LEAVE() pairs.
769
770         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
771         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
772         pairs. (Problem found by M. Meeks)
773
774 2001-07-18  Darin Adler  <darin@bentspoon.com>
775
776         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
777         that we don't get a g_warning message every time we register a new
778         icon size.
779
780         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
781         using pixel variable of the correct type.
782         
783 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
784
785         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
786         so that using X functions on a GdkWindow is possible, if
787         a little hairy.
788
789         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
790         and ts_origin of a GC, so that external parties can offset/restore
791         a GC, when using gdk_window_get_internal_paint_info().
792
793 2001-07-17  Darin Adler  <darin@bentspoon.com>
794
795         * .cvsignore: Ignore the sgml directory made by gtkdoc.
796         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
797         instead of the deprecated gtk_window_set_policy.
798         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
799         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
800         function to get rid of warning and some code too.
801         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
802         missing const.
803         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
804         unused local.
805         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
806         const.
807         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
808         (gdk_utf8_to_compound_text): Add missing const.
809         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
810         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
811         cast and get rid of an unnecessary one.
812         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
813         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
814         local.
815         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
816         Remove unused local.
817         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
818         missing const.
819         * tests/testsocket.c: (add_child): Add cast so the printf format
820         doesn't make us implicitly depend on what integer type
821         gtk_socket_get_id returns.
822         * tests/testtextbuffer.c: Add missing const.
823         * tests/testtreefocus.c: (main): Remove unused local.
824         * tests/treestoretest.c: (iter_remove): Remove unused local.
825         (uppercase_value): Remove unused function.
826         (make_window): Add statement to quiet the compiler's uninitialized
827         variable warning.
828
829 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
830
831         * gtk/gtkrange.c:
832         (second_timeout): 
833         (initial_timeout): 
834         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
835         (gtk_range_calc_layout): compute the new layout based on an
836         adjustment->value being passed in as argument.
837         (gtk_range_button_press): for button2 slider warps, first recalc
838         the layout, then adjust the value. also, use update_slider_position()
839         for adjusting the value, so we keep pixel quantisation at which we
840         usually operate (upon motion or button releases). the reason for this
841         is that, we can't change the adjustment upon button2 presses to a non
842         quantised value and upon button2 release re-quantise the value since
843         that'd alter the value even if we didn't get any motion events (causing
844         unexpected scroll area warps upon release and/or slider pixel-jitter).
845         (gtk_range_motion_notify): update the slider position from queried
846         coordinates, not event coordinates.
847
848 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
849
850         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
851         the default gc values are: width=0, CapBut, JoinMiter.
852
853 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
854
855         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
856         into account the xpad and ypad when calculating the width and the
857         height of the pixbuf cel.
858
859 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
860
861         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
862         Rename to gtk_radio_menu_item_get_group(), add deprecated
863         alias. (#57044)
864
865         * gtk/gtkfilesel.c: Indentation fix.
866
867 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
868
869         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
870         Hasselmann to fix warnings in compat macros. 
871         (#56773)
872
873         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
874         stupid wrong cast added in last patch.
875
876 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
877
878         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
879         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
880
881 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
882
883         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
884         missing cast.
885
886         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
887         NULL/FALSE return value confusion.
888
889         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
890         problem when scrollbar completely fills range. (Patch
891         from  Matthias Clasen, #57047)
892
893 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
894
895         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
896         clean up when handling events for move-resize emulation.
897         (Problem traced down by Matthias Clasen, #57271)
898
899 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
900
901         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
902           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
903           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
904           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
905           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
906           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
907           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
908         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
909
910 2001-07-09  Peter Williams  <peterw@ximian.com>
911
912         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
913         for when srcdir != builddir
914
915 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
916
917         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
918         gtk_tree_model_get_iter_root.
919
920         * gtk/gtkliststore.c: Add a bunch of g_return statements.
921         (gtk_list_store_iter_n_children): Fix up.
922
923         * gtk/gtktreestore.c: Add a bunch of g_return statements.
924
925 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
926
927         * gtk/gtkwidget.c (gtk_widget_class_init):
928         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
929         restore some workingness.
930
931         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
932         handle of window type for input-only windows.
933
934 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
935
936         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
937         Patch from Gregory Merchan to add 
938         gtk_button_box_set_secondary(), which separates
939         the child into a separate group from the normal
940         buttons. (#56331)
941
942         * gtk/gtkdialog.c: Make help buttons secondary by
943         default.
944
945         * gtk/gtkbbox.c: Added a child property "secondary".
946
947         * gtk/testgtk.c: Turn on the help button for the 
948         color selector to check that it properly appears
949         as secondary.
950
951 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
952  
953         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
954         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
955         Add gdk_set_pointer_hooks() to allow pointer-querying to
956         be hooked by an event record/playback system like GERD.
957         (#56914)
958         
959 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
960
961         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
962         in the right value of initial_emission to
963         gtk_widget_set_style_internal (#57091)
964
965 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
966
967         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
968         Make compile.
969
970         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
971         with calling gtk_widget_set_style_internal() with
972         the old style, not the new style. (#56989)
973
974 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
975
976         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
977           gtk/gtkwidget.c:
978         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
979         not GTK_WIDGET_GET_ANCESTOR ... see 
980         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
981         Indicate the best practice in the docs for gtk_widget_get_toplevel().
982
983         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
984         so GtkPlug can give the correct signals when transforming
985         from a child to a toplevel.
986         
987         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
988         reparentation correctly.
989
990         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
991         Propagate the previous_toplevel argument down properly.
992
993         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
994         of wrong atr list.
995
996         * gtk/gtkplug.[ch]: Add an "embedded" signal.
997
998         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
999         signals.
1000
1001         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
1002         functions gtk_plug_get_id(), gtk_socket_get_id(),
1003         to avoid the user having to worry about realization,
1004         and gdkx.h.
1005
1006         * tests/testsocket.c: Extend to try out the new signals
1007         and gtk_plug/socket_get_id().
1008
1009         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
1010         setting of underline attributes.
1011
1012         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
1013         DestroyNotify events from SubstructureNotifyMask
1014
1015         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
1016         Switch GDK_WINDOW_TYPE (window) as needed.
1017
1018         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
1019         allow creation of toplevel windows as children of
1020         foreign windows.
1021
1022         * gtk/gtkplug.c: Remove hacks involving changing private
1023         fields of GdkWindow.
1024
1025         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
1026         exactly the same signals and notification
1027         be emitted for local embedding as for inter-process
1028         embedding.
1029
1030 2001-07-04  James Henstridge  <james@daa.com.au>
1031
1032         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
1033
1034 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
1035
1036         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
1037         XEMBED embedding add a _XEMBED_INFO property to the
1038         client with version number and a "mapped" flags.
1039         Use the mapped flag instead of the racy MapRequestEvent
1040
1041         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
1042         code to reliably set things (when the child is a passive
1043         embedder participating in the XEMBED protocol) intead
1044         of just being a hack for embedding non-participating
1045         programs. Fix various bugs and race conditions.
1046         
1047         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
1048         work by simply making the GtkSocket the gtk parent
1049         of the GtkPlug. Set a flag in this case and make
1050         the GtkPlug work like a normal container by overriding
1051         methods such as check_resize and "chaining past" GtkWindow
1052         to GtkBin.
1053
1054         * gtk/gtkentry.c (gtk_entry_real_activate)
1055           gtk/gtkmain.c (gtk_propagate_event): 
1056         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
1057         
1058         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
1059         gtk_widget_get_ancestor):
1060         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
1061         might not give the expected result and recommend
1062         an alternative.
1063
1064         * tests/testsocket.c tests/testsocket_child.c
1065         tests/testsocket_common.c tests/Makefile.am: Extended
1066         to test different type of adding plugs to sockets
1067         (local,active,passive), and to test mapping/unmapping
1068         the plug.
1069
1070         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
1071         mark the window as destroyed until after we
1072         called _gdk_windowing_window_destroy().
1073         (_gdk_windowing_window_destroy() may use GDK functions
1074         on the window.)
1075
1076         * gdk/x11/gdkinput.c: Remove the check for finalization - 
1077         devices can be finalized under some circumnstances.
1078  
1079         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
1080         small problem with GDK_TYPE_DEVICE.
1081  
1082 2001-07-02  Havoc Pennington  <hp@pobox.com>
1083
1084         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
1085         use constants not atoms.
1086
1087 2001-07-02  James Henstridge  <james@daa.com.au>
1088
1089         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
1090         PANGO_TYPE_TAB_ARRAY.
1091
1092         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
1093         for PANGO_TYPE_TAB_ARRAY.
1094
1095         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
1096         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
1097
1098         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
1099         the file.  Remove Pango types from defs -- they are now defined in
1100         libpango.
1101
1102 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
1103
1104         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
1105
1106         * gtk/gtkobject.c (gtk_object_destroy): invoke
1107         g_object_run_dispose().
1108
1109         * gtk/gtkwindow.c: 
1110         * gtk/gtkwidget.c: 
1111         * gtk/gtkobject.c:
1112         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
1113         method.
1114
1115 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
1116
1117         * gtk/gtktypeutils.c (gtk_type_class): Remove
1118         change check for GTK_TYPE_OBJECT derivation to
1119         G_TYPE_OBJECTS - it's Tim-approved to use this 
1120         for arbitary objects.
1121
1122         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
1123         prefix gtk_container_dequeue_resize_handler().
1124
1125         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
1126         to the hierarachy_changed signal, since you otherwise
1127         have to always keep that around.
1128
1129         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
1130         for extra argument to hierarchy_changed.
1131
1132 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
1133
1134         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
1135         for style to mean "revert to default style"
1136
1137         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
1138           gtk_widget_restore_default_style): Make this functions
1139         deprecated aliases for gtk_widget_set_style (widget, NULL).
1140
1141         * gtk/gtkwidget.[ch]: Remove:
1142            gtk_widget_set_default_style ()
1143            gtk_widget_push_style ()
1144            gtk_widget_pop_style ()
1145         These functions interact are overriden by RC files, and
1146         thus virtually useless, and complicated.
1147
1148 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
1149
1150         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
1151         most of the previous global variables in gtkrc.c. This is
1152         in preparation for multi-head, since each screen can
1153         have different GtkSettings and RC information.
1154
1155         * gtk/gtkrc.[ch]: 
1156
1157         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
1158         GtkSettings parameter to GtkRcStyle::parse.
1159
1160         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
1161         Add two new settings gtk-theme-name, gtk-key-theme-name,
1162         for RC files that are loaded by name after reading
1163         the default RC files.
1164         
1165         * gtk/gtkrc.c: Allow priorities for styles, as wll as
1166         bindings.
1167
1168         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
1169         and use it by default for RC files loaded via 
1170         gtk-theme-name, gtk-key-theme-name.
1171
1172         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
1173         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
1174         tests/testgtkrc: Require pathnames to be absolute.
1175
1176         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
1177         the source when parsing, since the operation of looking up a
1178         pixmap from an RC file depends on the parsing context.
1179
1180         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
1181         reset RC styles on all widgets when files are reparsed.
1182
1183         * tests/testgtk.c (create_rc_file) 
1184           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
1185         Simplify, now that gtk_rc_reparse_all() resets styles on
1186         all widgets itself.
1187
1188         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
1189         return value.
1190
1191         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
1192         GtkSettings argument.
1193
1194         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
1195         gtk_settings_get_global().
1196
1197         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
1198         to get the appropriate GtkSettings for a widget. (For now,
1199         just gets the default GtkSetttings.) 
1200
1201         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
1202           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
1203         changes.
1204
1205         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
1206         getting a style for a path without actually having a widget.
1207         (Allows using a style for a subpart of a widget, for
1208         example.)
1209
1210         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
1211         the RC files to be reloaded for just one GtkSettings
1212         (not sure how useful this really is.)
1213
1214         * gtk/gtkrc.h: Deprecate
1215         gtk_rc_add_widget_name/widget_class/class_style
1216
1217 2001-06-30  Alex Larsson  <alexl@redhat.com>
1218
1219         * gdk/linux-fb/gdkinput-none.c:
1220         * gdk/linux-fb/gdkinput.c:
1221         * gdk/linux-fb/gdkinputprivate.h:
1222         Convert GdkDevice to a GObject.
1223
1224         * linux-fb/gdkprivate-fb.h:
1225         * linux-fb/gdkvisual-fb.c:
1226         Convert GdkVisual to a GObject.
1227
1228 2001-06-29  Alex Larsson  <alexl@redhat.com>
1229
1230         * gdk/gdkvisual.h:
1231         * gdk/gdkcolor.c:
1232         * gdk/x11/gdkx.h:
1233         * gdk/x11/gdkvisual-x11.c:
1234         Convert GdkVisual to a GObject.
1235
1236         * gdk/gdkinput.h:
1237         * gdk/gdkevents.c:
1238         * gdk/x11/gdkinputprivate.h:
1239         * gdk/x11/gdkinput-gxi.c:
1240         * gdk/x11/gdkinput-none.c:
1241         * gdk/x11/gdkinput-x11.c:
1242         * gdk/x11/gdkinput-xfree.c:
1243         * gdk/x11/gdkinput.c:
1244         Convert GdkDevice to a GObject.
1245
1246 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
1247
1248         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
1249         to just plain new, fixing the number of columns, and column types
1250         at creation time.
1251
1252         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
1253
1254         * gtk/gtkcellrenderertext.c
1255         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
1256         height to a specific font.
1257
1258         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
1259
1260         * tests/*c: change to work with new store models.
1261
1262 2001-06-29  Havoc Pennington  <hp@redhat.com>
1263
1264        * Throughout: fixes to compile with G_DISABLE_COMPAT
1265         (s/g_signal_connectc/g_signal_connect/,
1266         s/g_signal_newc/g_signal_new/,
1267         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
1268
1269 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
1270
1271         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
1272         add path argument to selection callbacks.
1273
1274 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
1275
1276         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
1277         walk through a model in a depth first manner, with the option to
1278         break out.
1279
1280 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
1281
1282         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
1283         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
1284         column and follow it when draged, rather than a location in the
1285         view. "expander_column" property and drawing functions changed
1286         accordingly.  Fixes bug #55942.
1287
1288         (gtk_tree_view_{set,get}_expander_column): Now works with a
1289         GtkTreeViewColumn* instead of int.
1290
1291 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
1292
1293         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
1294
1295 2001-06-28  Havoc Pennington  <hp@pobox.com>
1296
1297         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
1298         image data to the screen, using a server grab to avoid race
1299         conditions.
1300
1301         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
1302         check for NULL return from gtk_image_new_from_stock(), it never
1303         returns NULL.
1304         (gtk_item_factory_create_item): fix bug where we parsed the stock
1305         ID as an inline pixbuf
1306
1307         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
1308
1309         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
1310         support (should be using binding set here)
1311
1312         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
1313         support (should be using binding set here)
1314
1315         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
1316         support
1317
1318         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
1319
1320         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
1321
1322         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
1323
1324         * gtk/gtkimcontextsimple.c
1325         (gtk_im_context_simple_filter_keypress): keypad
1326
1327         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
1328
1329         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
1330
1331         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
1332
1333         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
1334         should be binding-setted)
1335
1336         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
1337
1338         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
1339
1340         * gtk/gtkcalendar.c: numeric keypad fixes
1341
1342         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
1343         support
1344
1345         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
1346         screwup
1347
1348         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
1349         clip the render area to the drawable's clip region in advance,
1350         so we don't get data from the server that we don't need.
1351
1352         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
1353         check return value of gdk_pixbuf_get_from_drawable(), fall back 
1354         to bilevel alpha if we can't get the pixbuf to composite against.
1355
1356         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
1357
1358         * gdk/gdkimage.c (gdk_image_get_colormap): add
1359         gdk_image_set_colormap, gdk_image_get_colormap
1360
1361         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
1362         take a region of the image, instead of converting the entire
1363         image.
1364
1365         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
1366         keybinding signal. Add default bindings for it. Add default
1367         handler for show_help that shows the tooltip for the widget.
1368
1369         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
1370         "close" keybinding signal, remove key press handler.
1371
1372         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
1373         it's not our usual practice to leave a deprecated function around
1374         with a runtime warning, plus we don't want it to appear in docs,
1375         plus if we make them yellow no one will want to change them
1376         anyhow.
1377
1378 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
1379
1380         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
1381         GTK_WIDGET_REALIZE() for resize queueing.
1382
1383         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
1384         GTK_WIDGET_REALIZE() for post event delivery destruction upon
1385         GDK_DESTROY.
1386         
1387         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
1388         sompensate for former (pre-2.0) connect_after() facility.
1389         (gtk_widget_send_expose): 
1390         (gtk_widget_event): assert the widget is realized, since event delivery
1391         to non-realized widgets is essentially a bug. event handlers should
1392         be able to unconditionally rely on widget->window (unless they
1393         emit events on their own which can trigger widget destruction).
1394         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
1395         logic. event delivery happens as follows:
1396         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
1397         b) if !was_handled in (a) and the widget is still realized, emit event-
1398            specific signal (RUN_LAST handler). returns was_handled.
1399         c) emission of GtkWidget::event-after for notification if the widget is
1400            still realized (regardless of was_handled from previous stages, no
1401            class handler). no return value.
1402         d) was_handled gets passed on to caller, to determine further
1403            propagation. if the widget got unrealized meanwhile, was_handled
1404            is returned as TRUE.
1405
1406         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
1407         gdk_event_get_coords().
1408
1409 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
1410
1411         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
1412         age 0, binary age 0. depend on glib 1.3.7.
1413
1414         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
1415
1416         * gtk/gtkmenubar.c: same here.
1417         
1418         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
1419
1420         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
1421
1422         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
1423         
1424         * gtk/gtkmenubar.c (add_to_window): likewise.
1425         
1426         * gtk/gtktextbtree.c: and here...
1427         
1428         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
1429         
1430         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
1431         
1432         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
1433         
1434         * gtk/gtktreeviewcolumn.c:
1435         (_gtk_tree_view_column_set_tree_view): yet again.
1436
1437         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
1438         signal connections without g_signal_connect_data().
1439         
1440         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
1441         demo of the matter.
1442         
1443         * demos/testpixbuf.c (main): running out of equality phrases for the
1444         ChangeLog, but had to adapt connections here as well.
1445         
1446         * demos/testanimation.c (progressive_timeout): and for the fun of it,
1447         tackled this the same way.
1448         
1449         * tests/testtext.c (create_view): ok, it's becoming a pain at this
1450         point, but had enough enery for one more fix.
1451
1452         * tests/testtreecolumns.c (main): stand up man, do your work!
1453
1454         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
1455         fix, either that's been all of it or CVS gtk is broken yet again.
1456         
1457 2001-06-29  James Henstridge  <james@daa.com.au>
1458
1459         The following changes correspond to bug #56812
1460
1461         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
1462         code for GdkDevice.
1463
1464         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
1465         GdkCursor.
1466
1467 2001-06-19  Havoc Pennington  <hp@pobox.com>
1468
1469         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
1470         for mapping a window without fooling with stacking order, but
1471         updating the "withdrawn" flag
1472
1473         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
1474         filtering as soon as possible, moving move resize and wmspec_check
1475         handling after the event filter.  Make default filter apply to all
1476         events, not just those with no GdkWindow wrapped around the X
1477         window. Fix a FIXME about how the window could be a pixmap using 
1478         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
1479
1480         Also, be robust against events not on a known GdkWindow.
1481
1482         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
1483         gdk_x11_ungrab_server): export reference-counted server grabs, so
1484         other people can grab server over a GDK function that also does
1485         so.
1486
1487 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
1488
1489         * gtk/gtktreeviewcolumn.c
1490         (gtk_tree_view_column_pack_start_cell_renderer): New function to
1491         reflect that you can (hypothetically) pack cell renderers into a
1492         column.
1493         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
1494         (gtk_tree_view_column_cell_is_visible): Move more functionality to
1495         the column.
1496         (gtk_tree_view_column_cell_can_focus): Move more functionality to
1497         the column.
1498
1499         * gtk/gtktreeview.c: Move to use new column-packing code.
1500         (gtk_tree_view_real_expand_row): remove totally braindead code.
1501         (gtk_tree_view_real_collapse_row): ditto.
1502
1503 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
1504
1505         * gtk/gtktreeviewcolumn.c: Fix a typo.
1506         
1507 2001-06-26  Joel Becker  <jlbec@evilplan.org>
1508
1509         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
1510           at the end of the file
1511
1512 2001-06-26  Havoc Pennington  <hp@redhat.com>
1513
1514         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
1515
1516 2001-06-26  Havoc Pennington  <hp@redhat.com>
1517
1518         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
1519         property
1520
1521 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
1522
1523         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
1524         stupid missing statement
1525
1526         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
1527         private function for ATK.  It notifies you of how many _visible_
1528         children are deleted when a node is deleted.  Should be used by
1529         atk only.
1530
1531 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
1532
1533         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
1534         Use new pango_context_get_metrics() to fix problems
1535         with font lists in descriptions. (#56184, reported by
1536         Jonas Borgström)
1537
1538 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
1539
1540         * gtk/gtkiconfactory.c:
1541         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
1542         item factory so inlined pixbufs actually work.
1543
1544 2001-06-25  Havoc Pennington  <hp@redhat.com>
1545
1546         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
1547         s/RESIZEABLE/RESIZABLE/
1548
1549         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
1550
1551 2001-06-25  Alexander Larsson  <alexl@redhat.com>
1552
1553         * configure.in:
1554         Added --enable-fbmanager. This is some experimental code
1555         that lets several GtkFB apps coordinate their access to the
1556         framebuffer.
1557         
1558         * acconfig.h:
1559         Added ENABLE_FB_MANAGER.
1560
1561         * gdk/linux-fb/Makefile.am:
1562         Added gdkfbmanager and gdkfbswitch.
1563
1564         * gdk/linux-fb/gdkkeyboard-fb.c:
1565         * gdk/linux-fb/gdkmouse-fb.c:
1566         * gdk/linux-fb/gdkprivate-fb.h:
1567         Split device init and open so that
1568         they can be opened and closed while switched
1569         away.
1570
1571         * gdk/linux-fb/gdkmain-fb.c:
1572         Add the basic manager communication.
1573
1574         * gdk/linux-fb/gdkrender-fb.c:
1575         Don't update to the shadow fb if we're
1576         blocked by the fb manager.
1577
1578 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1579
1580         * docs/Changes-2.0.txt: Add note about child property
1581         changes.
1582
1583 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
1584
1585         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
1586         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
1587
1588         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
1589         with un'reffing wrong list reported by Jeff Franks.
1590
1591         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
1592
1593         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
1594         for the default icon. Remove inline XPM.
1595
1596         * gtk/gtkstock.h gtk/gtkiconfactory.c:
1597         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
1598         is used for GTK_STOCK_DND, but it is a bit too small.)
1599
1600         * gtk/stock-icons/stock_dnd_multiple.png
1601         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
1602
1603         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
1604         TRUE when starting a drag. In other cases, we are
1605         just observing. (#52995)
1606
1607         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
1608         function to set the icon for a drag from a GdkPixbuf
1609         or stock ID.
1610
1611         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
1612         Likewise, for drag sources.
1613
1614         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
1615         (Now should be done using the stock system.)
1616
1617 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
1618
1619         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
1620         Removed - didn't work and not particularly useful anyways
1621         if it did. 
1622
1623 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
1624
1625         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
1626         introduced last night that was making things decidedly not work.
1627
1628         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
1629         so that we have getter/setter pairing everywhere it makes
1630         sense. (#55767)
1631
1632         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
1633         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
1634         deprecated compat macro. (#55516)
1635
1636         * gtk/gtklabel.[ch]: Add functions
1637         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
1638         gtk_label_set_label(), which mirror the property API for GtkLabel.
1639         Make gtk_label_get_attributes() only reflect the attributes
1640         set by gtk_label_set_attributes.
1641
1642         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
1643         from gtk_notebook_set_page().
1644
1645 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
1646
1647         * configure.in: Fix tests for XShm.h.
1648
1649         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
1650         gdk_image_new() by use of goto, properly use g_object_unref().
1651
1652 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
1653
1654         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
1655         calls, as GdkImage is an object. these should be g_obejct_unref()
1656         instead but that won't work because of the g_error() statement
1657         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
1658         to spot these places.
1659
1660 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
1661
1662         * modules/input/gtkimcontextxim.c: Fixup some problems with 
1663         text length handling in error cases.
1664
1665         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
1666         a bit to make test actually warn on attempt to allocation
1667         a negative size. (#56101, Matthias Clasen)
1668
1669 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
1670
1671         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1672         noticed by Brian Cameron.
1673         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
1674         Cameron.
1675
1676 2001-06-22  Hans Breuer  <hans@breuer.org>
1677
1678         * gdk/gdk.def : updated externals
1679
1680         * gdk/win32/gdkdrawable-win32.c : corrected some casts
1681         in GDK_NOTEs
1682
1683         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
1684         to translate coordinates to the internal > 16 bit system
1685         Try to handle WM_WINDOWPOSCHANGED to get better performance for
1686         when moving/resizing
1687
1688         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
1689         and gdk_keymap_get_direction (). The latter is untested for
1690         the RTL case
1691
1692         * gtk/gtk.def : updated externals
1693
1694         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
1695         from pango_language_from_string (), not an already freed pointer
1696
1697         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
1698         binary (-kb) to be useable on windoze
1699  
1700 2001-06-21  Alexander Larsson  <alexl@redhat.com>
1701
1702         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
1703         Update to new PangoLanguage changes.
1704         
1705         * gtk/gtkwindow-decorate.c:
1706         * gtk/gtkwindow.[ch]:
1707         Added setting argument to gtk_window_set_has_frame ()
1708         
1709 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
1710
1711         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
1712         the case without XKB properly.
1713
1714         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
1715         unused gtk_rc_auto_parse variable.
1716
1717         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
1718         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
1719         longer needed with GdkPixbuf.
1720
1721         * gtk/gtkrc.c (_gtk_rc_init): Make private.
1722
1723 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
1724
1725         * gtk/gtkentry.h: Mark deprecated functions with
1726         GTK_DISABLE_DEPRECATED.
1727
1728 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
1729
1730         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
1731
1732         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
1733
1734         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
1735           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
1736           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
1737           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
1738           to recent changes in Pango.
1739
1740         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
1741           to test whether the basic engine honors them.
1742
1743 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
1744
1745         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
1746         gtk_container_child_get_property().
1747
1748 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
1749
1750         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
1751         (gtk_tree_view_move_cursor_page_up_down): implement.
1752
1753 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
1754
1755         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
1756         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
1757         don't use automatic fixed size buffer for printf-ing floats, doubles
1758         can expand to really _huge_ strings, use g_strdup_printf() instead.
1759
1760 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
1761
1762         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
1763         construct property in 1.2 and still needs to be.
1764
1765         * gtk/gtkwidget.c: "composite_child" is not a settable property.
1766
1767 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
1768
1769         * gtk/gtkliststore.c (gtk_list_store_clear): 
1770         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
1771         clear a model.
1772
1773 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
1774
1775         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
1776
1777         * gtk/Makefile.am:
1778         * gtk/gtk.h: disabled GtkPacker compilation.
1779
1780         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
1781
1782         * gtk/gtknotebook.c:
1783         * gtk/gtktable.c:
1784         * gtk/gtkbox.c: ported this over to child properties.
1785
1786         * gtk/gtksettings.c: fetch class properties via
1787         g_object_class_list_properties().
1788
1789         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
1790         child arg interface. use gobjectnotifyqueue.c for child property
1791         notification.
1792
1793         * gtk/gtkwidget.[hc]: provide necessary means for container child
1794         properties, i.e. ::child_notify signal,
1795         gtk_widget_freeze_child_notify(),
1796         gtk_widget_child_notify(),
1797         gtk_widget_thaw_child_notify().
1798
1799         * tests/testgtk.c: removed inferior property handling code, for
1800         property editing, a generic module should be used, and GLE
1801         coincidentally fullfills that purpose.
1802
1803         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
1804         needs to be adapted to g_object_class_list_properties() before this
1805         builds again.
1806
1807 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
1808
1809         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
1810         test if a node is expanded.
1811
1812 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
1813
1814         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
1815         where collapsing a selected row would result in the cursor/anchor
1816         getting screwed up.
1817
1818 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
1819
1820         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
1821         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
1822         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
1823         Now I can really reorder/sort all Store widgets.  treesorttest
1824         seems to just work now.
1825         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
1826         testtreesort worked through a big coincidence all this time.
1827         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
1828         code.
1829         * tests/testtreecolumns.c: Big 'ol warning at the top letting
1830         people know that this code should never ever ever be copied.
1831
1832 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
1833
1834         * gtk/gtkwindow.h: Fixed a small typo, it should be
1835         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
1836         on line 134.
1837
1838 2001-06-14  Havoc Pennington  <hp@redhat.com>
1839
1840         Docs fixups, and:
1841         
1842         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
1843         GTK_DISABLE_DEPRECATED
1844
1845 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
1846
1847         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
1848         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
1849         finish it off tonight, though it basically works now when it's a
1850         list.  Also, I have a sinking feeling neither GtkTreeStore or
1851         GtkListStore actually resort when adding a new item.  I'll look
1852         into it.
1853
1854 2001-06-14  Havoc Pennington  <hp@redhat.com>
1855
1856         * demos/gtk-demo/main.c (load_file): fix bug identified by
1857         warnings I just added to gtktextbuffer
1858
1859 2001-06-14  Havoc Pennington  <hp@redhat.com>
1860
1861         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
1862
1863         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
1864
1865         * gtk/gtktextbtree.c: don't leak node data all over the place.
1866
1867         * demos/gtk-demo/main.c (main): create fontify tags for the right
1868         buffer
1869
1870         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
1871         to mention tags in the same table can't have the same name,
1872         suggested by Skip Montanaro
1873
1874 2001-06-11  Havoc Pennington  <hp@redhat.com>
1875
1876         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
1877         for trying to add two tags with same name to the tag table
1878
1879         * demos/gtk-demo/main.c (main): fix colors ;-)
1880
1881 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
1882
1883         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
1884         that allows grouping together multiple windows so that grabs
1885         within that set of windows only affect those windows.
1886
1887         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
1888         signal for notification when a widget becomes shadowed
1889         by a grab or is no longer shadowed by a grab.
1890
1891         * gtk/gtkwidget.c (gtk_widget_propagate_state)
1892           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
1893         insenstive widgets to maintain a grab.
1894
1895 2001-06-14  Alexander Larsson  <alexl@redhat.com>
1896
1897         * docs/README.linux-fb:
1898         Add some example config files that can be used with the URW fonts.
1899         
1900         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
1901         Set up the color ramps for DirectColor mode.
1902
1903 2001-06-11  Havoc Pennington  <hp@redhat.com>
1904
1905         * Release 1.3.6
1906          
1907 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1908
1909         * gdk/linux-fb/gdkwindow-fb.c:
1910         Unify shaped window code and make it repaint the area that used
1911         to be part of the shape, but isn't anymore.
1912
1913 2001-06-11  Havoc Pennington  <hp@redhat.com>
1914
1915         * NEWS: Updates
1916
1917         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
1918
1919         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
1920         
1921 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1922
1923         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
1924         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
1925         passes zero instead, so do we.
1926         
1927 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
1928
1929         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
1930         Deep copy dash_list too.
1931         (_gdk_fb_gc_new): Set default cap_style before
1932         setting values.
1933
1934 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
1935
1936         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
1937         gdk_keymap_get_direction): New functions.
1938
1939 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
1940
1941         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
1942         gtk_tree_model_get_flags by adding a second flag for atk.
1943
1944         * gtk/gtktreemodel.c: make cursor behavior interact better with
1945         mouse presses.
1946
1947 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
1948
1949         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
1950         expand_row/collapse_row to be 2 signals each -- test_expand_row
1951         and row_expanded as well as test_collapse_row and row_collapsed.
1952
1953 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
1954
1955         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
1956         signal name to be changed instead of selection_changed.
1957
1958 2001-06-08  Havoc Pennington  <hp@redhat.com>
1959
1960         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
1961         "scroll_offset" property for notification when the layout offsets
1962         may have changed
1963         (gtk_entry_adjust_scroll): add notify for scroll_offset
1964         (gtk_entry_layout_index_to_text_index): function to compensate for
1965         preedit string when doing coordinate stuff on the entry's layout
1966         (gtk_entry_text_index_to_layout_index): inverse function
1967         (gtk_entry_get_layout_offsets): hook to get current position of
1968         the layout      
1969         (gtk_entry_get_layout): hook to get the layout itself.
1970
1971         * gtk/gtklabel.c (gtk_label_get_layout): new function
1972
1973 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
1974
1975         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
1976         keybinding.
1977         (gtk_tree_view_focus): Fix merge conflict.
1978
1979 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
1980
1981         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
1982         clean up cursor handling.
1983
1984 2001-06-08  Havoc Pennington  <hp@redhat.com>
1985
1986         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
1987         function
1988
1989         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
1990         this function
1991
1992 2001-06-08  Alex Larsson  <alexl@redhat.com>
1993
1994         * gtk/gtkcompat.h.in:
1995         Added compat macros for all old GTK_TYPE_GDK_xxx types.
1996         Fixes bug #52892
1997
1998 2001-06-08  Havoc Pennington  <hp@redhat.com>
1999         
2000         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
2001         parent still
2002
2003 2001-06-08  Havoc Pennington  <hp@redhat.com>
2004
2005         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
2006         don't call g_list funcs on GSList
2007
2008         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
2009         gtk_container_focus(), since some widgets have focusable locations
2010         which are not other widgets. These widgets should not have to be 
2011         containers just to manage the focus. For example, GtkHSV is
2012         currently a container for no good reason. Also, this cleans
2013         up the "if (is_container && is_sensitive && is_drawable)
2014         container_focus ()" mess in widget implementations.
2015
2016         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
2017         function, and have it just call gtk_widget_child_focus().
2018
2019         * gtk/gtkhsv.c: derive from widget not container
2020         
2021         Throughout: fix to reflect GtkContainer::focus change
2022         
2023 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
2024
2025         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
2026         range.  Fix bug #55921
2027
2028         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
2029         (#55920).
2030
2031 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
2032
2033         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
2034         and gdk_keymap_get_current_direction().
2035
2036         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
2037           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
2038         the current locked group, use it to set the keymap
2039         direction.
2040
2041         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
2042         to determine whether we draw a split cursor or use
2043         a jumping cursor based on the current direction.
2044
2045         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
2046         Obey the split cursor setting. 
2047
2048 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
2049
2050         * gtk/gtkimmulticontext.c (activate_cb): Only activate
2051         when toggling on, not when toggling off... (#55906)
2052
2053 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
2054
2055         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
2056         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
2057         in docs. (#55812, Vitaly Tishkov)
2058
2059 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
2060
2061         * demos/gtk-demo/main.c (create_tree): Changed signal name from
2062         selection_changed to changed in signal connection to GtkTreeSelection,
2063         also used g_signal_connectc since GtkTreeSelection is now a GObject.
2064
2065 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
2066
2067         * gtk/gtktreeselection.c: Now it's a GObject instead of a
2068         GtkObject.  The GtkTreeSelection::selection_changed signal is now
2069         the GtkTreeSelection::changed signal.
2070
2071         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
2072         object.
2073
2074         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
2075         object.
2076
2077 2001-06-07  Havoc Pennington  <hp@redhat.com>
2078
2079         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
2080
2081 2001-06-07  Havoc Pennington  <hp@redhat.com>
2082         
2083         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
2084         (not tested yet because with absolute path to srcdir I can't build
2085         atk, but it was broken anyway so this may help) 
2086
2087 2001-06-07  Havoc Pennington  <hp@redhat.com>
2088
2089         * configure.in: output m4macros/Makefile
2090         
2091 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
2092
2093         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
2094         buttons.  Fixes #55460 reported by matthiasc@poet.de.
2095
2096 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
2097
2098         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
2099         expansion/collapsing so it only happens in one place.
2100         (gtk_tree_view_real_expand_row): ditto.
2101
2102 2001-06-07  Havoc Pennington  <hp@redhat.com>
2103
2104         * tests/Makefile.am: add missing -I flag
2105
2106         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
2107
2108         * configure.in: use pkg-config to see if GModule is
2109         supported; fix to properly turn on included loaders 
2110         when GModule isn't supported; don't use AC_CHECK_LIB 
2111         when libs are not installed yet
2112
2113         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
2114
2115         * Makefile.am (SUBDIRS): add m4macros subdir
2116
2117         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
2118         dependencies also.
2119
2120 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
2121
2122         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
2123         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
2124
2125 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
2126
2127         * gtk/gtktreeview.c
2128         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
2129         bindings to expand and collapse rows.
2130         (gtk_tree_view_real_select_cursor_parent): New key binding.
2131         (gtk_tree_view_real_toggle_cursor_row): New key binding.
2132
2133         * gtk/gtkmarshal.list: new
2134         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
2135
2136 2001-06-06  Havoc Pennington  <hp@redhat.com>
2137
2138         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
2139
2140         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
2141         Down to move visually rather than logically, since it confuses 
2142         people. Add -/+ and Ctrl--/+ bindings for logical movement.
2143
2144 2001-06-06  Alex Larsson  <alexl@redhat.com>
2145
2146         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
2147         Fix up error messages.
2148
2149 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
2150
2151         * gtk/gtktooltips.h: Include gtkwidget.h 
2152         (#55798, Karl Nelson)
2153
2154         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
2155         a valid latin-1 character. (Marc Lehmann, #35467)
2156
2157         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
2158         (Marc Lehmann, #35467)
2159         
2160 2001-06-05  Alex Larsson  <alexl@redhat.com>
2161
2162         * demos/gtk-demo/appwindow.c (do_appwindow):
2163         Don't swap the order of the args to gtk_widget_destroyed.
2164
2165         * tests/testgtk.c (destroy_properties):
2166         Don't crash when the properties window is destroyed.
2167
2168         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
2169         Use with_mnemonics to handle the case of stock items with
2170         underscores in them.
2171
2172 2001-06-05  Havoc Pennington  <hp@redhat.com>
2173
2174         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
2175         gtk_text_iter_reorder
2176
2177 2001-06-05  Havoc Pennington  <hp@redhat.com>
2178
2179         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
2180
2181 2001-06-05  Havoc Pennington  <hp@redhat.com>
2182
2183         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
2184         to the range that was set
2185
2186         * gtk/gtkrange.c: add value_changed signal, primarily 
2187         intended for use with GtkScale
2188         (gtk_range_set_increments): new function
2189         (gtk_range_set_range): new function with weird name
2190         (gtk_range_set_value): new function
2191         (gtk_range_get_value): new function
2192
2193         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
2194         from gtk_spin_button_get_value_as_float(). Compat #define
2195         added for get_value_as_float.
2196
2197         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
2198
2199         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
2200
2201 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
2202
2203         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
2204
2205 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
2206
2207         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
2208
2209         * tests/testgtk.c (create_tooltips): Remove usage of
2210         gtk_widget_set().
2211
2212 2001-06-05  Havoc Pennington  <hp@redhat.com>
2213
2214         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
2215
2216         Applying patch from Jeff Franks, with function docs added.
2217         
2218         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
2219         remove call to set_mnemonic_widget, change docs a bit.  
2220
2221         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
2222         new function
2223
2224         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
2225         new function
2226
2227         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
2228
2229         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
2230         function
2231         (gtk_radio_button_new_with_mnemonic_from_widget): new function
2232
2233         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
2234         new function
2235
2236         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
2237         function        
2238
2239         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
2240         auto-selection of mnemonic widget.
2241
2242 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
2243
2244         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
2245         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
2246         (gtk_tree_view_column_set_min_width): ditto.
2247
2248 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
2249
2250         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
2251         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
2252
2253 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
2254
2255         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
2256         gtk_clist_thaw().
2257
2258 2001-06-04  Havoc Pennington  <hp@pobox.com>
2259
2260         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
2261         releases for buttons 6, 7
2262
2263 2001-06-04  Havoc Pennington  <hp@redhat.com>
2264
2265         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
2266         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
2267         #55562
2268
2269 2001-06-04  Havoc Pennington  <hp@redhat.com>
2270
2271         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
2272         where text_view->layout == NULL by assuming its size is 0, 
2273         i.e. same as if we haven't done any reflow. Reported by 
2274         Hidetoshi Tajima #55448 
2275
2276 2001-06-04  Havoc Pennington  <hp@redhat.com>
2277
2278         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
2279         and 7 for scroll left/right, from Thomas Broyer
2280
2281 2001-05-10  Havoc Pennington  <hp@redhat.com>
2282
2283         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
2284         we need to parse the xsetting as if it were an RC file string.
2285
2286         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
2287         value of palette from settings, not from static variable
2288
2289         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
2290         xsettings translation table
2291
2292         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
2293         hardcoding the toolbar style conflicts with new customizable 
2294         toolbar style philosophy
2295         (gtk_toolbar_class_init): add settings for default toolbar style;
2296         these are used unless the app specifically forces a toolbar style
2297
2298         * gtk/gtksettings.c (settings_install_property_parser): only
2299         return at the start if we warn and parser == NULL
2300
2301         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
2302         palette changed handler so we don't notify dead color selections
2303
2304         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
2305         xthickness/ythickness of 0 or 1 properly 
2306         (gtk_default_draw_resize_grip): clear the background behind the
2307         resize grips, and align to bottom right if we square the 
2308         area to be drawn.
2309
2310         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
2311         statusbar label to 1, so it doesn't make toplevels resize oddly
2312         (gtk_statusbar_size_request): add grip size to request
2313         (gtk_statusbar_size_allocate): hack so the hbox still works with 
2314         the grip size in the request
2315
2316         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
2317         bug where showing all on a toplevel makes the toolbar 
2318         button text appear despite the toolbar mode
2319
2320         * gtk/gtkmenubar.c: add internal padding style property
2321
2322         * gtk/gtktoolbar.c: Add internal padding style property; add
2323         shadow type style property
2324
2325         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
2326         state; and put Container::border_width outside the frame
2327
2328         * gtk/gtktextview.c: don't draw focus rectangle if we're in
2329         interior focus mode, we just use blinking cursor
2330
2331 2001-06-04  Havoc Pennington  <hp@redhat.com>
2332
2333         * configure.in: Make gdk-pixbuf have same version number as GTK
2334
2335 2001-06-04  Havoc Pennington  <hp@redhat.com>
2336
2337         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
2338         digits greater than 6. If there actually are limits (which there
2339         likely aren't), should clamp to them not warn.
2340         (gtk_spin_button_new_with_range): don't take log of 0
2341         (gtk_spin_button_size_request): use digits to compute size
2342         request, rather than step increment.
2343
2344         * tests/testgtk.c (create_spins): test larger values of digits
2345         
2346         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
2347         font on map not expose, so we don't get weirdness during scrolling
2348
2349 2001-06-04  Havoc Pennington  <hp@redhat.com>
2350
2351         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
2352         Sam Solon, bug #54577, update value even if not drawable.
2353
2354 2001-06-04  Havoc Pennington  <hp@redhat.com>
2355
2356         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
2357         SCROLL_LEFT, reported by Thomas Broyer.
2358
2359 2001-06-04  Havoc Pennington  <hp@redhat.com>
2360
2361         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
2362         Process updates immediately, to prevent funny lag effect
2363         when scrolling, at some mild potential efficiency cost.
2364
2365 2001-06-04  Havoc Pennington  <hp@redhat.com>
2366
2367         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
2368         slider on the click.
2369
2370 2001-06-03  Havoc Pennington  <hp@pobox.com>
2371
2372         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
2373         hscale/vscale details, so we can use it for scrollbar as well.
2374
2375         * tests/testgtk.c (reformat_value): honor digits from GtkScale
2376
2377         * gtk/gtkenums.h (GtkTroughType): Remove this enum
2378         (GtkScrollType): add START and END from GtkTroughType
2379
2380         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
2381         its x/y arguments
2382
2383         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
2384         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
2385         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
2386         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
2387         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
2388
2389         Notable changes in the process:
2390          
2391         - stepper_size style property is the height for vertical 
2392           ranges, width for horizontal; the other dimension matches
2393           the trough size
2394         - add ability to do NeXT-style steppers (and several other styles
2395           that don't make any sense)
2396         - added min_slider_length, fixed_slider_length properties to
2397           GtkScrollbar
2398         - cleaned some private (or at least useless) functions out of
2399           gtkscale.h    
2400         - moved bindings to GtkScale from subclasses, even arrow keys,
2401           since blind users don't know scale orientation.
2402         - change move_slider action signal to use new GtkScrollType,
2403           remove GtkTroughType argument
2404         - digits rounds the values a range will input to the given 
2405           number of decimals, but will not try to force adjustment 
2406           values set by other controllers. That is, we no longer
2407           modify adjustment->value inside a value_changed handler.
2408         - added getters for GtkScale setters
2409         - middle-click begins a slider drag
2410         
2411 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
2412
2413         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
2414         getting the focus code to work.
2415         (gtk_tree_view_class_init): Add a bunch of keybindings.
2416
2417         * gtk/gtktreeviewcolumn.c
2418         (gtk_tree_view_column_set_cell_data_func):
2419         s/GtkCellDataFunc/GtkTreeCellDataFunc.
2420         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
2421         of "properties_changed" to help justify the death of the latter
2422         signal. (-:
2423
2424         * tests/testtreefocus.c (main): Let some columns be focussable to
2425         test focus better.
2426
2427 2001-06-01  Havoc Pennington  <hp@redhat.com>
2428
2429         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
2430         
2431         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
2432         overwrite in overwrite mode if we already deleted the selection
2433         and replaced it with new text.  
2434
2435         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
2436         selection to an empty range, clear the clipboard if we owned it.
2437         (gtk_label_set_selectable): give up selection if we become
2438         unselectable.
2439         (gtk_label_state_changed): override state changed to unselect text
2440         when insensitive
2441         (get_text_callback): add paranoia check that indexes aren't
2442         outside of label->text
2443         (gtk_label_select_region): make -1 for start_offset mean "end of
2444         label," for consistency with GtkEditable
2445
2446         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
2447         GTK_DIALOG_NO_SEPARATOR flag
2448
2449 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
2450
2451         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
2452         notifications on non-existant "enable_arrow_keys".
2453         (#53753, Skip Montanaro)
2454
2455 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
2456
2457         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
2458         GDK_TYPE_RECTANGLE.
2459
2460         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
2461         of allocation argument be GDK_TYPE_RECTANGLE.
2462
2463 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
2464
2465         * gtk/gtkoptionmenu.c: Account for the fact that the border
2466         width is _outside_ the window. (Fixes #54585, bug found
2467         by Bastien Nocera.)
2468
2469 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
2470
2471         * gtk/gtksettings.c (gtk_settings_get_property): Validate
2472         value from GDK settings against parameter spec.
2473
2474         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
2475         to temporary values and use g_value_transform(), since
2476         thinking that GValue was going to be easy or efficient
2477         to use was, of course, a mistake.
2478
2479         * gtk/gtksettings.c: Add cursor blink setting.
2480         
2481         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
2482
2483         * gtk/gtkentry.c: Add cursor blinking.
2484
2485         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
2486         cursor blink global settings.
2487
2488         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
2489         for :text_position in places where it is missing.
2490
2491 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
2492
2493         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
2494
2495 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
2496
2497         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
2498         not pkg-config. (#51032)
2499
2500         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
2501         (fixes #51952, James Henstridge)
2502         
2503 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
2504
2505         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
2506         Rename to the more correct gtk-go-up.
2507
2508         * gtk/stock-icons/stock_menu_sort_ascending.png:
2509         Added new file.
2510         
2511         * gtk/stock-icons/stock_menu_sort_descending.png:
2512         Changed to show descending instead of ascending.
2513
2514         * gtk/gtkiconfactory.c:
2515         Added menu size icon to sort ascending.
2516
2517         * gtk/stock-icons/Makefile.am:
2518         Added stock_menu_sort_ascending.png.
2519         
2520         * gtk/gtkseparatormenuitem.c:
2521         Use correct typenames.
2522
2523 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
2524
2525         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
2526         gulong as in GSignal.
2527
2528 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
2529
2530         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
2531         instances of GtkCellRenderer in code (all but dnd icon code).
2532         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
2533         there, and I can do multiple Cells per column.
2534
2535         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
2536
2537         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
2538         when model was unreffed prior to removing the row reference.
2539
2540 2001-05-25  Havoc Pennington  <hp@redhat.com>
2541
2542         * gtk/gtkiconfactory.c: fix so that default icons are created if 
2543         you call gtk_stock_list_ids()
2544
2545         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
2546         in list
2547
2548 2001-05-25  Havoc Pennington  <hp@redhat.com>
2549
2550         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
2551         set can render without falling back to missing image icon
2552
2553         * gtk/gtktextview.c (gtk_text_view_size_request): request full
2554         size of text, instead of random values
2555
2556         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
2557         size of tree view, instead of random values
2558
2559         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
2560         image in an appropriate size
2561
2562         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
2563         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
2564
2565         Throughout: fix GTK_STOCK_BUTTON_ instances
2566         
2567         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
2568         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
2569         Add a bunch of new stock items/icons
2570
2571         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
2572         new function, convenience for inserting columns with a data func
2573
2574         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
2575         (_gtk_icon_factory_list_ids): use list of all factories to
2576         generate a list of all known IDs
2577
2578         * gtk/gtkstock.c (gtk_stock_list_ids): replace
2579         gtk_stock_list_items() with a function that returns all IDs known
2580         including those for GtkIconFactory.
2581
2582 2001-05-25  Hans Breuer  <hans@breuer.org>
2583
2584         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
2585         work -> check boxes and radio buttons are drawn now, even on win9x.
2586         Improved line settings a bit, still no clue how to get really dotted
2587         lines on win9x, on NT it's PS_ALTERNATE.
2588
2589         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
2590         GDK_HINT_MIN_SIZE as well
2591
2592         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
2593
2594         * gtk/gtk.def : updated
2595
2596         * gtk/gtktreeprivate.h : change column_drop_func to be a function
2597         pointer not a function pointer pointer
2598
2599         * tests/testdnd.c : include <stdlib.h> for putenv prototype
2600
2601         * tests/testsocket.c : made it compile on win32 again
2602
2603         * tests/makefile.msc : one more test-app uses prop-editor.obj
2604
2605 2001-05-22  Havoc Pennington  <hp@pobox.com>
2606
2607         * gtk/gtkbin.c (gtk_bin_get_child): New function
2608
2609 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
2610
2611         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
2612         to ignore when doing compose processing.
2613
2614 2001-05-22  Joe Shaw  <joe@ximian.com>
2615
2616         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
2617         Simplify as suggested by Havoc. Just get the last iter and work
2618         backward to the tag instead of getting a line and working back from
2619         there. Fixes passing in an invalid offset to
2620         iter_init_from_byte_offset().
2621
2622 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
2623
2624         * gtk/gtktreeview*.h: 
2625         * gtk/gtkcell*.h:
2626         * gtk/gtk*store.h:
2627         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
2628         macros to all objects.
2629
2630 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
2631
2632         * gtk/gtkcellrenderertext.c
2633         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
2634         with very large (TM) amounts of text.  May be moved to
2635         GtkCellRenderer in the future, though I'm not sure it wants to be
2636         this accessible.
2637
2638         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
2639         More sanity brought to this class.  I like it.
2640
2641         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
2642         case.  Kids, don't try this at home.
2643
2644         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
2645         convenience function.
2646
2647         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
2648
2649 2001-05-21  Alexander Larsson  <alexl@redhat.com>
2650
2651         * gtk/gtkfontsel.c:
2652         Added properties. Based on patch by Lee Mallabone.
2653
2654         * gtk/gtkruler.c:
2655         * gtk/gtkhruler.c:
2656         * gtk/gtkvruler.c:
2657         * gtk/gtktext.c:
2658         * gtk/gtktextview.c:
2659         Converted GtkArg to GParam. Based on patches by John Margaglione.
2660
2661         * tests/Makefile.am:
2662         * tests/testtext.c:
2663         Add a property editor to testtext.
2664         
2665 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
2666
2667         * gtk/gtk{h,v,}paned.c: Only show the separator if 
2668
2669         * configure.in: Fixed reversed conditional causing all image
2670         libraries to be linked in.
2671
2672 2001-05-21  Joe Shaw  <joe@ximian.com>
2673
2674         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
2675         that top_y needs to be >= 0.
2676
2677 2001-05-11  Havoc Pennington  <hp@pobox.com>
2678         
2679         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
2680         losing connection to the X server.
2681
2682 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
2683
2684         * configure.in: Start checks for X from pangox/pangoxft
2685         CFLAGS to avoid duplicate libraries.
2686
2687         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
2688
2689         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
2690         to include gobject.
2691         
2692 2001-05-18  Alexander Larsson  <alexl@redhat.com>
2693
2694         * gtk/gtkspinbutton.c:
2695         Convert GtkArgs to GParams. Based on patch by John Margaglione.
2696         Also do size request reasonable for MAXDOUBLE. Previously it printed
2697         the limits to a buffer and overran it. Instead do it using log10() and
2698         limit the width to 10 digits.
2699         
2700         * gtk/gtkwidget.c (gtk_widget_get_property):
2701         Correctly handle setting the parent property to NULL.
2702
2703 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
2704
2705         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
2706         style attributes even if the widget isn't realized.
2707
2708         * demos/gtk-demo/main.c: Use a slightly smaller font.
2709
2710 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
2711
2712         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
2713         This is something that only a widget writer would ever want
2714         to change.
2715
2716         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
2717         gtk_signal_emit_by_name().
2718
2719         * gtk/gtkviewport.c: Fix some warnings.
2720
2721         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
2722         allowing the requisitions of multiple widgets to be grouped
2723         together.
2724
2725         * tests/testgtk.c: Add GtkSizeGroup test
2726
2727         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
2728
2729         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
2730         warnings.
2731
2732         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
2733
2734 2001-04-28  Martin Baulig  <baulig@suse.de>
2735
2736         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
2737         to gtk_image_menu_item_set_icon() and made it work if there's already
2738         an image.
2739         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
2740         (gtk_image_menu_item_new_with_label): New function.
2741
2742 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
2743
2744         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
2745         highlighting code!!!!  The result is okay so long as you don't try
2746         to stress it.  It also highlights a bug in the TextView so it's in
2747         an unproportional font right now until it's fixed.
2748
2749         *demos/gtk-demo/*.c: Clean up code a bit to make it
2750         ugly-parser(TM) friendly. (-:
2751
2752 2001-05-17  Joe Shaw  <joe@ximian.com>
2753
2754         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
2755         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
2756         if it is only partially onscreen.
2757
2758 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
2759
2760         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
2761         not by characters.
2762
2763         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
2764         are not zero or one; that is, when graphemes of multiple characters
2765         are involved.
2766
2767         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
2768         FIXME.
2769
2770 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
2771         
2772         * gtk/gtkbbox.c:
2773         Add properties, based on patch by Lee Mallabone.
2774
2775         * gtk/gtknotebook.c:
2776         * gtk/gtktoolbar.c:
2777         Convert from GtkArg to GParam, based on patch by John Margaglione.
2778         
2779         * gtk/gtkhscale.c:
2780         * gtk/gtkvscale.c:
2781         * gtk/gtkhscrollbar.c:
2782         * gtk/gtkvscrollbar.c:
2783         * gtk/gtkrange.c:
2784         Move adjustment property to GtkRange.
2785
2786         * gtk/gtklabel.c:
2787         Setup mnemonics on property changes
2788
2789         * gtk/gtkwidget.c (gtk_widget_get_property):
2790         GdkExtensionMode is an enum, not a flag. Set it with
2791         g_value_set_enum ().
2792
2793         * tests/prop-editor.c:
2794         Better propery editor.
2795
2796         * tests/testgtk.c:
2797         Add new property test. Pass zero to the property editor to
2798         get properties from all derived types.
2799         
2800 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
2801
2802         * autogen.sh (have_automake): Require libtool-1.4,
2803         automake-1.4p1.
2804
2805         * acinclude.m4: Remove libtool macros.
2806
2807         * gdk-pixbuf/Makefile.am: Add dependencies to loade
2808         modules.
2809
2810         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
2811         for libgdk.
2812
2813         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
2814         libgdk.la for libgtk.
2815
2816         * modules/input/Makefile.am: Make modules have full
2817         dependencies.
2818
2819 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
2820
2821         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
2822         #54699 where paths weren't being checked for correctness.
2823
2824 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
2825
2826         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
2827         in any order you wan, whether or not the column is added to the
2828         tree, or the tree is realized.  Yay!
2829
2830         * gtk/gtktreeviewcolumn.c
2831         (gtk_tree_view_column_setup_sort_column_id_callback): handle
2832         sorting columns a lot saner
2833
2834         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
2835         new function to actually set wether or not a column is
2836         reorderable.
2837
2838         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
2839         if we have 'em.
2840
2841         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
2842         Fix nasty bug where we were showing the button just before
2843         realizing it.  As a result, the parent window was
2844         tree_view->window instead of tree_view->priv->header_window.
2845
2846         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
2847         to let you easily reorder a list or tree.
2848
2849 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
2850
2851         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
2852         from args to properties.
2853
2854 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
2855
2856         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
2857         from args to properties. (#51957)
2858
2859         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
2860         calls to after ->set_property call.
2861
2862 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
2863
2864         * tests/prop-editor.c: Block against redundant changes.
2865
2866         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
2867         properties.
2868
2869 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
2870
2871         * gdk/gdkpixmap.h: Remove creative formatting.
2872
2873 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
2874
2875         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
2876         property API. (#51669)
2877
2878         * gtk/gtkscale.c: Patch from John Margaglione converting to
2879         property API. (#51891)
2880
2881         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
2882         to property API. (#50985)
2883
2884 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
2885
2886         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
2887         buffering state across expose event, so we still call end_paint().
2888
2889 2001-05-11  Alexander Larsson  <alexl@redhat.com>
2890
2891         * gtk/gtkhsv.c (paint_triangle):
2892         Expose the ring in the triangle at the correct place when
2893         exposing just a part of the triangle.
2894
2895         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
2896         Return FALSE, or window focusing will not work.
2897
2898 2001-05-11  Havoc Pennington  <hp@pobox.com>
2899
2900         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
2901         #54144
2902
2903         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
2904         bug #54330
2905
2906 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
2907
2908         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
2909         propagate exposes to NULL child.
2910
2911         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
2912         against not having one of the scrollbars.
2913
2914         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
2915         we don't keep a mnemonic window if we have no mnemonic installed.
2916
2917 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
2918
2919         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
2920         it has the _important_ side effect of initializing a class.
2921
2922 2001-05-10  Alexander Larsson  <alexl@redhat.com>
2923
2924         * gdk/linux-fb/gdkprivate-fb.h:
2925         Make sure you can compile out the implementation/wrapper assert
2926         macros.
2927
2928         * gdk/linux-fb/gdkdrawable-fb2.c:
2929         Check implementation/wrappers, initialize type for pixmap dummys.
2930
2931         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2932         Hide the cursor if reading from the screen.
2933
2934         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
2935         Fix sign bug in tiling code.
2936
2937         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
2938         Handle background pixmaps.
2939
2940 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
2941
2942         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
2943         function to let user control where columns are dragged.
2944
2945         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
2946         Escape is pressed.
2947
2948 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
2949
2950         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
2951         "columns_changed" signal.
2952         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
2953         motion code to draw arrows to the side if indicator is outside the
2954         widget.
2955         (gtk_tree_view_map_expanded_rows): Implement.
2956
2957 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2958
2959         * demos/testpixbuf-save.c: 
2960         * demos/testpixbuf-drawable.c:
2961         Include gdkfb.h on linux-fb.
2962
2963 2001-05-07  Alexander Larsson  <alexl@redhat.com>
2964
2965         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
2966         New function for getting toplevel window at position.
2967         (gdk_drag_find_window): Use get_toplevel_window () instead
2968         of gdk_window_get_pointer(). (gdk_drag_status): Use
2969         correct context for getting window.
2970
2971         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
2972         g_strdup the atom name.
2973
2974         * gdk/linux-fb/gdkwindow-fb.c:
2975         Costmetic fix.
2976
2977         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
2978         Add code for changing cursor on linux-fb backend (same as
2979         win32).
2980
2981 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
2982
2983         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
2984         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
2985         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
2986         report was not for the development branch of GTK+, but it applies
2987         anyways).
2988
2989 2001-05-04  Havoc Pennington  <hp@redhat.com>
2990
2991         * configure.in: fix some shell typos
2992
2993         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
2994
2995         * gtk/gtkimage.c: handle animations
2996
2997         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
2998         border_width * 2, not just border_width
2999
3000         * gtk/gtkscale.c: add "format_value" signal to allow people
3001         to override the way values are drawn.
3002         (gtk_scale_get_value_size): fix width/height mistake,
3003         and compute size from actual displayed text, not 
3004         from made-up text.
3005
3006         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
3007         signal registration
3008
3009         * tests/testtext.c: Add "Remove all tags" menu item for testing
3010
3011         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
3012
3013         * demos/gtk-demo/main.c (main): add hack so we can find modules
3014         without installing gtk
3015
3016         * demos/gtk-demo/textview.c (insert_text): demo font scaling
3017
3018         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
3019         factor)
3020         (gtk_cell_renderer_text_set_property): remove some bogus
3021         g_object_notify
3022
3023         * gtk/gtktexttag.c: add "scale" property which is a font scaling
3024         factor
3025
3026         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
3027         to layout
3028
3029         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
3030         gtk_text_iter_is_first
3031
3032 2001-01-06  Hans Breuer  <hans@breuer.org>
3033
3034         * gdk/gdk.def : updated exports
3035
3036         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
3037         gdk won't compile anymore
3038  
3039         * gdk/win32/gdkevents-win32.c : initialize ret_val when
3040         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
3041         Improved gdk_flush () to not only do pending drawing operations
3042         but also process all currently pending events. This should make
3043         the behaviour more similar to the X11 version.  
3044
3045         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
3046         option needs to be set even if there is no GDK_GC_BACKGROUND.
3047         (gdk_win32_hdc_get) : use predraw_set_background () independent
3048         of value_mask. This allows to draw dashed lines leaving the original
3049         background intact.
3050
3051         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
3052         after processing, because we can't reuse it as the X11 version does.
3053
3054         * gtk/gtk.def : updated exports
3055
3056         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
3057         would like to get rid of this file again, and use straight
3058         makefile.msc again, as the other Gtk+ subdirs do)
3059
3060         * test/makefile.msc (new file) : build the test apps here
3061
3062 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
3063
3064         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
3065         strike-through setting
3066         (gdk_draw_layout_line_with_colors): Render strike-through
3067
3068 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
3069
3070         * Release 1.3.5
3071
3072         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
3073
3074         * NEWS: Updated
3075
3076         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
3077         Makefile breakage.
3078
3079 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
3080
3081         * demos/gtk-demo/images.c (progressive_timeout): Fix
3082         typo in filename.
3083
3084         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
3085         out FIXME warning; just too annoying.
3086
3087 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
3088
3089         * gdk/linux-fb/gdkcolor-fb.c:
3090         Better error messages.
3091
3092         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
3093         Initialize abs_x and abs_y.
3094         
3095         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
3096         Correct handling of stipple offset.
3097
3098         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
3099         Treat directcolor framebuffers as truecolor.
3100         
3101 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
3102
3103         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
3104         dependency on Atk for accessibility support.
3105
3106         * configure.in **/Makefile.am: Major reworking of substituted
3107         variables for CFLAGS/LIBS to make a lot more sane and 
3108         keep the the compile/link lines a bit shorter.
3109
3110         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
3111
3112 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
3113
3114         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
3115         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
3116         use _gtk_boolean_handled_accumulator.
3117
3118 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
3119
3120         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
3121         to fix things so clicking inside selection leaves cursor
3122         at point where clicked. (#50324)
3123
3124         * gtk/gtksettings.c (gtk_settings_class_init): Restore
3125         sane value for default double click time.
3126
3127         * tests/testtext.c (test_init): Really path to input modules.
3128
3129 2001-05-03  Sven Neumann  <sven@convergence.de>
3130
3131         * demos/testpixbuf-save.c: include target-specific headers as
3132         done in testpixbuf-drawable.c
3133
3134 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
3135
3136         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
3137         new_text_length appropriately when we run into the 
3138         size limit for the entry. (#53445, reported by Jeff Franks)
3139
3140         * tests/testgtk.c (create_entry): Remove most of the
3141         property toggle buttons. Replace with a "Props" button
3142         that brings up a property editor.
3143
3144         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
3145         Split the property editor code out for reuse, improve.
3146
3147 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
3148
3149         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
3150         trap errors around calls to XSetInputFocus since we have
3151         no way of knowing reliably whether we are viewable or
3152         not. (#53947)
3153
3154 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
3155
3156         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3157         fix bug in dropping columns.  Moving columns now basically works
3158         modula some fine tuning.
3159
3160 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
3161
3162         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
3163         autoscroll support.  It mostly works, but could use some fine
3164         tuning.
3165         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
3166         Actually move the column.
3167
3168 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
3169
3170         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
3171           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
3172           New default theme! A slighly improved version of the 2.0 Raleigh
3173           theme, with Windows-esque focus/drawing default. 
3174           (GtkWidget::interior_focus defaults to TRUE.)
3175
3176         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
3177
3178 2001-04-30  Havoc Pennington  <hp@pobox.com>
3179
3180         * tests/testtext.c (line_numbers_expose): fix to work with
3181         gtk_paint_layout change
3182
3183 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3184
3185         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
3186           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
3187           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
3188           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
3189
3190         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
3191           with GtkWidget::interior_focus = TRUE better.
3192
3193         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
3194         ::default_outside_border for more flexibility.
3195
3196         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
3197         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
3198         change that had to be made with g_object_get.
3199
3200 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
3201
3202         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
3203         (gtk_tree_view_move_column_after): Clean up interface. 
3204
3205 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
3206
3207         * gtk/gtkpacker.h:
3208         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
3209          to gtkenum.h.
3210
3211         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
3212         handled in switch).
3213
3214         * gtk/Makefile.am:
3215         (gtk.defs): generate enum portions with  glib-mkenums.
3216         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
3217         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
3218         
3219         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
3220         addition.
3221
3222         * docs/Changes-2.0.txt: keep a note on signal handlers now
3223         not getting emitted during the emission they were connected within.
3224
3225 2001-04-28  Havoc Pennington  <hp@pobox.com>
3226
3227         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
3228
3229 2001-04-24  Havoc Pennington  <hp@redhat.com>
3230
3231         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
3232         (gtk_text_layout_move_iter_to_next_line): fix these two for
3233         invisible text, lots of other stuff still hosed.
3234
3235         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
3236         new function, replaces the get/set palette stuff. This function 
3237         is intended for use by libgnomeui which should set the hook to a
3238         thing which sets the palette in GConf, and we need the
3239         GConf-to-xsettings proxy which will result in the change being
3240         propagated back to the GTK app.
3241
3242         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
3243         about unusable signals that it may be because the signal has 
3244         parameters.
3245
3246         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
3247         style, otherwise gtkrc.c won't know to create a new GtkStyle for
3248         it.
3249         (gtk_widget_modify_color_component): call
3250         gtk_widget_modify_style() so the rc style will get copied.
3251         (gtk_widget_modify_font): ditto
3252
3253         * gtk/gtkrc.c: make a couple variables static
3254
3255         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
3256         help button by default, since it does nothing
3257
3258         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
3259         around with UI
3260
3261         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
3262         so we can have tooltips
3263
3264         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
3265         can have tooltips
3266
3267         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
3268         GDK_ENABLE_BROKEN, because its memory behavior is completely
3269         hosed.
3270
3271         * gtk/gtknotebook.c: remove key press handler, replace with
3272         binding set, add numeric keypad support
3273
3274         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
3275
3276         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
3277
3278         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
3279         addition to plain Delete
3280
3281         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
3282         GDK_KP_Enter in addition to GDK_Return
3283
3284         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
3285         activate on entry instead of key press
3286         (gtk_font_selection_on_clist_key_press): get
3287         rid of this signal handler, not needed with new font sel.
3288
3289         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
3290         no-longer-needed emit_stop_by_name(), just return TRUE
3291
3292         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
3293         cruft, this widget is no longer focusable.
3294
3295         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
3296         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
3297         move_slider action signal, add binding set for vscale/hscale, in
3298         the process support numeric keypad
3299
3300         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
3301         make GDK_Return and GDK_KP_Enter activate the entry via 
3302         binding set, instead of hardcoded.
3303
3304 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
3305
3306         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
3307         code.  Some documentation added.
3308
3309 2001-04-27  Havoc Pennington  <hp@redhat.com>
3310
3311         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
3312
3313         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
3314
3315         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
3316         line/para separators
3317         (gtk_entry_create_layout): set single paragraph mode on the layout
3318
3319         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
3320         spacing between the image and label; instead, inside a button box 
3321         the button will get extra space that will go there, but if people 
3322         configure button box for 0 chubbiness, then there's no spacing.
3323
3324         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
3325         and min/max size style properties, so people can tune their
3326         chubbiness.
3327
3328         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
3329         functions
3330
3331         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
3332         space_style, and button_relief into style properties, remove
3333         functions for setting them
3334         
3335         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
3336         it back down
3337
3338         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
3339         types from gtk_widget_style_get
3340
3341         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
3342         with a style property.
3343
3344         * gdk/x11/gdkevents-x11.c: namespace the settings
3345
3346         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
3347
3348         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
3349         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
3350         be used. Also, translate doc strings for settings. Also, namespace
3351         the double-click-time property. Also, remove bell properties crap.
3352
3353 2001-04-27  Sven Neumann  <sven@gimp.org>
3354
3355         * Makefile.am: before creating links, check if pkg-config files
3356         exist for the default target. Otherwise link to the pkg-config files
3357         that got installed with this build.
3358
3359 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
3360
3361         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
3362         dragging code.  Revealed some (potential) GdkWindow bugs.
3363
3364         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
3365         _gdk_window_init_position to the end of reparent to fix the case
3366         of reparenting when new_x != old_x and new_y != old_y.
3367
3368 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
3369
3370         * gtk/gtkentry.c (strstr_len): Fix optimization that
3371         was correct for the use here, but completely incorrect
3372         in general.
3373
3374 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
3375
3376         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
3377         until patch adding gtk_window_set_size() is recommitted. 
3378
3379         * **Makefile.am configure.in gdk/x11/gdkim-11.c
3380           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
3381           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
3382           (#10784)
3383
3384 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
3385
3386         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
3387         window == NULL in a number of cases.
3388
3389         * tests/testdnd.c: Set module path for gdk-pixbuf.
3390
3391 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
3392
3393         * gtk/Makefile.am xembed.h: File containing #defines
3394         for XEMBED protocol.
3395
3396         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
3397
3398         - Change protocol from old plug/socket specific protocol
3399           to XEMBED draft
3400         - Various fixes to work with GTK+-2.0
3401
3402         Still quite a bit of work to do here to handle initiation
3403         from the socket side (as specified by XEMBED), to handle
3404         the more advanced features of XEMBED, and to figure out
3405         a good way to handle same-app embedding with less overhead
3406         than using full XEMBED.
3407
3408 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
3409
3410         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
3411         track of whether the toplevel has the focus; only send
3412         focus-in events to the focus widget when the window
3413         actually has the focus.
3414
3415 2001-04-25  Havoc Pennington  <hp@pobox.com>
3416
3417         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
3418         were still in the header
3419
3420 2001-04-24  Alexander Larsson  <alexl@redhat.com>
3421
3422         * gtk/gtkclist.[ch]:
3423         * gtk/gtkctree.c:
3424         When there is a row highlighted for D'n'D it must alse
3425         be painted hightlighted on exposes. Otherwise exposes from
3426         the icon being dragged will mess up the hightlight.
3427
3428         * gtk/gtkfontsel.c:
3429         Don't recenter selected font when exposing the font family
3430         clist. This means you can now actually scroll the font family
3431         list.
3432
3433         * gtk/gtknotebook.c:
3434         Fix focus movement on scrolling tabs that are placed on the left
3435         and right.
3436
3437 2001-04-21  Havoc Pennington  <hp@pobox.com>
3438
3439         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
3440         empty/invisible lines.
3441
3442         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
3443         (gtk_text_iter_set_visible_line_index): new functions to set
3444         indexes excluding invisible text
3445
3446         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
3447         index
3448
3449         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
3450         (gtk_text_iter_get_visible_line_offset): new functions to 
3451         get indexes excluding invisible text
3452
3453         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
3454         bunch of extra padding that served no purpose
3455
3456         * gtk/gtkdialog.c: Make all the spacings configurable via style
3457         properties, for chubbiness configuration in themes
3458
3459         * tests/testtext.c: fix path to the immodules.
3460         
3461 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
3462
3463         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
3464         got munched by #endif.
3465
3466         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
3467
3468         * gtk/gtktreeview.c: Refactored code to clean up a number of
3469         events.
3470
3471         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
3472         values to make consistent with other functions.  Spotted by Jeff
3473         Franks <jcf@tpg.com.au>.
3474
3475         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
3476         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
3477
3478 2001-04-23  Sven Neumann  <sven@gimp.org>
3479
3480         * gtk/Makefile.am
3481         * gtk/gtkplug.c
3482         * gtk/gtksocket.c: on request of Owen, reverted my last change 
3483         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
3484
3485 2001-04-23  Sven Neumann  <sven@gimp.org>
3486
3487         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
3488         compile for non-X11 targets again
3489
3490 2001-04-20  Alexander Larsson  <alexl@redhat.com>
3491
3492         * gtk/gtkcolorsel.[ch]:
3493         API Change. Take GdkColor arguments instead of gdouble *.
3494         Leave the old gtk_color_selection_set_color for compatibility,
3495         but marked deprecated.
3496         Do correct rounding when converting RGB <-> HSV.
3497         
3498         * gtk/gtkcolorseldialog.c:
3499         * tests/testgtk.c:
3500         Use new GtkColorSelection API.
3501
3502         * gtk/gtkhsv.c:
3503         Fix problem selecting colors in triangle when Hue is 330.
3504         Fix some black dots around the HSB triangle.
3505         
3506         * gtk/gtkfilesel.c:
3507         return FALSE from the focus_in_event handler to fix focus problems.
3508
3509 2001-04-18  Havoc Pennington  <hp@redhat.com>
3510
3511         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
3512         set, so keybindings are configurable    
3513         (gtk_window_activate_default): Change to activate the focus widget
3514         instead if there's a focus widget, to be consistent with the
3515         behavior that previously existed in key_press_event
3516
3517 2001-04-18  Havoc Pennington  <hp@redhat.com>
3518
3519         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
3520
3521 2001-04-18  Havoc Pennington  <hp@redhat.com>
3522
3523         Close bug #50615:
3524         
3525         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
3526         the layout
3527
3528         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
3529
3530         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
3531
3532         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
3533         
3534         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
3535         to blue for base, in addition to bg
3536         
3537 2001-04-18  Havoc Pennington  <hp@redhat.com>
3538
3539         * tests/testgtk.c (create_image): allow shrinking the image window
3540         to test that we clip to allocation.
3541
3542         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
3543         #9845
3544
3545         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
3546
3547 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
3548
3549         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
3550         mode on shm segments to 0600. We'll see who complains.
3551
3552         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
3553         _gdk_windowing_window_destroy() AFTER recursing through
3554         children.
3555
3556         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
3557         testsocket_child on X.
3558
3559         * tests/testsocket[_child].c: Fix uses of
3560         gtk_window_get_default_accel_group().
3561
3562         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
3563
3564         * gdk/gdkimage.c: (gdk_image_get):
3565         Deal with the possibility that XGetImage() might return NULL.
3566         Allocate the GdkImagePrivate structure only after XGetImage()
3567         succeeds in order not to dereference a NULL ximage pointer.  This
3568         prevents a core dump when XGetImage() fails - which is unlikely,
3569         but can happen due to race conditions accessing the geometries of
3570         drawables.  An x error will still be triggered, but the gdk image
3571         wrapper at least wont seg fault.
3572         
3573 2001-04-18  Havoc Pennington  <hp@redhat.com>
3574
3575         * gtk/gtkimage.c: fix to properly queue resizes when the image is
3576         set
3577
3578         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
3579         if the insertion point isn't editable
3580
3581         * demos/gtk-demo/images.c: Added a GtkImage demo
3582
3583         * demos/gtk-demo/drawingarea.c: drawing area demo
3584         
3585         * demos/gtk-demo/menus.c (create_menu): cleanups
3586
3587 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
3588
3589         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
3590           gdk/x11/gdkevents-x11.c: Introduce an extra child
3591         of toplevel windows that serves to hold the focus to
3592         avoid events being delivered to embedded windows.
3593
3594         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
3595         some extra variables to clean up code and reduce the
3596         number of casts.
3597
3598         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
3599         guint for 1 bit bit fields, not gboolean.
3600
3601 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
3602
3603         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
3604         not TRUE. (Fixes #52925)
3605
3606 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
3607
3608         * Released 1.3.4
3609
3610         * NEWS: Updated
3611
3612         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
3613         use GTK_TYPE_ENUM.
3614
3615 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
3616
3617         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3618
3619         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
3620         names to compatibility #defines so docs work.
3621
3622         * gtk/gtkenums.h: Remove GtkMenuFactoryType
3623
3624         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
3625
3626         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
3627
3628         * tests/testgtkrc: No magenta cursors, please.
3629
3630         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
3631
3632         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
3633         
3634 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
3635
3636         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
3637         grabs, since they are no longer necessary.
3638
3639         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
3640         by signal_connect() and call gtk_button_pressed() rather
3641         than signal_connect_after().
3642
3643         * tests/testgtk.c: Restore radio menu items to combos 
3644         since they'll look OK with Raleigh, and it is easier
3645         than finishing the process of removing them that was
3646         started earlier.
3647
3648 2001-04-16  Hans Breuer  <hans@breuer.org>
3649
3650         * gdk/gdk.def :
3651         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
3652
3653         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
3654         we are interested in the functions return value not the function address
3655         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
3656
3657         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
3658
3659 2001-04-14  Hans Breuer  <hans@breuer.org>
3660
3661         * gdk/gdk.def :
3662         * gdk/makefile.msc : updated
3663
3664         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
3665         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
3666         (the testgtk::text backgound pixmap is drawn again)
3667         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
3668         Win32 Pango change
3669         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
3670
3671         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
3672         Not sure if the returned settings have the right unit, because I couldn't
3673         find any docs for the X version ...
3674
3675         * gtk/gtk.def :
3676         * gtk/makefile.msc.in : updated
3677
3678 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
3679
3680         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
3681         wording problems. (Compared to version from Johannes Stezenbach to
3682         check correctness.)
3683
3684 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
3685
3686         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
3687         this to compile.
3688
3689 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
3690
3691         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
3692         not pixbufpos.
3693
3694         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
3695
3696         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
3697         are unsigned insts, therefore use g_value_set_uint.
3698         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
3699
3700 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
3701
3702         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
3703
3704         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
3705         GTK_TYPE_STRING.
3706
3707         * gtk/gtktreeview.c: New functions to allow initial column
3708         dragging work.
3709
3710         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
3711
3712         * tests/testtreefocus.c: give dave some love.
3713
3714         * tests/testtreesort.c: Modify test to check really long samples.
3715
3716 2001-04-11  Alexander Larsson  <alexl@redhat.com>
3717
3718         * gtk-2.0.m4: Pass pkg-config options
3719         before the other args so it works even if
3720         POSIXLY_CORRECT is set.
3721
3722 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
3723
3724         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
3725         0, interface 0).
3726
3727 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
3728
3729         * gtk/gtkcalendar.c (gtk_calendar_button_press):
3730         check for action_func != NULL
3731
3732 2001-04-04  Sven Neumann  <sven@gimp.org>
3733
3734         * tests/testgtk.c (test_init): corrected path to gtk.immodules
3735
3736 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
3737
3738         * Released Gtk+-1.3.3.
3739
3740 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
3741
3742         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
3743
3744 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
3745
3746         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
3747         files to/from source dir. (if we don't stay in builddir, we
3748         can't reach make-inline-pixbuf.
3749
3750         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
3751         deps.
3752
3753         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
3754         ages 0).
3755
3756 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
3757
3758         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
3759         moved to the GtkTreeSortable interface.
3760
3761         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3762         Make more efficient (fixes #50262).
3763
3764 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
3765
3766         * NEWS: Updated.
3767
3768         * configure.in: Remove support for uninstalled glib.
3769
3770         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
3771         so as not to stop emission.
3772
3773         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
3774         is no longer supported.
3775
3776         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
3777         into tests, change build order to build modules before
3778         gtk/.
3779
3780         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
3781         to here.
3782
3783 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
3784
3785         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
3786         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
3787         GPatternSpec. this is actually unlikely to cause breakage in
3788         third-party apps since except for gle, pretty much ever caller
3789         passes NULL here.
3790
3791         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
3792
3793         * *.c: use g_pattern_*() API.
3794
3795         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
3796
3797         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
3798         directions aren't passed in.
3799
3800         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
3801         functionality to be usable from gtkstyle.c as well, give precedence
3802         for conversion to user-supplied parsers.
3803         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
3804
3805         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
3806         _gtk_settings_parse_convert() for rcporperty value conversion.
3807
3808 2001-04-03  Alexander Larsson  <alexl@redhat.com>
3809
3810         * gdk/linux-fb/gdkevents-fb.c:
3811         Add empty gdk_setting_get().
3812
3813 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
3814
3815         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
3816         variable names.
3817         
3818         * gtk/makeenums.pl: touch this so enum files get remade.
3819
3820 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
3821
3822         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
3823         work again when not sorted.
3824
3825         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
3826         and "expand_row" signal, closing bug 52578.
3827
3828         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
3829         support.
3830
3831         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
3832         support.
3833
3834 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
3835
3836         * gdk/gdkevents.h: Add GdkEventSetting event for notification
3837         of changes to system settings, gdk_setting_get() to retrieve
3838         a single system setting.
3839
3840         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
3841         to the draft XSETTINGS mechanism.
3842
3843         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
3844         XSETTINGS.
3845
3846         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
3847         of GDK settings changes to the GtkSettings object.
3848
3849         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
3850         double-click-timeout property to GDK.
3851
3852         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
3853         Define GDK boxed types here.
3854
3855         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
3856         gdk/gdkenumtypes.[ch] for enum definitions.
3857
3858         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
3859         * gtk/gtk-boxed.defs: Comment out GDK types
3860         * gtk/gtktypeutils.h: Remove GDK types
3861         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
3862
3863 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
3864
3865         * Applied patch from Ron Steinke to add signal accumulators
3866         so that signals with the convention 'TRUE return means
3867         handled' stop emission on a TRUE return.
3868
3869         * gtk/gtkmain.[ch]: Add private accumulator 
3870         _gtk_boolean_handled_accumulator, used throughout GTK+.
3871         
3872         * gtk/gtkspinbutton.c: Add accumulator for ::output.
3873
3874         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
3875         
3876         * gtk/gtkwidget.c: Add accumulators for event signals,
3877         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
3878         for ::mnemonic-activate.
3879
3880         * gtk/gtkwindow.c: Add accumulator for ::frame_event
3881
3882 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
3883
3884         * gtk/gtkwidget.c: Add missing include.
3885
3886 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
3887
3888         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
3889         marshaller.
3890
3891         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
3892         "changed" signal to "range_changed".
3893
3894         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
3895         removing a tree from one model would remove all trees from that
3896         model.
3897         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
3898         changed signal instead.
3899
3900 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
3901
3902         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
3903         chaining up to parent impl, since we have a INPUT_ONLY
3904         window.
3905
3906         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
3907         foreground color for the cursor.
3908
3909 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
3910
3911         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
3912         param spec when caching property values, since we unref it
3913         later when we free the style.
3914
3915         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
3916         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
3917
3918 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
3919
3920         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
3921         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
3922         stupidity.
3923
3924 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
3925
3926         [ First pass at adding style properties. Still needs some definite
3927         fine-tuning. ]
3928
3929         * gtk/gtkbutton.c: Add ::default_spacing style property.
3930          
3931         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
3932         ::indicator_spacing style properties.
3933
3934         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
3935         style properties.
3936
3937         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
3938         rather than a normal property.
3939
3940         * gtk/gtkwidget.c: Add an ::interior_focus style property to
3941         draw focus inside buttons, in the Windows/Java Metal/etc. style.
3942
3943         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
3944         Honor ::interior_focus.
3945         
3946         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
3947         TRUE.
3948
3949         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
3950         Add ::slider_width, ::trough_border, ::stepper_size,
3951         ::stepper_spacing style properties.
3952
3953         * gtk/gtkscale.[ch] Add ::slider-length style property.
3954
3955 2001-04-02 Alexander Larsson   <alexl@redhat.com>
3956
3957         * gdk/linux-fb/gdkwindow-fb.c:
3958         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
3959         warnings that were spewed on startup.
3960
3961         * gtk/gtkwindow-decorate.c:
3962         gtk_window_reposition -> _gtk_window_reposition
3963
3964 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
3965
3966         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3967         Add boxed type for GtkRequistion. Use it for ::size-request.
3968
3969         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
3970         Add a new GtkBorder structure useful for geometry properties
3971         for widgets. Add corresponding GTK_TYPE_BORDER.
3972         
3973         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
3974         Support automatic parser selection like
3975         gtk_settings_install_property_parser().
3976
3977         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
3978         functionality for use by gtk_widget_class_install_style_property.
3979         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
3980
3981 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
3982
3983         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
3984         g_param_spec_unichar(). 
3985
3986 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
3987
3988         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
3989         _NET window managers.
3990
3991         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
3992
3993 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
3994
3995         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
3996         bad needs to be nuked, not just deprecated.
3997
3998         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
3999         gtk_widget_popup().
4000
4001         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
4002         
4003         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
4004         widget.
4005         
4006         * docs/Changes-2.0.txt: updates.
4007         
4008 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
4009
4010         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
4011         for (i = 0; i < 100; i ++)
4012           g_print ("I will confirm it compile before committing\n");
4013
4014 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
4015
4016         * gtk/gtktreestore.c: Initial work on implementing the
4017         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
4018
4019 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
4020
4021         * gtk/gtkwidget.c: fixed a bunch of notifications, added
4022         reference counts around emissions where the widget is used afterwards.
4023         added freeze/thaws around multiple properties being notified.
4024         (_gtk_widget_get_aux_info): cleanups.
4025         
4026         * gtk/gtksettings.c (gtk_settings_install_property): provide
4027         default parsing functions for gdkcolor, enums and flags.
4028
4029         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
4030         applied by owen.
4031         backed out gtk_window_get_location(), gtk_window_set_location(),
4032         gtk_window_get_size() and gtk_window_set_size(), these
4033         have to be sorted out wrg x/y/width/height/default_with/default_height
4034         properties.
4035         kept a flag in GtkWindowGeometryInfo to handle user
4036         resetting default sizes.
4037         cleaned up ZVT comments.
4038         bunch of assorted bug fixes, notification fixes.
4039         (_gtk_window_reposition): make this a really internal function.
4040         
4041         * gtk/testgtk.c: fixups.
4042         
4043 2001-03-31  Hans Breuer  <hans@breuer.org>
4044
4045         * config.h.win32.in : disable USE_MMX for msvc build cause
4046         the assembler doesn't fit and is out of my scope. Disable
4047         USE_GMODULE for msvc build as wel. The right way to share
4048         binaries on win32 would be to use libtiff.dll etc. To reduce
4049         installation hassles IMO it's better to include all fileformats
4050         builtin to gdk-pixbuf
4051
4052         * gdk-pixbuf/makefile.msc : new file
4053
4054         * gdk/gdk.def : updated
4055
4056         * gdk/win32/gdkevents-win32.c : don't erase the background if
4057         .no_bg is set. It improves the scrolling (e.g. of testgtk main
4058         buttons
4059         * gdk/win32/gdkgeometry-win32.c : added comment about the above
4060
4061         * gdk/win32/gdkwindow-win32.c : added three new functions like
4062         the X version. Only one is implemented, because the other two
4063         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
4064         be default behaviour on win32 anyway ...
4065
4066         * gtk/gtk.def : updated
4067
4068         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
4069         from where it was built and add an additional rule to automagically
4070         build gtkmarshal.[hc]
4071
4072         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
4073         before array access for the current entry isn't finished
4074
4075         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
4076         use g_return_val_if_fail
4077
4078         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
4079         for the static array, but let the compiler calculate it. It
4080         makes me wonder if gcc isn't capable to catch bugs like this ...
4081
4082 2001-03-31  James Henstridge  <james@daa.com.au>
4083
4084         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
4085         constant "-1" in the aux info structure.
4086
4087 2001-03-30  Alexander Larsson  <alexl@redhat.com>
4088
4089         * gtk/gtkbutton.c (gtk_button_get_property):
4090         * gtk/gtklabel.c:
4091         Remove leaks.
4092         
4093         * gtk/gtkcontainer.c:
4094         * gtk/gtkhscale.c:
4095         * gtk/gtkhscrollbar.c:
4096         * gtk/gtklayout.c:
4097         * gtk/gtkmisc.c:
4098         * gtk/gtkprogress.c:
4099         * gtk/gtkprogressbar.c:
4100         * gtk/gtkrange.c:
4101         * gtk/gtktable.c:
4102         * gtk/gtkviewport.c:
4103         * gtk/gtkvscale.c:
4104         * gtk/gtkvscrollbar.c:
4105         * gtk/gtkwidget.c:
4106         Property patches, based on patches from John Margaglione and Lee Mallabone.
4107
4108 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
4109
4110         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
4111         adjustment. Cleaned redundant preconditions (spin != NULL). Added
4112         inline API function docs.
4113         (gtk_spin_button_new_with_range): New convenience constructor.
4114         (gtk_spin_button_set_increments): New adjustment helper.
4115         (gtk_spin_button_set_range): New adjustment helper.
4116
4117         * gtk/testgtk.c : added test of the new convenince constructor and
4118         value_changed signals.
4119
4120 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
4121
4122         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
4123         listen to the reorder signal.
4124
4125 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
4126
4127         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
4128         to get the aux info structure fo the widget.
4129
4130         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
4131         above function.
4132
4133         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
4134
4135         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
4136         to get the size of the window manager frame, basically the same
4137         code that gdk_window_get_root_origin() had
4138         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
4139
4140         * gtk/gtkwindow.c (gtk_window_set_default_size): use
4141         gdk_window_resize() if the window is realized and resizeable
4142
4143         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
4144         typo so that setting gravity works
4145
4146         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
4147         allocation if auto_shrink is on, even if the default size
4148         has not changed.
4149
4150         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
4151         g_return_if_fail
4152
4153 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
4154
4155         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
4156         reordering/sorting work.  Now pretty much works.
4157
4158         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
4159         reorder mostly work.  Still need to get the parity correct.
4160
4161         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
4162         signal, so I can listen for the sort_column_changed signal so I
4163         can change my "sort_indicator" property.  Cool.
4164
4165 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
4166
4167         [ Patch from Havoc Pennington, hp@redhat.com ]
4168
4169         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
4170         Add functions gdk_window_begin_resize_drag/begin_move_drag
4171         to start resizing or moving a toplevel window. This
4172         is done either using the _NET_WM_MOVERESIZE protocol,
4173         or, if that isn't present, by emulation.
4174
4175         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
4176         to export the above to GTK+-land.
4177
4178         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
4179         
4180         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
4181         Move this function into gdkwindow, since we need it
4182         when implementing fallback resizing.
4183
4184         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
4185         Fix typo when setting gravity.
4186
4187         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
4188         Add an optional (but on by default) resize grip for resizing 
4189         the parent window.
4190
4191 01-03-29  Alexander Larsson  <alexl@redhat.com>
4192
4193         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
4194         Don't return TRUE from the event handler, that blocks all
4195         event signals on the tooltip widget. Now you can press buttons
4196         in toolbars again.
4197
4198 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
4199
4200         * gtk/testtext.c (create_buffer): Add missing NULL on
4201         valist.
4202
4203         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
4204         c-n-p problem with INCONSISTENT property.
4205
4206         [ Patch from Havoc Pennington  <hp@redhat.com> ]
4207
4208         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
4209         hook.
4210
4211         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
4212         signal as a hook for extending the default popup menu
4213
4214         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4215         use radio menu items for the input method menuitems
4216
4217         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
4218         inserted unicode from Ctrl-Shift-hex input method
4219
4220         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
4221         validatation here, already done at GtkTextBuffer level.
4222
4223         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
4224         popup_menu run action signal and Shift+F10 and Menu keybindings.
4225
4226         * gtk/gtkentry.c: implement a default handler for popup_menu
4227
4228         * gtk/gtktextview.c: implement a default handler for popup_menu
4229
4230         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
4231         from a key event
4232         
4233         * gtk/gtklabel.c: remove "trailer" cruft
4234
4235 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
4236
4237         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
4238         handle reordering of trees.  Seems to mostly work w/ the exception
4239         of the parity flag.
4240
4241         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
4242         signal.
4243
4244 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
4245
4246         * gtk/gtkwidget.h: c++ fixes.
4247
4248 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
4249
4250         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
4251         memory.
4252
4253 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
4254
4255         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
4256         Nils Barth fixing event return values. (#51041)
4257
4258         * gtk/gtkwidget.c: Fix some return values for default
4259         functions.
4260
4261         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
4262         return values for trough_keys functions.
4263
4264         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
4265         value for add_accelerator (shoudl have been a void
4266         return.)
4267
4268         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
4269         Fix return type of EVENT.
4270
4271         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
4272         signal return a boolean.
4273
4274 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
4275
4276         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
4277         reordered signal.
4278
4279         * tests/testtreesort.c (main): fix spelling.
4280
4281 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
4282
4283         * gtk/gtkliststore.c: More work on implementing sortable
4284         interface.
4285
4286 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
4287
4288         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
4289         reference the widgets in the resulting list. (#11821)
4290         This makes this consistent with gtk_container_children.
4291
4292         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
4293         uses of gtk_window_list_toplevels.
4294
4295 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
4296
4297         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
4298         a virtual function to set whether the IM context should use 
4299         the preedit string. (#51922)
4300         
4301 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
4302
4303         * gdk/gdkpango.h: Remove stale FIXME comment.
4304
4305 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
4306
4307         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
4308         Fixed bug that returned NULL if a filename was selected.
4309
4310 2001-03-24  Havoc Pennington  <hp@pobox.com>
4311
4312         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
4313         to contain the word "theme"
4314
4315 2001-03-24  Havoc Pennington  <hp@pobox.com>
4316
4317         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
4318         slower but finer-grained
4319         (gtk_hsv_focus): get initial focus on the ring or triangle 
4320         according to tab direction
4321
4322         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
4323
4324 2001-03-23  Havoc Pennington  <hp@pobox.com>
4325
4326         * gtk/gtkhsv.c: make this somewhat key-navigable
4327
4328         * gtk/gtkfontsel.c: mnemonics
4329
4330         * gtk/gtkgamma.c: mnemonics
4331
4332         * gtk/gtkcolorsel.c: add mnemonics to labels
4333
4334 2001-03-22  Havoc Pennington  <hp@pobox.com>
4335
4336         Applied big patch from Seth Lytle to fix event handler return
4337         values, slightly modified.
4338
4339         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
4340         handled.
4341         (gtk_calendar_key_press): return TRUE for GDK_space triggers
4342         select_day
4343
4344         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
4345         (gtk_clist_button_release): return TRUE if handled
4346
4347         * gtk/gtkcolorsel.c (mouse_release):
4348         (palette_activate): 
4349         (palette_press): 
4350         (palette_new): 
4351         (mouse_press): 
4352         (get_screen_color): 
4353         fixed return type (void to gboolean), return TRUE,
4354         added GTK_SIGNAL_FUNC cast
4355
4356         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
4357         (void to gboolean), and return TRUE
4358         (gtk_combo_button_release): changed return value to TRUE after
4359         gtk_grab_add on combo->popwin
4360
4361         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
4362         collapse or expand
4363
4364         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
4365         button/motion
4366
4367         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
4368         press/release and motion that trigger act
4369
4370         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
4371
4372         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
4373         for GDK_Return
4374         
4375         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
4376         (gtk_list_button_release): return TRUE if selection
4377
4378         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
4379         press
4380
4381         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
4382         (gtk_menu_shell_button_release): chain parent_menu_shell retval
4383
4384         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
4385         nothing triggered
4386         (gtk_notebook_button_release): return TRUE if we do anything
4387
4388         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
4389         (gtk_spin_button_button_release): return TRUE or chained retval
4390
4391         * gtk/gtktext.c (gtk_text_button_press): 
4392         (gtk_text_button_release): return TRUE
4393         (gtk_text_key_press): remove redundant retval code
4394         
4395         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
4396         and sensitive
4397         (gtk_tree_item_subtree_button_click): changed type to gint, and return
4398         TRUE if sensitive
4399
4400         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
4401         return TRUE
4402
4403 2001-03-23  Havoc Pennington  <hp@redhat.com>
4404
4405         * gtk/testgtk.c: fix warnings
4406
4407         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
4408
4409         * gtk/gtktextview.c: fix warnings
4410
4411         * gtk/gtktext.c (find_cursor_at_line): fix warning
4412
4413         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
4414
4415         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
4416         of this function
4417
4418         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
4419         fix warning
4420
4421         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
4422
4423         * gtk/gtkfontsel.c: fix warning
4424
4425         * gtk/gtkcolorsel.c: fix warnings
4426
4427 2001-03-23  Havoc Pennington  <hp@redhat.com>
4428
4429         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
4430
4431         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
4432
4433         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
4434         and deprecated gtk_check_menu_item_set_show_toggle().
4435         
4436         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
4437
4438         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
4439
4440         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
4441
4442 2001-03-23  Havoc Pennington  <hp@redhat.com>
4443
4444         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
4445         some docs
4446
4447 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
4448
4449         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
4450         this.
4451
4452         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
4453         set_cell to set_value
4454
4455         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
4456         set_cell to set_value
4457
4458 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
4459
4460         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4461         fix braino.
4462         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
4463         support.
4464
4465         * gtk/gtktreeview.c: Addition of initial sortable support.
4466
4467         * gtk/gtktreestore.c: Addition of initial sortable support.
4468
4469         * gtk/gtkliststore.c: Addition of initial sortable support.
4470
4471         * gtk/gtkmarshal.list: yet another marshaller.
4472
4473         * gtk/gtktreedatallist.[ch]: shared code between the store models
4474         for handling sorting headers.
4475
4476 2001-03-22  Havoc Pennington  <hp@redhat.com>
4477
4478         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
4479         (gtk_container_unset_focus_chain): Add ability to override the 
4480         focus chain for a container explicitly
4481
4482 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
4483
4484         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
4485         added PROP_MNEMONIC_WIDGET.
4486
4487         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
4488         (gtk_window_remove_mnemonic): 
4489         (gtk_window_add_mnemonic): fixed assertions.
4490         (gtk_window_activate_mnemonic): constrain modifier checks to those
4491         permitted by gtk_accelerator_get_default_mod_mask().
4492         got rid of gtk_window_get_default_accel_group().
4493
4494         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
4495         activatable widgets either by focussing or a warning.
4496         added a signal accumulator to ::activate_mnemonic which stops the
4497         emission once a handler returned TRUE.
4498
4499 2001-03-22  Havoc Pennington  <hp@pobox.com>
4500
4501         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
4502         the stock item label
4503
4504         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
4505
4506         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
4507
4508         * demos/gtk-demo/*.c: Add mnemonics all over the place
4509
4510         * gtk/gtklabel.h: mark parse_uline deprecated
4511
4512 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4513
4514         * gtk/gtkitemfactory.[ch]:
4515         Add support for stock and normal imagemenuitems.
4516         
4517         * gtk/testgtk.c:
4518         Add some tests for mnemonics, stock toolbars, stock
4519         and image menuitems in itemfactory and gdk_window_scroll.
4520
4521 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4522
4523         * gtk/gtkbutton.[ch]:
4524         * gtk/gtkdialog.c:
4525         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
4526         removed accel_group argument. Renamed gtk_button_new_accel() to
4527         gtk_button_new_with_mnemonic() and removed accel_group argument.
4528
4529         * gtk/gtkcheckbutton.[ch]:
4530         New function gtk_check_button_new_with_mnemonic().
4531
4532         * gtk/gtkentry.c:
4533         Override activate_mnemonic and just grab focus.
4534
4535         * gtk/gtkitemfactory.c:
4536         Don't add menu uline accel group, instead use mnemonics support.
4537
4538         * gtk/gtklabel.[ch]:
4539         New support for mnemonics.
4540
4541         * gtk/gtkmarshal.list:
4542         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
4543
4544         * gtk/gtkmenu.[c]:
4545         * gtkmenushell.c:
4546         Use mnemonics instead of accel groups for uline
4547         support in menu items.
4548         Removed gtk_menu_get_uline_accel_group() and
4549         gtk_menu_ensure_uline_accel_group().
4550
4551         * gtk/gtkmenuitem.c:
4552         Override activate_mnemonic to handle switching between
4553         menu items if there are collisions.
4554         
4555         * gtk/gtknotebook.c:
4556         Connect to activate_mnemonic on the tab_label, so that
4557         activating it switches to that notebook page.
4558
4559         * gtk/gtkwidget.[ch]:
4560         Add activate_mnemonic signal. New function
4561         gtk_widget_activate_mnemonic() to emit it.
4562         Default implementation does activate/grab_focus.
4563
4564         * gtk/gtkwindow.[ch]:
4565         Add support for mnemonics in windows.
4566         New functions:
4567         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
4568         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
4569
4570         * gtk/testgtk.c:
4571         Update to function name changes.
4572         
4573 2001-03-21  Alexander Larsson  <alexl@redhat.com>
4574
4575         * gtk/gtkimagemenuitem.[c]:
4576         Add gtk_image_menu_item_new_from_stock()
4577
4578 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
4579
4580         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
4581         Fix buglet in meeting.
4582
4583 2001-03-19  Havoc Pennington  <hp@redhat.com>
4584
4585         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
4586         add a bunch of accessor functions. This is because we have
4587         reasonable expectations of extending what fields it contains in
4588         the future.
4589
4590         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
4591         changes
4592
4593         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
4594         GtkIconSource   
4595
4596 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
4597
4598         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
4599         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
4600
4601         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
4602           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
4603           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
4604           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
4605         Change float to double everywhere with the exception of 0<->1.0 alignment
4606         and GtkCurve.
4607
4608 2001-03-19  Tor Lillqvist  <tml@iki.fi>
4609
4610         * gdk/win32/gdkdrawable-win32.c
4611         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
4612         output.
4613
4614         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
4615         gdkwin32.h.
4616
4617 2001-03-18  Tor Lillqvist  <tml@iki.fi>
4618
4619         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
4620         print_event_state, print_event): Use preprocessor macro to make
4621         code more compact. Print also GDK_WINDOW_STATE events.
4622         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
4623         
4624         * gtk/gtk.def
4625         * gtk/makefile.mingw.in: Update.
4626
4627         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
4628         to catch also Cygwin.
4629
4630 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
4631
4632         * gtk/gtkspinbutton.[hc]: added rc-style argument
4633         GtkSpinButton::shadow_type.
4634         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
4635         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
4636         rc-style settings.
4637
4638         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
4639
4640         * gtk/gtkwidget.c: quark cleanups.
4641
4642         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
4643         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
4644         to create_rc_style() (we don't do cloning in standard OO sense).
4645         added per rc style properties.
4646         
4647         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
4648         property values and for caching those. some cleanups.
4649         
4650         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
4651         
4652         * gtk/gtksettings.[hc]: new file for global rc-file properties
4653         (at least currently, should get extended to support X properties
4654         and other communication mechanisms).
4655         
4656         * gtk/gtkwidget.[hc]: added style property support:
4657         (gtk_widget_class_install_style_property_parser): install style
4658         property pspec with parser function for rc-file values other
4659         than LONG, DOUBLE or STRING.
4660         (gtk_widget_class_install_style_property): same as above without
4661         parser (parsers are going to be needed quite infrequently).
4662         (gtk_widget_style_get_property): retrive style property value.
4663         (gtk_widget_style_get_valist): same as above with varargs support,
4664         has NOCOPY semantics.
4665         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
4666
4667 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
4668
4669         * demos/gtk-demo/main.c (row_activated_cb): modified to use
4670         "row_activated" signal.
4671
4672         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
4673         stupidity.  Lets actually pass in the row with this signal...
4674
4675 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
4676
4677         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
4678
4679         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
4680
4681         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
4682         everything into the ::destroy function, and freed a lot more.
4683
4684 2001-03-16  Havoc Pennington  <hp@redhat.com>
4685
4686         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
4687         instead of gint16, to avoid overflow issues, since sizes > 16-bit
4688         are now allowed.
4689
4690 2001-03-16  Havoc Pennington  <hp@redhat.com>
4691
4692         * Applied patch from Nils Barth (bug # 51041) to 
4693         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
4694         in various places.
4695
4696 2001-03-15  Havoc Pennington  <hp@redhat.com>
4697         
4698         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
4699         for properties to set on the tag.
4700
4701         * gtk/testtext.c: fixups to reflect create_tag change
4702         
4703         * gtk/gtktexttag.c (gtk_text_tag_set_property):
4704         background/foreground stipple are objects, not boxed.
4705
4706         * demos/gtk-demo/textview.c: intellihancing
4707
4708 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
4709
4710         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
4711         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
4712
4713 2001-03-16  Alexander Larsson  <alexl@redhat.com>
4714
4715         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
4716         Fix sign error with queued region translations.
4717
4718 2001-03-15  HideToshi Tajima  <tajima@happy>
4719
4720         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
4721         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
4722         * gtk/gtkentry.c (update_im_cursor_location): 
4723         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
4724         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
4725         set_cursor_pos to set_cursor_location in GtkInputContext class
4726
4727 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
4728
4729         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
4730         the location of the cell relative to its area.
4731         * gtk/gtkcell*: modified for above change
4732         * gtk/gtktreeview.c: modified for above change.
4733
4734 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
4735
4736         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
4737          (gtk_tree_view_finalize): actually unref the model.  Thanks to
4738         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
4739
4740 2001-03-14  Havoc Pennington  <hp@redhat.com>
4741
4742         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
4743         
4744         * gtk/gtk.h: remove gtkdata.h
4745
4746         * gtk/Makefile.am: remove gtkdata
4747         
4748         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
4749         not "disconnect" on the adjustments.
4750         
4751         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
4752         GtkData
4753
4754         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
4755         not GtkData
4756
4757         * configure.in: handle case where X render exists, but Pango lacks
4758         Xft support.
4759
4760 2001-03-15 Alexander Larsson  <alexl@redhat.com>
4761
4762         * gtk/gtktoolbar.[ch]:
4763         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
4764         to add stock items to toolbars.
4765
4766         * gtk/Makefile.am:
4767         Remove ../gdk/gdkim.h from gdk_headers.
4768
4769 2001-03-15  Sven Neumann  <sven@gimp.org>
4770
4771         * gdk/gdkim.h: removed
4772         
4773         * gdk/gdkprivate.h
4774         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
4775
4776 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
4777
4778         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
4779         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
4780         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
4781         set_cursor_pos() virtual method
4782
4783         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
4784         (gtk_im_context_xim_set_cursor_pos): add implementation for
4785         set_cursor_pos() method
4786
4787         * gtk/gtkentry.c (recompute_idle_func): set current cursor
4788         position to input methods
4789
4790 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
4791
4792         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
4793         code a lot.
4794
4795         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
4796         g_mem_chunk.
4797         (_gtk_tree_data_list_alloc): use g_mem_chunk.
4798         (_gtk_tree_data_list_node_to_value): Fix to switch on
4799         G_TYPE_FUNDAMENTAL.
4800         (_gtk_tree_data_list_value_to_node): Fix to switch on
4801         G_TYPE_FUNDAMENTAL.
4802         (_gtk_tree_data_list_node_copy): Fix to switch on
4803         G_TYPE_FUNDAMENTAL.
4804
4805 2001-03-12  Havoc Pennington  <hp@redhat.com>
4806
4807         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
4808         to convert to new property API. Also, change default_width and
4809         default_height get_property to return 0 as the flag value for
4810         "unset"; -1 is not a valid value for these fields.
4811
4812 2001-03-12  Havoc Pennington  <hp@redhat.com>
4813
4814         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
4815         enum with registration for icon sizes, instead of strings.
4816
4817         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
4818         gtkwidget.c: Fix to reflect GtkIconSize
4819         
4820 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4821
4822         Make GtkFB compile and link.
4823         
4824         * gdk/linux-fb/gdkdrawable-fb2.c:
4825         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4826         
4827         * gdk/linux-fb/gdkwindow-fb.c:
4828         window->mapped to GDK_WINDOW_IS_MAPPED(). 
4829         Added gdk_window_shape_combine_region.
4830         Added assorted placeholders for unimplemented new GdkWindow API calls.
4831
4832 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4833
4834         * gtk/gtkfilesel.c:
4835         Add more test when converting filenames from/to utf-8.
4836         Don't allow entering text in the filename entry which isn't allowed in
4837         a filename. Just beep instead.
4838
4839 2001-03-12  Alexander Larsson  <alexl@redhat.com>
4840
4841         * gtk/gtkclist.c:
4842         Scroll using gdk_window_scroll(). Don't wait for exposes.
4843         Move the column headers in an order that makes them flash less.
4844
4845 2001-03-10  Hans Breuer  <hans@breuer.org>
4846
4847         * gdk/gdk.def : updated
4848
4849         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
4850         to offseting the clip_mask at the right place
4851
4852         * gdk/win32/gdkwindow-win32.c : don't create background brushes
4853         for all the gdkClasses, especially not for the input_only case.
4854         Otherwise flickering wont be avoidable, because we don't get
4855         WM_ERASEBKGND message for these windows.
4856
4857         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
4858         and fixed massive redraw problems apparently triggered by Alexanders 
4859         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
4860         but it seems to work quite well :-)
4861
4862         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
4863         prototype
4864
4865 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
4866
4867         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
4868         (gtk_list_store_set_cell): Fix a stupid typo.
4869
4870 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
4871
4872         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
4873         select_all not work if you're in SINGLE mode (it doesn't make that
4874         much sense, anyway.)
4875
4876         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
4877         handle types more sanely.
4878         (_gtk_tree_data_list_value_to_node): handle types more sanely.
4879         (_gtk_tree_data_list_node_copy): handle types more sanely.
4880
4881         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
4882         GValue better. Converts the type as well.
4883
4884         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
4885         GValue better. Converts the type as well.
4886
4887 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
4888
4889         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
4890         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
4891         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
4892         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
4893
4894         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
4895         gdk_im/gdk_ic.
4896
4897 2001-03-09  Hans Breuer  <hans@breuer.org>
4898
4899         * gdk/gdk.def : updated
4900
4901         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
4902         for their palette
4903
4904         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
4905         removing
4906
4907         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
4908         removing and implemented Havoc's GdkWindow state functions; 
4909         stick/unstick only as no-op, cause I don't know how to emulate 
4910         on win32 ...
4911
4912         * gtk/gtk.def : updated
4913
4914         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
4915
4916         * gtk/gtktypeutils.c : #include <string.h>
4917
4918         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
4919
4920 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
4921
4922         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
4923         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
4924         not a boxed.
4925
4926 2001-03-09  Alexander Larsson  <alexl@redhat.com>
4927
4928         * docs/Changes-2.0.txt:
4929         Document expose event->region change and that gtk_widget_event
4930         doesn't allow passing expose events.
4931
4932         * gdk/gdkevents.h:
4933         Add region to expose event.
4934         
4935         * gdk/gdkevents.c:
4936         Handle event->region in gdk_event_copy() and gdk_event_free().
4937
4938         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
4939         Generate expose_event->region when creating expose events.
4940
4941         * gdk/x11/gdkevents-x11.c:
4942         Generate expose events with regions when translating X events.
4943
4944         * gtk/gtkcontainer.[ch]:
4945         Default expose handler that propagates expose events to NO_WINDOW
4946         children. New function gtk_container_propagate_expose()
4947
4948         * gtk/gtkwidget.[ch]:
4949         Moved gtk_widget_event implementation to gtk_widget_event_internal.
4950         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
4951         expose events. New function gtk_widget_send_expose() to send expose
4952         events. New function gtk_widget_region_intersect() to calculate
4953         window/region intersections.
4954         
4955         * gtk/gtkmain.c (gtk_main_do_event):
4956         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
4957         Use gtk_widget_send_expose() to send expose events.
4958         
4959         * gtk/gtkbin.c:
4960         * gtk/gtkbox.c:
4961         * gtk/gtkfixed.c:
4962         * gtk/gtkimagemenuitem.c:
4963         * gtk/gtklist.c:
4964         * gtk/gtkpacker.c:
4965         * gtk/gtktable.c:
4966         * gtk/gtktree.c:
4967         Remove expose handler, using the default container implementation
4968         instead.
4969         
4970         * gtk/gtkbutton.c:
4971         * gtk/gtkcheckbutton.c:
4972         * gtk/gtkeventbox.c:
4973         * gtk/gtkfixed.c:
4974         * gtk/gtkhandlebox.c:
4975         * gtk/gtklayout.c:
4976         * gtk/gtklistitem.c:
4977         * gtk/gtkmenu.c:
4978         * gtk/gtkmenubar.c:
4979         * gtk/gtkmenuitem.c:
4980         * gtk/gtknotebook.c:
4981         * gtk/gtkoptionmenu.c:
4982         * gtk/gtkpaned.c:
4983         * gtk/gtkscrolledwindow.c:
4984         * gtk/gtktogglebutton.c:
4985         * gtk/gtktoolbar.c:
4986         * gtk/gtktreeitem.c:
4987         * gtk/gtkviewport.c:
4988         Chain expose handler to parent class handler. Use
4989         gtk_container_propagate_expose() to propagate exposes.
4990
4991         * gtk/gtkclist.c (check_exposures):
4992         * gtk/gtktext.c (process_exposes):
4993         Use gtk_widget_send_expose instead of gtk_widget_event.
4994
4995 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
4996
4997         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
4998
4999 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
5000
5001         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
5002         unref the nodes.   Fixes bug #50058.
5003
5004         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
5005         "::ref_iter" to "::ref_node".
5006         (gtk_tree_model_unref_node): change "::unref_iter" to
5007         "::unref_node". Fixes bug #50064.
5008
5009 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
5010
5011         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
5012         support for invisible cells.
5013          (gtk_tree_view_bin_expose): ditto
5014
5015 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
5016
5017         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
5018         on gobjects.
5019
5020         * tests/testtreefocus.c (main): New test file.
5021
5022         * tests/testtreeview.c: update to latest glib changes.
5023
5024         * tests/testtreecolumns.c: update to latest glib changes.
5025
5026 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
5027
5028         * gtk/testgtk.c: re-enabled event watcher emission hooks.
5029
5030 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
5031
5032         * *.c: added accumulator data argument to g_signal_newc()
5033         functions.
5034
5035         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
5036         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
5037         * gtk/treestoretest.c (make_window):
5038         s/g_signal_connect/g_signal_connectc/.
5039
5040         * gtk/gtktextbuffer.c: completed signal arg fixups,
5041         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
5042
5043 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
5044
5045         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
5046         G_CONST_RETURN.
5047
5048         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
5049         ::hierarchy-changed signal when a widget changes
5050         from anchored to unanchored or vice versa.
5051         (anchored means 
5052          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
5053         Use a private flag to keep track of this efficiently.
5054
5055 2001-03-07  Havoc Pennington  <hp@redhat.com>
5056
5057         * gtk/testgtk.c (create_spins): uglify so that size request gets
5058         tested.
5059
5060         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
5061         request on values for upper/lower, completes #6152
5062
5063 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
5064
5065         * Makefile.am: Remove gtk-config-2.0 again.
5066         (Grrrr, pkg-config. And stops make loops.)
5067
5068 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
5069
5070         * gtk/gtksignal.[hc]: removed old emission hook API.
5071         
5072         * docs/Changes-2.0.txt: fixed sections.
5073         
5074         * gtk/gtktextbuffer.c: signal arg fixups.
5075
5076 2001-03-07  Havoc Pennington  <hp@redhat.com>
5077
5078         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
5079
5080         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
5081         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
5082         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
5083         validation and the redraw which is higher priority than the
5084         validation.
5085
5086 2001-03-07  Havoc Pennington  <hp@redhat.com>
5087
5088         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
5089         (gtk_entry_set_property): remove trailer
5090
5091         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
5092         (gtk_entry_get_width_chars): new functions, to set size request to 
5093         a given number of characters
5094
5095         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
5096
5097         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
5098         (gtk_dialog_get_has_separator): new function
5099         (run_delete_handler): fix to not emit "response" signal
5100         because we already did in the delete event handler installed
5101         at dialog creation time.
5102         
5103         * gtk/gtkdialog.h: add a has_separator property,
5104         add GTK_DIALOG_NO_SEPARATOR flag
5105
5106 2001-03-07  Havoc Pennington  <hp@redhat.com>
5107
5108         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
5109         off decorations for a window.
5110
5111         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
5112         changes
5113
5114         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
5115         to get location of PangoLayout inside the label, closes #51198
5116
5117         * gtk/testgtk.c (create_bbox): fix up button box usage
5118
5119         * gtk/testcalendar.c (create_calendar): fix up button box usage
5120
5121         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
5122
5123         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
5124
5125         * gtk/gtkhbbox.h: deprecations
5126
5127         * gtk/gtkvbbox.h: deprecations
5128
5129         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
5130         emulate deprecated gtk_button_box_get_spacing
5131
5132         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
5133         the "set global default" functions
5134         (struct _GtkButtonBox): remove "spacing" field, use the one from 
5135         GtkBox base class
5136
5137         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
5138
5139         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
5140         render the icon, return the missing image icon.
5141
5142         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
5143         image icon if the load fails.   
5144
5145         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
5146         when no image is found; should be the Netscape "missing image"
5147         icon eventually but for now is a random image
5148
5149         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
5150         role for the session manager
5151
5152         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
5153
5154         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
5155         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
5156
5157         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
5158
5159 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
5160
5161         * gtk/*.c: marshaller fixes.
5162         
5163         * gtk/gtkmarshal.list: extreme cleanup.
5164
5165         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
5166         param spec for now.
5167
5168         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
5169         where appliable.
5170
5171         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
5172         special cased autogenerated boxed types from gtktypebuiltins_ids.c
5173         which are not reference counted:
5174         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
5175         PangoFontDescription, GtkTreeIter and GtkTreePath.
5176
5177 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
5178
5179         * gtk/gtktreeselection.h: 
5180         * gtk/gtktreemodel.c:
5181         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
5182         file should be included directly, and gobject/gmarshal.h
5183         as well as gtk/gtkmarshal.h even can't be included directly.
5184
5185         * Makefile.am: grr, install gtk-config-2.0.
5186
5187         * gtk/testgtk.c:
5188         * gtk/simple.c:
5189         * gtk/gtkmenu.c:
5190         * gtk/gtkitemfactory.c: use g_object_connect() instead of
5191         passing "*signal*::*" args to gtk_widget_set().
5192         
5193         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
5194         
5195         * gtk/*.c: removed trailer arg from property setters and getters.
5196         macro fixups.
5197
5198 2001-03-07  Alexander Larsson  <alexl@redhat.com>
5199
5200         * gtk/gtklabel.c (set_markup): Removed warning
5201
5202 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
5203
5204         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
5205         field to allow you to hide cell renderers.
5206
5207         * gtk/gtkcellrenderer.c: Add support for invisible cells.
5208
5209         * gtk/gtktreeview.c: Add support for invisible cells.
5210
5211 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
5212
5213         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
5214         Add "clicked" signal back to columns.
5215
5216         * ChangeLog: remove conflict markers.
5217
5218 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
5219
5220         * gtk/gtkbutton.c: Add animation of activation by, on 
5221         activate, pressing the button, and adding a timeout that 
5222         releases the button after 250ms or on key release and
5223         emits ::clicked. (#51501)
5224
5225         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
5226         action area, we connect to ::clicked instead of ::activate
5227         so the dialog stays up through the animation.
5228
5229 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
5230
5231         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
5232         check the ignore_enter flag for the menu shell that
5233         the item is actually a child of, not for attached
5234         submenus. (#51536)
5235
5236 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5237
5238         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5239         special key-press grab handling for widgets within
5240         GtkWindows. Otherwise, fall through to normal case.
5241
5242         This prevents key events being sent twice to GtkInvisible
5243         widgets, which can cause all sorts of mischief.
5244
5245 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5246
5247         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5248         widget is in effect, give the grab widget a first
5249         crack at KEY_PRESS/RELEASE events. (#424)
5250
5251 2001-03-06  James Henstridge  <james@daa.com.au>
5252
5253         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
5254         offset for the window_state_event to point at window_state_event
5255         rather than no_expose_event.
5256
5257 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
5258
5259         * gtk/gtkimmodule.h: fix busted /* comment */
5260
5261 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
5262
5263         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
5264         object properties.
5265
5266 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
5267
5268         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
5269         add object properties.
5270
5271         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
5272         to add object properties.
5273
5274         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
5275         object properties.
5276
5277         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
5278         add object properties.
5279
5280         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
5281         object properties.
5282
5283 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
5284
5285         * gtk/gtktreemodel.c: renamed "child_toggled" to
5286         "has_child_toggled".
5287
5288         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
5289         handle new signal name.
5290
5291         * gtk/gtktreestore.c: Updated to handle new signal name.
5292         * gtk/gtklisttore.c: Updated to handle new signal name.
5293         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
5294
5295 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5296
5297         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
5298         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
5299
5300 2001-03-05  Michael Natterer  <mitch@gimp.org>
5301
5302         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
5303         pixbuf-engine coincidentially also failed to make one of it's
5304         parent_class pointers static, causing overwriting of GtkLabel's
5305         parent_class pointer in pixbuf_style_class_init().
5306         (Will commit the fix to the pixbuf-engine too).
5307
5308 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5309
5310         * gdk/gdkwindow.h:
5311         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
5312         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
5313         gdk_window_set_icon_list for net wmspec functionality.
5314
5315         * gdk/x11/gdkwindow-x11.c:
5316         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
5317         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
5318         gdk_window_set_icon_list.
5319         Added gdk_wmspec_change_state helper function and used it in the code.
5320         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
5321
5322         * gtk/gtkdialog.c (gtk_dialog_init):
5323         Set GDK_WINDOW_TYPE_HINT_DIALOG.
5324
5325         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
5326         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
5327
5328         * gtk/gtkwindow.c:
5329         new function gtk_window_set_type_hint.
5330         On realize, set type hint and modal hint.
5331
5332         * gtk/gtkwindow.h:
5333         Added type_hint field and gtk_window_set_type_hint.
5334
5335 2001-03-05  Alexander Larsson  <alexl@redhat.com>
5336
5337         * gtk/gtklabel.[ch]:
5338         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
5339         New function gtk_label_get_accel_keyval () to get the underline accelerator
5340         of the label. Setting the label pattern overrides other attributes.
5341
5342 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
5343
5344         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
5345         Added missing initializers to gtk_rc_style_init().
5346
5347 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
5348
5349         * gtk/gtktextview.c: fixed bug #51097 about setting 
5350         gtk_text_view_set_border_window_size() if the widget is 
5351         already realized.
5352
5353 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
5354
5355         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
5356
5357         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
5358         comment. Won't do to have duplicated doc comments between
5359         the platform subdirs.
5360
5361 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
5362
5363         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
5364           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
5365
5366         Detectable auto-repeat - make a repeating key generate
5367         press/press/press/release instead of press/release pairs.
5368
5369         If we have Xkb and XkbSetDectableAutoRepeat supports
5370         that, we do it that way. Otherwise, when we get
5371         a release event, we check ahead with XPending to see
5372         if the next key is a KeyPress with the same keycode
5373         and timestamp. (Not 100% reliable, but pretty close.)
5374           
5375 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
5376         
5377         * gtk/gtkmain.c (gtk_propagate_event): Only do special
5378         special key-press grab handling for widgets within
5379         GtkWindows. Otherwise, fall through to normal case.
5380  
5381         This prevents key events being sent twice to GtkInvisible
5382         widgets, which can cause all sorts of mischief.
5383  
5384 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
5385  
5386         * gtk/gtkmain.c (gtk_propagate_event): When a grab
5387         widget is in effect, give the grab widget a first
5388         crack at KEY_PRESS/RELEASE events. (#424)
5389  
5390 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
5391
5392         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
5393         to extend the selection. (Roughly based on patch
5394         from Jay Cox, #50939)
5395
5396         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
5397         to properly handle previous GDK_BUTTON_PRESS. 
5398         (Patch from Jay Cox, #50938)
5399
5400         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
5401         '\0' back along with the deleted text. (#51148)
5402
5403 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
5404
5405         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
5406         the group when extracting it from the X keyboard event.
5407
5408         * modules/input/Makefile.am modules/input/imipa.c: 
5409         Simple module for entering IPA. (Do we need a 
5410         gtk-stupid-input-tricks CVS module?)
5411
5412 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
5413
5414         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
5415         const.
5416
5417         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
5418
5419         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
5420         is no focus widget for the dialog currently, grab the focus as well
5421         as the default.
5422
5423         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
5424         the action area's children to iterate through, not the
5425         dialog's children.
5426
5427 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
5428
5429         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
5430         Add plug-socket tests. (Won't work worth a darn until I commit
5431         the rest of the plug-socket changes, but no reason these
5432         can't go into CVS now.)
5433
5434 2001-03-02  Havoc Pennington  <hp@redhat.com>
5435
5436         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
5437         _gdk_region_get_xrectangles()
5438
5439         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
5440
5441         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
5442
5443         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
5444         function, contributed by Ron Steinke    
5445
5446         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
5447         gdk_net_wm_supports
5448
5449         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
5450         New function, contributed by Ron Steinke
5451
5452         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
5453         used to line up the text in the entry when using the entry for
5454         editable sheet cell hacks
5455
5456         * gtk/testgtk.c (create_entry): test the activate_default setting
5457         on GtkEntry
5458
5459         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
5460         cause the entry to activate the default button for a dialog when 
5461         activated
5462         (gtk_entry_get_activates_default): new function
5463
5464 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
5465
5466         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
5467         Hwang to move call to sync_selection() up a few lines
5468         to before the row list is modified, to fix crash when
5469         removing rows in the undo_selection list.
5470
5471         (Test case provided by Daniel Elstner:
5472
5473         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
5474
5475 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
5476
5477         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
5478         of tree->root_tree in parent_set rather than _map(), 
5479         fixing #50892 in a bit better manner.
5480
5481 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
5482
5483         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
5484
5485 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
5486
5487         * gtk/gtkstyle.c : Remove duplicate fwd decl for
5488         gtk_default_draw_shadow.
5489
5490 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
5491
5492         * gdk/gdkimage.c (gdk_image_new): Remove excess 
5493         warning, make warnings more verbose, treat a error
5494         in shmat as permanent, and don't try again.
5495         (#51163, Ed Randall.)
5496
5497 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
5498
5499         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
5500         delay for the first click before starting to scroll.
5501         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
5502
5503         * gtk/gtktext.c: GtkText should have I-beam cursor. 
5504         (based on gtk-enf-990513-1.patch, Eric Fisher.)
5505
5506 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
5507
5508         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
5509         cleanup to remove some references to unused
5510         ->xoffset, ->yoffset.
5511
5512 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
5513
5514         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
5515         mask. (#51039, fix from Martin Maierhofer)
5516
5517 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
5518
5519         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
5520         for unshifted + and shifted = for non-us keyboards.
5521         Make <Control>+ and <Control>- work as well as 
5522         <Control>KP_Plus, <Control>KP_Minus for recursive
5523         open/close.  (#2682, René Seindal)
5524
5525 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
5526
5527         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
5528         the active menu item before deactivating the menu,
5529         so gtk_menu_popdown doesn't change the history. (#50964)
5530         
5531 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
5532
5533         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
5534         draw lines with text_gc rather than black_gc.
5535         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
5536
5537 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
5538
5539         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
5540         Move handling of buttons fully in gtktreeviewcolumn.  This code is
5541         less interrelated then it was, but it still requires the
5542         GtkTreeView to map it.
5543
5544         * test/testtreecolumn.c: Now I can add a column to one view,
5545         remove it, add it to the another view, remove it, then re-add it
5546         to the first.  Nifty.
5547
5548 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
5549
5550         * docs/tutorial/gtk-tut.sgml: Minor corrections
5551
5552 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
5553
5554         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
5555         GtkRowReference.
5556
5557 2001-02-28  Havoc Pennington  <hp@redhat.com>
5558
5559         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
5560         draw_default
5561         (gtk_widget_draw_focus): remove this function; we could instead
5562         make it just gtk_widget_draw(), but in most cases I think the
5563         result would be broken user code, so think it's better to have
5564         that code not compile and get fixed
5565         (gtk_widget_draw_default): ditto
5566
5567         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
5568         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
5569         
5570         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
5571         widgets lose/get the default, instead of calling draw_default
5572         
5573         * docs/Changes-2.0.txt: note about all this
5574
5575         Then fixed every widget in GTK, I won't list all the filenames.
5576
5577 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
5578
5579         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
5580         _gtk_tree_row_reference_deleted.
5581         (inserted_callback): Proxy out to
5582         _gtk_tree_row_reference_inserted.
5583         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
5584         get around signal emission ordering problem.
5585
5586         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
5587         fix to work with SINGLE 
5588         (_gtk_tree_selection_internal_select_node): Major sanitization on
5589         selections.  SINGLE now seems to work.
5590
5591         * tests/Makefile.am: add testtreecolumn.c:
5592
5593         * tests/testtreecolumn.c: New test.  Mostly points out selection
5594         bugs currently, but will test columns later.
5595
5596         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
5597         selection bug.  I hate touching this code -- it's scary.
5598
5599 2001-02-26  Havoc Pennington  <hp@redhat.com>
5600
5601         * gtk/testgtk.c: test the window state stuff
5602
5603         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
5604         window come to the user's attention as if it were just created
5605         (gtk_window_iconify): new function
5606         (gtk_window_deiconify): new function
5607         (gtk_window_stick): new function
5608         (gtk_window_unstick): new function
5609         (gtk_window_maximize): new function
5610         (gtk_window_unmaximize): new function
5611
5612         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
5613
5614         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
5615
5616         * gdk/x11/gdkevents-x11.c: create window state events when
5617         appropriate
5618         (gdk_wmspec_supported): new function
5619
5620         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
5621         iconification before showing the window
5622         (gdk_window_deiconify): new function
5623         (gdk_window_stick): new function
5624         (gdk_window_unstick): new function
5625         (gdk_window_maximize): new function
5626         (gdk_window_unmaximize): new function
5627
5628         * gdk/gdkwindow.c: store the window state in the window; 
5629         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
5630         window->mapped.
5631         (gdk_window_get_state): return the current window state
5632
5633         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
5634         (gdk_event_get_state): handle GDK_WINDOW_STATE
5635         (gdk_synthesize_window_state): function to create the window state
5636         events
5637
5638         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
5639         event, for changes to "window state" such as maximized, sticky, 
5640         etc.
5641         
5642         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
5643         focuses a window
5644
5645         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
5646         finds out if we support a given WM spec hint
5647
5648 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
5649
5650         * docs/faq/gtk-faq.sgml: New question re memory leaks.
5651
5652 2001-02-25  Hans Breuer  <hans@breuer.org>
5653
5654         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
5655         cause we want to loose those prototypes only in the latter case
5656
5657         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
5658         GdkPixmapImplWin32 because it itsn't derived from it. Use the
5659         impl member variable instead
5660
5661         * gtk/gtk.def : updated
5662
5663         * gtk/gtklist.c : 
5664         * gtk/gtkmenus.c : include <string.h> for memset ()
5665
5666         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
5667         for everthing built here, but for gtk-x.x.dll only. This solves
5668         problem of indifferent gtk type definitions
5669
5670 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
5671
5672         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
5673
5674 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
5675
5676         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
5677         column that is exposed.
5678
5679         (_gtk_tree_view_update_size): Changed name from set_size, and
5680         changed function to do more work, and not force people calling it
5681         to figure out the size.  Simplifies a lot of code elsewhere.
5682
5683 2001-02-23  Alexander Larsson  <alexl@redhat.com>
5684
5685         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
5686         return solid masks for xpms that have no transparent color.
5687         This makes the ..._create_from_xpm... API backwards
5688         compatible.
5689
5690 2001-02-23  Tor Lillqvist  <tml@iki.fi>
5691
5692         * README.win32: Update. Mention the gtk-1-3-win32-production
5693         branch.
5694
5695         * gdk/win32/bdfcursor.c: New file. A program that generates
5696         xcursors.h. Thanks to Stefan Ondrejicka.
5697
5698         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
5699         compact format.
5700
5701         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
5702
5703         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
5704         function, uses xcursors.h.
5705         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
5706         cursor from inline data instead of using LoadCursor() to generate
5707         it from a resource.
5708
5709         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
5710         event, must check the Windows message for mouse button state, as
5711         the GDK event state might not have been built if it is
5712         undelivered. Remove one goto.
5713
5714         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
5715         SetCursor() if the current cursor as returned by GetCursor() is
5716         the window's previous cursor. The ChildWindowFromPoint() test
5717         apparently didn't work correctly.
5718
5719         * gdk/win32/rc/*.cur: Remove.
5720
5721         * gdk/win32/rc/gdk.rc.in: Remove cursors.
5722
5723         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
5724
5725         * gtk/makefile.{mingw,msc}.in: Updates.
5726
5727 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
5728
5729         * gtk/gtktreemodel.h: add functions for signal emission.
5730
5731         * gtk/gtktreestore.c: move to use above functions instead of
5732         g_signal_emit.
5733
5734         * gtk/gtkliststore.c: ditto
5735
5736 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
5737
5738         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
5739         GObject instead of GtkObject.
5740
5741         * gtk/gtkliststore.c: ditto.
5742
5743         * gtk/gtktreemodelsort.c: ditto.
5744
5745         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
5746         GtkTreeModelIface, instead of in each model.
5747
5748 2001-02-21  Havoc Pennington  <hp@redhat.com>
5749
5750         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
5751         unbreak this function
5752
5753         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
5754         properties
5755
5756         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
5757         properties
5758
5759         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
5760         properties
5761
5762         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
5763         mean unset the max length
5764
5765 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
5766
5767         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
5768         Changed name to be set_cell_data_func to make it clear what
5769         the functino does.  Close bug #51069.
5770
5771 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
5772
5773         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
5774         have memory actually freed.  Keeps box running longer.
5775
5776 2001-02-21  Alexander Larsson  <alexl@redhat.com>
5777         
5778         * gtk/gtkseparatormenuitem.[ch]:
5779         Added new menu separator item. The drawing and size handling
5780         is still done in GtkMenuItem, but the API is a bit more sane.
5781         
5782         * gtk/Makefile.am:
5783         Add gtkseparatormenuitem.[ch].
5784
5785         * gtk/gtk.h:
5786         Add gtkseparatormenuitem.h.
5787         
5788         * gtk/gtkentry.c:
5789         * gtk/gtkmenufactory.c:
5790         * gtk/gtktextview.c:
5791         Use the new API for menu separators.
5792         
5793         * demos/gtk-demo/menus.c (create_menu):
5794         Add some GtkSeparatorMenuItem demo code.
5795
5796 2001-02-20  Havoc Pennington  <hp@redhat.com>
5797
5798         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
5799         Lee Mallabone
5800
5801         * gtk/gtkarrow.c: Convert to new property API, patch from 
5802         Lee Mallabone
5803
5804 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
5805
5806         * tests/testtreeview.c (toggled_callback): fix to reflect change
5807         in GtkTreeModelStore.
5808
5809 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
5810
5811         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
5812         function to create an icon set from a pixbuf.
5813
5814 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5815
5816         * gtk/gtkcellrenderertext.[ch]:
5817         Add a "markup" property.
5818
5819         * gtk/treestoretest.c:
5820         Use the markup property, remove some leftover stuff from
5821         GtkTreeModelMapping.
5822
5823 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5824
5825         * gtk/gtklabel.c (gtk_label_set_selectable):
5826         Queue a redraw if the selectable setting was changed.
5827
5828 2001-02-20  Alexander Larsson  <alexl@redhat.com>
5829
5830         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5831         Actually copy the whole gc, not just the public parts.
5832         
5833         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
5834         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
5835         labels.
5836
5837 2001-02-19  Havoc Pennington  <hp@pobox.com>
5838
5839         * gdk/gdkwindow.c: docs
5840
5841         * gdk/gdkrgb.c: docs
5842
5843         * gdk/gdkregion-generic.c: docs
5844
5845         * gdk/gdkgc.c (gdk_gc_set_values): docs
5846
5847         * gdk/gdkdraw.c: docs
5848
5849         * gdk/gdkdrawable.h: deprecate drawable get/set data
5850
5851 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
5852
5853         * demos/gtk-demo/dialog.c: Add simple new demo.
5854
5855 2001-02-19  Havoc Pennington  <hp@redhat.com>
5856
5857         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
5858         insert_child_anchor signal, bug #50245
5859
5860         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
5861         from create_child_anchor, so the anchor is passed in
5862
5863         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
5864         (_gtk_widget_segment_new): have the child anchor object passed in, 
5865         instead of creating it.
5866
5867         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
5868         to gtk_text_buffer_get_modified
5869
5870 2001-02-19  Havoc Pennington  <hp@redhat.com>
5871
5872         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
5873         changed GLib without fixing GTK
5874
5875         * gtk/gtkrange.h: Rename all the stupid implementation detail 
5876         functions to have an underscore in front. Most of them should 
5877         probably just go away, but for starters don't export them.
5878         Bug #50482
5879
5880 2001-02-19  Havoc Pennington  <hp@redhat.com>
5881
5882         * gdk/gdkcolor.h: test was backward, so deprecated functions were
5883         excluded by default
5884
5885         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
5886         clean up the old code a bit
5887
5888         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
5889         inconsistent state
5890
5891         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
5892         draw inconsistent state
5893
5894         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
5895         (create_menu): add inconsistent test
5896
5897         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
5898         new function
5899         (gtk_check_menu_item_get_inconsistent): new function
5900         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
5901         state (using etched in for now)
5902
5903         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
5904         draw inconsistent state
5905
5906         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
5907         function, used when the user has selected a range of stuff in
5908         different states
5909         (gtk_toggle_button_get_inconsistent): accessor for that
5910         (gtk_toggle_button_paint): draw inconsistent state (etched in?
5911         don't know what else to do)
5912
5913 2001-02-19  Hans Breuer <hans@breuer.org>
5914
5915         * gtk/gtk.def : updated exported symbols
5916
5917         * gtk/makefile.msc.in : updated
5918
5919         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
5920         a colormap, when invoked from testgtk::entry. I'm not sure where
5921         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
5922         avoids immediate crashing ...
5923
5924         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
5925         any objections ?
5926
5927         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
5928         0 parameter. At least msvc doesn't like macros with var args. 
5929         I simply removed the extra 0, was it a feature or a typo ?
5930
5931         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
5932         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
5933         because the value assignment to the internal struct wasn't working.
5934         I'm not absolutely sure. The problem could have been resolved by
5935         changing the "func" declartion in the struct, but was the pointer
5936         to the function pointer intended ?
5937
5938         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
5939
5940         * gdk/gdk.def : updated exported symbols
5941
5942         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
5943         only use SetDIBitsToDevice if there is a palette at the drawable
5944         and the image is GDK_VISUAL_PSEUDO_COLOR
5945
5946         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
5947
5948         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
5949
5950         * gdk/*/makefile.msc : updated
5951
5952 2001-02-19  Havoc Pennington  <hp@redhat.com>
5953
5954         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
5955         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
5956
5957         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
5958         (gdk_key_repeat_restore): nuke
5959
5960         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
5961         (gdk_init_check): no atexit func
5962
5963         * gdk/gdkrgb.h: mark some stuff deprecated
5964
5965         * gdk/gdkcolor.h: mark some stuff deprecated
5966         
5967         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
5968
5969         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
5970
5971 2001-02-16  Havoc Pennington  <hp@redhat.com>
5972
5973         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
5974         scroll steps.
5975
5976         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
5977         steps, and add Ctrl-arrow shortcuts for paging visually as with
5978         HScale, since Page Up and Page Down move logically.
5979
5980         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
5981         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
5982         
5983         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
5984         steps
5985         (gtk_range_scroll): handle the visual steps
5986
5987         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
5988         scroll steps
5989
5990         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
5991         steps, not the logical ones.
5992
5993         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
5994         (scroll_vertical): handle up/down steps
5995
5996 2001-02-19 Alexander Larsson  <alexl@redhat.com>
5997
5998         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
5999         Copy data and free data with free().
6000
6001         * gdk-pixbuf/gdk-pixbuf.c:
6002         * gdk-pixbuf/io-jpeg.c:
6003         * gdk-pixbuf/io-png.c:
6004         Use g_try_malloc/g_free instead malloc/free.
6005         
6006         * gdk-pixbuf/test-gdk-pixbuf.c:
6007         Must... initialize... gobject...
6008         
6009         * gdk-pixbuf/pixops/timescale.c:
6010         * gtk/gtkcalendar.c:
6011         Use g_malloc instead of malloc.
6012         
6013 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
6014
6015         * gtk/testgtkrc:
6016         Comment out property assignments, these don't work yet.
6017
6018 2001-02-17  Havoc Pennington  <hp@pobox.com>
6019
6020         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
6021         bit.
6022
6023 2001-02-17  Havoc Pennington  <hp@pobox.com>
6024
6025         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
6026         shadowed variables that had broken size request in some cases,
6027         leading to bogus tooltips (#50996)
6028
6029 2001-02-06  Jon K Hellan  <hellan@acm.org>
6030
6031         Implement fast browsing of tooltips, bug #50619
6032         
6033         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
6034         and last_popdown
6035         
6036         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
6037         use_sticky_delay and last_popdown.
6038         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
6039         time of popdown.
6040         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
6041         is NULL.
6042         (gtk_tooltips_recently_shown): New static function.  Return true
6043         if < sticky_delay has elapsed since last popdown.
6044         (gtk_tooltips_event_handler): Display window after sticky_delay
6045         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
6046         since last popdown.
6047         
6048 2001-02-17  Havoc Pennington  <hp@pobox.com>
6049
6050         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
6051         instead of (). #6394
6052
6053         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
6054         G_CONST_RETURN, make it return by reference, #50473
6055         
6056 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
6057
6058         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
6059         generated ENTER_NOTIFY event with 0, otherwise not explicitely
6060         setup fields contain garbage (e.g. subwindow, breaking
6061         gdk_drawable_ref() upon event copy).
6062         (gtk_menu_stop_navigating_submenu_cb): same here.
6063
6064         * gtk/gtklist.c (gtk_list_vertical_timeout): 
6065         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
6066         * gtk/gtkclist.c (vertical_timeout): 
6067         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
6068         default-zero-intialization for unions to memset(,0,), as unions are
6069         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
6070         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
6071
6072         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
6073         g_closure_sink() warning.
6074
6075         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
6076         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
6077         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
6078         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
6079         
6080 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
6081
6082         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
6083         gtk_*_store_get, and moved to GtkTreeModel.
6084
6085         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
6086
6087         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
6088
6089         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
6090
6091         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
6092         set the func.
6093
6094         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
6095         freeze/thaw notify between setting all the properties for a cell.
6096
6097         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
6098
6099 2001-02-15  Havoc Pennington  <hp@redhat.com>
6100
6101         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
6102         the X coordinates so they're with respect to the line, rather than 
6103         with respect to the layout.
6104
6105         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
6106         Mallabone
6107
6108         * gtk/testgtk.c (create_range_controls): add vscale tests, 
6109         and inverted test
6110
6111         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
6112         #50806
6113
6114         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
6115
6116         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
6117         gtk_text_iter_is_end
6118
6119         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
6120         rename gtk_text_buffer_get_end_iter
6121
6122         * gtk/testgtk.c (create_labels): Add test for selectable
6123
6124         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
6125         the selection stuff. This code is kind of broken since it doesn't 
6126         use the theme engine.
6127
6128         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
6129         fix infinite loop and y offset problem
6130         (gdk_draw_layout_line_with_colors): fix foreground color handling
6131
6132         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
6133         that makes the label selectable.
6134         
6135         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
6136         layout when the style is set, since fonts etc. could have changed.      
6137
6138 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
6139
6140         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
6141
6142         * gtk/gtktreemodelsimple.[ch]: removed.
6143
6144 2001-02-16  Alexander Larsson  <alexl@redhat.com>
6145
6146         * gtk/gtktreemodelmapping.[ch]:
6147         New files. Implement GtkTreeModelMapping.
6148         
6149         * gtk/Makefile.am:
6150         Add gtktreemodelmapping.[ch].
6151         
6152         * gtk/gtk.h:
6153         Add gtktreemodelmapping.h
6154
6155         * gtk/treestoretest.c:
6156         Test the GtkTreeModelMapping
6157
6158 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
6159
6160         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
6161         have a demo, we might as well pass in real values.  Thanks to
6162         clahey for pointing this out.
6163
6164 2001-02-14  Havoc Pennington  <hp@pobox.com>
6165
6166         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
6167         "static" to a private function
6168         (gtk_image_menu_item_class_init): remove destroy handler,
6169         add "image" object property
6170
6171 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
6172
6173         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
6174         Add a shortcut if the window and the current clip_region doesn't
6175         overlap. This is needed when there are a lot of windows in a
6176         window. The layout test in testgtk is a good test.
6177
6178         * gdk/linux-fb/gdkwindow-fb.c:
6179         Whitespace fix.
6180
6181 2001-02-13  Sven Neumann  <sven@convergence.de>
6182
6183         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
6184
6185 2001-02-13  Alexander Larsson  <alexl@redhat.com>
6186
6187         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
6188         Don't reference last_cursor if it is null. Fixes crash when rotating
6189         the screen before having moved the mouse.
6190
6191         * gdk/linux-fb/gdkcc-fb.c: Zapp!
6192
6193         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
6194
6195         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
6196         when using 90 or 270 degrees rotation.
6197
6198 2001-02-12  Havoc Pennington  <hp@pobox.com>
6199
6200         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
6201         it always set the foreground, even if we were only using
6202         a stipple.
6203         (gdk_draw_layout_line_with_colors): new function, allow
6204         override colors
6205         (gdk_draw_layout_with_colors): new function, allow override
6206         colors
6207         (gdk_pango_layout_line_get_clip_region): function to get the clip
6208         region for a logical text range
6209         (gdk_pango_layout_get_clip_region): get the clip region for a
6210         logical text range
6211
6212         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
6213         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
6214         the right number of arguments.
6215
6216         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
6217         enhance the function to check that node data corresponds to a 
6218         view still belonging to the tree.
6219
6220         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
6221         GtkTreePath
6222         (gtk_tree_view_inserted): ditto
6223         (gtk_tree_view_child_toggled): ditto
6224
6225         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
6226         simplify this code.
6227
6228         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
6229         a PangoAttrList
6230
6231         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
6232
6233         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
6234
6235         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
6236         size in the size request 
6237         (gtk_menu_bar_size_allocate): consider toggle size here
6238
6239         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
6240         that displays a widget in the toggle slot
6241
6242         * gtk/testgtk.c: test GtkImageMenuItem
6243
6244         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
6245         
6246         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
6247         request and allocation
6248
6249         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
6250
6251         * gtk/gtkcheckmenuitem.c
6252         (gtk_check_menu_item_toggle_size_request): ditto
6253         
6254 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
6255
6256         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
6257         reference.
6258
6259         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
6260         and refuse to initialize GTK+ if they fail.
6261
6262 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
6263
6264         * configure.in: Add check for gtk-doc version.
6265
6266 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
6267
6268         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
6269         where the xpad/ypad was only being used on one side!
6270
6271 2001-02-11  Tor Lillqvist  <tml@iki.fi>
6272
6273         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
6274         function, copied from X11 version.
6275
6276         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
6277         DestroyCursor failures. The reason for the problem (despite the
6278         inconsistent messages from GetLastError()) was that
6279         DestroyCursor() cannot be called while a cursor is set in a
6280         window. Set the new cursor first and then destroy the old one.
6281         Thanks to jpe@archaeopteryx.com.
6282
6283         * gdk/win32/gdkcc-win32.c: Remove.
6284
6285         * gdk/win32/Makefile.am: Remove from here, too.
6286         
6287         * gdk/gdk.def
6288         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
6289
6290         * gtk/gtk.def
6291         * gtk/makefile.mingw.in: Updates.
6292
6293 2001-02-08  Havoc Pennington  <hp@redhat.com>
6294
6295         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
6296         add a widget to a bin that already has a child.
6297
6298         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
6299
6300         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
6301         
6302         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
6303
6304         * gdk/gdk.h: remove gdkcc.h
6305
6306         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
6307
6308         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
6309         GdkPixbuf, since the previous implementation was GdkColorContext
6310         dependent.
6311
6312         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
6313         
6314 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
6315
6316         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
6317         a sane value!
6318
6319 2001-02-08  Havoc Pennington  <hp@redhat.com>
6320
6321         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
6322         lighten them.
6323
6324 2001-02-08  Havoc Pennington  <hp@redhat.com>
6325
6326         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
6327         validation idle
6328
6329         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
6330         cell renderer
6331
6332         * demos/pixbuf-demo.c (timeout): remove deprecated
6333         gtk_widget_draw
6334
6335         * demos/testpixbuf-save.c (main): remove deprecated
6336         gtk_drawing_area_size
6337
6338         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
6339         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
6340         at the start of the allocation.
6341         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
6342         unsetup or NULL model.
6343
6344         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
6345         even/odd/sorted cells in the tree view.
6346
6347         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
6348         bugfixes
6349
6350         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
6351         backgrounds with draw_flat_box using different detail for even/odd
6352         rows.
6353
6354         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
6355         row, so we can draw the alternating colors thing
6356
6357         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
6358         property from a synonym property, notify for the synonym.
6359         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
6360         (gtk_text_tag_get_property): Always return the font, even if
6361         all its fields aren't set
6362
6363         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
6364         store the attr list; it leaves us with no way to change attributes
6365         in _render according to the render flags, and no way to implement
6366         get_property. Instead store all the specific text attributes. 
6367         Separate whether an attribute is enabled from its value. Sync all
6368         properties with GtkTextTag, make them all consistent, etc.
6369
6370         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
6371         renderers can highlight the sort row/column     
6372
6373         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
6374         accessor functions to get values; this has the side effect of
6375         showing up which accessor functions were missing. Added those.
6376
6377         * gtk/gtktreeviewcolumn.h: Replace set_justification with
6378         set_alignment, to be consistent with GtkLabel, GtkMisc
6379
6380         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
6381         arrow.
6382
6383         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
6384
6385         * gtk/gtktreesortable.h: updates in here
6386
6387 2001-02-07  Sven Neumann  <sven@convergence.de>
6388
6389         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
6390         pango dimensions after painting the background. We used to draw
6391         gigantic flat boxes here.
6392
6393 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
6394
6395         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
6396         error introduced with earlier commit) (pointed out by
6397         Ollie Lho)
6398
6399 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
6400
6401         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
6402         which are no longer necessary.
6403
6404 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
6405
6406         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
6407
6408 2001-02-04  Tor Lillqvist  <tml@iki.fi>
6409
6410         * gdk/gdk.def
6411         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
6412         Provide dummy implementations.
6413
6414 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
6415
6416         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
6417
6418         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
6419         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
6420         deprecated this function.
6421
6422         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
6423         argument.
6424
6425 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
6426
6427         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
6428
6429 2001-02-03  Havoc Pennington  <hp@pobox.com>
6430
6431         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
6432         Mikael Hermansson with patch from Mikael (if there was a toggle
6433         start one after the first character in the range, this function
6434         was broken). Bug #50380
6435
6436 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
6437
6438         * configure.in: Remove confusing comment about X11.
6439
6440 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
6441
6442         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
6443         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
6444         
6445 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
6446
6447         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
6448         it breaks things on BSD. If you want to compile GTK+ with
6449         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
6450         when configuring, since GTK+ simply can't be "pure ANSI" 
6451         in the header files it uses. (#8170, Greg Hudson)
6452
6453 2001-02-02  Havoc Pennington  <hp@redhat.com>
6454
6455         * gtk/gtkwindow.c: docs
6456
6457         * gtk/gtkwidget.c: docs
6458         (gtk_widget_set_colormap): add a reference to the colormap
6459         (gtk_widget_get_default_colormap): add a reference to the colormap
6460
6461         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
6462
6463         * gtk/gtktextiter.c: docs
6464
6465         * gtk/gtkmain.c (gtk_propagate_event): docs
6466
6467         * gtk/gtkpaned.c (gtk_paned_get_position): docs
6468         (gtk_paned_set_position): docs
6469
6470         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
6471         sort interface, no implementation yet.
6472
6473         * demos/testpixbuf.c (new_testrgb_window): replace
6474         gtk_drawing_area_size() with gtk_widget_set_usize()
6475
6476         * demos/testpixbuf-drawable.c (main): ditto
6477         
6478         * gtk/testgtk.c: remove use of GtkStatusbarMsg
6479
6480         * gtk/gtktextbuffer.c: docs
6481
6482         * gtk/gtkstock.c: docs
6483
6484         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
6485
6486         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
6487
6488         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
6489         
6490         * gtk/gtkimage.c: add some docs in here
6491         (gtk_image_size_request): change name of
6492         gtk_widget_render_stock_icon
6493         (gtk_image_get_icon_set): don't dup returned string
6494         (gtk_image_get_icon_set): don't dup returned string
6495
6496         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
6497         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
6498         and gtkiconfactory.h functions
6499
6500         * gtk/gtkiconfactory.c: add some docs in here
6501
6502         * gtk/gtkmain.c (gtk_get_default_language): document
6503         (gtk_get_current_event): document
6504         (gtk_get_current_event_state): document
6505         (gtk_get_event_widget): document
6506
6507         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
6508
6509         * gtk/gtkcontainer.c: Add some documentation
6510         (gtk_container_add): give a more explanatory warning on adding an
6511         already-parented widget, this is kind of a FAQ and also a common
6512         typo that's easier to debug with a nice warning 
6513
6514         * gtk/gtkcellrenderertoggle.c
6515         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
6516         adding this, it's useless
6517         (gtk_cell_renderer_toggle_set_active): remove
6518         (gtk_cell_renderer_toggle_get_radio): add
6519
6520         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
6521         the NULL cell renderer, that doesn't make any sense to me. 
6522
6523         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
6524         demo code should never use deprecated features.
6525
6526         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
6527         code should never use deprecated features.
6528
6529         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
6530         gtk_widget_queue_clear_area deprecated
6531
6532         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
6533         deprecated
6534
6535         * gtk/gtklabel.h: mark gtk_label_get() deprecated
6536
6537         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
6538         a GdkImage deprecated, replaced by new consistently-named
6539         functions       
6540
6541         * gtk/gtkmain.h: Mark gtk_exit() deprecated
6542
6543         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
6544
6545         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
6546         deprecated
6547
6548         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
6549         so it won't appear in docs and confuse people.
6550
6551         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
6552
6553         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
6554         macros deprecated. (can't mark the type itself deprecated, since
6555         GtkProgressBar is not deprecated and we need the type decl to use
6556         GtkProgressBar)
6557
6558         * gtk/gtkpixmap.h: Mark deprecated
6559
6560         * gtk/gtkoldeditable.h: Mark deprecated
6561
6562         * gtk/gtklist.h: Mark deprecated
6563
6564         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
6565         for anything anymore.
6566
6567         * gtk/gtkctree.h: Mark deprecated
6568
6569         * gtk/gtkclist.h: Mark deprecated
6570
6571         * gtk/gtkpreview.h: Mark deprecated
6572
6573         * gtk/gtkpacker.h: Mark deprecated
6574
6575         * gtk/gtktipsquery.h: Mark deprecated
6576
6577         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
6578
6579         * gtk/gtkvruler.h: Add comment that it will move out of GTK
6580
6581         * gtk/gtkhruler.h: Add comment that it will move out of GTK
6582
6583         * gtk/gtkruler.h: Add comment that it will move out of GTK
6584
6585         * gtk/gtkgamma.h: Add comment that it will move out of GTK
6586
6587         * gtk/gtkcurve.h: Add comment that it will move out of GTK
6588
6589 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
6590
6591         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
6592         gdk_colormap_sync private since it was never exported
6593         in a header file.
6594
6595         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
6596         colormap->colors[] for StaticGray, StaticColor colormaps.
6597
6598         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
6599         was being used as if it was image->bits_per_pixel.
6600
6601         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
6602         for the image in the GdkImage structure since it isn't
6603         reconstructable, and we need it to handle packed types
6604
6605         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
6606         the assumption that on Win32 image->bits_per_pixel == image->depth,
6607         always.
6608
6609         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
6610
6611         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
6612         warning message if no converter can be found. 
6613
6614 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
6615
6616         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
6617         chars to isupper() / tolower(). (#567)
6618
6619         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
6620         to clear up 64-bit warnings. (#567)
6621
6622 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
6623
6624         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
6625         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
6626
6627         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
6628         since some people set $(libdir) separately. (#1290, David Kaelbling)
6629
6630 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
6631
6632         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
6633         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
6634         MAXPATHLEN, but the code here depends on a fixed value.)
6635         (#4524)
6636
6637 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
6638
6639         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
6640         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
6641
6642 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
6643
6644         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
6645         viewable there is no way that moving the node will cause the 
6646         focus row to become not viewable, so omit check on the visibility
6647         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
6648
6649 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
6650
6651         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
6652         selection before inserting new text.
6653
6654 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
6655
6656         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
6657         Make the sensitivity of the reparented child track that of
6658         the original parent menu item. (#34218, David Hodson)
6659
6660         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
6661         the case where the current item is destroyed properly.
6662
6663         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
6664         some edge cases with child-less menuitems.
6665         
6666 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
6667
6668         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
6669         key pop down window. (#12074, Jon K Hellan)
6670
6671 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
6672
6673         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
6674         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
6675         The solution here isn't perfect - you get an extraneous
6676         emission of "toggle", which could conceivably confuse an app,
6677         but better than the current situation. LXR search seems to
6678         indicate that no apps in GNOME CVS connect to "toggle".
6679
6680 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
6681
6682         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
6683         gtk_public_h_sources to directly here to avoid warning when
6684         building srcdir != builddir. (#9656)
6685
6686 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
6687
6688         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
6689         handlers in gtkrange.c return the proper values (TRUE == handled)
6690         (#10316).
6691
6692         This is just the tip of the iceberg, but gtkrange.c is the
6693         most common place where the propagation is problematical,
6694         and also a place where it is almost certainly safe to change
6695         this in the stable branch.
6696
6697         (You don't want right click popups on a range control or anything...)
6698
6699 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
6700
6701         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
6702         area on focus out, even if a background pixmap isn't set.
6703         (#13941)
6704         
6705 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
6706
6707         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
6708         to deal with setting the shape properly when scrolling arrows are
6709         turned on, but not visible because there is sufficient space.
6710         (#13432)
6711
6712 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
6713
6714         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
6715         items with submenus, destroy the item along with the submenu.
6716         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
6717         properly.
6718
6719         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
6720         later.
6721
6722 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
6723
6724         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
6725         the focus widget sometimes wasn't drawn with the default if there
6726         was no default widget.
6727
6728         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
6729         unreference pixmaps. 
6730
6731         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
6732         for some extra safety.
6733
6734 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
6735
6736         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
6737         the text of a cell to the old pointer value better, by
6738         copying the new text before freeing the old text. Some code
6739         cleanup. (#8079, Karl Nelson)
6740
6741 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
6742
6743         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
6744         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
6745
6746 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
6747
6748         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
6749         item from a menu, check to see if it matches 
6750         menu->old_active_menu_item, and if so, unref and clear
6751         old_active_menu_item (Patch from Pavel Cisler)
6752
6753         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
6754         menu_shell->active_menu_item, if it is the child being
6755         removed. (Patch based on that of Gene Ragan, #50337)
6756
6757 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
6758
6759         * gdk/linux-fb/gdkselection-fb.c: 
6760         * gdk/linux-fb/gdkcolor-fb.c: 
6761         * gdk/linux-fb/gdkdrawable-fb2.c: 
6762         * gdk/linux-fb/gdkfont-fb.c: 
6763         * gdk/linux-fb/gdkim-fb.c: 
6764         * gdk/linux-fb/gdkinput.c: 
6765         * gdk/linux-fb/gdkkeyboard-fb.c: 
6766         * gdk/linux-fb/gdkmain-fb.c: 
6767         * gdk/linux-fb/gdkrender-fb.c: 
6768         A bunch of whitespace cleanup.
6769         
6770 2001-01-30  Havoc Pennington  <hp@pobox.com>
6771
6772         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
6773         #ifdef GTK_ENABLE_BROKEN.
6774
6775         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
6776         GTK_ENABLE_BROKEN just before including the broken headers.
6777         
6778         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
6779         deprecated types registered.
6780
6781         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
6782         we have to test the broken stuff.
6783
6784         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
6785         
6786 2001-01-30  Havoc Pennington  <hp@redhat.com>
6787
6788         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
6789         here where prev pointer was set to the wrong thing
6790
6791         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
6792         (gtk_tree_path_is_descendant): new function
6793
6794         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
6795         cached length
6796         (gtk_list_store_get_iter): don't modify iter if we can't get the
6797         path.
6798
6799         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
6800         
6801         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
6802         GtkTreeDragDest
6803
6804         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
6805         was causing segfault
6806
6807         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
6808         pointer to NULL
6809
6810         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
6811
6812         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
6813         on returning FALSE
6814         (gtk_list_store_iter_children): ditto
6815         (gtk_list_store_iter_nth_child): ditto
6816         (gtk_list_store_iter_nth_child): ditto
6817         (gtk_list_store_iter_parent): ditto
6818
6819         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
6820         on iter->user_data != NULL instead of silently accepting it.
6821         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
6822         we are returning TRUE.
6823         (gtk_tree_store_iter_children): ditto
6824         (gtk_tree_store_iter_nth_child): ditto
6825         (gtk_tree_store_iter_parent): ditto
6826         (gtk_tree_store_insert): remove handling of parent->user_data ==
6827         NULL, replace with parent == NULL       
6828
6829         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
6830         and a comment explaining things
6831
6832         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
6833         interface support to GtkTreeStore.
6834
6835         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
6836         FALSE if no prev, fix
6837
6838         * gtk/gtktreeview.c (set_source_row): use a row reference
6839         (set_dest_row): use a row reference
6840
6841 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
6842
6843         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
6844         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
6845         (gtk_tree_selection_select_iter): The same as above.
6846
6847 2001-01-26  Havoc Pennington  <hp@redhat.com>
6848
6849         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
6850         which holds a handle to a specific row (particular set of values
6851         in the model, i.e. pointer-identity row).
6852
6853         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
6854         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
6855         Still need to use it for the src/dest row saved on the drag context.
6856
6857 2001-01-26  Havoc Pennington  <hp@redhat.com>
6858
6859         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
6860
6861         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
6862         not offset by TREE_VIEW_HEADER_HEIGHT
6863         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
6864         TREE_VIEW_HEADER_HEIGHT
6865
6866         * configure.in (included_loaders): for me, --with-included-loaders
6867         generates the error "the specified loader yes does not exist",
6868         i.e. the arg defaults to "yes", so change test for value ""
6869         to test for value "yes", and include all loaders in that case.
6870
6871         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
6872
6873         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
6874         handle TREE_VIEW_VERTICAL_SEPARATOR
6875         (gtk_tree_view_bin_expose): fix to consider the row offset as
6876         pointing halfway into vertical separator.       
6877         (gtk_tree_view_draw_node_focus_rect): ditto
6878
6879         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
6880         --gtk-debug=updates, which causes gdk_window_set_debug_updates
6881         (TRUE) to be called.
6882
6883         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
6884         debug mode where the invalid region is colored in on invalidate,
6885         so you can see the flicker and know whether your redraw code is 
6886         doing a good job.
6887
6888         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
6889         tree window coordinates (clip rect is in tree window coords)
6890
6891         * gtk/Makefile.am: add gtktreednd.[hc]
6892
6893         * gtk/gtkliststore.c: implement gtktreednd interfaces.
6894
6895         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
6896         drag-and-drop data operations on a model (so we can set up tree
6897         drag-and-drop automatically)
6898
6899         * gtk/testgtk.c: Add a window to change sensitivity in the
6900         GtkLabel test; add a way to change the entry frame in GtkEntry
6901         test
6902
6903         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
6904         (gtk_entry_get_has_frame): new functions to remove the frame
6905         around an entry
6906         (gtk_entry_size_request): shrink requisition if no frame
6907         (gtk_entry_draw_focus): don't draw frame if no frame
6908
6909         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
6910         checks inside a cell renderer
6911         (gtk_default_draw_option): ditto for options
6912
6913         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
6914         children from the alignment, not the button
6915         (gtk_tree_view_column_init): ref/sink the column, to emulate
6916         GObject refcounting.
6917
6918         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
6919         
6920         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6921         Use theme functions to draw the toggles 
6922
6923         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
6924
6925         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
6926         GdkPangoAttrEmbossed to use in rendering insensitive text
6927
6928         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
6929
6930         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
6931         using new GDK features
6932         
6933 2001-01-24  Alexander Larsson  <alexl@redhat.com>
6934
6935         * gtk/gtkimage.c:
6936         Splitted gtk_image_clear into gtk_image_clear() and
6937         gtk_image_reset(). Call gtk_image_clear() in ::destroy
6938         to avoid leaks.
6939
6940         * gtk/gtklabel.c (set_markup):
6941         Don't leak text.
6942
6943         * gtk/gtktextlayout.c:
6944         Always free display->shaped_objects.
6945
6946         * gtk/testgtk.c (create_clist):
6947         Don't leak custom style.
6948
6949 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6950
6951         * gtk/gtkcolorsel.c (grab_color_at_mouse):
6952         Don't leak image. Simplify using gdk_colormap_query_color().
6953         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
6954
6955         * linux-fb/gdkcolor-fb.c:
6956         Implemented gdk_colormap_query_color.
6957
6958 2001-01-23  Alexander Larsson  <alexl@redhat.com>
6959
6960         * linux-fb/gdkcursor-fb.c:
6961         Don't leak built-in cursors.
6962
6963         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
6964         Don't leak tmp_points.
6965
6966         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
6967         Don't modify desc. Don't leak font if the PangoFont
6968         isn't found.
6969         
6970         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
6971         Free dash_list.
6972
6973         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
6974         Don't leak string.
6975         
6976 2001-01-20  Havoc Pennington  <hp@pobox.com>
6977
6978         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
6979         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
6980         me, matches Pango
6981
6982 2001-01-22  Havoc Pennington  <hp@redhat.com>
6983
6984         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
6985
6986         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
6987
6988         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
6989         Remove, move back to gdk-pixbuf
6990
6991         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
6992         to all the word functions
6993
6994         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
6995         before doing anything on NULL layout or if we don't have the focus
6996
6997         * gtk/testtext.c (fill_example_buffer): "justification"
6998
6999         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
7000         to be called "justification" not "justify"
7001
7002         * demos/gtk-demo/textview.c (create_tags): "justification"
7003         
7004         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
7005
7006 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7007
7008         * gdk/gdkwindow.c (gdk_window_invalidate_region):
7009         Don't leak visible_region. Use visible_region instead of region.
7010         
7011         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7012         Don't do extra gdk_drawable_ref(). This is not X.
7013         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
7014         gdk_fb_focused_window is ref:ed.
7015         (gdk_fb_window_send_crossing_events): Watch out for destroyed
7016         windows.
7017
7018 2001-01-22  Alexander Larsson  <alexl@redhat.com>
7019
7020         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
7021         Don't leak the PangoFontDescriptor.
7022
7023 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
7024
7025         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
7026         when not realized.
7027         (gtk_tree_view_scroll_to_cell): Make work when not realized.
7028         (gtk_tree_view_realize): add scroll_to support
7029         (gtk_tree_view_finalize): add a finalize method.  Populate.
7030         (gtk_tree_view_insert_column): ref and sink the column.
7031         (gtk_tree_view_append_column): ref and sink the column.
7032         (gtk_tree_view_queue_draw_node): New function to handle redrawing
7033         individual nodes.  Should make the code much more efficient, if
7034         actually used.
7035
7036 2001-01-19  Havoc Pennington  <hp@redhat.com>
7037
7038         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
7039         byte_offset variable was being used to mean both "offset into
7040         layout" and "offset into buffer line" which was no longer true
7041         with addition of preedit string; fix
7042
7043 2001-01-19  Havoc Pennington  <hp@redhat.com>
7044
7045         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
7046
7047         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
7048         function
7049
7050         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
7051         implement
7052
7053         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
7054         scroll_to_cell, matches TextView scroll functions better
7055         (gtk_tree_view_tree_to_widget_coords): new function
7056         (gtk_tree_view_widget_to_tree_coords): new function
7057         (gtk_tree_view_get_visible_rect): new function
7058         (gtk_tree_view_get_path_at_pos): accept negative coordinates
7059         (gtk_tree_view_draw_node_focus_rect): new function moved from
7060         draw_focus, also, use width of bin_window as width of the focus
7061         rect
7062         (gtk_tree_view_expand_row): fix bug where it didn't recognize
7063         already-expanded rows
7064         (gtk_tree_view_get_cell_rect): new function
7065         (gtk_tree_view_get_path_at_pos): return the click position
7066         relative to the passed-in cell
7067         (gtk_tree_view_set_expander_column): new function
7068
7069         * configure.in: remove gtk-config-2.0 chmod
7070
7071         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
7072         and properly handle drags with targets we don't understand
7073         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
7074         scrolling anyway
7075         (gtk_text_view_drag_drop): stop scrolling here though, and set the
7076         mark invisible
7077
7078         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
7079         function
7080         (gtk_drag_dest_get_target_list): new function
7081         (gtk_drag_dest_set_target_list): new function
7082         
7083         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
7084
7085         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
7086         related to drag-and-drop
7087
7088 2001-01-19  Alexander Larsson  <alexl@redhat.com>
7089
7090         * gdk/linux-fb/gdkprivate-fb.h:
7091         Define EMULATE_GDKFONT.
7092         Add extra pango_font stuff to GfkFontPrivate.
7093         
7094         * gdk/linux-fb/gdkdrawable-fb2.c:
7095         * gdk/linux-fb/gdkfont-fb.c:
7096         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
7097         emulation using PangoFont.
7098
7099 2001-01-17  Havoc Pennington  <hp@pobox.com>
7100
7101         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
7102         all the non-deprecated set_foo functions. Added missing object
7103         properties, and added g_object_notify() to setters. 
7104         Wrote docs.
7105         
7106 2001-01-18  Tor Lillqvist  <tml@iki.fi>
7107
7108         * gtk/gtkmain.c
7109         * gtk/gtkrc.c: (Win32) Use the new
7110         g_win32_get_package_installation_(sub)directory() functions.
7111
7112         * config.h.win32.in: New file.
7113         
7114         * config.h.win32: Removed.
7115
7116         * configure.in: Output config.h.win32.
7117
7118         * Makefile.am: Add it to EXTRA_DIST.
7119
7120         * gtk/gtk.def: Update.
7121
7122 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
7123
7124         * gtk/gtklabel.c (gtk_label_size_request): Set the
7125         attributes onto the PangoLayout even if they are newly
7126         created from label->pattern.
7127
7128 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
7129
7130         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
7131
7132         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
7133         structures in functions. Fixes bug where gtk_dataset_*
7134         was accidentally still being used in one place, causing
7135         every dest side event to be treated independently.
7136
7137         * gtk/gtkdnd.c: Remove last vestages of handling
7138         ::draw (fixes warning)
7139         
7140         * gtk/gtkentry.[ch]: Add drag and drop support.
7141
7142         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
7143         new function gtk_check_drag_threshhold() for checking
7144         to check if (dx,dy) has exceeded the threshhold for starting
7145         a drag and use it everywhere.
7146
7147 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
7148
7149         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
7150         add -I{includedir}/gtk-2.0.
7151
7152         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
7153         gdk/gdk-pixbuf.h: Doc fixups.
7154         
7155         * gtk/gtkobject.h: Remove trailing , from enum
7156
7157 2001-01-17 Alexander Larsson <alexl@redhat.com> 
7158
7159         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
7160         Doh! Mixed up x and y.
7161
7162         * gdk/linux-fb/gdkglobals-fb.c:
7163         Removed gdk_fb_pointer_grab_window_events,
7164         added _gdk_fb_pointer_grab_owner_events and
7165         _gdk_fb_keyboard_grab_owner_events.
7166
7167         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
7168         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
7169         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
7170         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
7171         Send crossing events after ungrab finished.
7172         (gdk_keyboard_grab): Set ..._owner_events
7173         (type_masks): Move out of function.
7174         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
7175         gdk_fb_keyboard_event_window): New functions, return the
7176         window an event should be targeted at. Handles grabs and
7177         event propagation. Can return NULL.
7178         (gdk_event_make): Remove event_mask checking. Now always
7179         returns an event.
7180                 
7181         * gdk/linux-fb/gdkkeyboard-fb.c:
7182         * gdk/linux-fb/gdkproperty-fb.c:
7183         * gdk/linux-fb/gdkselection-fb.c:
7184         Use new event_window/gdk_event_make() behaviour.
7185         
7186         * gdk/linux-fb/gdkmouse-fb.c:
7187         Use new event_window/gdk_event_make() behaviour.
7188         Only send motion events if in the same window.
7189         If grabbed, use cursor from window if sibling of grabbed
7190         window, and cursor from grabbed window otherwise.
7191
7192         * gdk/linux-fb/gdkprivate-fb.h:
7193         Update gdk_fb_window_send_crossing_events, gdk_event_make
7194         and grab varaible declarations. Add gdk_fb_*_event_window().
7195
7196         * gdk/linux-fb/gdkwindow-fb.c:
7197         Use new event_window/gdk_event_make() behaviour.
7198         Keep correct track of focus window.
7199         (gdk_window_set_events): Set all specific button motion masks
7200         if GDK_BUTTON_MOTION_MASK set.
7201
7202         * gtk/gtkdnd.c (gtk_drag_update):
7203         Free info->last_event if gdk_drag_motion returned FALSE.
7204
7205 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7206
7207         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
7208         Eliminate redraws when input-only windows are shown or
7209         hidden. Thanks to jpe@archaeopteryx.com.
7210
7211 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
7212
7213         * docs/faq/gtk-faq.sgml: FAQ update:
7214           - Update to bugzilla
7215           - Add GTK+ and security/SUID/SGID
7216           - Add DnD question
7217
7218 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
7219
7220         * gdk/linux-fb/gdkdnd-fb.c:
7221         Some cleanups.
7222         
7223 2001-01-15  Havoc Pennington  <hp@pobox.com>
7224
7225         * tests/testtreeview.c: add test stuff for CellRendererToggle
7226
7227         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
7228         accessor
7229
7230         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
7231         only toggle on button press (would do release like GtkButton, but
7232         we'd need implicit grab code for treeview cells)
7233
7234 2001-01-16  Tor Lillqvist  <tml@iki.fi>
7235
7236         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
7237
7238         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
7239         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
7240
7241         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
7242         to g_{locale,filename}_{to,from}_utf8 to match current API.
7243
7244         * gtk/makefile.msc.in (gtk_OBJECTS)
7245         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
7246
7247         * gtk/gtk.def: Update.
7248
7249 2001-01-15  Tor Lillqvist  <tml@iki.fi>
7250
7251         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
7252         implementaion that more closely mimics the events that an X server
7253         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
7254         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
7255         with nested preview widgets, for instance, more responsive when
7256         you move the mouse quickly into them.
7257         (find_window_for_pointer_event): Make it actually compile.
7258         (gdk_event_translate): Set send_event to the value of
7259         InSendMessage (). This doesn't really mean the same as X11's
7260         send_event flag, but is close enough, says jpe@archaeopteryx.com
7261
7262 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7263
7264         * gdk/linux-fb/gdkdnd-fb.c:
7265         Implemented drag and drop.
7266         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
7267         when it tries to free and then copy the same event (info->last_event).
7268         I am not sure about why this happens, but will continue looking.
7269
7270 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7271
7272         * gdk/linux-fb/gdkwindow-fb.c:
7273         Use gdk_window_invalidate_rect instead of
7274         gdk_window_invalidate_rect_clear to minimise flashing.
7275         When hiding windows you need to clear the root window though.
7276
7277 2001-01-15  Alexander Larsson  <alexl@redhat.com>
7278
7279         * gdk/linux-fb/gdkdrawable-fb2.c:
7280         For optization, add an full_shapes argument to gdk_fb_clip_region.
7281         If this is false, only the cliprects of the shapes are used.
7282
7283         * gdk/linux-fb/gdkprivate-fb.h:
7284         Export gdk_fb_window_peek_shape.
7285         Add full_shapes to gdk_fb_clip_region.
7286
7287         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
7288         When moving a window, don't clear everything under the it, just the
7289         root window. Makes stuff faster and flash less.
7290         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
7291         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
7292         offset of the shape.
7293         
7294
7295 2001-01-12  Havoc Pennington  <hp@redhat.com>
7296
7297         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
7298         current invalid region, fixes redraw bug while scrolling the 
7299         text widget
7300
7301         * gtk/gtktextview.c, gtk/gtktextview.h:
7302         Rearrange the scrolling/validation/etc. code in a major way, 
7303         so it seems to make sense to me. Probably isn't genuinely that
7304         much better, but...
7305
7306         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
7307         notifies
7308
7309         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
7310
7311 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
7312
7313         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
7314         Hide mouse pointer while rotation. Show it afterwards.
7315
7316 2001-01-12  Alexander Larsson  <alexl@redhat.com>
7317
7318         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
7319         windows in consideration when generating clip region.
7320
7321         * gdk/linux-fb/gdkfb.h:
7322         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
7323
7324         * gdk/linux-fb/gdkprivate-fb.h:
7325         Add shape to GdkWindowFBDatat.
7326         exported gdk_fb_window_get_abs_shape().
7327         removed gdk_fb_draw_lines declaration.
7328
7329         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
7330         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
7331         send focus changes when there is a grabbed window.
7332         (gdk_window_get_pointer): Handle shaped windows.
7333         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
7334         (gdk_fb_window_peek_shape): Returns the shape for a window,
7335         handles GDK_FB_USE_CHILD_SHAPE.
7336         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
7337         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
7338         (gdk_window_shape_combine_mask): Implement.
7339
7340         * gtk/gtkwindow-decorate.c:
7341         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
7342         setting the shape of a window makes the window transparent.
7343
7344 2001-01-11  Havoc Pennington  <hp@redhat.com>
7345
7346         * gtk/gtktreemodelsimple.h: Oops, broke some macros
7347
7348 2001-01-10  Havoc Pennington  <hp@redhat.com>
7349
7350         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
7351         add this function, bug 40251
7352
7353         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
7354         of type macro   
7355
7356 2001-01-11  Alexander Larsson  <alexl@redhat.com>
7357
7358         * acconfig.h:
7359         Added ENABLE_SHADOW_FB
7360
7361         * configure.in:
7362         Added --disable-shadowfb
7363
7364         * gdk/linux-fb/gdkcursor-fb.c:
7365         Update shadowfb when updating cursor
7366
7367         * gdk/linux-fb/gdkdrawable-fb2.c:
7368         Added wrappers for shadowfb that calls  the normal drawable
7369         methods, but calls gdk_shadow_fb_update(bounding box) when
7370         GdkWindows are drawed to.
7371         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
7372         which also returns the bounding box.
7373
7374         * gdk/linux-fb/gdkfb.h:
7375         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
7376
7377         * gdk/linux-fb/gdkgeometry-fb.c:
7378         Update shadowfb when scrolling window.
7379
7380         * gdk/linux-fb/gdkglobals-fb.c:
7381         Add _gdk_fb_screen_angle.
7382         
7383         * gdk/linux-fb/gdkkeyboard-fb.c:
7384         Test code for screen rotation. Shift-F2 in the xlate driver
7385         rotates the screen.
7386
7387         * gdk/linux-fb/gdkmain-fb.c:
7388         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
7389
7390         * gdk/linux-fb/gdkmouse-fb.c:
7391         Use fb_width/height instead of modeinfo.xres/yres.
7392
7393         * gdk/linux-fb/gdkprivate-fb.h:
7394         Added fb_men, fb_width, fb_height & fb_stride. When using
7395         shadow fb these can differ from the framebuffer stuff.
7396         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
7397         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
7398         _gdk_fb_screen_angle. Removed CM, RP.
7399
7400         * gdk/linux-fb/gdkrender-fb.c:
7401         Added code for shadowfb handling and screen rotation using
7402         shadowfb.
7403
7404         * gdk/linux-fb/gdkwindow-fb.c:
7405         Use fb_mem, fb_stride, fb_width, fb_height.
7406         Added recompute_rowstride to reset the rowstride of all windows.
7407         Added gdk_fb_recompute_all() which recomputes rootwindow size,
7408         window abs positions and window rowstrides. Usefull when the
7409         rotation has changed.
7410
7411 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
7412
7413         * docs/faq/gtk-faq.sgml: update to make web site updating easier
7414
7415 2001-01-10  Havoc Pennington  <hp@redhat.com>
7416
7417         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
7418         where sibling == iter
7419         (gtk_tree_store_insert_after): handle sibling == iter
7420         (gtk_tree_store_prepend): remove stamp checks
7421         (gtk_tree_store_insert_before): ditto
7422         (gtk_tree_store_append): ditto
7423         (gtk_tree_store_get_path): ditto
7424         (gtk_tree_store_get_value): ditto
7425         (gtk_tree_store_iter_has_child): ditto
7426         (gtk_tree_store_iter_n_children): ditto
7427         (gtk_tree_store_iter_nth_child): ditto
7428         (gtk_tree_store_insert_after): ditto
7429         (gtk_tree_store_is_ancestor): ditto
7430         (gtk_tree_store_iter_depth): ditto
7431         (gtk_tree_store_insert_before): assert that sibling's parent is
7432         the same as the passed-in parent
7433         (gtk_tree_store_insert_after): assert that sibling's parent is
7434         the same as the passed-in parent
7435
7436         
7437         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
7438         function to get the first iterator in a model
7439         
7440         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
7441         conventionally the "root" in this sense is just NULL afaict.
7442
7443         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
7444         where sibling == iter
7445         (gtk_list_store_insert_after): handle case where sibling == iter
7446
7447         * tests/testtreeview.c (run_automated_tests): fairly lame basic
7448         automated tests for ListStore, TreeStore
7449
7450         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
7451         (gtk_list_store_insert): update tail pointer, and fix it to work
7452         (gtk_list_store_insert_before): update tail pointer, and fix it to work
7453         (gtk_list_store_append): use tail to be faster
7454         (gtk_list_store_prepend): fix it, update tail pointer
7455         (gtk_list_store_insert_after): fix it, update tail pointer
7456
7457         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
7458         the list
7459
7460 2001-01-09  Havoc Pennington  <hp@redhat.com>
7461
7462         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
7463         is NULL due to a pending resize
7464
7465         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
7466         column width to values less than 1
7467
7468         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
7469         width to be between min/max width, and still set the width 
7470         even if autosize is turned on, so the tree view can use this 
7471         function in order to autosize.
7472         (gtk_tree_view_column_init): set initial width to 1 not 0
7473
7474         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
7475         setter function to modify column width, so we get notification
7476         (gtk_tree_view_insert_iter_height): ditto
7477         (gtk_tree_view_calc_size): ditto
7478         (gtk_tree_view_check_dirty): ditto
7479
7480         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
7481         properties to change all the interesting attributes of the tree
7482         view column.
7483         (gtk_tree_view_column_set_header_clickable): rename set_clickable
7484         (gtk_tree_view_column_get_clickable): add
7485         (gtk_tree_view_column_set_cell_renderer): don't unset the current
7486         attributes; assume a cell renderer with equivalent object
7487         properties has been swapped in. Do g_object_notify().
7488         (gtk_tree_view_column_set_visible): g_object_notify
7489         (gtk_tree_view_column_get_sizing): rename from get_col_type
7490         (gtk_tree_view_column_set_sizing): g_object_notify
7491         (gtk_tree_view_column_set_width): add g_object_notify
7492         (gtk_tree_view_column_set_min_width): ditto
7493         (gtk_tree_view_column_set_max_width): ditto
7494         (gtk_tree_view_column_set_title): ditto
7495         (gtk_tree_view_column_set_clickable): ditto
7496         (gtk_tree_view_column_set_widget): ditto
7497         (gtk_tree_view_column_set_justification): ditto
7498
7499 2001-01-09  Havoc Pennington  <hp@redhat.com>
7500
7501         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
7502         there are no rows in the model
7503
7504         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
7505         NULL, then return the start of the list
7506
7507         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
7508         if we can't get any rows from an empty model 
7509
7510         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
7511         extraneous * after function pointer typedef usage
7512
7513         * Makefile.am: don't specify full path to cp and rm
7514
7515         * gtk/gtkcellrenderertextpixbuf.c
7516         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
7517         NULL before dereferencing, fixes a segfault that happened from
7518         time to time
7519
7520         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
7521         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
7522         and reindent the function
7523         (gtk_cell_renderer_pixbuf_get_size): indentation
7524
7525         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
7526         we quit it
7527         (gtk_dialog_add_buttons_valist): add g_return_if_fail
7528         (gtk_dialog_set_default_response): New function, to set default
7529         button
7530         (gtk_dialog_set_response_sensitive): New function, to set 
7531         sensitivity of buttons
7532
7533         * gtk/gtkcellrendererpixbuf.c
7534         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
7535         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
7536
7537         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7538         handle any G_TYPE_OBJECT subclass, not just the base class, and 
7539         also boxed types.
7540         (_gtk_tree_data_list_value_to_node): ditto
7541
7542         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
7543         --gtk-debug=tree
7544
7545         * gtk/gtkmain.c: add GTK_DEBUG_TREE
7546
7547         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
7548
7549 2001-01-09  Tor Lillqvist  <tml@iki.fi>
7550
7551         * gdk/win32/gdkevents-win32.c: Implement better mouse
7552         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
7553         (find_window_for_pointer_event): New function.
7554         (gdk_event_translate): Use it when handling mouse events.
7555
7556 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
7557
7558         * configure.in:
7559         Added --with-included-loaders option
7560
7561         * gdk-pixbuf/Makefile.am:
7562         * gdk-pixbuf/gdk-pixbuf-io.c:
7563         Add support for including selected gdk-pixbuf loaders only.
7564
7565         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
7566         gtk_window_set_has_frame):
7567         Added inline documentation.
7568
7569         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
7570         * docs/reference/gdk/tmpl/windows.sgml:
7571         Added inline documentation.
7572
7573 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
7574
7575         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
7576         realizing buttons that have already been realized.
7577
7578 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
7579
7580         * tests/testtreeview.c (main): Show menu items before adding to
7581         option menu.
7582
7583         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
7584         around if we kill them.
7585
7586         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7587         Return if we pass in a NULL model.
7588
7589 2001-01-08  Havoc Pennington  <hp@redhat.com>
7590
7591         * tests/testtreeview.c: hack on this some
7592
7593         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
7594         gtk_tree_store_set_valist, v is for arrays, valist for varargs
7595         list
7596         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
7597
7598         * gtk/gtkliststore.h: Add varargs set() and get() convenience
7599         functions
7600
7601 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7602
7603         * gtk/gtkwindow-decorate.[hc]:
7604         * gtk/Makefile.am:
7605         New files. Contains an implementation of a minimal WM for
7606         linux-fb.
7607
7608         * gtk/gtkwindow.h:
7609         Add the possibility for GtkWindows to specify a frame. This
7610         is used for the window decoration code, but could concievably
7611         be used for X programs too (xmms style windows).
7612         GtkWindow->frame is the toplevel window if the window is framed.
7613         The signal frame_event gets all events that are targeted to
7614         GtkWindow->frame.
7615         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
7616         
7617         * gtk/gtkwindow.c:
7618         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
7619         Call out to gtkwindow-decorate.c for WM support in linx-fb.
7620
7621 2001-01-08  Alexander Larsson  <alexl@redhat.com>
7622
7623         * docs/README.linux-fb:
7624         Correct filename ~/.pangoft2_aliases
7625
7626         * gdk/gdkwindow.h:
7627         Added new function gdk_window_get_decorations.
7628
7629         * gdk/linux-fb/gdkfb.h:
7630         Removed _gdk_window_get_decorations declaration.
7631         Renamed _gdk_window_set_child_handler to
7632         gdk_fb_window_set_child_handler.
7633
7634         * gdk/linux-fb/gdkwindow-fb.c:
7635         Renamed _gdk_window_set_child_handler to
7636         gdk_fb_window_set_child_handler.
7637
7638         * gdk/x11/gdkwindow-x11.c:
7639         New function gdk_window_get_mwm_hints().
7640         Implemented gdk_window_get_decorations.
7641
7642         * docs/reference/gdk/tmpl/windows.sgml:
7643         * docs/reference/gdk/gdk-sections.txt:
7644         Added gdk_window_get_decorations docs.
7645         
7646 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
7647
7648         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
7649         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
7650         gdk_fb_window_send_crossing_events):
7651         Possibly send focus events when the mouse moves from one
7652         window to another.
7653
7654 2001-01-07  Tor Lillqvist  <tml@iki.fi>
7655
7656         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
7657         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
7658         to match current API.
7659
7660         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
7661         environment variable is set, don't call g_error when on a
7662         palettized (PseudoColor) display. Some people want to use GTK+ 
7663         in 256-colour mode even though works only partially.
7664
7665         * gdk/gdk.def
7666         * gtk/gtk.def
7667         * gtk/makefile.mingw.in: Update.
7668
7669 2001-01-05  Havoc Pennington  <hp@redhat.com>
7670
7671         * tests/testtreeview.c: hack on this a bit
7672
7673         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
7674         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
7675
7676         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
7677         was spelled incorrectly
7678         (GTK_IS_TREE_MODEL_SIMPLE): ditto
7679
7680         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
7681         from gtk_tree_view_set_headers_active   
7682
7683         * gtk/gtktexttag.c:
7684         (gtk_text_tag_get_property): handle PROP_DIRECTION
7685         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
7686         properties, bug 40235
7687
7688         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
7689         forward_to_line_end
7690
7691 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
7692
7693         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
7694         modules/input/gtkimcontextxim.c: Adapt to new prototypes
7695         for unicode,locale,filename conversion functions.
7696
7697 2001-01-05  Havoc Pennington  <hp@redhat.com>
7698
7699         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
7700         broken if called on the first position in the buffer.
7701
7702         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
7703         forward_to_delimiters to be called only if we aren't already at
7704         the delimiters.
7705
7706 2001-01-05  Havoc Pennington  <hp@redhat.com>
7707
7708         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
7709
7710 2001-01-05  Alexander Larsson  <alexl@redhat.com>
7711
7712         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
7713         colormap in here. Sync from X port.
7714         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
7715         Sync from X port.
7716         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
7717         This happens now and then, and i don't think it is a bug.
7718         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
7719         != endpoint.
7720         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
7721         GDK_LINE_SOLID.
7722
7723         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
7724         some of the fields filled in at least.
7725
7726         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
7727         miLineArcD is no more, remove it from the function definition.
7728
7729 2001-01-04  Havoc Pennington  <hp@redhat.com>
7730
7731         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
7732         this
7733
7734         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
7735         user_data instead of tree_node
7736
7737         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
7738         TREE_VIEW_COLUMN_SIZE
7739
7740         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
7741         "size" field to "width" finishes bug 40061
7742
7743         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
7744         for bitfields, bug 40268
7745
7746 2001-01-04  Havoc Pennington  <hp@redhat.com>
7747
7748         Rename some stuff:
7749         
7750         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
7751
7752         s/GtkModelSimple/GtkTreeModelSimple/g;
7753         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
7754         s/gtk_model_simple/gtk_tree_model_simple/g;
7755         s/gtkmodelsimple/gtktreemodelsimple/g;
7756
7757         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
7758
7759         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
7760         s/column_set_col_type/column_set_sizing/g;
7761
7762         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
7763         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
7764
7765         s/GtkCellRendererType/GtkCellRendererState/g;
7766         
7767         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
7768         (gtk_cell_renderer_toggle_class_init): change "state" property to
7769         "active", to match GtkToggleButton
7770         (gtk_cell_renderer_toggle_get_active): new function, bug
7771         40269
7772         (gtk_cell_renderer_toggle_set_active): new function
7773         (gtk_cell_renderer_toggle_set_property): route changes to toggle
7774         state through gtk_cell_renderer_set_active
7775
7776 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
7777
7778         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
7779         temporarily until they work again.  Brought up to date with
7780         changes in the model.
7781         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
7782         model.
7783
7784 2001-01-04  Havoc Pennington  <hp@redhat.com>
7785
7786         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
7787         equal to the line length, then position iterator before paragraph 
7788         separators. Fixes crash reported by Mikael Hermansson when
7789         pressing left arrow from the start of a line.   
7790
7791         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
7792         about byte indexes off the end
7793         (iter_set_from_char_offset): add g_error about char offsets
7794         off the end
7795
7796 2001-01-03  Havoc Pennington  <hp@redhat.com>
7797
7798         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
7799
7800         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
7801         of private functions; remove inclusion of private headers.
7802
7803         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
7804         function, so we don't need private functions in gtktextdisplay.c
7805
7806         * gtk/gtktextiterprivate.h: underscore-ification
7807
7808         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
7809         to instead say "only useful to implement widgets"
7810
7811         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
7812         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
7813         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
7814
7815         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
7816         This function was completely broken
7817
7818         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
7819
7820         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
7821
7822         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
7823
7824         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
7825
7826         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
7827
7828         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
7829
7830         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
7831         gtk_paint_layout
7832
7833         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
7834         gtk_paint_layout
7835
7836         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
7837         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
7838         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
7839         which were not implemented.     
7840
7841         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
7842         insert_pixbuf signal. Rename delete_text to delete_range since it
7843         also deletes pixbufs and child anchors. This almost closes bug
7844         40245 (still need to deal with child anchors)
7845
7846         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
7847         insert_pixbuf, change signal names as appropriate, change types of
7848         signals taking marks/tags to have the specific type, not just
7849         G_TYPE_OBJECT
7850         
7851         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
7852         closes bug 40051
7853
7854         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
7855         unnecessary remove_contents() call
7856         (gtk_option_menu_class_init): add a "changed" signal, closes
7857         bug 40039
7858         (gtk_option_menu_update_contents): emit "changed" if the 
7859         active menu item changes
7860
7861         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
7862         cast to GtkObject, reported by Jonas Borgstrom
7863         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
7864         we can't do stuff with side effects in finalize. Instead, spew a
7865         warning if the loader isn't closed.
7866
7867         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
7868         colormap in here, non-X ports probably need to sync to this change
7869
7870         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
7871         assertion that colormap != NULL, you can set the colormap to NULL
7872         if you like.
7873         
7874         * Makefile.am: remove gtk-config-2.0
7875
7876         * configure.in: Use pkg-config to locate GLib. Remove
7877         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
7878         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
7879         Use pkg-config to locate Pango. Output correct Pango libs to
7880         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
7881
7882         * Makefile.am (pkgconfig_DATA): install only target-specific pc
7883         files
7884         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
7885         X11 pc files
7886
7887         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
7888         unref from here
7889
7890 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
7891
7892         * configure.in:
7893         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
7894
7895 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
7896
7897         * gtk/gtktextlayout.c
7898         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
7899         variable when moving back onto a single line.
7900
7901 2001-01-01  Havoc Pennington  <hp@redhat.com>
7902
7903         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7904
7905         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
7906
7907         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
7908         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
7909
7910 2001-01-01  Havoc Pennington  <hp@redhat.com>
7911
7912         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
7913
7914         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
7915         GtkTextAttributes
7916
7917         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
7918         #40246
7919         (gtk_text_attributes_copy_values): rename from 
7920         gtk_text_attributes_copy
7921         (gtk_text_attributes_copy): a more standard GTK copy function, 
7922         which returns a new object
7923
7924 2001-01-01  Havoc Pennington  <hp@redhat.com>
7925
7926         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
7927         
7928         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
7929         don't fill in tree_view->priv->selection, kind of an unexpected
7930         side effect
7931
7932         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
7933         gtkintl.h
7934         
7935         * gtk/gtkcellrenderer.c: Remove definition of _ and include
7936         gtkintl.h
7937         (gtk_cell_renderer_get_property): remove calls to g_value_init
7938
7939         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
7940         gtkintl.h
7941
7942         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
7943         and include gtkintl.h
7944         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
7945         property names
7946
7947         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
7948         GtkTreeSelection
7949         (_gtk_tree_selection_new_from_with_view): rename, return
7950         GtkTreeSelection
7951         (_gtk_tree_selection_set_tree_view): rename with uscore
7952         (gtk_tree_selection_get_selected): fill in the "model" out param
7953         first, so it gets filled in even if we return at the top of the 
7954         function
7955         (gtk_tree_selection_real_select_all): add a comment and an else{}
7956         to clarify this a bit
7957         (gtk_tree_selection_real_unselect_all): add the same else{}
7958
7959         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
7960         set_tree_view to have underscore prefixes, move them to the
7961         private header, fix return type of new_with_tree_view
7962         (struct _GtkTreeSelection): mark struct
7963         fields private  
7964
7965         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
7966         GtkTreeModelFlags, not a guint
7967         (gtk_tree_path_prev): return gboolean not gint
7968         (gtk_tree_path_up): return gboolean not gint
7969
7970         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
7971         return GtkTreeModelFlags, not a guint
7972
7973         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
7974         that child model is non-null before unrefing it
7975         (g_value_int_compare_func): make this a qsort compare func, not 
7976         a boolean predicate
7977
7978         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
7979         (add -umn to the end), and mark it unimplemented
7980         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
7981         I don't see what it's for - doesn't the model always sort itself?
7982         (gtk_tree_model_sort_set_compare): this had the wrong signature
7983
7984         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
7985         Fix the docs to say that it destructively replaces existing
7986         attributes (previously said that it added attributes).
7987         (gtk_tree_view_column_set_visible): canonicalize bool before
7988         equality testing. Also, check for realization before
7989         hiding/showing the tree_column->window; if this window could exist
7990         before realization, then it's busted and needs fixing, we can't 
7991         create GDK resources pre-realization. Also, remove
7992         superfluous queue_resize(), since set_size() does that for us.
7993         (gtk_tree_view_column_set_col_type): check realization before 
7994         using tree_column->window
7995
7996         * gtk/gtktreedatalist.c: fix filename in copyright notice
7997
7998 2000-12-31  Havoc Pennington  <hp@pobox.com>
7999
8000         * gtk/gtktextview.c: Rearrange all the
8001         scroll-while-dragging-or-selecting code to be different, not
8002         necessarily better. ;-)
8003         (gtk_text_view_scroll_to_mark): Change this
8004         function to take within_margin as a fraction instead of a pixel
8005         value, and to take alignment arguments (indicating where to align 
8006         the mark inside the visible area)
8007         
8008         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
8009         to GtkObject
8010
8011         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
8012         behavior so that offsets past the end of the line are not 
8013         allowed, and an offset equal to the line length moves the iterator
8014         to the next line
8015         (gtk_text_iter_set_line_index): make parallel change
8016         (gtk_text_iter_get_bytes_in_line): add this function
8017         
8018         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
8019         of byte indexes off the end of the line; byte index at the end of
8020         the line now returns FALSE and doesn't fill in the requested
8021         values, byte index past the end of the line is an error.  Also,
8022         don't allow -1 offset anymore, since its meaning is unclear.
8023
8024         This change exposes some bug in visual cursor motion, where we
8025         end up with a huge invalid byte index; needs fixing. Symptom of 
8026         bug is a crash when you hit up arrow.
8027         
8028         (_gtk_text_line_char_locate): match the change to byte_locate
8029
8030         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
8031         from start of line properly. fixes bug reported by Mikael
8032         Hermansson where backspace would delete all text before the
8033         cursor.
8034
8035 2000-12-30  Tor Lillqvist  <tml@iki.fi>
8036
8037         * gdk/win32/gdkwindow-win32.c
8038         (gdk_window_impl_win32_get_visible_region): New function, as in
8039         the X11 backend.
8040         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
8041         instead of duplicating the same code here.
8042
8043         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
8044         GDK_COLORMAP macro.
8045
8046         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
8047         destroy function.
8048         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
8049         access that.
8050
8051         * gtk/gtk.def: Update.
8052
8053         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
8054
8055 2000-12-30  Havoc Pennington  <hp@pobox.com>
8056
8057         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
8058         colormap on input only windows, to avoid special cases all over
8059         the code for these windows.
8060
8061 2000-12-26  Tor Lillqvist  <tml@iki.fi>
8062
8063         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
8064         we are on a palettized display ("PseudoColor" in X11), as the code
8065         for that doesn't work anyway, and never has.
8066
8067 2000-12-22  Alexander Larsson  <alexl@redhat.com>
8068
8069         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
8070         Don't use isprint() for chars > 255.
8071
8072 2000-12-21  Havoc Pennington  <hp@redhat.com>
8073
8074         * tests/testtreeview.c: more work
8075
8076 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8077
8078         * docs/README.linux-fb:
8079         Update the docs to the new pangoft2 way.
8080
8081 2000-12-21  Alexander Larsson  <alexl@redhat.com>
8082
8083         * configure.in:
8084         For linux-fb get the pangoft2 cflags and libs. This needs a recent
8085         pango version.
8086         Remove modules/linux-fb/Makefile.
8087
8088         * gdk/linux-fb/gdkdrawable-fb2.c:
8089         Render glyphs using freetype.
8090
8091         * gdk/linux-fb/gdkfb.h:
8092         Add new fb-specific functions needed for managing windows.
8093
8094         * gdk/linux-fb/gdkmain-fb.c:
8095         Remove gdk_font_init/fini() calls.
8096
8097         * gdk/linux-fb/gdkpango-fb.c:
8098         Remove old implementation. Use pangoft2 instead.
8099
8100         * gdk/linux-fb/gdkprivate-fb.h:
8101         Remove PangoFBFont and related stuff.
8102
8103         * gdk/linux-fb/gdkwindow-fb.c:
8104         Implement drawable->get_visible_region.
8105         Implement support for _gdk_window_set_child_handler () and
8106         _gdk_window_get_decorations().
8107
8108         * modules/Makefile.am:
8109         Remove linux-fb subdir.
8110
8111         * modules/linux-fb/*:
8112         Removed all.
8113         
8114 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
8115
8116         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
8117         calls, as they are no longer needed.
8118
8119         * gtk/gtktreemodelsort.c: Fix up the comparison code.
8120         
8121         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
8122         figure out how to emit a signal on an interface.
8123
8124 2000-12-20  Havoc Pennington  <hp@redhat.com>
8125
8126         * tests: new directory to contain tests, gtk/test* should move
8127         here sometime (with appropriate on-cvs-server hackery)
8128
8129         * tests/testtreeview.c, tests/Makefile.am: a test
8130         
8131         * configure.in (AC_OUTPUT): add tests/Makefile
8132
8133         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
8134         and "invisible_set" which were missing
8135
8136         * gtk/gtkrbtree.h: some cheesy indentation fix
8137         
8138 2000-12-20  Alexander Larsson  <alexl@redhat.com>
8139
8140         * gtk/gtkinvisible.c (gtk_invisible_realize):
8141         Attach the style to the window so that the style it is not
8142         leaked when unrealizing the window.
8143
8144 2000-12-18  Havoc Pennington  <hp@redhat.com>
8145
8146         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
8147         begin/end user action where appropriate
8148         (gtk_text_view_commit_handler): add begin/end user action
8149
8150         * gtk/gtktextbuffer.c: add begin/end user action signals, and
8151         bracket interactive operations with begin/end user action pair.
8152         
8153         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
8154         "interactive" arg from insert_text and delete_text signals.
8155         Add begin_user_action, end_user_action signals
8156         (gtk_text_buffer_begin_user_action): 
8157         (gtk_text_buffer_end_user_action): New functions to delimit 
8158         a user-visible action
8159
8160         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
8161         signals.
8162         
8163 2000-12-18  Havoc Pennington  <hp@redhat.com>
8164
8165         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
8166         was pretty non-working.
8167
8168         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
8169         by passing the length to g_utf8_validate().
8170
8171 2000-12-16  Havoc Pennington  <hp@pobox.com>
8172
8173         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
8174         Port to GObject, can go back in gdk-pixbuf after setting up 
8175         a gdk-pixbuf-marshal.h header over there.
8176
8177         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
8178         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
8179         args
8180         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
8181         set
8182         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
8183         here, do it when we create the buttons later
8184         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
8185         (gtk_tree_view_map): paranoia checks that column->button is shown 
8186         and unmapped
8187         (gtk_tree_view_size_request): only request visible children.
8188         Move header size calculation in here, for cleanliness, and 
8189         to maintain invariants for child widgets if we eventually 
8190         let users set different children inside the buttons
8191         (gtk_tree_view_map_buttons): factor out code to map buttons,
8192         since it was being called several times
8193         (gtk_tree_view_size_allocate_buttons): move_resize the drag
8194         windows instead of just moving them; their height may change 
8195         if we allow random widgets in there, or the theme changes.
8196         (gtk_tree_view_size_allocate): move button size allocation 
8197         above emitting the scroll signals, to ensure a sane state when we
8198         hit user code
8199         (gtk_tree_view_button_release): remove queue_resize after
8200         tree_view_set_size(), set_size() will handle any resize queuing
8201         that's needed
8202         (gtk_tree_view_focus_in): just queue a draw, don't fool with
8203         draw_focus goo
8204         (gtk_tree_view_focus): use gtk_get_current_event() and
8205         gdk_event_get_state()
8206         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
8207         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
8208         semicolon
8209         (gtk_tree_view_create_button): show the button here
8210         (gtk_tree_view_button_clicked): actually emit the clicked signal
8211         on the column
8212         (_gtk_tree_view_set_size): return right away if the size is
8213         unchanged, as a cheesy optimization
8214         (gtk_tree_view_setup_model): rename set_model_realized to 
8215         setup_model to match the flag that indicates whether we've 
8216         called it
8217         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
8218         exist, because set_scroll_adjustment does that and it shouldn't
8219         matter what order you call these in
8220         (gtk_tree_view_get_vadjustment): ditto
8221         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
8222         for paranoia
8223         (gtk_tree_view_set_headers_visible): call
8224         gtk_tree_view_map_buttons() instead of using cut-and-paste code
8225         (gtk_tree_view_append_column): clarify whether the return value
8226         is the count of columns before or after, and do the increment 
8227         separately from the return statement so you can tell from the code.
8228         (gtk_tree_view_remove_column): ditto
8229         (gtk_tree_view_insert_column): ditto
8230         (gtk_tree_view_get_column): remove g_return_if_fail for columns
8231         outside the existing range, the docs say that outside-range
8232         columns are allowed, so we handle them as documented. (Presumably
8233         this allows a nice loop with column != NULL as test.)
8234         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
8235         mean (left/right/center etc.).
8236         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
8237         (gtk_tree_view_expand_row): add docs
8238         (gtk_tree_view_collapse_row): add docs
8239
8240         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
8241         function to emit the clicked signal on a column
8242         
8243         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
8244         state of an event
8245         (gdk_event_get_time): don't treat GDK_SCROLL 
8246         as a button event, remove default case from switch so gcc 
8247         will whine if we don't explicitly handle all event types
8248
8249         * gtk/gtktreeselection.h: added some FIXME 
8250         
8251         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
8252         "columns" to "n_columns" and "column" to "columns" for clarity
8253
8254 2000-12-16  Havoc Pennington  <hp@pobox.com>
8255         
8256         * gtk/gtktextiter.c: General cleanup of the log attr iteration
8257         stuff. This should make e.g. the delete key work again in the
8258         text widget...
8259         (gtk_text_iter_forward_cursor_positions): handle negative count
8260         (gtk_text_iter_backward_cursor_positions): handle negative count
8261         (gtk_text_iter_forward_word_ends): handle negative count
8262         (gtk_text_iter_backward_word_starts): handle negative count
8263
8264         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
8265         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
8266         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
8267         GObject. No doubt will cause breakage.
8268
8269         * demos/gtk-demo/textview.c: remove hacks around
8270         non-GObject-ification of the text objects
8271
8272         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
8273         the text tag
8274         
8275 2000-12-14  Havoc Pennington  <hp@pobox.com>
8276
8277         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
8278         that we have Xrender
8279
8280 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
8281
8282         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
8283         Add two virtualized functions gdk_drawable_get_clip_region - to
8284         get the clip region when drawing.
8285         
8286         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
8287         use invalidate_region.
8288
8289         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
8290         region.
8291
8292         * acconfig.h configure.in: Check for Xft. For now, assume
8293         that if Xft is found, Pango was compiled with Xft support
8294         as well.
8295
8296         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
8297         gdk_colormap_query_color().
8298         
8299         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
8300         with Xft if appropriate.
8301
8302         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
8303         a pangoxft context if we have XFT and the environment
8304         variable GD_USE_XFT is set.
8305         
8306         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
8307         and also possibly an XftDraw structure.
8308
8309         * gtk/gtkfontsel.c: Handle the case where the font from the
8310         style doesn't match any of the fonts a bit better.
8311         
8312         * gtk/testgtk.c: Add tabs between directional segments for
8313         hebrew/arabic test. (Not really necessary, just a little
8314         prettier.)
8315
8316 2000-12-14  Havoc Pennington  <hp@redhat.com>
8317
8318         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
8319         reading a file
8320
8321 2000-12-14  Havoc Pennington  <hp@redhat.com>
8322
8323         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
8324         unused call to get_last_line()
8325
8326         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
8327         here until boxed is working (and maybe after that - we should
8328         really not gratuitously break old code)
8329
8330         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
8331         specific types for font_desc and tabs args, move them to
8332         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
8333         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
8334
8335         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
8336         use GTK_TYPE_POINTER for signal signatures as a hack-around
8337
8338         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
8339         PangoTabArray
8340
8341         * gtk/gtktextlayout.c (line_display_iter_to_index): 
8342         make static
8343         (line_display_index_to_iter): make static
8344
8345         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
8346         to marshal a string not a boxed
8347
8348         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
8349
8350         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
8351         since the UTF-8 isn't validated yet
8352
8353         * gtk/gtktextsegment.c (char_segment_check_func): don't require
8354         lines to end in '\n'
8355         
8356         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
8357         forward_to_delimiters, and grapheme boundaries
8358         (gtk_text_view_delete_from_cursor): properly handle non-newline
8359         delimiters, and grapheme boundaries
8360
8361         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
8362         to gtk_text_iter_forward_to_delimiters, and make it work properly
8363         if empty lines end with a character other than '\n'
8364
8365         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
8366         position
8367
8368 2000-12-15  Tor Lillqvist  <tml@iki.fi>
8369
8370         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
8371
8372         * gtk/gtk.def
8373         * gdk/gdk.def: Update.
8374
8375         * gdk/win32/gdkmain-win32.c
8376         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
8377         gdkmain-win32.c here.
8378
8379         * gdk/win32/makefile.mingw.in (all): No need to make
8380         gdk-win32res.o here, the makefile one step up will call us to make
8381         it.
8382
8383         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
8384         gdkkeys-win32.
8385
8386         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
8387
8388         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
8389         call to g_source_add().
8390
8391         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
8392         leak. Thanks to Andreas Kemnade.
8393
8394 2000-12-13  Havoc Pennington  <hp@pobox.com>
8395
8396         * gtk/gtktextbtree.h: Remove double _ in front of some functions
8397
8398         * gtk/gtktext*.[hc]: update accordingly
8399         
8400 2000-12-13  Havoc Pennington  <hp@pobox.com>
8401
8402         * gtk/gtktextbtree.h: Put _ in front of every function in this 
8403         header file
8404
8405         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
8406
8407 2000-12-13  Alex Larsson  <alexl@redhat.com>
8408
8409         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
8410         Add support for ps2 intellimouse.
8411
8412         * gdkkeyboard-fb.c:
8413         Move shift-F1 repaint handling to xlate handler only.
8414         
8415         * docs/README.linux-fb:
8416         Add imps2 to docs.
8417         Document the new refresh keys.
8418         
8419 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
8420
8421         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
8422
8423         * gtk/gtkbox.c: change property types from (u)long to (u)int for
8424         ::position and ::padding.
8425
8426         * gtk/gtkcontainer.c: make ::border_width an INT property.
8427
8428         * gtk/gtkpacker.c: make ::position an INT property.
8429
8430         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
8431         guard against NULL h/v scrollbars, since this is used at construction
8432         time.
8433
8434         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
8435         internal gtk_clist_constructor().
8436
8437         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
8438         gtk_ctree_constructor().
8439
8440         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
8441         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
8442
8443         * docs/reference/Makefile.am: fun stuff, disabled docs generation
8444         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
8445
8446         * gtk/gtkwidget.[hc]:
8447         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
8448         and gtk_widget_get().
8449         (gtk_widget_new): use g_object_new_valist().
8450         (gtk_widget_set): use g_object_set_valist().
8451
8452         * gtk/gtkobject.[hc]:
8453         removed gtk_object_arg_get_info(), gtk_object_getv(),
8454         gtk_object_query_args(), gtk_object_newv(),
8455         gtk_object_class_add_signals(),
8456         gtk_object_class_user_signal_new(),
8457         gtk_object_class_user_signal_newv(),
8458         gtk_object_arg_set(), gtk_object_arg_get(),
8459         gtk_object_args_collect(),
8460         gtk_object_default_construct(),
8461         gtk_object_constructed(),
8462         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
8463         removed nsignals, signals and n_args members from GtkObjectClass.
8464         (gtk_object_new): use g_object_new_valist().
8465         (gtk_object_set): use g_object_set_valist().
8466         (gtk_object_get): use g_object_get_valist().
8467         
8468         * gtk/gtkcompat.h: define gtk_object_default_construct().
8469         
8470         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
8471         g_object_new().
8472
8473         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
8474         fucntions, cleaned up method assignments (make sure your structures
8475         are setup properly before calling out). removed all GTK_CONSTRUCTED
8476         hacks ;)
8477
8478 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
8479
8480         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
8481         off-by-one error in checks. (Dave Lambert)
8482
8483 2000-12-12  Alexander Larsson  <alexl@redhat.com>
8484
8485         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
8486         Don't free gdk_fb_keyboard twice.
8487
8488 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
8489
8490         * gtk/testgtk.c:
8491         (create_tooltips): 
8492         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
8493         use GObject swapped_signal:: properties instead.
8494
8495         * gtk/gtkcellrenderertoggle.c: 
8496         * gtk/gtkcellrenderertextpixbuf.c: 
8497         * gtk/gtkcellrenderertext.c: 
8498         * gtk/gtkcellrendererpixbuf.c: 
8499         * gtk/gtkcellrenderer.c:
8500         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
8501         missing warnings for invalid property ids, install properties
8502         with g_object_class_install_property() now.
8503         
8504         * gtk/gtksignal.c:
8505         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
8506         
8507 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
8508         
8509         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
8510         to determine if a window is the focus widget within
8511         its toplevel.
8512
8513         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
8514         to be boolean.
8515
8516         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
8517         of the case where the container CAN_FOCUS to here instead
8518         of having it in each individual move-the-focus place.
8519
8520         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
8521         focusing to be geometric in a much more obvious sense. Arrowing
8522         around is still non-intuitive because it isn't perfect and
8523         because entries, etc, grab the arrow keys, but it at least
8524         usually will do what you expect now.
8525         
8526         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
8527         file.
8528
8529         * gtk/gtknotebook.c: Change tabs to be a single item in
8530         the focus chain. Make movement of focus on tabs with arrow
8531         keys wrap around.
8532         
8533         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
8534         CHECK_FIND_CHILD macro to give informative error messages
8535         instead of silent returns.
8536
8537         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
8538         flag since we handle GdkReturn on the tabs.
8539
8540         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
8541         windows rather than sending expose events directly.
8542
8543         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
8544         definition for GtkNotebookPage into .c file, since it is private.
8545
8546         * gtk/testgtk.c (create_notebook): Add option for 
8547         testing borderless notebook.
8548
8549         * gtk/testgtk.c (page_switch): Removed egregious poking
8550         around in GTK+ internals.
8551
8552         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
8553
8554         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
8555         properly through gtk_clist_focus. Make the title headers a
8556         single item in the tab-focus chain, and make left-right wrap
8557         around.
8558
8559         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
8560         focus method so that wrapping around works properly.
8561
8562         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
8563         that is handled for the widget now. 
8564
8565 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
8566
8567         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
8568         widgets as TOPLEVEL.
8569
8570         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
8571         TOPLEVEL widgets are containers.
8572
8573         * gtk/gtkinvisible.h: Remove useless include.
8574
8575 2000-12-11  Havoc Pennington  <hp@redhat.com>
8576
8577         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
8578         Handle chopping off \r\n and 0x2029 in addition to \n before
8579         passing to PangoLayout
8580
8581         * gtk/gtkimcontextsimple.c
8582         (gtk_im_context_simple_get_preedit_string): 
8583         return an empty string if no match is pending
8584
8585         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
8586         assertion that the returned preedit string was sane
8587
8588         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
8589         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
8590         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
8591
8592 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
8593
8594         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
8595         Fix up finalizer to chain to its parent.
8596
8597 2000-12-11  Alexander Larsson  <alexl@redhat.com>
8598
8599         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
8600         Clearified the difference between the keyboard types. Wrote a note
8601         about the magic sysrq key to get out of raw mode.
8602
8603 2000-12-09  James Henstridge  <james@daa.com.au>
8604
8605         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
8606         member to hold masks for detecting the start of a protocol packet.
8607         (mouse_devs): add packet start masks for ps2 and ms device types.
8608         Left the mask for fidmour blank, as I have no idea what it should
8609         be.
8610         (handle_mouse_io): skip bytes until we get to the start of a
8611         packet.  My Logitech mouse seems to be passing an extra NULL pad
8612         byte, and GPM does a similar thing here.
8613         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
8614         this is the ms mouse driver.
8615         (gdk_fb_mouse_ms_packet): fix up button handling, which was
8616         completely broken except for button1.  It was checking the wrong
8617         bit in the packet for the status of the right mouse button, and
8618         wrongly assuming right == button2 rather than 3.  I fixed that and
8619         also added support for middle button (button2).
8620
8621 2000-12-08  Havoc Pennington  <hp@redhat.com>
8622
8623         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
8624         that cause a segfault on text insertion
8625
8626         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
8627         warning
8628
8629         * gtk/gtktextiter.c (test_log_attrs): use
8630         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
8631
8632         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
8633         Get log attrs for a line, using a cache stored on the buffer
8634         
8635         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
8636         reported by Jeff Franks
8637
8638 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8639
8640         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
8641         /dev/ttyS0 -> /dev/mouse
8642
8643 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8644
8645         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
8646         Added dummy gdk_fontset_load.
8647
8648 2000-12-08  Alexander Larsson  <alexl@redhat.com>
8649
8650         * docs/README.linux-fb:
8651         * docs/Makefile.am:
8652         Initial GtkFB docs.
8653         
8654         * gdk/linux-fb/Makefile.am:
8655         Define GDK_DATA_PREFIX.
8656
8657         * gdk/linux-fb/gdkmain-fb.c:
8658         Fix typo.
8659         Change default display to /dev/fb0.
8660
8661         * gdk/linux-fb/gdkpango-fb.c:
8662         Add $(prefix)/share/fonts/ to font path.
8663         
8664 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
8665
8666         * gdk/linux-fb/gdkkeyboard-fb.c:
8667         New file containing the abstracted keyboard driver. Most code
8668         taken from gdkinput-ps2.c
8669
8670         * gdk/linux-fb/gdkinput-ps2.c:
8671         Removed file.
8672         
8673         * gdk/linux-fb/Makefile.am:
8674         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
8675
8676         * gdk/linux-fb/gdkcolor-fb.c:
8677         display->fb was renamed to display->fb_fd.
8678
8679         * gdk/linux-fb/gdkcursor-fb.c:
8680         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8681
8682         * gdk/linux-fb/gdkinput.c:
8683         Moved gdk_input_init here from gdkinput-ps2.c
8684
8685         * gdk/linux-fb/gdkmain-fb.c:
8686         display->fb was renamed to display->fb_fd.
8687         Now the tty and the console is opened here instead
8688         of in the keyboard driver. Also check GDK_VT to see what
8689         tty to open.
8690         Move gdk_beep () here from gdkinput-ps2.c
8691         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8692
8693         * gdk/linux-fb/gdkmouse-fb.c:
8694         Add header.
8695         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8696         Return correct keyboard modifiers.
8697         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
8698
8699         * gdk/linux-fb/gdkprivate-fb.h:
8700         Add tty and vt info to display.
8701         Add orignal modeinfo storage to display
8702         Update global functions
8703
8704         * gdk/linux-fb/gdkwindow-fb.c:
8705         Added gdk_fb_window_find_focus().
8706         gdk_mouse_get_info -> gdk_fb_mouse_get_info
8707
8708 2000-12-07  Havoc Pennington  <hp@pobox.com>
8709
8710         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
8711         function, noticed by Alex
8712
8713 2000-12-06  Elliot Lee  <sopwith@redhat.com>
8714
8715         * configure.in: Detect freetype properly
8716
8717         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
8718         above.
8719
8720 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8721
8722         * gdk/linux-fb/Makefile.am:
8723         Add gdkmouse-fb.c
8724         
8725         * gdk/linux-fb/gdkmouse-fb.c:
8726         New file. Abstracted the mouse drivers a bit.
8727
8728         * gdk/linux-fb/gdkcursor-fb.c:
8729         The cursor hide/show functions was moved here from gdkinput-ps2.c.
8730
8731         * gdk/linux-fb/gdkinput-ps2.c:
8732         Removed old mouse handling code. Moved cursor handling code
8733         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
8734         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
8735         gdk_mouse_get_info.
8736
8737         * gdk/linux-fb/gdkmain-fb.c:
8738         Pass NULL pointers for x,y in gdk_mouse_get_info call.
8739
8740         * gdk/linux-fb/gdkprivate-fb.h:
8741         Removed public gdk_fb_find_common_ancestor, added and renamed
8742         functions for the new mouse handling code.
8743
8744         * gdk/linux-fb/gdkwindow-fb.c:
8745         Moved gdk_fb_window_send_crossing_events here. added global
8746         variable gdk_fb_window_containing_pointer. made
8747         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
8748         renamed to gdk_mouse_get_info.
8749
8750 2000-12-06  Alexander Larsson  <alexl@redhat.com>
8751
8752         * gdk/linux-fb/gdkevents-fb.c:
8753         Update to match latest gmain/gsource changes.
8754
8755         * gdk/linux-fb/gdkinput-ps2.c:
8756         Bogus gdk_keymap_get_entries_for_keycode implementation so that
8757         it links. Will be implemented later.
8758
8759 2000-12-03  Havoc Pennington  <hp@pobox.com>
8760
8761         * gdk/Makefile.am: add gdkkeys.[hc]
8762
8763         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
8764         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
8765
8766         * acconfig.h, configure.in: add checks and command line options
8767         for XKB
8768
8769         * gdk/x11/gdkkeys-x11.c: Implement the above functions
8770         
8771         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
8772         and group in the key event
8773
8774         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
8775         field with the low-level hardware key code, and a group
8776         field with the keyboard group
8777
8778         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
8779         and declare a couple globals used for keymap handling
8780         
8781         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
8782         hold down Shift-Control and type a hex number to get a Unicode 
8783         character corresponding to the hex number
8784         (gtk_im_context_simple_get_preedit_string): Fix cursor position
8785         (return bytes not chars)
8786
8787 2000-12-05  Elliot Lee  <sopwith@redhat.com>
8788
8789         * gdk/gdkcolor.h: Make GdkColor specify element sizes
8790         to avoid waste on 64-bit platforms.
8791
8792 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
8793
8794         * INSTALL: Fix link to PNG home, remove reference
8795         to fribidi.
8796
8797         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
8798         
8799         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
8800         tested.)
8801
8802         * gtk/gtkcheckmenuitem.c: Permanently turn on
8803         always_show_toggle.
8804
8805         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
8806         be NULL. (Vladimir Klebanov, #26545)
8807
8808         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
8809         some signed/unsigned comparison problems. (#6510,
8810         David Kaelbling)
8811
8812         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
8813         return type to boolean (Oskar Liljeblad, #18648)
8814
8815 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8816
8817         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
8818         Remove bogus colormap setting.
8819
8820 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8821
8822         * gdk/linux-fb/gdkcolor-fb.c:
8823         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
8824
8825         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
8826         Must set colormap.
8827         
8828 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
8829
8830         * docs/tutorial/gtk-tut.sgml: DND updates
8831
8832 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
8833
8834         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
8835         Remove old debug g_warning().
8836         (gdk_fb_draw_drawable): The src argument can be either a wrapper
8837         or an implementation, just pass the implementation to draw_drawable_2.
8838         
8839         * gdk/linux-fb/gdkprivate-fb.h:
8840         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
8841
8842         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
8843         clear and invalidate area when window is destroyed.
8844         (send_map_events): Remove old commented out code.
8845
8846 2000-12-05  Alexander Larsson  <alexl@redhat.com>
8847
8848         * gdk/linux-fb/gdkpango-fb.c:
8849         Use italic instead of oblique in font aliases.
8850         
8851         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
8852         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
8853         other unsupported functions.
8854
8855 2000-12-04  Havoc Pennington  <hp@redhat.com>
8856
8857         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
8858
8859         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
8860
8861         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
8862
8863         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
8864         hack to avoid infinite loops (synthetic expose event) - 
8865         Owen has more appropriate fixes in a branch he'll check in later.
8866
8867         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
8868         separator, CR, and CRLF as line ends
8869
8870         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
8871         into lines using pango_find_paragraph_boundary(); other bits of
8872         the widget are still going to be broken if the boundary isn't '\n'
8873         though
8874
8875 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8876
8877         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
8878         multiply.
8879
8880         * gdk/linux-fb/gdkpango-fb.c:
8881         Copied some 26.6 scaling macros from pango to clean up the rounding.
8882         (pango_fb_font_get_glyph_info): Correct sign on x value.
8883
8884         * gdk/linux-fb/gdkprivate-fb.h:
8885         Removed unreferenced external functions.
8886
8887         * modules/linux-fb/Makefile.am: Use ` instead of '.
8888
8889         * modules/linux-fb/basic.c:
8890         Remove dead code. In particular the dummy lang engine which broke all
8891         pango layouts in GtkFB. Don't include tables-big.i anymore.
8892
8893         * modules/linux-fb/tables-big.i:
8894         Upgrade to latest version from pango. Left for reference, basic_ranges
8895         moved to basic.c.
8896         
8897 2000-12-04  Havoc Pennington  <hp@redhat.com>
8898
8899         Fix bugs Alex found:
8900         
8901         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
8902         to "draw"
8903
8904         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
8905
8906         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
8907
8908         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
8909         implementation in here, apparently the expose() implementation was
8910         dead code.
8911
8912 2000-12-04  Alexander Larsson  <alexl@redhat.com>
8913
8914         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
8915         Return positive descent.
8916
8917 2000-12-02  Havoc Pennington  <hp@pobox.com>
8918
8919         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
8920         method and signal
8921         
8922         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
8923         calls gdk_window_process_updates() to push the exposes through
8924         (gtk_widget_class_init): No more draw signal, no
8925         gtk_widget_real_draw()  
8926         
8927         * gtk/gtkbin.c (gtk_bin_draw): remove
8928
8929         * gtk/gtkbox.c (gtk_box_draw): remove
8930
8931         * gtk/gtkbutton.c (gtk_button_draw): remove
8932
8933         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
8934
8935         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
8936
8937         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
8938
8939         * gtk/gtkclist.c (gtk_clist_draw): remove
8940
8941         * gtk/gtkentry.c (gtk_entry_draw): remove
8942
8943         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
8944
8945         * gtk/gtkfixed.c (gtk_fixed_draw): remove
8946
8947         * gtk/gtkframe.c (gtk_frame_draw): remove
8948
8949         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
8950
8951         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
8952
8953         * gtk/gtklayout.c (gtk_layout_draw): remove
8954
8955         * gtk/gtklist.c (gtk_list_draw): remove
8956
8957         * gtk/gtklistitem.c (gtk_list_item_draw): remove
8958
8959         * gtk/gtkmenu.c (gtk_menu_draw): remove
8960
8961         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
8962
8963         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
8964
8965         * gtk/gtknotebook.c (gtk_notebook_draw): remove
8966
8967         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
8968
8969         * gtk/gtkpacker.c (gtk_packer_draw): remove
8970
8971         * gtk/gtkrange.c (gtk_range_draw): remove
8972
8973         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
8974
8975         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
8976
8977         * gtk/gtktable.c (gtk_table_draw): remove
8978
8979         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
8980
8981         * gtk/gtktext.c (gtk_text_draw): remove
8982
8983         * gtk/gtktextview.c (gtk_text_view_draw): remove
8984
8985         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
8986
8987         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
8988
8989         * gtk/gtktree.c (gtk_tree_draw): remove
8990
8991         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
8992
8993         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
8994
8995         * gtk/gtkviewport.c (gtk_viewport_draw): remove
8996
8997         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
8998
8999         * gtk/gtkvscale.c (gtk_vscale_draw): remove
9000
9001         * gtk/gtkwindow.c (gtk_window_draw): remove
9002
9003 2000-20-01  Anders Carlsson  <andersca@gnu.org>
9004
9005         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
9006         a GtkToggleButton is both insensitive and active, it was being
9007         drawn by the GtkButton draw handler which doesn't check the
9008         state. Now it's calling gtk_toggle_button_paint instead.
9009         
9010 2000-12-01  Havoc Pennington  <hp@redhat.com>
9011
9012         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
9013         dangling pointers to the appearance attributes from the 
9014         line display
9015
9016         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
9017         width/height to mean "full width/height of drawable"
9018
9019         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
9020         click to select word/line
9021         
9022         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
9023         when getting log attrs. Get a slice, so that pixmaps and stuff
9024         are properly handled.
9025
9026         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
9027         paste into the selection (replaces selection now, previously
9028         crashed or added to selection). Reveals longstanding btree bug -
9029         select multiple lines, middle-click on the selection, boom. This
9030         isn't related to my changes though.
9031
9032         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
9033         PangoLogAttrs changes
9034         (gtk_entry_move_backward_word): ditto
9035
9036         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
9037         functions return bool whether the iter moved onto a
9038         dereferenceable position.
9039  
9040         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
9041         functions for motion in terms of display lines.
9042
9043         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
9044         get the buffer a mark is inside
9045         
9046 2000-12-01  Alexander Larsson  <alexl@redhat.com>
9047
9048         * gdk/linux-fb/Makefile.am:
9049         * modules/linux-fb/Makefile.am:
9050         Freetype 2 final uses freetype-config
9051
9052         * gdk/linux-fb/gdkpango-fb.c:
9053         Upgrade to use Freetype 2 final.
9054         More flexible support for font aliases, this also fixes a bug with
9055         GtkFontSelector, as the aliases must be visible in the font/family list,
9056         or GtkFontSelector reads uninitialized memory.
9057
9058 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
9059
9060         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
9061         XGetIMValues to properly terminate variable argument list, and do
9062         NULL return check for ic_values and xim_styles.
9063
9064         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
9065         Restore preedit state after XmbResetIC().
9066         
9067         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
9068         XvaCreateNestedList() should take XvaNestedList, but not
9069         XvaNestedList*.
9070
9071         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
9072         preedit_draw_callback, preedit_caret_callback): Match
9073         "preedit-changed" signal name to "preedit_changed" to be
9074         consistent to the spec.
9075
9076         * gtk/gtkimcontextsimple.c (check_table):
9077         Match "preedit-changed" to "preedit_changed" to be consistent
9078         to the spec.
9079
9080 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
9081
9082         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
9083         gc->clip_region == NULL>
9084
9085 2000-11-30  Tor Lillqvist  <tml@iki.fi>
9086
9087         Changes by Hans Breuer:
9088         
9089         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
9090         Dont't use negative width and height as max_hints. This fixes
9091         Owen's recent testgtk changes for win32.
9092
9093         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
9094         gdk_win32_hdc_release): These are exported and may be called with
9095         other drawable types than our GdkDrawableImplWin32 (?).
9096
9097         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
9098         so always #define USE_BACKING_STORE.
9099
9100         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
9101         of printf for debugging output.
9102
9103         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
9104         
9105         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
9106
9107         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
9108         declaration.
9109
9110         * gtk/gtktexttypes.h: Ditto.
9111
9112         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
9113         (GDK_VoidSymbol) also if in case of arg check failure.
9114
9115         * gtk/gtkimcontextsimple.c
9116         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
9117         position to the pointer, but to the variable it points to.
9118
9119         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
9120
9121         * gtk/gtk.def: Updates.
9122
9123 2000-11-29  Elliot Lee  <sopwith@redhat.com>
9124
9125         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
9126         GTK_TYPE_TREE_MODEL.
9127
9128 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9129
9130         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
9131         Set the size of the font from the description.
9132         (gdk_text_width): Gross hack that calculates the width
9133         of text by text_length * size/2. This is necessary because
9134         GtkLabel does some ugly gtk_string_width call to calculate
9135         an good size.
9136         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
9137
9138 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
9139
9140         * docs/tutorial/gtk-tut.sgml: DND updates
9141
9142 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9143
9144         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
9145         If you pass width or height == 0 to gdk_window_clear_area they
9146         should be calculated from the window size.
9147
9148 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9149
9150         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
9151         a grab, but no grab-cursor, use the cursor from the grabbed
9152         window. (gdk_fb_window_send_crossing_events): Send normal
9153         enter/leave notifications if grab and owner_events == TRUE.
9154
9155 2000-11-29  Alexander Larsson  <alexl@redhat.com>
9156
9157         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9158         Do implicit button grabs, even if the window doesn't
9159         want the event.
9160         (gdk_fb_window_send_crossing_events): If there is a
9161         grab, only the grabbed window gets normal enter/leave
9162         notifications. On ungrab go from grabbed window to current.
9163         Don't send any notification to b when propagating from c -> b.
9164         If setting a grab on window, don't set prev_window.
9165         (handle_mouse_input): Send enter/leave events to the window the
9166         mouse is over, not the grabbed one.
9167         
9168 2000-11-28  Elliot Lee  <sopwith@redhat.com>
9169
9170         * gdk/gdkregion-generic.c: Zap warning.
9171         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
9172         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
9173
9174 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
9175
9176         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9177         The cursor should be hidden if it is part of either the
9178         source or destination region. Not only if it is in both.
9179         (gdk_window_set_transient_for): Silence warnings.
9180
9181 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9182
9183         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
9184         The default mode in X is Pie Arcs, therefore that is
9185         what Gtk+ uses.
9186
9187 2000-11-28  Alexander Larsson  <alexl@redhat.com>
9188
9189         * gdk/linux-fb/gdkinput-ps2.c:
9190         Implement correct EnterNotify/LeaveNotify:
9191         (gdk_fb_window_send_crossing_events): New function that sends
9192         all GdkCrossingEvents from the last mouse-window to the specified
9193         destination.
9194         (gdk_fb_window_visibility_crossing): Removed function.
9195         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
9196         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
9197         instead of gdk_window_get_pointer() for better readability.
9198
9199         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
9200         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
9201
9202         * gdk/linux-fb/gdkprivate-fb.h:
9203         removed gdk_fb_window_visibility_crossing, added
9204         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
9205
9206         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
9207         New function that finds the least common ancestor of two windows.
9208         (gdk_window_show, gdk_window_hide):
9209         Use gdk_fb_window_send_crossing_events.
9210         (gdk_fb_window_move_resize): Send configure events to toplevel
9211         windows. Use gdk_fb_window_send_crossing_events.
9212
9213 2000-11-27  Havoc Pennington  <hp@redhat.com>
9214
9215         * gtk/gtkprivate.h (enum): Remove a trailing comma
9216
9217 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
9218
9219         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
9220         the "changed" callback of the adjustment.  We need to redraw the
9221         spin button's arrows when the adjustment's range changes.
9222         (adjustment_changed_cb): Draw the arrows.
9223         (gtk_spin_button_value_changed): Draw the arrows.
9224
9225 2000-11-23  Alexander Larsson  <alexl@redhat.com>
9226
9227         * gdk/linux-fb/gdkselection-fb.c:
9228         Initial selection implementation.
9229
9230         * gtk/gtkselection.c:
9231         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
9232         requestor in gtk_selection_request.
9233         
9234         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
9235         Added gdk_selection_property atom.
9236
9237         * gdk/linux-fb/gdkprivate-fb.h:
9238         Export _gdk_selection_window_destroyed.
9239         Removed mask_off_x/y from GdkCursorPrivateFB.
9240         Removed hbearing, added top, left to PangoFBGlyphInfo.
9241
9242         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
9243         Call _gdk_selection_window_destroyed
9244         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
9245         the root window has been created.
9246         (static_dx_hack, static_dy_hack, compare_draw_rects,
9247         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
9248         in region. They are already sorted. Instead just traverse them in
9249         reverse if draw_direction < 0.
9250         
9251         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
9252         Double-clicks must be sent after the normal button_press.
9253         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
9254         
9255         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
9256         Pass _gdk_fb_screen_gc instead of NULL.
9257
9258         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
9259         Initialize gdk_selection_property.
9260         (gdk_event_make): Remove unused code.
9261
9262         * gdk/linux-fb/gdkcursor-fb.c:
9263         Make the pixmap for the cursor the same size as the mask. Also remove
9264         the mask_off_x/y fields in GdkCursorPrivateFB and combine
9265         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
9266         Now the whole cursor is visible.
9267
9268         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
9269         Fix bug where xdest+height instead of ydest+height was used
9270         to calculate if the source and dest overlapped. This fixes the
9271         redraw bug when the main window in testgtk was scrolled when
9272         partially covered by a tall window.
9273         Copy rectangles in region in order depending on draw_direction.
9274         Also moved the draw_direction flipping of start_y and end_y into
9275         the gc functions, as this might not be what all of them want.
9276         (gdk_fb_draw_lines): Support dashed lines.
9277         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
9278         so that the text is positioned correctly (was 1 pixel high).
9279
9280         gdk/linux-fb/gdkgc-fb.c:
9281         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
9282         all lines were drawn a pixel to short. Also checked the default of
9283         the rest of the values, and they're the same as X now.
9284
9285         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
9286         Clean up pixel positioning of the glyphs. Just use bgy->top and
9287         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
9288         to all divisions to get correct rounding behaviour.
9289
9290         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
9291         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
9292         Moved start_y/end_y flip into draw_drawable implementations.
9293         Flip also x rendering when draw_direction < 0.
9294         Remove unneccesary multiply with draw_direction.
9295
9296 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
9297
9298         * docs/tutorial/gtk-tut.sgml:
9299           - get rid of gtk_toggle_button_toggled FUD
9300           - start DND section - needs work - based on:
9301                 http://wolfpack.twu.net/docs/gtkdnd/
9302
9303 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9304
9305         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
9306         Correct calculation of font metrics. Now GtkEntrys have sane
9307         size.
9308
9309 2000-11-22  Alexander Larsson  <alexl@redhat.com>
9310
9311         * gdk/gdktypes.h:
9312         Add new type GdkSpan
9313         
9314         * docs/reference/gdk/gdk-sections.txt,
9315         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
9316         gdk/gdkregion.h:
9317         Implement and document gdk_region_spans_intersect_foreach.
9318
9319         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
9320         Add new file gdkrender-fb.c which contains all core
9321         rendering code.
9322         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
9323         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
9324         (optimized rectangle fillers).
9325
9326         * gdk/linux-fb/gdkdrawable-fb2.c:
9327         Move all rendering code to gdkrender-fb.c.
9328         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
9329         Use the new span intersection functions in gdk_fb_fill_spans.
9330         gdk_fb_draw_rectangle() clips filled rectangles and calls
9331         gc->fill_rectangle with the result.
9332         gdk_fb_fill_spans() gets extra argument "sorted".
9333
9334         * gdk/linux-fb/gdkevents-fb.c:
9335         Remove unused includes and defines.
9336         New function gdk_fb_get_time() to get correct time for events.
9337
9338         * gdk/linux-fb/gdkinput-ps2.c:
9339         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
9340         Make sure to set the time of all events.
9341
9342         * gdk/linux-fb/gdkmain-fb.c:
9343         Use gdk_fb_get_time ().
9344
9345         * gdk/linux-fb/gdkprivate-fb.h:
9346         New virtual GC calls: fill_span & fill_rectangle.
9347         Export gdk_fb_get_time().
9348         gdk_fb_fill_spans() gets extra argument "sorted".
9349
9350         * gdk/linux-fb/mi*.c:
9351         Use GdkSpan instead of GdkRectangle.
9352         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
9353         from XFree 4 source)
9354         
9355 2000-11-22    <jrb@redhat.com>
9356
9357         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
9358         reversing the order in an if statement will do.  Doing so managed
9359         to make the treemodelsort half work.  Other half will follow after
9360         I get the insert function fully fixed.
9361
9362 2000-11-21  Elliot Lee  <sopwith@redhat.com>
9363         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
9364         more than 2 bits. Besides, I need to implement an evil hack. :)
9365
9366 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
9367
9368         * docs/tutorial/gtk-tut.sgml: minor corrections
9369
9370 2000-11-20  Jonathan Blandford <jrb@redhat.com>
9371         * gtk/gtktreemodelsort.h: Add convertion functions to let you
9372           convert to and from relative path's and iters.
9373
9374         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
9375           testing sorting functions a bit better.  Currently broken -- will
9376           fix in morning.
9377
9378 2000-11-20  Havoc Pennington  <hp@redhat.com>
9379
9380         * gtk/gtkwidget.c: Documented a bunch of functions in here
9381         (gtk_widget_realize): Warn if you try to realize
9382         a widget with no parent that isn't a toplevel
9383         (gtk_widget_intersect): return a gboolean
9384
9385 2000-11-20  Havoc Pennington  <hp@redhat.com>
9386
9387         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
9388         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
9389         scrolling to be implemented in GDK to finish. Also, right now
9390         we just size_allocate all children on every layout change,
9391         which is pretty lame. Test commented out of testtext.c, 
9392         until it works better.
9393
9394 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
9395
9396         * gdk/linux-fb/gdkdrawable-fb2.c:
9397         Removed unused arguments from gdk_fb_drawable_get_pixel().
9398
9399         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
9400         Renamed fidur specific mouse packet data in MouseDevice to
9401         generic. Used it in ps2 mouse handling code to avoid blocking
9402         reads.
9403
9404 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
9405
9406         * demos/gtk-demo/main.c: Changed to have the list become
9407         non-italic when the demo window is destroyed through an external
9408         event (like a close button).  Doing so found three bugs in the
9409         widget.
9410
9411         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
9412
9413         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
9414         we actually set the cell.
9415
9416         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
9417
9418         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
9419         free a leaked path.  Thanks memprof.
9420
9421 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
9422
9423         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
9424         off-by-one error when destroying allocated segments
9425         on failure. (Elliot)
9426
9427 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
9428
9429         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
9430         memleaks found by Evan Martin.
9431
9432 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
9433
9434         * Released 1.3.2
9435         
9436         * NEWS: Updates for 1.3.2
9437
9438 2000-11-17  Tor Lillqvist  <tml@iki.fi>
9439
9440         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
9441         but in general for window system specific events.
9442
9443         * gtk/gtk.def
9444         * gtk/makefile.mingw.in
9445         * gtk/makefile.msc.in: Update.
9446         
9447         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
9448
9449 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
9450
9451         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
9452         distribute gtk.immodules.
9453
9454         * gtk/Makefile.am (install-data-local): Don't install the
9455         gtk.immodules file created for the uninstalled modules;
9456         instead run gtk-query-immodules after install
9457
9458 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
9459
9460         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
9461         -rpath to the right install location.
9462
9463         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
9464         -export-dynamic.
9465
9466         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
9467         properly.
9468
9469 2000-11-15  Havoc Pennington  <hp@pobox.com>
9470
9471         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
9472         patch from Mikael Hermansson to temporarily stop blinking while
9473         the user is using the keyboard to type or navigate. 
9474
9475         Also, when blinking, stay on for longer than we stay off. Also,
9476         return from start_cursor_blink if !cursor_visible, to save
9477         checking that flag all over the place before we call
9478         start_cursor_blink.
9479
9480 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
9481
9482         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
9483         only contain a "fontset" line, which is now ignored.
9484
9485         * gtk/gtkentry.c (gtk_entry_button_release): Make 
9486         double-click-to-select-word work.
9487         
9488 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
9489
9490         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
9491         Don't move back one char when we are actually at the end of the 
9492         paragraph.
9493
9494 2000-11-15  Robert Brady  <robert@suse.co.uk>
9495
9496         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
9497         'o' < 'p'.
9498         
9499         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
9500         bind_textdomain_codeset.
9501
9502         (gtk_init_check): Make the warning about translating default:LTR
9503         sterner.
9504         
9505 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
9506
9507         * **/Makefile.am : remove unecessary rules for win32-specific
9508         config-substituted targets. If you want these rules, use
9509         --enable-maintainer-mode (called automatically by autogen.sh).
9510         Stops a lot of unneccessary make-time warnings.
9511
9512         * gtk/gtktext{layout,display}.c: Factor in total width as
9513         well as screen when figuring alignment for word-wrap as well as
9514         no wrap; this is necessary to handle lines that cannot be wrapped
9515         at all.
9516
9517 2000-11-15  Havoc Pennington  <hp@redhat.com>
9518
9519         * gtk/testtext.c: Implement essential color cycling feature
9520
9521 2000-11-15  Havoc Pennington  <hp@redhat.com>
9522
9523         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
9524         when we invalidate the main window.
9525
9526         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
9527         GtkTextView will now invalidate the side windows for us when text
9528         changes.
9529
9530 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
9531
9532         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
9533         unconditionally, since we may need to update the horizontal
9534         scrollbars even if the height didn't change.
9535
9536         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
9537         the extra attrs, since some of them affect size.
9538
9539         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
9540         x_offset correctly.
9541
9542 2000-11-15  Havoc Pennington  <hp@redhat.com>
9543
9544         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
9545         don't move the first line out into the margin, instead move the
9546         whole paragraph in order to make space for the first line within 
9547         the margin
9548
9549 2000-11-15  Havoc Pennington  <hp@redhat.com>
9550
9551         * gtk/gtktextview.c (changed_handler): offset redraw rect by
9552         xoffset in addition to yoffset, so horizontal scrolling doesn't
9553         break redraws
9554
9555 2000-11-15  Havoc Pennington  <hp@redhat.com>
9556
9557         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
9558         from the cursor
9559         (render_layout_line): fix reversed test that caused weird
9560         underlines to get drawn
9561
9562 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9563
9564         * gdk/linux-fb/gdkprivate-fb.h:
9565         Fix debug macros.
9566         
9567 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
9568
9569         * gdk/linux-fb/gdkprivate-fb.h:
9570         Added virtual functions set_pixel, get_color,
9571         fill_span and draw_drawable to the GC.
9572         Added global _gdk_fb_screen_gc to use instead of
9573         NULL when drawing to the screen.
9574         Added _gdk_fb_gc_calc_state() prototype.
9575
9576         * gdk/linux-fb/gdkgc-fb.c:
9577         Call _gdk_fb_gc_calc_state() on any gc state change.
9578
9579         * gdk/linux-fb/gdkglobals-fb.c:
9580         Add _gdk_fb_screen_gc
9581                 
9582         * gdk/linux-fb/gdkdrawable-fb2.c:
9583         _gdk_fb_gc_calc_state() calculates best functions
9584         for the GC state and depth.
9585         Moved bpp specialized code to separate functions.
9586         Added optimized 24 bpp AA draw_drawable.
9587
9588         * gdk/linux-fb/gdkevents-fb.c:
9589         Silence gcc warning.
9590
9591         * gdk/linux-fb/gdkimage-fb.c:
9592         Use _gdk_fb_screen_gc
9593
9594         * gdk/linux-fb/gdkwindow-fb.c:
9595         Init and use _gdk_fb_screen_gc
9596
9597         * gdk/linux-fb/mitypes.h:
9598         Remove unused types.
9599
9600 2000-11-14  Havoc Pennington  <hp@pobox.com>
9601
9602         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
9603         to pixels
9604
9605 2000-11-14  Havoc Pennington  <hp@pobox.com>
9606
9607         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
9608
9609         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
9610         unknown char, no real reason we were using a variable. 
9611         Remove gtk_text_unknown_char variable. Fix all the text widget
9612         files accordingly.
9613
9614         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
9615         since the Unicode spec seems to prefer that character for our
9616         purposes.
9617
9618 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
9619
9620         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
9621         value of g_getenv() isn't freeable, so g_strdup it.
9622
9623         * modules/input/inuktitut.c: Inuktitut input method.
9624
9625         * modules/input/Makefile.am: Build this.
9626         
9627 2000-11-14  Elliot Lee  <sopwith@redhat.com>
9628
9629         * gtk/Makefile.am: Install gtk.immodules, needed for operation
9630         of gtk programs.
9631
9632 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
9633
9634         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
9635         reversed > that was causing Home to go to end of previous line.
9636
9637         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
9638         modified-keypresses (leave for bindings.)
9639
9640         * modules/input/Makefile.am: Remove useless -export-dynamic
9641         from module LDFLAGS.
9642
9643 2000-11-14  Havoc Pennington  <hp@redhat.com>
9644
9645         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
9646         higher.
9647
9648         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
9649         account. Also, render rise, underline, background, etc. for
9650         pixbufs as well as text. Also, draw underlines one pixel higher.
9651
9652         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
9653         PangoAttribute for the rise, so it gets drawn properly. Also,
9654         add the GtkTextAppearance attribute for pixbuf/widget segments
9655         as well; we should go ahead and have rise, underline, background,
9656         stipple work for those
9657
9658         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
9659         Pango
9660
9661 2000-11-15  Tor Lillqvist  <tml@iki.fi>
9662
9663         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
9664
9665         * gtk/gtk.def: Update.
9666
9667         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
9668         included.
9669         (gtk_rc_get_im_module_file): Use run-time installation directory
9670         on Win32.
9671
9672         * gdk/win32/rc/gdk.rc: Remove.
9673         * gdk/win32/rc/gdk.rc.in: New file.
9674         * gdk/win32/rc/Makefile.am: New file
9675         * gdk/win32/Makefile.am: Corresponding changes.
9676
9677         * gtk/gtk.rc: Remove.
9678         * gtk/gtk-win32.rc.in: New file.
9679         * gtk/Makefile.am: Corresponding changes.
9680
9681         * configure.in: Corresponding changes.
9682
9683         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
9684         has a built gtkcompat.h. Developers using CVS code on Win32 can
9685         hand-edit it from gtkcompat.h.in.
9686
9687         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
9688         gtkcompat.h from gtkcompat.h.win32.
9689
9690 2000-11-14  Havoc Pennington  <hp@redhat.com>
9691
9692         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
9693         to default to GDK_ACTION_MOVE if the drag is within a single
9694         widget. Defaults to GDK_ACTION_COPY between widgets.
9695
9696 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
9697
9698         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
9699
9700         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
9701
9702         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
9703         srcdir != builddir
9704
9705         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
9706
9707         * configure.in (GTK_VERSION): Up to 1.3.2
9708
9709         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
9710         gtkimcontextxim.h
9711
9712         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
9713         missing doc comment.
9714
9715 2000-11-14  Alexander Larsson  <alexl@redhat.com>
9716
9717         * modules/linux-fb/basic.c:
9718         Use the glib iconv wrappers.
9719
9720 2000-11-13  Havoc Pennington  <hp@pobox.com>
9721
9722         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
9723         still more bugs.
9724
9725         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
9726         scroll the GdkWindows before realization.
9727
9728 2000-11-13  Havoc Pennington  <hp@redhat.com>
9729
9730         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
9731         where GC didn't always get updated properly
9732
9733         * demos/gtk-demo/textview.c (create_tags): Use subattributes
9734         of fonts instead of setting the entire font
9735
9736         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
9737         setting entire font
9738
9739         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
9740
9741         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
9742         a bunch of individually-settable font attributes. You can still 
9743         use the "font" and "font_desc" args, they just set all the font
9744         attributes at once.
9745
9746 2000-11-13 Elliot Lee <sopwith@redhat.com>
9747
9748         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
9749
9750 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
9751
9752         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
9753         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
9754
9755         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
9756         work better.
9757
9758 2000-11-13  Havoc Pennington  <hp@redhat.com>
9759
9760         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
9761         the module file.
9762
9763         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
9764         dest->language
9765
9766         * gtk/testtext.c: Test pixels above/below/inside paragraphs
9767         settings
9768
9769         * gtk/gtktextview.c: Implement object args and setters/getters for
9770         all the aspects of the GtkTextAttributes that are not set from
9771         GtkWidget attributes. This is spacing, justification, margins,
9772         etc.
9773
9774         (gtk_text_view_set_arg)
9775         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
9776         args
9777         (gtk_text_view_class_init): Add args for justify, left_margin,
9778         right_margin, indent, and tabs
9779         
9780
9781         * gtk/gtktextlayout.c (set_para_values): fix to display indent
9782         attribute properly
9783
9784         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
9785         replace with indent attribute
9786
9787         * gtk/gtktextlayout.c (set_para_values): multiply indent by
9788         PANGO_SCALE
9789
9790         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
9791         rearranging code to do that
9792         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
9793         i.e. don't subtract the top_margin first, just to keep
9794         all margin-futzing in one place.
9795
9796         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
9797
9798         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
9799         special case of last line, Pango now handles this itself.
9800         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
9801         Y coordinate
9802         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
9803         (find_display_line_above): wasn't moving the byte index as it
9804         iterated over lines, so always returned byte 0. Also, port to use
9805         PangoLayoutIter.
9806         (find_display_line_below): same problem as
9807         find_display_line_above. Also, port to use PangoLayoutIter.
9808
9809 2000-11-13  Alexander Larsson  <alexl@redhat.com>
9810
9811         * gdk/linux-fb/*.[ch]:
9812         Massive reindent to gtk+ standard. My hands hurt.
9813
9814         * gdk/linux-fb/gdkcolor-fb.c:
9815         Move GdkColorPrivateFB from inherited to windowing_data
9816
9817         * gdk/linux-fb/gdkcursor-fb.c:
9818         _gdk_cursor_new_from_pixmap made static
9819
9820         * gdk/linux-fb/gdkdnd-fb.c:
9821         GdkDragContextPrivate moved to windowing_data
9822
9823         * gdk/linux-fb/gdkdrawable-fb2.c:
9824         Removed endian.h, use glib endianness macros instead
9825         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
9826         and GDK_DRAWABLE_IMPL_FBDATA
9827
9828         * gdk/linux-fb/gdkfont-fb.c:
9829         Add empty gdk_font_load(). Needed for linking of Gtk+.
9830
9831         * gdk/linux-fb/gdkimage-fb.c:
9832         Removed endian.h, use glib endianness macros instead
9833         Moved GdkImagePrivateFB to windowing_data
9834         gdk_image_new_bitmap didn't always allocate enough
9835         memory.
9836
9837         * gdk/linux-fb/gdkinput-ps2.c:
9838         Added semi-working support for MS serial mice.
9839
9840         * gdk/linux-fb/gdkprivate-fb.h:
9841         s/GdkWindowPrivate/GdkWindowObject/
9842         Removed GdkWindowPrivate typedef
9843         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
9844         Removed GDK_DRAWABLE_P
9845         Move GdkColorPrivateFB from inherited to windowing_data
9846         Moved GdkImagePrivateFB to windowing_data
9847
9848         * gdk/linux-fb/gdkvisual-fb.c:
9849         Removed some unused debug code.
9850
9851         * gdk/linux-fb/gdkwindow-fb.c:
9852         Use stock cursors instead of including X headers.
9853         s/GdkWindowPrivate/GdkWindowObject/
9854
9855         * gdk/linux-fb/mitypes.h:
9856         Removed unused types.
9857
9858         * modules/linux-fb/basic.c:
9859         Use the pango fribidi wrappers.
9860
9861 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
9862
9863         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
9864         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
9865         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
9866         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
9867         GEqualFunc where applicable.
9868         
9869         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
9870         pango_font_description_equal as changed in pango.
9871         
9872         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
9873
9874         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
9875
9876         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
9877
9878         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
9879
9880         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
9881
9882         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
9883
9884         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
9885         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
9886
9887         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
9888         gtk_rc_styles_compare -> gtk_rc_styles_equal.
9889
9890 2000-11-12  Havoc Pennington  <hp@pobox.com>
9891
9892         * demos/gtk-demo/Makefile.am (democodedir): change demo install
9893         dir to datadir/gtk+-2.0/demo
9894
9895         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
9896         sorts of text widget and Pango font bugs. Urgh.
9897
9898         * demos/gtk-demo/Makefile.am (demos): Add textview.c
9899
9900         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
9901         tree that you should double click to see the demo. Fix 
9902         types of variables to reflect changed return values from 
9903         GtkTreeStore and GtkTreeViewColumn constructors.
9904
9905         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
9906         newly-created buffer to prepare for GObject semantics
9907
9908         * gtk/testtext.c: don't leak the buffer with GObject semantics
9909
9910         * gtk/testtextbuffer.c: ditto
9911         
9912 2000-11-12  Havoc Pennington  <hp@pobox.com>
9913
9914         Rename this testgtk to gtk-demo to avoid confusion, and 
9915         install it so people can use it as a supplement to 
9916         the documentation.
9917         
9918         * demos/gtk-demo: Moved from demos/testgtk
9919
9920         * demos/testgtk: Removed
9921
9922         * configure.in: make Makefile in gtk-demo
9923         
9924         * demos/gtk-demo/Makefile.am: Install sample source to 
9925         datadir/gtk-demo (maybe there's a better place?), and 
9926         rename the binary to gtk-demo
9927         
9928         * demos/gtk-demo/main.c (load_file): Load installed sample
9929         source if source isn't found in pwd.
9930
9931 2000-11-09  Havoc Pennington  <hp@pobox.com>
9932
9933         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
9934         argument to set the char displayed when visibility == FALSE
9935         (gtk_entry_create_layout): If !entry->visible, replace 
9936         all chars with the "invisible char"
9937
9938         * gtk/testgtk.c: Test the invisible_char deal
9939         
9940 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
9941
9942         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
9943         can't get a native font in the right encoding.
9944
9945 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
9946
9947         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
9948         respectively.
9949
9950 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
9951
9952         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
9953         Fix warning when moving between paragraphs.
9954
9955         * gtk/gtkentry.[ch]: Change move => move_cursor, 
9956         delete => delete_from_cursor, insert => insert_at_cursor
9957
9958 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
9959
9960         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
9961
9962         * modules/input/imthai-broken.c: A Thai input method for use if
9963         Thai keys are really generating Latin1 keysyms.
9964
9965         * modules/input/Makefile.am: Build these.
9966
9967 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
9968
9969         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
9970         g_filename_{to,from}_utf8 now takes an extra parameter.
9971
9972         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
9973         strftime into UTF-8.
9974
9975         (column_from_x, gtk_calendar_paint_day_names): Support RTL
9976         calendars.
9977
9978         (gtk_calendar_paint_day_names): Draw day names in the right 
9979         place.
9980         
9981 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
9982
9983         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
9984         problem with using result of g_get_charset() backwards -
9985         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
9986
9987         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
9988         negative min_width/height and max_width/height to
9989         mean "requisition"; this allows setting a window
9990         to be user-resizable in only one direction easily.
9991
9992         * gtk/testgtk.c (create_main_window): Remove hard-coded
9993         usize - set a default size in the vertical direction.
9994
9995 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
9996
9997         * gtk/gtkrange.c: Add some missing casts. Support 
9998         2 and 3 button clicks on the arrows to mean 
9999         "move by pages" and "jump to end". (Like gtkspinbutton)
10000
10001 2000-11-12 Hans Breuer <Hans@Breuer.Org>
10002
10003         * gdk/win32/makefile.msc : reflect build module changes
10004
10005         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
10006         from GdkPixmap*, cast implementation member instead.
10007
10008         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
10009         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
10010         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
10011         more Gdi functions return value checking. 
10012         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
10013         GdkImagePrivateWin32 *.
10014
10015         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
10016         menus useable again. Add #pragma message to keep reminded on this issue.
10017         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
10018         windows. This allows to enable backing store on Win32!
10019
10020         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
10021         in drawable is of impl type. Correct specific type checks appropriate.
10022  
10023         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
10024         GDK_WINDOW_DESTROYED before allocating new resources.
10025
10026         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
10027
10028         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
10029         (gdk_window_foreign_new) initialize parent handle.
10030         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
10031
10032         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
10033         Let the GDI invalidate the window on MoveWindow call to fix scrolling
10034         problems (e.g. main buttons in testgtk). 
10035
10036 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
10037
10038         * gtk/gtkentry.c (gtk_entry_key_press): Call 
10039         gtk_widget_activate for GDK_Return.
10040
10041         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
10042         of preedit cursor position.
10043
10044 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
10045
10046         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
10047         static.
10048
10049 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
10050
10051         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
10052         out support for multiple locales; that simple doesn't
10053         work reliably with current Xlib
10054
10055         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
10056         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
10057         Add support for positioning the cursor within the preedit string.
10058
10059 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
10060
10061         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
10062         at XIM input method module.
10063
10064         * gtk/gtktextview.c: Check for bindings after passing
10065         events to im context filter.
10066
10067 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
10068
10069         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
10070         empty attribute lists properly.
10071
10072 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
10073
10074         * gtk/queryimmodules.c (main): Return non-zero exit
10075         status if errors were encountered querying any
10076         modules.
10077
10078         * modules/input/Makefile.am (moduledir): remove
10079         leftover bin program target.
10080
10081         * docs/make-todo: Fix typo in error message.
10082
10083 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
10084
10085         * configure.in: Add modules/input/Makefile
10086
10087 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
10088
10089         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
10090         don't include gtkthemes.h.
10091
10092         * gtk/testgtk.c gtk/testtext.c: Set environment variables
10093         to point
10094
10095         * gtk/Makefile.am: Add new .c and .h files, build 
10096         gtk-query-immodules and use it to create a gtk.immodules
10097         file for use of test programs.
10098
10099         * gtk/gtkpreview.c: remove extra blank line.
10100
10101 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
10102
10103         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
10104         Add the ability to add extra tables beyond the default
10105         one, and also the ability to have compose sequences 
10106         that are prefixes of other compose sequences. 
10107
10108         * gtk/gtkimcontextsimple.c: Export a preedit string which
10109         consists of possible candidates for keystrokes that have
10110         been entered but not yet committed.
10111
10112         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
10113         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
10114
10115         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
10116         Add a function to add input-method switching menu items
10117         to a menu.
10118
10119         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
10120         when switching input methods.
10121
10122         * gtk/gtkimcontextsimple.[ch]: Change the format of
10123         the compose table to allow compose tables of different
10124         lengths / sequence.
10125
10126 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
10127
10128         * gtk/gtkimmodule.[ch]: Support routines for loading
10129         GtkIMContext implementations dynamically at runtime.
10130
10131         * modules/input/imcyrillic-translit.c: A sample input
10132         method (based on GtkIMContextSimple with an extra table),
10133         which demonstrates preedit strings and the module
10134         system for input modules
10135
10136         * gtk/queryimmodules.c: Program to query the available
10137         input modules and write the results into a file.
10138          
10139         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
10140         extra config options "im_module_file" (cache file for
10141         input method modules), and "im_module_path" - path
10142         to look for modules when generating cache file.
10143
10144         This doesn't scale.
10145
10146 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
10147
10148         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
10149         generic code from gtkthemes into a new abstraction
10150         GtkModule which has the logic for implementing
10151         a loadable module which implements a number of 
10152         GObject types.
10153
10154 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
10155
10156         * gtk/gtkeditable.[ch]: Convert GtkEditable from
10157         a class into an interface  
10158         
10159         * gtk/gtkoldeditable.[ch]: Move the old editable
10160         implementation into here, so legacy widgets can
10161         still rely on the implemenation. GtkOldEditable
10162         exports GtkEditable. Make selection handling
10163         code use new text conversion functions (and
10164         handle UTF-8 as a side-effect). Use GtkClipboard
10165         for CLIPBOARD.
10166
10167         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
10168         Adopt to match above changes.
10169
10170         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
10171         avoid GtkOldEditable implementation. Restructure
10172         to reduce number of places that modify state directly.
10173         Move to GtkBindingSet. Display the preedit string.
10174         Queue recomputation of PangoLayout and scroll position
10175         to improve effiency of doing complex changes naively.
10176         Add a menu with cut/copy/paste and input method selection.
10177
10178 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
10179
10180         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
10181         to set preedit string and attributes; display preedit string by
10182         inserting string and attributes at cursor when creating the
10183         GtkTextLineDisplay.
10184
10185         * gtk/gtktextlayout.c: Move all conversions between byte
10186         positions in PangoLayout and GtkTextIter into new functions
10187         line_display_iter_to_index/index_to_iter that properly
10188         handle the preedit string.
10189
10190         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
10191         it to return const char * (eventually will end up
10192         as GCONST char *, most likely.)
10193
10194         * gtk/gtktextview.[ch]: Handle the preedit string, call
10195         gtk_im_context_reset() as necessary, add a menu to switch
10196         input methods.
10197         
10198         * gtk/gtktextlayout.[ch]: Remove useless
10199         gtk_text_layout_get_log_attrs() function.
10200
10201 2000-11-11  Tor Lillqvist  <tml@iki.fi>
10202
10203         * gdk/gdk.def
10204         * gtk/gtk.def: Update.
10205
10206         * gdk/win32/*.c: Add last argument to g_type_register_static()
10207         calls.
10208
10209         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
10210
10211         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
10212         generated by older wheel mouse drivers. Get the correct y
10213         coordinate from WM_MOUSEWHEEL messages.
10214
10215         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
10216         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
10217         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
10218         Debugging functions.
10219
10220         * gdk/win32/gdkprivate-win32.h: Declare them.
10221
10222         * gdk/win32/gdkinput-win32.h: Add declaration for
10223         gdk_input_window_destroy().
10224
10225         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
10226
10227 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
10228
10229         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
10230         function to help handle keeping things in sync.
10231
10232 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
10233
10234         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
10235         BOXED marshallers.
10236
10237         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
10238         (gtk_list_store_class_init): use the new BOXED marshallers.
10239
10240         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
10241         new_with_values to new_with_types.
10242         (gtk_tree_store_get_column_type): add this.
10243         (gtk_tree_store_class_init): use the new BOXED marshallers.
10244
10245         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
10246         mirror some POINTER marshallers.
10247
10248 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
10249
10250         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
10251         allow more interesting iterators.  Also, made the lifecycle of
10252         iterators more explicit.
10253
10254         * gtk/gtktreemodelsort.[ch]: New model for sorting.
10255
10256         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
10257         types.
10258
10259 2000-11-09  Alexander Larsson  <alexl@redhat.com>
10260
10261         * demos/testgtk/menus.c:
10262         Changes to make the new testgtk compile after
10263         gtk_menu_append was removed.
10264
10265         * gdk/linux-fb/gdkdrawable-fb2.c
10266         (gdk_fb_get_depth, gdk_fb_get_visual,
10267         gdk_drawable_impl_fb_class_init): Implement
10268         these drawable functions. Now GtkImages work again.
10269
10270         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
10271
10272         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
10273         
10274         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
10275         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
10276         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
10277         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
10278
10279 2000-11-08  Havoc Pennington  <hp@pobox.com>
10280
10281         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
10282         visible_set args, don't know where these had gone, I thought they
10283         used to be there
10284
10285         * gtk/testtext.c: Add a menu item to apply invisibility tag;
10286         now we can test the feature and see that it's totally broken.
10287
10288 2000-11-08  Havoc Pennington  <hp@pobox.com>
10289
10290         Make DND copy pixbufs and tags when source and target share a 
10291         tag table.
10292         
10293         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
10294         in-process GTK_TEXT_BUFFER_CONTENTS target
10295         (gtk_text_view_drag_data_received): Paste from
10296         GTK_TEXT_BUFFER_CONTENTS if we receive it.
10297
10298 2000-11-08  Alexander Larsson  <alexl@redhat.com>
10299
10300         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
10301         API changes.
10302
10303         * gtk/gtkmenu.c: Add support for scrolling menus.
10304         Remove gtk_menu_append/prepend/insert, these have been moved to
10305         gtkcompat.h as #defines.
10306
10307         * gtk/gtkcompat.h.in:
10308         Add compatibility #defines for gtk_menu_append/prepend/insert
10309
10310         * gtk/gtkmenu.h: Add data needed for scrolling menus.
10311         GtkMenuPositionFunc gets an extra argument push_in.
10312         gtk_menu_append/prepend/insert removed.
10313         
10314         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
10315         positioning behaviour to fit to scrolling menus.
10316
10317         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
10318         into menuitem->submeny. That is wrong, and broke torn
10319         off submenus of torn off menus, since they were unrealized
10320         when the first menu was unrealized.
10321
10322         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
10323         gtk_menu_shell_select_item() since these need to be overridden in
10324         GtkMenu.
10325
10326         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
10327         positioning behaviour to fit to scrolling menus.
10328         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
10329         the current item so that it is prelighted when the menu pops up.
10330         This is a workaround to the fact that the menu doesn't get the
10331         initial enter event (due to grabs).
10332
10333         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
10334         s/gtk_menu_append/gtk_menu_shell_append/
10335
10336         * gtk/gtknotebook.c:
10337         s/gtk_menu_insert/gtk_menu_shell_insert/
10338
10339         * gtk/testgtk.c (create_menu, create_menus):
10340         Create the first menu with 50 items so that menu scrolling
10341         can be tested.
10342         
10343         
10344         Patch from Jonathan Blandford  <jrb@redhat.com>
10345
10346         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
10347         system to handle size requests.  First, we ask what the size of
10348         the toggle is.  Then, when allocating the size, we allocate the
10349         toggle_size first.  This way we can have multiple menu-item
10350         classes w/o needing a seperate class for each.
10351
10352         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
10353         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
10354
10355         * gtk/gtkcheckmenuitem.c
10356         (gtk_check_menu_item_toggle_size_request): New function to handle
10357         the toggle size-request.
10358
10359 2000-11-07  Havoc Pennington  <hp@redhat.com>
10360
10361         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
10362         Half-ass somewhat fix this function, so that scrolling to the
10363         insertion point works. Pango hacking is in the future to really
10364         fix it.
10365
10366         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
10367         length of data, no longer used.
10368
10369         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
10370         method contents in here, get rid of destroy method
10371         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
10372         that were backward. Remove debug spew.
10373         (cut_or_copy): Make the clipboard work with insert_range to
10374         preserve tags and pixbufs, not just the primary selection.
10375
10376 2000-11-07  Havoc Pennington  <hp@redhat.com>
10377
10378         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
10379         to gtk_text_mark_get_visible
10380
10381         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
10382         bug that was generating an invalid iterator
10383
10384         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
10385         ensure_char_offsets() in front of code placing the iter in an
10386         invalid state.
10387
10388         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
10389         make override_location arg const
10390         (paste): Replace the selection if we paste into the 
10391         current selection
10392
10393         * gtk/gtkselection.h: Remove "GtkSelectioData"
10394         (struct _GtkSelectionData): move the definition here.
10395
10396         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
10397         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
10398
10399         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
10400
10401         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
10402         (gtk_text_buffer_insert_range_interactive): implement
10403         (gtk_text_buffer_get_tags): Remove, replaced by
10404         gtk_text_iter_get_tags()
10405
10406         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
10407         limit parameter, to avoid infinite linear scan.
10408         (gtk_text_iter_backward_search): Add search limit
10409         (gtk_text_iter_forward_find_char): Add search limit
10410         (gtk_text_iter_backward_find_char): Add search limit
10411
10412 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
10413
10414         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10415         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
10416         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
10417         gdk/linux-fb/gdkwindow-fb.c:
10418         use g_object_new() instead of g_type_create_instance() which
10419         is a private function for fundamental type implementations.
10420
10421         * gdk/linux-fb/gdkinput-ps2.c:
10422         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
10423         instead just store the current modifier state. Add a (somewhat broken)
10424         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
10425         Rename exported function gdk_input_ps2_get_mouseinfo to
10426         gdk_input_get_mouseinfo.
10427
10428         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
10429         gdk/linux-fb/gdkwindow-fb.c:
10430         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
10431         
10432
10433 2000-11-02  Havoc Pennington  <hp@redhat.com>
10434
10435         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
10436         use stock buttons. Should be 100% source compatible, appropriate
10437         filesel fields now point to dialog->vbox and dialog->action_area.
10438         On the bizarre side, dialog->action_area and filesel->action_area
10439         are not the same widget.
10440         (gtk_file_selection_init): Put some padding around the selection
10441         entry, so it isn't touching the GtkDialog separator.    
10442
10443         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
10444         use stock buttons, etc. Should also be source compatible.
10445         Set the dialog default title in _init not _new().
10446         
10447         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
10448         Use stock buttons; don't put a button box inside the existing
10449         dialog button box. Don't bother with push/pop colormap anymore.
10450
10451         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
10452         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
10453         for message dialog, and necessary for the font selection and color
10454         selection with help and apply buttons.
10455         
10456         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
10457         to the created button widget. Set GTK_CAN_DEFAULT on the button.
10458         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
10459         between buttons, put less padding around the action area.
10460         (gtk_dialog_run): Exit on unmap rather than on destroy. 
10461         This will also exit the loop if the widget is hidden.
10462         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
10463         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
10464         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
10465         special-case delete event.
10466
10467         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
10468         formatting
10469         
10470 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
10471
10472         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
10473         button to temporarily disable position recording in the
10474         "saved position" test.
10475
10476 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
10477
10478         * gtk/gtkthemes.c: added compat code that temporarily implements
10479         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
10480         going to be revamped by owen's upcoming GtkModule patches, but
10481         untill then people want gtk to build, right? ;)
10482
10483 2000-11-04  Havoc Pennington  <hp@pobox.com>
10484
10485         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
10486         list
10487
10488         * docs/Changes-2.0.txt: Add note about
10489         gtk_container_get_toplevels()
10490
10491         * gtk/gtktextview.h: formatting
10492         
10493         * gtk/gtktextview.c: don't start descriptions with "Returns",
10494         confuses gtk-doc
10495
10496 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
10497
10498         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
10499         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
10500
10501 2000-11-03  Havoc Pennington  <hp@redhat.com>
10502
10503         * gtk/gtktexttagtable.c: Docs
10504         (gtk_text_tag_table_size): return a signed int
10505
10506         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
10507         (gtk_text_tag_event): make the event_object a GObject
10508
10509         * gtk/gtktextview.c: Write API docs for all functions.
10510
10511         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
10512         for gtk_text_view_get_window_type() called on one of the private
10513         windows.
10514
10515         * gtk/gtktextview.c: Instead of accessing text_view->buffer
10516         directly, call get_buffer() which demand-creates a default
10517         buffer. So gtk_text_view_new() can be used to create a view with a
10518         default buffer in it, if you just want an empty text box users can
10519         put data in. Useful for GUI builders also.
10520
10521 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
10522
10523         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
10524         the charset encodign portion MUST be in lowercase.
10525         * gtk/gtkrc.az: added file for Azeri language
10526
10527 2000-11-03  Havoc Pennington  <hp@redhat.com>
10528
10529         Get widgets working on the btree/buffer side. Display of them 
10530         still doesn't work.
10531         
10532         * gtk/gtktextview.c: start implementing child widget stuff
10533
10534         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
10535
10536         * gtk/gtktextlayout.c: handle embedded widgets
10537
10538         * gtk/gtktextdisplay.c: handle embedded widgets
10539
10540         * gtk/gtktextchild.c: Implement all the child anchor goo
10541
10542         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
10543         function
10544
10545         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
10546         (insert_pixbuf_or_widget_segment): abstract out common portions of 
10547         creating a child anchor or a pixbuf segment.
10548         (gtk_text_btree_create_child_anchor): new function
10549         (gtk_text_btree_unregister_child_anchor): new function
10550
10551         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
10552         allocate_child signal on GtkTextLayout
10553
10554         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
10555         values
10556         (gtk_text_iter_get_child_anchor): new function
10557
10558         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
10559         default handler for the changed signal, which calls
10560         gtk_text_buffer_set_modified(), instead of just always emitting
10561         changed then calling set_modified() manually. I guess this is
10562         maybe more flexible. It seems logical.
10563
10564 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
10565
10566         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
10567         now.
10568
10569         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
10570
10571 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
10572
10573         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
10574         been marked static.
10575
10576 2000-11-02  Havoc Pennington  <hp@redhat.com>
10577
10578         * gtk/testgtk.c (create_labels): had a test backward
10579
10580         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
10581         fields, so the dest GC ends up with the correct clip origin, 
10582         etc. Fixes a bug where colored labels didn't redraw 
10583         properly.
10584
10585 2000-11-02  Alexander Larsson  <alexl@redhat.com>
10586
10587         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
10588         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
10589         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
10590         Add last argument to t_type_register_static call.
10591         
10592         * gdk/linux-fb/gdkdrawable-fb2.c:
10593         Add last argument to t_type_register_static call.
10594         export the get_image drawable virtual function.
10595
10596         * gdk/linux-fb/gdkimage-fb.c:
10597         Add last argument to t_type_register_static call.
10598         rename gtk_image_get to _gdk_fb_get_image and
10599         export it for use by gdkdrawable-fb2.
10600
10601         * gdk/linux-fb/gdkprivate-fb.h:
10602         export _gdk_fb_get_image.
10603
10604         * gdk/linux-fb/gdkselection-fb.c:
10605         Add new api call stubs.
10606
10607         * gtk/Makefile.am:
10608         Missing ( in linux-fb part.
10609
10610         * modules/linux-fb/Makefile.am:
10611         Must link with gdk_pixbuf or get unresolved symbol.
10612
10613 2000-11-01  Havoc Pennington  <hp@pobox.com>
10614
10615         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
10616         GTK_TYPE_TEXT_ITER and BOXED marshallers
10617
10618         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
10619
10620         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
10621         
10622         * gtk/gtk-boxed.defs: add GtkTextIter
10623
10624         * gtk/gtkmarshal.list: Add marshallers for text widget that 
10625         properly use OBJECT and BOXED
10626
10627 2000-11-01  Havoc Pennington  <hp@redhat.com>
10628
10629         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
10630
10631         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
10632         before returning it. 
10633         
10634 2000-11-01  Havoc Pennington  <hp@redhat.com>
10635
10636         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10637         Clip the rectangle to be rendered to the drawable, since
10638         get_from_drawable() requires a region within the drawable
10639
10640 2000-11-01  Havoc Pennington  <hp@redhat.com>
10641
10642         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
10643         from coordinates.
10644
10645 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
10646
10647         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
10648         it isn't NULL.
10649
10650 2000-11-01  Havoc Pennington  <hp@pobox.com>
10651
10652         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
10653         on a label
10654         (gtk_label_finalize): unref the attr list if any.
10655
10656         * gtk/testgtk.c (create_get_image): close test on second click
10657         (make_message_dialog): close dialog if it exists
10658
10659         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
10660
10661         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
10662         gdk-pixbuf
10663
10664         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
10665         from Pango markup format
10666         (gtk_label_set_markup_with_accel): ditto but with accelerator
10667         parsing
10668
10669         * gtk/gtkimage.c (gtk_image_expose): reformatting.
10670
10671         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
10672         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
10673         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
10674         call gdk_window_get_origin().
10675
10676         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
10677         implement GDK_PIXBUF_ALPHA_FULL
10678         
10679 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
10680
10681         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
10682         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
10683         g_signal_handlers_disconnect_matched to block/unblock and disconnect
10684         multiple handlers respectively, instead of only treating the
10685         first handler found (bug reported by owen).
10686
10687 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
10688
10689         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
10690
10691         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
10692
10693         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
10694         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
10695         gtk/gtktreeviewcolumn.h: Fixed inline docs.
10696
10697         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
10698         widget.  Needs writing someday.
10699
10700         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
10701         the docs.
10702
10703 2000-10-30  Havoc Pennington  <hp@redhat.com>
10704
10705         * gtk/gtktextview.h, gtk/gtktextview.c:
10706         Rename delete_at_cursor delete_from_cursor, and 
10707         move to move_cursor.
10708
10709 2000-10-30  Havoc Pennington  <hp@redhat.com>
10710
10711         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
10712         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
10713         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
10714         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
10715         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
10716         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
10717         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
10718         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
10719         gtktexttypes.h, gtktextview.c, gtktextview.h:
10720
10721         Massive reindentation and reformatting. Arg alignment and comments
10722         still need fixing in various places.
10723
10724 2000-10-30  Havoc Pennington  <hp@redhat.com>
10725
10726         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
10727         to be named insert_at_cursor and delete_at_cursor so C++ can
10728         handle them.
10729
10730 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10731
10732         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
10733         to get a double directory separator in case the home directory
10734         ends with one. This would cause trouble especially on Windows,
10735         where the path will be confused with the syntax for an an UNC
10736         (network share) path \\server\share\path.
10737         (gtk_rc_add_initial_default_files): Ditto.
10738
10739 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
10740
10741         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
10742
10743         * gtk/gtktextview.c: Use correct marshallers.
10744
10745 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
10746
10747         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
10748         use new iter stuff, and added all the appropriate signals et al.
10749
10750         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
10751         code is internal to gtk only.
10752
10753 2000-10-28  Tor Lillqvist  <tml@iki.fi>
10754
10755         * gtk/gtk.def
10756         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
10757         glib-genmarshal etc.
10758
10759 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
10760
10761         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
10762         parallel builds.
10763
10764 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
10765
10766         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
10767
10768 2000-10-27  Robert Brady  <robert@suse.co.uk>
10769
10770         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
10771         en_GB (British), ia (Interlingua).
10772
10773 2000-10-26  Havoc Pennington  <hp@redhat.com>
10774
10775         * gtk/gtktextiter.c (my_strrstr): fix constness warning
10776
10777         Fixed output of:
10778         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
10779         
10780         * gtk/gtktextsegment.c (char_segment_new): rename
10781         (_char_segment_new_from_two_strings): rename
10782         (_toggle_segment_new): rename
10783         
10784         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
10785         (make_clipboard_widget): make it static
10786         (text_get_func): static
10787         (text_clear_func): static
10788
10789         * gtk/gtkcolorsel.c (adjustment_changed): make this function
10790         static
10791         (hex_changed): make it static
10792         (hsv_changed): make it static
10793         (opacity_entry_changed): make it static
10794
10795         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
10796         (toggle_segment_check_func): rename with _gtk
10797
10798         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
10799         (_widget_segment_new): rename
10800         (_widget_segment_add): rename
10801         (_widget_segment_remove): rename
10802         (_widget_segment_ref): rename
10803         (_widget_segment_unref): rename
10804
10805         * gtk/gtktextmark.c (_mark_segment_new): Rename
10806         _gtk_mark_segment_new   
10807
10808 2000-10-26  Havoc Pennington  <hp@redhat.com>
10809
10810         * gtk/gtkmarshal.list: add new marshallers used by the text widget
10811         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10812         types
10813
10814         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
10815         marshaller types
10816
10817         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
10818         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
10819         license on these files.
10820
10821         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
10822         work.
10823
10824         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
10825         runtime random number different for each tree, instead of 
10826         a constant I made up.
10827
10828 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
10829
10830         * gtk/Makefile.am: buncha cleanups, kludged build sources
10831         dependencies with a Makefile: oldest-source-stamp dependancy
10832         for the moment. automake is really fighting us here, with
10833         intentionally not allowing user-defined rules or dependancies
10834         prior to it's -include $(DEP_FILES) statement. sucks rocks!
10835
10836         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
10837         to public headers. tehy have a comment stating that they are
10838         "semi-public" aren't included by gtk.h and if enums popup there,
10839         they can be /*< skip >*/-ed.
10840
10841         * gtk/gtktextlayout.h: 
10842         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
10843         added LGPL... <SIGH>
10844
10845 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
10846
10847         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
10848         GtkTreeIter.  Added iterators everywhere.
10849
10850         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
10851
10852         * gtk/gtktreeviewselection.c: Changed to use the iterators.
10853
10854         * gtk/gtktreestore.c: Changed to use the iterators.
10855
10856         * gtk/gtkliststore.c: Commented out the code.  Will convert to
10857         iterators tomorrow.
10858
10859         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
10860         iterators tomorrow.
10861
10862         * gtk/treestoretest.c: Changed to use iterators.
10863
10864         * demos/testgtk/main.c: Moved to use the new iterator system.
10865
10866 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
10867
10868         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
10869         localization misbehaviour.
10870
10871         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
10872         a useless type without copy/free.
10873
10874         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
10875         of GTK_TYPE_CTREE_NODE.
10876
10877 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
10878
10879         * gtk/gtksignal.c:
10880         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
10881         applicable.
10882
10883         * gtk/gtk-boxed.defs (GtkSelectionData): specify
10884         gtk_selection_data_copy and gtk_selection_data_free
10885         do GtkSelectionData work as params in signals.
10886
10887 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
10888
10889         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
10890         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
10891         couldn't they at least give it a non-standard name?
10892         
10893         * gtk/gtktextlayout.c: arg! yet another implementation of
10894         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
10895
10896         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
10897         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
10898         home. now i know this _is_ a conspiracy.
10899
10900         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
10901         ::state-changed.
10902
10903         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
10904         (gtk_accel_group_create_add): marshaller signature fixups.
10905
10906         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
10907         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
10908
10909         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
10910         anymore.
10911
10912 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
10913
10914         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
10915         due to the signal system changes, it wouldn't build currently. to
10916         be fixed soon.
10917
10918         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
10919
10920         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
10921         so it needs gtk_marshal_VOID__ENUM() instead of
10922         gtk_marshal_NONE__UINT().
10923
10924         * gdk/gdk*.c: adapted type registration functions.
10925
10926         * gtk/gtkbindings.c:
10927         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
10928         gone.
10929
10930         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
10931
10932         * gtk/gtkobject.c:
10933         (gtk_object_destroy):
10934         (gtk_object_shutdown): fixed recursion guards. basically we have to
10935         catch the case where any of GObject.shutdown() or gtk_object_destroy()
10936         is called during ::destroy, and avoid recursion there.
10937
10938         * gtk/gtktypeutils.c:
10939         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
10940         boxed_copy/boxed_free. this needs a more general solution based on a
10941         publically installed code-generator utility.
10942
10943         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
10944         glib's gobject has support for that now.
10945         define GtkSignalMarshaller in terms of GSignalCMarshaller.
10946
10947 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
10948
10949         * gtk/gtksignal.[hc]:
10950         * gtk/gtkmarshal.[hc]:
10951         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
10952         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
10953         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
10954         care of that.
10955
10956         * *.c: marshaller name fixups.
10957
10958         * gtk/gtkmarshal.list: added a comment briefing the format.
10959
10960 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
10961
10962         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
10963         compatibility macros here now. more specifically, most of
10964         the API is preserved (yes, _most_, nonwithstanding the
10965         following exceptions listed, the API is stil lHUGE ;)
10966         things that got removed completely:
10967         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
10968         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
10969         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
10970         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
10971         gtk_signal_remove_emission_hook().
10972         non-functional functions variants:
10973         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
10974         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
10975         not supported anymore.
10976         (gtk_signal_compat_matched): new internal function to aid
10977         implementation of the compatibility macros, it  provides
10978         functionality to block/unblock/disconnect handlers based
10979         on func/data.
10980
10981         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
10982
10983         * *.c: adaptions to new type registration API signatures.
10984
10985 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
10986
10987         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
10988
10989 2000-10-25  Robert Brady  <robert@suse.co.uk>
10990
10991         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
10992         gdk_property_delete): If window == NULL, assume the root window.
10993         (restoring the behaviour that was in 1.2).
10994         
10995         * gtk/testtext.c (save_buffer): Allow creation of new files when
10996         saving.
10997
10998         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
10999         calls to read().
11000
11001 2000-10-25  Tor Lillqvist  <tml@iki.fi>
11002
11003         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
11004
11005         * gdk/win32/gdkdrawable-win32.c
11006         * gdk/win32/gdkimage-win32.c
11007         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
11008         X11 backend.
11009
11010         * gdk/win32/gdkcc-win32.c
11011         * gdk/win32/gdkcolor-win32.c
11012         * gdk/win32/gdkfont-win32.c
11013         * gdk/win32/gdkinput-win32.c
11014         * gdk/win32/gdkmain-win32.c
11015         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
11016
11017 2000-10-24  Havoc Pennington  <hp@redhat.com>
11018
11019         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
11020         it a static function
11021
11022         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
11023         redraw text when a tag is applied to it.
11024
11025         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
11026         (gtk_text_tag_affects_nonsize_appearance): private functions to
11027         see if a tag requires various kinds of redraw/layout to be queued
11028         up.
11029
11030         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
11031
11032         * gtk/testtext.c (fill_example_buffer): Put the cursor 
11033         at the start of the buffer, so search works by default
11034
11035         * gtk/gtktextiter.c (lines_match): init match_start always
11036
11037         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
11038         function, get iter at a line + a byte index
11039
11040         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
11041         to set byte position within a line
11042         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
11043
11044 2000-10-23  Havoc Pennington  <hp@redhat.com>
11045
11046         * gtk/testtext.c: Re-enable the "find" dialog
11047
11048         * gtk/testgtk.c: Add test for gdk_drawable_get_image
11049         
11050         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
11051         the arguments to gdk_draw_drawable were in the wrong order
11052         (gdk_window_paint_init_bg): This function was ignoring the
11053         init_region, instead of clipping to it, so the entire backing
11054         pixmap was cleared on every begin_paint()
11055         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
11056         was in here again, the loop kept using the same GtkWindowPaint
11057         over and over.
11058         (gdk_window_begin_paint_region): Fix a bug where we had two
11059         x_offset instead of x_offset and y_offset
11060
11061         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
11062         before we get the image.
11063         (gdk_draw_drawable): get the composite before we draw the drawable.
11064         (gdk_drawable_real_get_composite_drawable): default
11065         get_composite_drawable implementation that returns the drawable 
11066         itself
11067
11068         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
11069         get_composite_drawable virtual function
11070
11071         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
11072         list-walking bug
11073
11074         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
11075         make this work if the source drawable is a GdkDrawableImplX11
11076         instead of a public drawable type. This is really broken; the
11077         problem is that GdkDrawable needs a virtual method get_xid(), but
11078         of course that doesn't work in practice. Enter RTTI.
11079
11080         Also, improve mismatched depth message.
11081
11082         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
11083         GdkPixmap
11084
11085         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
11086         install _gdk_x11_get_image as our implementation of get_image
11087         
11088         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
11089         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
11090
11091         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
11092         gdk_drawable_get_image
11093
11094         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
11095
11096         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
11097         get_image
11098
11099         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
11100         trailing semicolon after for loop
11101
11102 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
11103
11104         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
11105         where font_desc for widget's context lagged widget's font_desc by
11106         one step.
11107
11108 2000-10-22  Tor Lillqvist  <tml@iki.fi>
11109
11110         * gdk/win32/gdkgc-win32.c
11111         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
11112
11113         * gtk/makefile.mingw.in
11114         * gtk/gtk.def: Updates.
11115
11116         * gtk/testgtk.c: sleep() is called _sleep in MS's C
11117         library.
11118
11119         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
11120
11121         * gtk/makefile.msc: Remove
11122
11123         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
11124
11125         * gtk/Makefile.am: Add it.
11126
11127         * configure.in: Generate it.
11128
11129         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
11130         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
11131         something even if not implemented, to satisfy picky MSVC.
11132
11133         Patches by Hans Breuer:
11134         
11135         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
11136         SetBkMode() and SetTextAlign() before calling
11137         pango_win32_render().
11138
11139         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
11140         Set hcliprgn to NULL after destroying it.
11141         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
11142
11143         * gdk/win32/gdkgeometry-win32.c
11144         (_gdk_windowing_window_queue_antiexpose): More effective
11145         implementation.
11146
11147         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
11148         depth as default, not the visual's.
11149
11150         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
11151         against empty title.
11152
11153         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
11154         IMAGE_PRIVATE_DATA.
11155
11156         * gdk/win32/gdkimage-win32.c: Use it.
11157
11158 2000-10-22  Robert Brady  <robert@suse.co.uk>
11159
11160         * configure.in: Check for bind_textdomain_codeset
11161
11162         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
11163         present, make use of it.
11164
11165         Add a translatable string "default:LTR" which, if translated
11166         to "default:RTL", will cause the default direction to be
11167         Right-to-Left.
11168
11169         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
11170         direction if marked as flippable.
11171
11172         * gtk/gtkhscale.c: Mark widget as flippable.
11173         
11174 2000-10-04  Havoc Pennington  <hp@redhat.com>
11175
11176         * gtk/testgtk.c (create_buttons): create some stock buttons
11177         with the default accel group
11178         (create_image): test some new GtkImage features
11179         (make_message_dialog): test GtkMessageDialog
11180         (create_modal_window): fix someone's bizzarro indentation
11181
11182         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
11183         GTK_WIN_POS_CENTER_ON_PARENT. 
11184         Add "destroy with parent" setting, which means the window goes
11185         away with its transient parent.
11186         (gtk_window_get_default_accel_group): get the default accel group
11187         for the window.
11188         (gtk_window_set_destroy_with_parent): set/unset destroy with
11189         parent flag
11190         (gtk_window_read_rcfiles): invalidate icon set caches
11191         after reloading rcfiles 
11192
11193         * gtk/gtkenums.h (GtkWindowPosition): add
11194         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
11195         on its parent window when the dialog is mapped for the first time.
11196
11197         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
11198         a simple message dialog class
11199         
11200         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
11201         handler to emit response signal, and maybe later it would
11202         honor a hide_on_delete flag - though that isn't there yet.
11203         Set border width on the vbox to 2, so we get some padding.      
11204         Use a button box for the action area.
11205         (gtk_dialog_key_press): synthesize a delete event if Esc
11206         is pressed and the GtkWidget key press handler didn't 
11207         handle the escape key.
11208         (gtk_dialog_new_with_buttons): new function creates a dialog
11209         with some default buttons in it.
11210         (gtk_dialog_add_action_widget): add an activatable widget
11211         as a button in the dialog - you can also add a non-activatable
11212         widget by accessing the action area directly.
11213         (gtk_dialog_add_button): add a simple button - stock ID or 
11214         label - to the action area
11215         (gtk_dialog_response): emit response signal
11216         (gtk_dialog_run): block waiting for the dialog, return 
11217         the response. Override normal delete_event behavior, so that 
11218         delete_event does nothing inside gtk_dialog_run().
11219
11220         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
11221         emitted when an action widget is clicked or the dialog gets
11222         delete_event
11223
11224         * gtk/gtk.h: add gtkmessagedialog.h
11225
11226         * gtk/Makefile.am: add gtkmessagedialog.[hc]
11227
11228 2000-10-18  Havoc Pennington  <hp@redhat.com>
11229
11230         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
11231         where any number of empty lines would get skipped
11232
11233         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
11234         edge.
11235
11236         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
11237         warning about invalid iterators (explain more thoroughly)
11238         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
11239
11240         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
11241         big
11242
11243         * demos/*.c: Add error handling
11244
11245         * gtk/gtktextbuffer.c: don't modify const iterators
11246
11247         * gtk/gdk-pixbuf-loader.c: Add full error handling here
11248
11249         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
11250         on file load
11251
11252         * gtk/gtkiconfactory.c: Update to reflect addition of error
11253         handling to gdk-pixbuf loaders
11254
11255 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
11256
11257         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
11258         move to new modularized testgtk.
11259
11260 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
11261
11262         * gtk/gtktreeview.c: Draw the arrows correctly.
11263
11264         * gtk/gtktreemodel.c: Added user docs.
11265
11266         * gtk/gtk.h: remove gtktreedatalist.h.
11267
11268         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
11269         parent when generating my type.
11270
11271         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
11272         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
11273
11274 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11275
11276         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
11277         GtkTreeModel from object to interface.
11278
11279 2000-10-16  Havoc Pennington  <hp@redhat.com>
11280
11281         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
11282         compilation
11283
11284 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
11285
11286         * gtk/gtktreeselection.c: Add API documentation to all public
11287         functions.
11288
11289         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
11290         functions.
11291
11292 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
11293
11294         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
11295         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
11296         docs to all public functions.
11297
11298         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
11299         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
11300         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
11301         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
11302         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
11303         issue.
11304
11305 2000-10-14  Robert Brady  <robert@suse.co.uk>
11306
11307         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
11308
11309 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
11310
11311         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
11312         values other then G_TYPE_STRING.
11313         * gtk/gtktreeselection.c: Minor commenting updates.
11314         * gtk/gtktreeview.c: Format updates.
11315
11316 2000-10-09  Tor Lillqvist  <tml@iki.fi>
11317
11318         * README.win32: Update.
11319
11320         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
11321         lines that had been deleted by mistake (?).
11322
11323         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
11324         also the case fg==white and bg==black (but still not randomly
11325         coloured cursors). Thanks to Wolfgang Sourdeau.
11326
11327         * gdk/win32/*.c: Silence gcc -Wall.
11328
11329         * gtk/gtk.def: Add missing entry points.
11330
11331         Fixes by Hans Breuer:
11332
11333         * gdk/makefile.msc
11334         * gdk/win32/makefile.msc: Update.
11335
11336         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
11337         some MSVC thing, presumably), cause breakpoint on failures. Add
11338         GDK_NOR case. Call g_log_set_always_fatal.
11339
11340         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
11341         should be pased by reference.
11342         
11343         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
11344         
11345         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
11346
11347         * gdk/win32/gdkevents-win32.c
11348         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
11349
11350         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
11351         implementation object.
11352
11353         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
11354         not just windows.
11355         
11356         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
11357         Use the wrapper object.
11358         
11359 2000-10-06  Havoc Pennington  <hp@redhat.com>
11360
11361         * Makefile.am (SRC_SUBDIRS): contrib subdir
11362
11363         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
11364         so it can be used in Xlib version
11365
11366         * demos/testpixbuf.c (update_timeout): error checking from 1.0
11367         tree
11368
11369         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
11370         change from 1.0 tree that returns first frame of animation
11371         if the loaded file is an animation.
11372
11373         * contrib: add new directory to hold stuff that comes with GTK+
11374         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
11375         
11376         * configure.in: add contrib/*
11377
11378 2000-10-05  Havoc Pennington  <hp@redhat.com>
11379
11380         * demos/testpixbuf-save.c: add pixbuf save test
11381
11382         * demos/Makefile.am: add testpixbuf-save.c
11383
11384 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
11385
11386         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
11387         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
11388         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
11389         * gtk/gtktreeselection.[ch]: Replaced
11390         "node_selected"/"node_unselected" signal with "selection_changed"
11391         signal.
11392
11393 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11394
11395         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
11396         tree widget.
11397
11398 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
11399
11400         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
11401         drawing.
11402
11403 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
11404
11405         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
11406         Move list pointer forwards before removing item from
11407         list. (Crash reported by Salmaso Raffaele)
11408
11409         * gdk/gdkwindow.h: Remove spurious trailing ,
11410
11411         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
11412         dependencies on uninstalled libraries, sorry folks.
11413
11414 2000-10-04  Havoc Pennington  <hp@redhat.com>
11415
11416         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
11417         gtk/gtkiconfactory.c: Fix copyrights    
11418
11419         * demos/testpixbuf.c: add inline pixbuf test
11420         
11421 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
11422
11423         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
11424         Add gdk_window_iconify.
11425
11426         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
11427         (gdk_window_set_geometry_hints): Add win_gravity
11428         to geometry structure.
11429
11430         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
11431         Implement _NET_WM_PING.
11432
11433         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
11434         Set _NET_WM_PID on the client leader.
11435
11436         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
11437         Handle UTF-8 better.
11438
11439         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
11440         UTF-8 better, set _NET_WM_NAME as well. Only set
11441         icon name if it hasn't previously been explicitely 
11442         set.
11443
11444 2000-10-03  Havoc Pennington  <hp@redhat.com>
11445
11446         * gtk/testtextbuffer.c: clean up trailing whitespace,
11447         add extensive tests for tag toggle iteration.
11448         
11449         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
11450         distance
11451
11452         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
11453         optimize case where the tag root is on level 1
11454         (gtk_text_line_previous_could_contain_tag): attempt to implement
11455         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
11456         functionality
11457
11458         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
11459         Implement this, though not very efficiently.
11460
11461         * gtk/gtktextiterprivate.h: reformat
11462
11463         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
11464         iterator
11465
11466         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
11467         this to properly revalidate the iterators.
11468
11469         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
11470         properly at the end of the line (and therefore on empty lines)
11471
11472         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
11473         maybe we should return a value...
11474
11475 2000-10-03  Tor Lillqvist  <tml@iki.fi>
11476
11477         * config.h.win32: Guard definition of alloca(). glib.h now handles
11478         that.
11479
11480         * gdk/gdk.def
11481         * gtk/gtk.def: Add new entry points.
11482
11483         Changes just to make GTK+ build without errors on Win32. No hope
11484         of it working in its current state, though...:
11485         
11486         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
11487         some functions from the X11 backend, just to make GTK+ build.
11488
11489         * gdk/makefile.mingw.in
11490         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
11491         number. Add new object files.
11492
11493         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
11494         GetMessageTime to get timestamp (where on X11 uses
11495         gdk_x11_get_server_time()).
11496
11497 2000-10-02  Havoc Pennington  <hp@pobox.com>
11498
11499         * gtk/gtktextview.c: text_window_* weren't static and should have
11500         been.
11501         Start work on child widgets; not yet complete, syncing to 
11502         office computer.
11503
11504         * gtk/gtktextchild.h: change this to contain a public interface,
11505         starting work on child interfaces.
11506         * gtk/gtktextchildprivate.h: move private interfaces here
11507
11508         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
11509
11510         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
11511         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
11512         gtk/gtktextmark.c: copyright notices
11513
11514         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
11515         internal functions      
11516
11517         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
11518         internal function
11519
11520         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
11521         Reformatting    
11522
11523 2000-09-30  Havoc Pennington  <hp@pobox.com>
11524
11525         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
11526         NULL start/end pointers
11527
11528         * gtk/gtktextbuffer.c: Write some docs
11529         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
11530         NULL, so you can just check whether there's a selection.        
11531
11532         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
11533         cleanup_line or segments_changed ourselves, it gets done 
11534         in unlink_segment
11535
11536         * gtk/gtktextmark.h:
11537         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
11538         
11539         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
11540
11541         * gtk/gtktextmark.c: delete some more old Tk cruft
11542
11543         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
11544         mark before removing it, so we can emit MARK_DELETED with a valid
11545         pointer.
11546         (gtk_text_buffer_mark_set): hold ref across signal emission
11547
11548         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
11549         whining about attempts to delete special marks
11550
11551         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
11552         underscore, since it's internal.
11553
11554         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
11555         now implemented in terms of iterators in gtktextiter.h
11556
11557         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
11558         New function, destructively sets contents of buffer. Also 
11559         a convenient way to clear the buffer by setting text to ""
11560
11561         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
11562         multiline string literal
11563
11564         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
11565         text changes.
11566
11567         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
11568         is not dereferenceable
11569         (gtk_text_iter_forward_lines): fix return value
11570
11571 2000-09-29  Havoc Pennington  <hp@redhat.com>
11572
11573         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
11574
11575         * gtk/gtktextview.c: Implement drag thresholding; change functions 
11576         that set border window size to have nicer name
11577         (gtk_text_view_mark_set_handler):  Fix this to have the 
11578         right signature.
11579
11580         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
11581
11582         * gtk/testtext.c: Update with API changes, put line numbers on 
11583         both sides.
11584         
11585         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
11586         with this
11587
11588         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
11589         pixbuf; delete a big block of #if 0 Tk code
11590
11591         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
11592         insert_pixmap with insert_pixbuf
11593
11594 2000-09-29  Martin Baulig  <baulig@suse.de>
11595
11596         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
11597         confusion with the GdkPixbuf of the GNOME 1.x platform.
11598
11599 2000-09-29  Havoc Pennington  <hp@pobox.com>
11600
11601         * gtk/gtktextview.c: Implement the side windows.
11602
11603         * gtk/testtext.c: Implement simple line numbering in the 
11604         left side window; seems to make scrolling sloooow. Oops.
11605         Also, cursor blink is for some reason causing redraws
11606         of the line numbers. Should investigate...
11607
11608 2000-09-28  Havoc Pennington  <hp@redhat.com>
11609
11610         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
11611         scrolling child windows, and draw focus rectangle properly.
11612         
11613         (gtk_text_view_buffer_to_window_coords):
11614         Coordinate transformation to deal with all these freaking windows
11615         and offsets
11616         (gtk_text_view_window_to_buffer_coords): transform the other way
11617
11618         * gtk/testtext.c (create_buffer): Update to match Pango API change
11619
11620         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
11621         anonymous tags
11622         (foreach_unref): don't emit remove signal from finalize, just
11623         set tag's parent to NULL
11624
11625 2000-09-26  Havoc Pennington  <hp@redhat.com>
11626
11627         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
11628         Fix some warnings       
11629
11630 2000-09-26  Havoc Pennington  <hp@redhat.com>
11631
11632         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
11633         headers into the private header list
11634
11635         * Makefile.am (pkgconfig_DATA): install pkg-config files
11636
11637         * configure.in: add pkg-config files
11638
11639         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
11640
11641         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
11642         outstanding icon caches on theme change.
11643
11644         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
11645         important types:
11646
11647         (GtkIconSource): Specification for creating a pixbuf 
11648         appropriate for a direction/state/size triplet from 
11649         a source pixbuf or filename
11650
11651         (GtkIconSet): List of GtkIconSource objects that are used to
11652         create the "same" icon (e.g. an OK button icon), and cache for
11653         rendered icons
11654
11655         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
11656         up the icon set for a given stock ID.  GTK maintains a stack of
11657         GtkIconFactory to search, and applications or libraries can add
11658         additional icon factories on top of the stack
11659         
11660         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
11661         the set of GtkIconSource specified for a given stock ID into 
11662         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
11663         RcStyle, under the specified stock ID.
11664
11665         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
11666         render_icon used to derive a GdkPixbuf from a GtkIconSource.
11667         This allows people to theme how prelight, insensitive, etc. are
11668         done.
11669
11670         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
11671         icon factories for a style, and return the resulting 
11672         icon set if any.
11673
11674         (gtk_style_render_icon): Render an icon using the render_icon 
11675         method in the GtkStyleClass.
11676
11677         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
11678         Use the style for a given widget to look up a stock ID, get the
11679         icon set, and render an icon using the render_icon method 
11680         of the style
11681
11682         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
11683         (contains information about a stock item), the built-in stock item
11684         IDs, and functions to add/lookup stock items.
11685
11686         * gtk/stock-icons/*: Stock icons that come with GTK
11687
11688         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
11689         a button based on a GtkStockItem
11690         (gtk_button_new_accel): Takes a uline string and accel group, and
11691         installs the accelerator.
11692
11693         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
11694         image-display widget.
11695
11696 2000-09-25  Havoc Pennington  <hp@redhat.com>
11697
11698         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
11699
11700         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
11701         Fix a bug when removing node data, we didn't properly 
11702         re-splice the linked list after removing the data.
11703
11704         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
11705         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
11706
11707         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
11708
11709         * gtk/gtktextlayout.c (set_para_values): Set tab array 
11710         for the layout from the GtkTextTag.
11711
11712         * gtk/gtktexttypes.h: delete tab and search cruft, 
11713         remove g_convert() in favor of GLib version
11714
11715         * gtk/gtktexttypes.c: remove tab implementation from here,
11716         move to Pango
11717
11718         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
11719         tab stuff using new PangoTabArray from Pango
11720
11721         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
11722         unused border_width stuff
11723
11724 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
11725
11726         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
11727         glib) and now useless utf_to_latin1() latin1_to_utf()
11728
11729         * gtk/gtktextview.[ch]: Change ::move_insert and
11730         ::delete_text action signals to ::move and ::delete;
11731         create the signals with the right enumeration type,
11732         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
11733         C-v bindings, change Home, End to move to beginning/end
11734         of line, Add C-Home C-End to move to beginning/end
11735         of buffer. Change ::cut_text to ::cut_clipboard, etc;
11736         combine ::scroll_text into ::move; use new GtkSelectionData
11737         functions to simplify DND text handling.
11738         
11739         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
11740         deletion enumerations here, rename enumeration values to 
11741         be consistently plural.
11742
11743         * gtk/gtktextbuffer.c: Use new clipboard interfaces
11744         for cut/copy/paste and primary selection.
11745
11746         * gtk/gtktextbuffer.[ch]: Remove excess time and
11747         'interactive' arguments from cut/copy/paste;
11748         rename cut to cut_clipboard, etc; remove
11749         gtk_text_buffer_get_clipboard_contents().
11750
11751         * gtk/gtktextlayout.[ch]: Add 
11752         gtk_text_layout_move_iter_to_line_end() to move the iter to 
11753         line ends.
11754
11755         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
11756         Functions to set or get a UTF-8 string on the selection
11757         data.
11758
11759         * gtk/gtkclipboard.[ch]: New, simplified selection handling
11760         interfaces.
11761
11762         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
11763         created widgets - one of these is useless if we don't.
11764
11765         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
11766         a public function clear all targets registered for the
11767         widget.
11768
11769         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
11770         Never call gtk_widget_realize() - that was just asking
11771         for bizarre side-effects.
11772
11773         * gtk/gtkselection.c (gtk_selection_owner_set): Call
11774         gdk_selection_owner_set even if the widget is the
11775         same so that we reliably update the timestamp on
11776         the server.
11777
11778         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
11779         gdk_x11_get_server_time() function.
11780         
11781         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
11782         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
11783         Add some tricky filtering on serial numbers for
11784         selection clear events to fix up long-standard
11785         race condition FIXME's in gtkselection.c.
11786
11787         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
11788         routines to convert from utf8 to compound text or
11789         STRING and from a text property to UTF-8.
11790
11791         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
11792         a convenience function gdk_get_current_event_time().
11793
11794         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
11795         and free selection_data->data properly
11796
11797 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
11798
11799         * gtk/gtkthemes.c: Remove some unecessary includes.
11800
11801 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
11802
11803         * gtk/gtktextdisplay.c
11804         * gtk/gtktextlayout.c
11805         * gtk/gtktexttag.c
11806         * gtk/gtktexttag.h
11807         * gtk/testtext.c: Change the overstrike property to strikethrough,
11808         to closer match pango.
11809
11810 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
11811
11812         * gtk/gtktextview.c: Fix up visibility so that focus,
11813         cursor_visible and blink interact properly.  Reenable cursor blink
11814         which had been roughly disabled. Make blink and focus
11815         properly per-view.
11816
11817         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
11818         Add a flag for whether to display insertion cursor and
11819         a function to set the flag.
11820
11821         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
11822         get_line_y() to get_line_yrange(), to be a bit more generally
11823         useful.
11824
11825 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
11826
11827         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
11828           do stop_navigating_submenu, to clear last timeout properly.
11829           Also in gtk_menu_motion_notify move ignore_enter above
11830           the conditional to make it always happen as suggested by Owen
11831
11832 2000-09-07  Tor Lillqvist  <tml@iki.fi>
11833
11834         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
11835
11836         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
11837         w32api headers.
11838
11839         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
11840         declarations.
11841
11842         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
11843         (gdk_win32_get_colormap): A line had been deleted by mistake.
11844
11845         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
11846         (gdk_event_translate): Handle more virtual keycodes to be able to
11847         generate GDK events for Control-comma, Control-period, etc.
11848
11849         * gtk/gtk.def: Add some missing entry points.
11850
11851 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
11852
11853         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
11854         Doc comment fixing. (Mostly non-matching parameter names.)
11855
11856         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
11857         comments a little to avoid looking like a doc comment.
11858
11859         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
11860         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
11861         conversions be changed to GError?)
11862
11863         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
11864         Move private #defines into .c file.
11865
11866         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
11867         order of argument addition, remove duplicates.
11868
11869         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
11870         parent class is FrameClass, not BinClass.
11871
11872         * gtk/gtk.h: Add gtkinvisible, which was missing.
11873         (It's occasionalyl useful for client apps, if seldom.)
11874
11875         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
11876         #define.
11877
11878 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
11879
11880         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
11881         coordinates when creating window, instead of GDK-space
11882         coordinates. (Avoid BadValue on too large windows.)
11883
11884 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11885
11886         * configure.in (use_mmx_asm): Remove conftest* after use along the
11887         lines of AC_TRY_COMPILE.        
11888         
11889         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
11890         of g_dirname, which is deprecated.
11891         (gtk_rc_parse_any): Removed calls to
11892         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
11893
11894         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
11895         Removed calls to g_hash_table_{freeze,thaw}, as they are
11896         deprecated now.
11897
11898         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
11899         instead of g_basename.
11900         
11901 2000-09-04 Elliot Lee <sopwith@redhat.com>
11902         
11903         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
11904         ANSI warning.
11905
11906 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
11907
11908         * gtk/gtkwidget.h:  Add some documenting comments about 
11909           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
11910           just as owen said on irc.
11911
11912         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
11913           set HAS_DEFAULT.  Only set it if there isn't another window
11914           holding it (a focus window which RECEIVES_DEFAULT) and only unset
11915           it if the widget is not the focused window with RECEIVES_DEFAULT.
11916           This fixes weird double default bugs in dialogs which has things
11917           call gtk_window_set_default at times.
11918
11919 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
11920
11921         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
11922         Nils Barth and David Santiago to improve submenu
11923         navigation. The patch does this by creating a triangular
11924         region from the point where the pointer leaves the
11925         menu to the submenu.  While the pointer is in
11926         that region and a timeout has not expired, events 
11927         that would cause the active submenu to change are
11928         ignored.
11929
11930 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
11931
11932         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
11933         moving a toplevel window immediately after sizing it would
11934         result in it being sized back to the old size since 
11935         impl->width, impl->height aren't updated until we hear
11936         back from the server. There is still a (longstanding) bug
11937         here that gdk_window_get_size() will give the wrong size
11938         until we do hear back.
11939
11940 2000-08-31  Havoc Pennington  <hp@redhat.com>
11941
11942         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
11943         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
11944         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
11945         Rename GtkTextStyleValues to GtkTextAttributes
11946
11947 2000-08-31  Havoc Pennington  <hp@pobox.com>
11948
11949         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
11950         for rapid testing whether an iterator is the end iterator
11951         (gtk_text_btree_new): init end line cache
11952         (gtk_text_line_is_last): use fast cached line to 
11953         see if we're the last line.
11954         (get_last_line): use cached line here too, should 
11955         speed up some random unrelated code.
11956         
11957 2000-08-30  Havoc Pennington  <hp@pobox.com>
11958
11959         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
11960         signals.
11961
11962         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
11963         delete_text signals. This allows the signals to be used for
11964         implementing undo.
11965
11966         * gtk/gtktextbuffer.c: Change signal handler signatures; 
11967         provide "interactive" argument when emitting insert_text or
11968         delete_text signal.
11969         
11970 2000-08-30  Havoc Pennington  <hp@pobox.com>
11971
11972         * gtk/gtktextbuffer.c: Docs
11973
11974 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
11975
11976         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
11977         from switch statements, since Tor removed the enumeration
11978         value.
11979         
11980         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
11981         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
11982
11983 2000-08-29 Elliot Lee <sopwith@redhat.com>
11984         * */*.h: Use G_GNUC_CONST.
11985
11986 2000-08-27  Havoc Pennington  <hp@pobox.com>
11987
11988         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
11989         minor indentation fixes, inserted some FIXME about stuff I
11990         realized was broken while documenting it.
11991         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
11992         GTK convention  
11993
11994 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
11995
11996         * gtk/testgtk.c (create_styles): Fix double free of
11997         font desc.
11998
11999 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
12000
12001         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
12002         
12003         * gtk/testgtk.c (create_styles): Add a test for modifying
12004         the style through gtk_widget_modify_*.
12005
12006         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
12007         a function to get the current modifier style.
12008
12009         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
12010         of the passed in GtkRcStyle instead of ref'ing it.
12011
12012         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
12013
12014 2000-08-20  Tor Lillqvist  <tml@iki.fi>
12015
12016         * gdk/gdkimage.h
12017         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
12018         shared memory image+pixmap GdkImage type, or
12019         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
12020         I am dropping that.
12021
12022         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
12023         actually call gtk_init_abi_check(), passing also
12024         sizeof(GtkWindow). Ditto for gtk_init_check(). 
12025
12026         * gtk/gtk.def
12027         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
12028         New functions, used to check that the GTK+-using code has been
12029         compiled using the correct compiler and switches. In particular,
12030         with gcc one has to use the -fnative-struct switch as GTK+ is
12031         compiled with that.
12032
12033 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
12034
12035         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
12036         ->prev fields when merging lists. (Found simultaneously
12037         by Pawel Salek and Jakub Jelinek)
12038
12039 2000-08-12  Tor Lillqvist  <tml@iki.fi>
12040
12041         * gdk/gdk.def
12042         * gtk/gtk.def: Add missing entries.
12043
12044         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
12045         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
12046
12047         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
12048         function. Dummy implementation at this point.
12049
12050         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
12051         rules. Undefine GTK_COMPILATION when compiling the test programs.
12052         
12053         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
12054
12055 2000-08-11  Tor Lillqvist  <tml@iki.fi>
12056
12057         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
12058         to convert back and forth from UTF-8 and the "system" (or "current
12059         locale") charset when necessary. Indentation/spacing cleanup.
12060
12061 2000-08-10  Havoc Pennington  <hp@redhat.com>
12062
12063         * Makefile.am (snapshot): Change the format of the snapshot
12064         version to match glib
12065
12066         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
12067         from EXTRA_DIST since it doesn't seem to exist
12068
12069 2000-08-10  Tor Lillqvist  <tml@iki.fi>
12070
12071         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
12072         version of the directory name (not the UTF-8 one) when building
12073         the path name to stat().
12074
12075 2000-08-03  Elliot Lee  <sopwith@redhat.com>
12076
12077         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
12078         PANGO_ATTR_SHAPE set.
12079
12080 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
12081
12082         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
12083         Peter Osterlund to simplify the code while keeping the
12084         functionality the same.
12085
12086 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
12087
12088         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
12089         is_viewable() test further inside the function, since removing the 
12090         window from the redraw list without clearing ->update_area
12091         was also very broken.
12092
12093 2000-08-02  Tor Lillqvist  <tml@iki.fi>
12094
12095         * configure.in: Check for <unistd.h>.
12096
12097 2000-08-01  Martin Baulig  <baulig@suse.de>
12098
12099         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
12100         to display the message that this is a development version of GTK+.
12101
12102 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
12103
12104         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
12105         was depending on widget->allocation instead of the width of text_area,
12106         which was incorrect for subclasses like GtkSpinButton.
12107
12108         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
12109         with width == 1 tests that should be width == -1.
12110
12111 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
12112
12113         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
12114         (broken, Elliot, every single window blank on X) custom code with call
12115         to gdk_window_is_viewable() which a) prevents code duplicate and
12116         b) works. 
12117
12118 2000-07-31  Elliot Lee  <sopwith@redhat.com>
12119
12120         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
12121         to get the GDK_PARENT_ROOT() macro to work.
12122         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
12123         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
12124         of, windows that aren't shown.
12125         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
12126         pointer grab stuff.
12127
12128 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
12129
12130         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
12131           s/gtk_main_iteration/g_main_iteration/
12132
12133           Did this already in change:
12134                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
12135           don't know how it got reverted.
12136
12137 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
12138
12139         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
12140         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
12141
12142         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
12143         not gdk_pixbuf.
12144
12145 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
12146
12147         * configure.in,po/{sp,sr}.po: Added Serbian files
12148
12149 2000-07-30  Tor Lillqvist  <tml@iki.fi>
12150
12151         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
12152
12153         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
12154         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
12155         GIOChannel implementation.
12156
12157         * gdk/win32/gdkinput.c
12158         * gdk/win32/gdkpango-win32.c: Update license name here, too.
12159
12160         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
12161         definition to match prototype.
12162
12163         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
12164
12165 2000-07-27  Elliot Lee  <sopwith@redhat.com>
12166
12167         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
12168         function, to allow handling image formats that cannot be detected
12169         by looking at content alone.
12170
12171 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
12172
12173         * docs/tutorial/*.gif *.jpg *.eps
12174           Update these to the same look-n-feel.
12175           Why does including images in DocBook suck so badly?
12176
12177 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
12178
12179         * gtk/gtktable.c: applied patch from Phil Thompson
12180         <phil@river-bank.demon.co.uk> that enables space settings for
12181         the last row/columns as well.
12182
12183 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
12184
12185         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
12186         updates the license headers to the GNU Lesser General Public License,
12187         as well as updating the copyright year to 2000.
12188
12189 2000-07-26  Robert Brady  <rwb197@zepler.org>
12190
12191         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
12192           and po/Makefile, was installing and looking for them under gtk20
12193           and gtk2 respectively.
12194
12195 2000-07-25  Havoc Pennington  <hp@redhat.com>
12196
12197         * gtk/testtext.c: Comment out some stuff that depends on the rest
12198         of my patches.
12199
12200 2000-07-25  Havoc Pennington  <hp@redhat.com>
12201
12202         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
12203         buffer
12204
12205 2000-07-25  Havoc Pennington  <hp@redhat.com>
12206
12207         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
12208         widget changes.
12209
12210         * gtk/gtktextview.h: To be consistent with usage of "line"
12211         throughout the API to mean "newline-terminated thingy", change
12212         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
12213         to MOVEMENT_LINE.
12214
12215         (GtkTextView): Add flags for default editability, and whether to
12216         show the cursor. Add functions to get/set that. Add 
12217
12218         (gtk_text_view_get_iter_location): new function
12219
12220         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
12221         gtktextlayout.h
12222         (g_convert): Add g_convert temporarily, will go in glib in a bit
12223         
12224         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
12225         GtkTextTagTableForeach instead of brokenly using GHFunc.
12226         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
12227
12228         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
12229         moved to public header.
12230
12231         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
12232         "invisible", since "elide" was a bad name.
12233         (gtk_text_tag_get_priority): Added
12234
12235         (GtkTextStyleValues): put this in public header, along with
12236         functions to use it.
12237
12238         * gtk/gtktextmarkprivate.h: Include more headers, since we no
12239         longer include gtktextbtree.h.
12240
12241         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
12242         gtk_text_mark_deleted
12243
12244         * gtk/gtktextlayout.h: Don't include the "really private" headers,
12245         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
12246         to make this possible. Now we only need to install
12247         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
12248         (However the Makefile.am isn't changed yet because of the
12249         logistics of merging gtk-hp-patches piecemeal)
12250
12251         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
12252         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
12253         gtk_text_iter_get_line is now used in the public API for a
12254         different purpose.
12255
12256         * gtk/gtktextiter.h: Clean up function names to be more
12257         consistent. Always call char offset "offset" and byte index
12258         "index". A "line" is always a line number. 
12259
12260         (gtk_text_iter_is_last): new function, more efficient than 
12261         the existing way to check
12262         (gtk_text_iter_is_first): new function, also more efficient
12263
12264         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
12265
12266         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
12267         gtk_text_iter_forward_char, etc.
12268
12269         (gtk_text_iter_forward_to_tag_toggle): Renamed from
12270         forward_find_tag_toggle, since this isn't a linear search
12271
12272         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
12273
12274         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
12275         New functions, search for a buffer substring.
12276
12277         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
12278         interactive and default editable (since we need to store that info
12279         until we receive the selection data).
12280
12281         Remove all the _at_char and at_line etc. versions of functions;
12282         only have iterator versions.
12283
12284         Add _interactive() versions of functions, that consider the
12285         editability of text. (FIXME add interactive flag to the 
12286         insert/delete signals per Darin's suggestion)
12287
12288         (gtk_text_buffer_get_tag_table): new function, demand-creates the
12289         tag table if necessary
12290
12291         Remove declaration of gtk_text_buffer_get_iter_from_string
12292
12293         (_gtk_text_buffer_get_btree): private/internal function, added.
12294         
12295
12296         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
12297         (gtk_text_line_is_last): new function
12298
12299 2000-07-25  Havoc Pennington  <hp@redhat.com>
12300
12301         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
12302         using GtkProgressBar. See Changes-2.0.txt for details.
12303
12304         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
12305         "pulse_step" which are the equivalent of
12306         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
12307         Implement new API.
12308         
12309         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
12310         (use_text_format) to mark whether text set on the progress bar is
12311         a format string. Deprecate entire GtkProgress interface.
12312
12313         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
12314         (gtk_progress_build_string): make this a no-op if use_text_format
12315         is FALSE
12316
12317         * docs/Changes-2.0.txt: Describe progress bar changes.
12318
12319 2000-07-25  Tor Lillqvist  <tml@iki.fi>
12320
12321         * Makefile.am: Include the build directory.
12322
12323         * configure.in: Generate build/Makefile, build/win32/Makefile,
12324         gdk/, gdk/win32/, and gtk/makefile.mingw.
12325
12326         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
12327         Add GETTEXT_PACKAGE.
12328         
12329         * gdk/gdk.def
12330         * gtk/gtk.def: Updates.
12331
12332         * gdk/gdkfont.h
12333         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
12334         need them any longer.
12335
12336         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
12337
12338         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
12339         PANGOWIN32_LIBS and gdk_pixbuf.
12340
12341         * gdk/win32: Compiles, but no doubt doesn't work at all.
12342
12343         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
12344
12345         * gdk/win32/gdkinput.c: New file, temporarily.
12346         
12347         * gdk/win32/gdkinput-win32.h: New file
12348
12349         * gdk/win32/gdkinputprivate.h: Remove.
12350
12351         * gdk/win32/gdkpango-win32.c: New file.
12352
12353         * gtk/makefile.mingw.in: New file
12354
12355         * gtk/makefile.cygwin: Removed
12356         
12357         * gtk/Makefile.am: Update accordingly.
12358
12359         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
12360         made externally visible.
12361
12362         * gtk/gtkmain.c: Use it.
12363         
12364         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
12365         is enough.
12366
12367         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
12368
12369 2000-07-24 Elliot Lee <sopwith@redhat.com>
12370         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
12371         individual backends already.
12372         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
12373         again. Yes, there really is a good reason for this, if you are using the gdkregion
12374         internals, and if you're not, why do you care?
12375         * gdk/gdkwindow.c: Fix inverted condition
12376         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
12377         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
12378         * gtk/gtkrange.c: Redraw trough when moving.
12379         * gtk/gtktypeutils.c: Fix warning by adding const cast.
12380         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
12381
12382 2000-07-23  Tor Lillqvist  <tml@iki.fi>
12383
12384         * configure.in: Check for mkstemp and sigsetjmp. Output
12385         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
12386
12387         More work on GDK for Win32. Still in an intermediate state.
12388
12389         * gdk/makefile.cygwin
12390         * gdk/win32/makefile.cygwin: Removed.
12391         
12392         * gdk/makefile.mingw.in
12393         * gdk/win32/makefile.mingw.in: New files.
12394
12395         * gdk/Makefile.am
12396         * gdk/win32/Makefile.am: Generate and distribute them.
12397
12398         * gdk/win32/gdkwindow-win32.h
12399         * gdk/win32/gdkdrawable-win32.h
12400         * gdk/win32/gdkpixmap-win32.h: New files.
12401
12402         * gdk/win32/gdkcolor-win32.c
12403         * gdk/win32/gdkcursor-win32.c
12404         * gdk/win32/gdkdrawable-win32.c
12405         * gdk/win32/gdkgc-win32.c
12406         * gdk/win32/gdkimage-win32.c
12407         * gdk/win32/gdkprivate-win32.h
12408         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
12409         Rename fields and variables called xcursor, xid, etc (these names
12410         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
12411
12412 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
12413
12414         * gtk/gtkentry.[ch]: Fix some problems with vertical
12415         alignment.
12416
12417         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
12418         char/byte confusion.
12419
12420 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
12421
12422         * gtk/gtktextview.c (changed_handler): Fix bug where
12423         redraw wasn't being done properly when height of
12424         dirty region changed.
12425
12426         * demos/Makefile.am: Remove various references to
12427         -lgmodule
12428
12429 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
12430
12431         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
12432         PangoAttrShape to reserve space for pixmaps, add 
12433         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
12434         in the display functions.
12435         
12436         * gtk/testgtk.c (create_layout): Set some more exotic
12437         scrolled window options
12438
12439         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
12440         Add function to set the shadow type of a window, to allow
12441         putting a shadow around widgets such as GtkLayout or GnomeCanvas
12442         which don't draw their own frame.
12443
12444 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
12445
12446         * docs/tutorial/package-db-tutorial.sh: New file for
12447           packaging DocBook format tutorial
12448
12449 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
12450
12451         * docs/tutorial/gtk-tut.sgml: Minor updates
12452
12453         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
12454
12455 2000-07-19  Tor Lillqvist  <tml@iki.fi>
12456
12457         * gtk/gtksignal.c: Fix C++ comment.
12458
12459         * gtk/gtkimmulticontext.c
12460         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
12461         don't return value from void functions.
12462
12463         * gtk/gtk.def: Add gtk_rc_style_unref.
12464
12465 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12466
12467         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
12468         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
12469         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
12470         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
12471         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
12472         gtk/gtktypeutils.h: Include files outside of the extern "C"
12473         block. Makes some C++ compiler happy. Reported by Denis Vakatov
12474         <vakatov@peony.nlm.nih.gov>.
12475
12476 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
12477
12478         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
12479           Completes first pass. Hurrah!
12480
12481 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
12482
12483         * docs/tutorial/gtk-tut.sgml: More clean ups.
12484
12485 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
12486
12487         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
12488         paint the background of the text area which was accidentally
12489         removed at some point.
12490
12491         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
12492           
12493          - Move most of the functionality from the theme vtable
12494            into GtkRcStyleClass and GtkStyleClass. The moved
12495            vtable functions were changed a bit in the move to
12496            work better in their new home.
12497
12498          - Get rid of the engine and engine_data fields from
12499            GtkRcStyle and GtkStyle; instead the theme
12500            engine derives theme-specific subclasses of GtkRcStyle
12501            and GtkStyle
12502
12503          - Add extra dlsym() found entry point to themes,
12504            theme_create_rc_style().
12505
12506         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
12507         in gtk_style_real_copy.
12508
12509         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
12510         to register a type associated with an engine. (The engine
12511         won't be unloaded as there is an instance of the type.)
12512
12513
12514 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
12515
12516         * docs/tutorial/gtk-tut.sgml: Clean ups.
12517
12518 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
12519
12520         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
12521           of cleaning up to do.
12522
12523 2000-07-15  Tor Lillqvist  <tml@iki.fi>
12524
12525         * gdk/testgdk.c: New file, quick hack to test backends for
12526         pixel-by-pixel correctness of the most simple graphic operations.
12527
12528 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
12529
12530         * Really release 1.3.1
12531         
12532         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
12533         include structure.
12534
12535 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
12536
12537         * Released 1.3.1
12538
12539 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
12540
12541         * gtk/gtktextlayout.c: use FALSE for size_only most
12542         of the time when calling gtk_text_layout_get_line_display()
12543         to avoid causing double reshapes when a redraw follows
12544         immediately after.
12545
12546 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
12547
12548         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
12549         appropriate region and gdk_window_process_updates() so trough
12550         updating doesn't lag behind the window being scrolled.
12551
12552         * gdk/gdkgc.c: Make parent_class pointer static.
12553          
12554 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
12555
12556         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
12557         include <string.h>.
12558          
12559         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
12560         cut-and-paste error in computing memory offset for 4 channels.
12561
12562 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
12563
12564         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
12565         gtk_rc_append_default_pixmap_path(), since it wasn't
12566         adding an interesting path and we don't have a meaningful
12567         default for this value.
12568
12569 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
12570
12571         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
12572         gtk-config to gtk-config-2.0 move gtk_.m4 to
12573         gtk-2.0.m4
12574
12575         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12576         gdk/Makefile.am demos/Makefile.am: Change 
12577         library names to libgtk-1.3.la, etc, so that we
12578         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
12579
12580         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
12581         gdk/Makefile.am gdk/x11/Makfile.am
12582         Move include files into /usr/include/gtk-2.0, 
12583         /usr/lib/gtk-2.0/include/
12584          
12585         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
12586         gtk/gtkintl.h: Change package for gettext from 
12587         gtk+ to gtk20. Put hack in autogen.sh to modify
12588         po/Makefile.in.in after gettextize to make this
12589         possible.
12590
12591         * gtk+.spec: Some updates, not tested.
12592
12593         * gdk-pixbuf/Makefile.am: Move loaders into
12594         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
12595
12596         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
12597         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
12598         to THEMENAME/gtk-2.0/. Move engine directory  to
12599         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
12600         
12601 2000-07-12  Tor Lillqvist  <tml@iki.fi>
12602
12603         Win32 changes, still doesn't build though.
12604
12605         * gdk/makefile.cygwin
12606         * gdk/win32/makefile.cygwin
12607         * gtk/makefile.cygwin: Updates.
12608
12609         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
12610         default values for fg and bg pixel as X11 does (0 and 1), not
12611         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
12612         Use 0 for pen width by default (treated as 1 anyway later, but for
12613         apps that might check the value in the GdkGC).
12614         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
12615         interface to gdk_gc_predraw and _postdraw.
12616
12617         * gdk/win32/gdkwin32.h
12618         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
12619
12620         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
12621         extraneous semicolon.
12622
12623         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
12624
12625         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
12626         not the Win32 bitspixel value.
12627
12628         * gdk/win32/gdkcc-win32.c:
12629         * gdk/win32/gdkcolor-win32.c 
12630         * gdk/win32/gdkprivate-win32.h
12631         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
12632         GDK object structure.
12633
12634 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
12635
12636         * docs/tutorial/gtk_tut_12.es.sgml (name): 
12637         * docs/tutorial/gtk_tut_it.sgml (name): 
12638         * docs/tutorial/gtk_tut_fr.sgml (name): 
12639         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
12640         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
12641
12642 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
12643
12644         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
12645           small changes.
12646
12647 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
12648
12649         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
12650         a bug here, never been here and never fixed anything ;(
12651         (don't segfault if tree->root_tree is NULL, which happens prior
12652         to widget realization, but puke instead).
12653
12654 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
12655
12656         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
12657         add the necessary tokens.
12658
12659         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
12660         (gtk_rc_style_to_style): copy thicknesses.
12661         (gtk_rc_init_style): apply thicknesses.
12662         (gtk_rc_parse_style): parse xthickness and ythickness.
12663
12664         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
12665
12666         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
12667         (gdk_window_new): 
12668         (_gdk_windowing_window_init): 
12669         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
12670         (gdk_pixmap_create_from_data): 
12671         (gdk_bitmap_create_from_data): 
12672         (gdk_pixmap_new): 
12673         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
12674         (gdk_image_new): 
12675         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
12676         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
12677         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
12678         (gdk_colormap_get_system): 
12679         (gdk_colormap_new): 
12680         * gdk/gdkwindow.c (gdk_window_init): 
12681         * gtk/gtkstyle.c (gtk_style_new):
12682         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
12683         * gdk/gdkpixmap.c (gdk_pixmap_init): 
12684         * gtk/gtkrc.c (gtk_rc_style_new):
12685         use g_object_new() instead of g_type_create_instance() which
12686         is a private function for fundamental type implementations.
12687
12688 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
12689
12690         * configure.in: Add check for db2html
12691
12692 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
12693
12694         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
12695         hack to set glib_debug_objects based on gtk_debug_flags.
12696
12697 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
12698
12699         * INSTALL.in: Update the Prerequisites section.
12700
12701         * Makefile.am demos/Makefile.am docs/Makefile.am
12702         docs/tutorial/Makefile.am gdk/x11/Makefile.am
12703         gdk/linux-fb/Makefile.am: Dist fixes
12704
12705 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
12706
12707         * NEWS: 10,000 foot view of 1.3.1 changes.
12708
12709 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
12710
12711         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
12712         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
12713         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
12714         gdk/x11/gdkmain-x11.c: 
12715
12716         Patch from George Lebl to add a GdkGrabStatus enumeration to use
12717         as a return value of gdk_*_grab(). Previously, we just
12718         returned the X11 values directly.
12719
12720 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
12721
12722         * gdk/x11/Makefile.am: Patch from George Lebl to 
12723         install all the headers in the right place.
12724
12725 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
12726
12727         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
12728           initial conversion to DocBook.
12729
12730 2000-07-04  Tor Lillqvist  <tml@iki.fi>
12731
12732         * README.win32: Improve a bit.
12733
12734         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
12735         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
12736         Alt+0nnn on the numpad (used to enter characters by numeric code
12737         from current DOS or ANSI codepage) working correctly, as in other
12738         Windows apps.
12739
12740         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
12741         same argument validity tests as in X11 version.
12742         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
12743
12744         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
12745         definitions in case missing from headers.
12746
12747         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
12748         destroy the window-specific cursor.
12749         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
12750         calling GetModuleHandle(NULL).
12751         (gdk_window_set_cursor): Reworked to always copy the passed cursor
12752         with CopyCursor before setting it as the window-specific
12753         cursor. It is OK for the caller to destroy the GdkCursor (and thus
12754         also its Windows cursor) after calling this function. Destroy any
12755         previous window-specific cursor.
12756
12757 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
12758
12759         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
12760         font charset is iso8859-1, not iso-8859-1.
12761
12762 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
12763
12764         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
12765         Use g_get_charset() instead of g_get_codeset().
12766
12767         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
12768         Comment out some strdup'ing functions to keep timj
12769         happy until we finish fighting this out.
12770
12771 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
12772
12773         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
12774         <= width or height.
12775
12776         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
12777         from 1.2 for parent/child states.
12778
12779         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
12780         of typos.
12781
12782         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
12783         event structures, replace with a generic axes field. Replace 
12784         deviceid/sourec with GdkDevice *device.
12785
12786         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
12787         to extract particular axis use value from event. (Also
12788         can be used for normal X/Y.)
12789
12790         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
12791         allow for arbitrary number of axes, namespace everything
12792         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
12793         everywhere.
12794
12795         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
12796         Get rid of the gdk_input_vtable setup if favor of simply
12797         defining the functions in gdkinput-none/gxi/xfree.c in
12798         a similar fashion to the way that the port structure is 
12799         done.
12800
12801         * gtk/gtkdnd.c: Fix fields of synthesized button press event
12802         for new event structures. 
12803
12804         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
12805         new device interfaces.
12806
12807 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
12808
12809         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
12810         set the initial text.
12811
12812         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
12813         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
12814         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
12815         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
12816
12817         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12818         pango_layout_set_font_description to simplify.
12819
12820 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
12821
12822         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
12823         pango_layout_set_font_description to simplify.
12824
12825 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
12826
12827         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
12828         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
12829         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
12830
12831         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
12832         PANGO_PIXELS() macro.
12833
12834 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
12835
12836         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
12837         that returns a PangoContext owned by the widget and updated to
12838         match future changes in the widget. Also, make 
12839         gtk_widget_create_pango_layout() use this context. If we ever
12840         add a ::changed signal to PangoContext, this will make things
12841         much more convenient. 
12842
12843         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
12844         in the appropriate places instead of destroying the layouts and
12845         creating new ones.
12846
12847         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
12848         in a few strategic places.
12849
12850 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
12851
12852         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
12853         gtk_widget_size_request() on reparented child, if one. Otherwise,
12854         queue_resize() on the child never results in it getting size-requested
12855         at all.
12856
12857         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
12858         in option menus, so that (with luck) people won't copy it into
12859         their apps in the future.
12860
12861         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
12862         to gtk_option_menu_calc_size. This isn't perfect, but should fix
12863         a lot of problems with changing the size of the menu's menu
12864         items after adding it to the option menu.
12865
12866         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
12867
12868         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
12869         the text direction for a widget changes.
12870
12871         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
12872         ::direction_changed to get rid of various hacks.
12873
12874 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
12875
12876         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
12877         name.
12878
12879 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
12880
12881         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
12882         flag to the structure. Do not call XFreePixmap on pixmaps created
12883         by gdk_pixmap_foreign_new().
12884
12885 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
12886
12887         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
12888         value using GdkRGB functionality given GdkColormap and GdkColor.
12889         (name not final, waiting for inspiration.)
12890         
12891         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
12892         set the foreground/background of a GC using the GC's colormap
12893         and GdkRGB. (name not final, waiting for inspiration.)
12894
12895         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
12896         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
12897
12898         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
12899         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
12900         purely a function of the corresponding colormap. Make
12901         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
12902
12903         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
12904         gdk_pixbuf_*create_from_xpm_* in terms of
12905         gdk_pixbuf_new_from_xpm_data(), move into platform independent
12906         code.
12907
12908         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
12909         advantage of the new draw_rgb_32_image_dithalign.
12910
12911         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
12912
12913         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
12914         on each created GC.
12915
12916         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
12917
12918         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
12919         which we initialize from the drawable when the GC is created,
12920         if the drawable has a colormap.
12921
12922         * gdk/x11/gdkgc-x11.c: include string.h for memset.
12923
12924         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
12925
12926         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
12927
12928 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
12929
12930         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
12931         actually returning expose events, make sure to set
12932         the count field properly.
12933
12934         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
12935         accidentally reintroced bug which always cleared
12936         the graphics_exposures value. 
12937
12938 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
12939
12940         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
12941
12942 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
12943
12944         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
12945
12946 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
12947
12948         * docs/faq/gtk-faq.sgml: Start of Section 6.
12949
12950 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
12951
12952         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
12953         
12954         (Fixes problem with drawing childless frames. Pointed out
12955         by and a first patch from Anders)
12956         
12957         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
12958         compute a child_allocation, even if we don't have a child.
12959
12960         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
12961         Always chain to the parent's impl, even if we don't have a child.
12962
12963 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
12964
12965         * gdk/gdkrgb.c: If possible, create only a single shm segment and
12966         use multiple parts of it instead of creating a bunch of separate
12967         segments, since the maximum number of segments per system is not
12968         large. (This might be worth backporting to GTK+-1.2.x if we make a
12969         new release )
12970
12971         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
12972         structure in preparation for per-colormap GdkRGB.
12973
12974         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
12975         to False when we get EINVAL from shmget so that the caller of
12976         gdk_image_new can retry with a smaller segment size.
12977
12978 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
12979
12980         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
12981
12982 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
12983
12984         * configure.in: make the current version number 1.3.1 (binary age 0,
12985         interface age 0).
12986         
12987         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
12988         gtkcompat.h is all we want.
12989
12990         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
12991         GLib primitive types. fixed g_type_register_fundamental() argument
12992         ordering.
12993
12994         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
12995         compiles.
12996
12997         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
12998         object code cleanup, comment trigraph fixes, etc...
12999
13000 2000-06-23  Havoc Pennington  <hp@redhat.com>
13001
13002         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
13003         instead of making up a bogus name for first_para_mark
13004
13005         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
13006         0 as a context ID
13007
13008 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
13009
13010         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
13011
13012 2000-06-21  Havoc Pennington  <hp@pobox.com>
13013
13014         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
13015         we didn't check window->bg_pixmap != GDK_NO_BG.
13016
13017         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
13018         gdk-pixbuf
13019
13020 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
13021
13022         * docs/faq/gtk-faq.sgm: Move file to here.
13023           TODO: Update Makfile.am 
13024
13025 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
13026
13027         * docs/gtk-faq.sgm: Add Section 2
13028
13029 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
13030
13031         * docs/gtk-faq.sgm: New file. Start of DocBook
13032           version of the FAQ.
13033
13034 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
13035
13036         * configure.in (GDK_PIXBUF_MAJOR): Define version
13037         numbers for GDK_PIXBUF_*, as they get substituted
13038         into a header file. Need to consider versioning
13039         for gdk-pixbuf more carefully later.
13040
13041 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
13042
13043         Work with srcdir != builddir.   
13044         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
13045         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
13046         * demos/testpixbuf.c: Likewise.
13047         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
13048         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
13049         <gdk/x11/gdkx.h>.
13050         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
13051         "gdk-pixbuf.h".
13052         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
13053
13054 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
13055
13056         * TODO.xml: Change 1.4 version numbers to 2.0.
13057
13058 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
13059
13060         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
13061         fixups to GTK+ standard.
13062
13063 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
13064
13065         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
13066         gdk-pixbuf.
13067
13068         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
13069         fixups for GObject.
13070
13071         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
13072         gdk-pixbuf with GDK dependencies moved into GDK.
13073         
13074         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
13075         move gdk-pixbuf-loader here until GObject has signals.
13076
13077         * demos/: New directory of demos. Move demos from
13078         gdk-pixbuf here.
13079
13080         * demos/pixbuf-init.c: Small bit of code to check for
13081         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
13082         set GDK_PIXBUF_MODULEDIR appropriately.
13083
13084         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
13085         define which no longer makes sense.
13086
13087 2000-06-21  Havoc Pennington  <hp@redhat.com>
13088
13089         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
13090         gtk_get_default_language
13091
13092         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
13093         new function to get the default language
13094
13095         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
13096         s/gtk_text_view_style_values/gtk_text_style_values/
13097
13098         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
13099         Add a "language" field to tags.
13100
13101         (gtk_text_tag_set_arg): Fix bug in setting
13102         "bg_full_height_set" tag.
13103
13104 2000-06-21  Havoc Pennington  <hp@redhat.com>
13105
13106         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
13107         in the interfaces
13108
13109         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
13110         stuff instead when possible.
13111
13112         * gtk/gtktexttypes.h: Delete some unused constants
13113
13114         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
13115         testtextbuffer.c: use glib instead of custom unicode routines
13116
13117 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
13118
13119         * docs/es/: Removed mistakenly added generated sgml
13120
13121         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
13122         Remove outdated info files.
13123
13124         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
13125         Moved tutorial files into subdir
13126
13127         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
13128         subdir.
13129
13130         * docs/man/gtk_button.pod: Remove. (contents will be
13131         integrated into gtk-reference button page.)
13132
13133         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
13134         docs/faq/Makefile.am: Adjust for new organization
13135
13136 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
13137
13138         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
13139         not $(MKINSTALLDIRS)
13140
13141 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
13142
13143         * gtk/testgtk.c (create_text): Finish the job Elliot started
13144         of removing font setting test for text widget. (Since text widget
13145         and GdkFont are not deprecated, and cause portability problems.)
13146
13147 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
13148
13149         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
13150         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
13151         Remove use of libunicode in favor of new GLib functions.
13152
13153         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
13154         nano-x, framebuffer. The X11 include is just a hack until we get
13155         the necessary functions in gdkcolor.h, so there is no reason to
13156         add other includes of platforms.
13157
13158         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
13159         window bigger than the screen change.
13160
13161         * gtk/testgtk.c: Revert some random changes from Elliot
13162         that had no particular point and were causing testgtkrc
13163         not to function correctly.
13164         
13165         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
13166         because GdkSegment and GdkRegionBox have the same fields,
13167         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
13168         results in clearer code.
13169
13170         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
13171         gdk_input_translate_coordinates): Fix missed GdkObjectification
13172
13173 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13174
13175         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
13176         * gtk/gtk{plug,socket}.h: Missed commits from previous.
13177
13178 2000-06-20  Havoc Pennington  <hp@redhat.com>
13179
13180         * modules/linux-fb/Makefile.am: Make this compile
13181         without framebuffer enabled
13182
13183         * gdk/linux-fb/Makefile.am: Add conditional to not build
13184         framebuffer unless specified in configure
13185
13186         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
13187         the size of the target instead of source if -1 was passed for
13188         width/height
13189
13190         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
13191         width/height confusion.
13192
13193 2000-06-19  Havoc Pennington  <hp@redhat.com>
13194
13195         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
13196         GDK_DRAWABLE_XID. In the future, we probably want to make it
13197         faster with G_DISABLE_CHECKS turned on.
13198
13199 2000-06-14  Havoc Pennington  <hp@redhat.com>
13200
13201         * gdk/Makefile.am: add gdkpixmap.c
13202
13203         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
13204         s/gdk_image_init/_gdk_windowing_image_init
13205
13206         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
13207         ref/unref
13208
13209         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
13210
13211         * gdk/gdkcompat.h: remove GdkWindowType compat, since
13212         GdkWindowType is now non-deprecated; 
13213         change gdk_window_get_type() compat to be
13214         gdk_window_get_window_type().
13215
13216         * gdk/gdkdnd.h: make GdkDragContext a GObject.
13217
13218         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
13219         virtual GObject. Make all functions call into the vtable.
13220         Move gdk_image_put() guts in here. Remove GdkDrawableType
13221         and gdk_drawable_get_type(), these are now GdkWindow-specific.
13222         draw_image, get_depth, get_size, set_colormap, get_colormap,
13223         get_visual added to the vtable.
13224         
13225         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
13226         GObject. Virtualize everything. 
13227         (gdk_gc_new_with_values): remove check for destroyed window,
13228         because now GdkWindow::create_gc will check this.
13229         (gdk_gc_set_values): New function to set GC values, this 
13230         was already implemented but wasn't in the header
13231
13232         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
13233
13234         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
13235         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
13236         remove _gdk_window_class; add _gdk_window_impl_get_type() and
13237         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
13238         _gdk_windowing_window_init, rename gdk_image_init to
13239         _gdk_windowing_image_init.
13240         
13241         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
13242         (gdk_draw_layout): Remove check for destroyed window, 
13243         because all the drawable methods already check it.
13244         
13245         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
13246         Add gdkpixmap.c which contains implementation of GdkDrawable
13247         virtual table (by chaining to a platform-specific implementation
13248         object).
13249         
13250         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
13251         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
13252         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
13253         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
13254         GdkColormapPrivate. 
13255
13256         * gdk/gdktypes.h: #include <glib-object.h>
13257
13258         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
13259         Move most functionality to platform-specific implementation
13260         object. GdkWindow itself now handles the backing store, then
13261         chains to the platform-specific implementation.
13262         (gdk_window_get_window_type): return GdkWindowType of the window.
13263         (gdk_window_peek_children): New routine, returns the children of 
13264         a GdkWindow
13265         (gdk_window_get_children): Was in X11-specific code and did 
13266         XQueryTree. Changed to simply return a copy of window->children; 
13267         so it can go in cross-platform code.
13268         
13269         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
13270
13271         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
13272         GdkColormap; just changed to use the new private data instead
13273         of casting to GdkColormapPrivate.
13274
13275         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
13276         gdk_cursor_new().
13277
13278         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
13279         (private data member in the GObject). 
13280         (xdnd_manager_source_filter): Function had broken 
13281         error handling, fix it (use gdk_error_trap_push).
13282
13283         * gdk/x11/gdkdrawable-x11.c: This file now implements
13284         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
13285         base class is purely for the convenience of the X port,
13286         and not part of the interface to cross-platform GDK.
13287
13288         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
13289         
13290         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
13291         specific to X, and returned by the create_gc virtual method
13292         of GdkDrawableImplX11. 
13293         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
13294         rather than gchar, this was also changed in the GdkGC vtable.
13295         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
13296         mask is 0, return immediately, instead of checking every flag.
13297         This is faster, and keeps us from segfaulting if values is NULL
13298         and the mask contains some nonzero flags.
13299
13300         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
13301         GdkWindow.
13302
13303         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
13304         GdkWindowPrivate is gone.
13305
13306         * gdk/x11/gdkim-x11.c: rename things that got renamed.
13307
13308         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
13309         remove the image_put stuff that got transferred to GdkDrawable.
13310         
13311         * gdk/x11/gdkinput.c: renamings
13312
13313         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
13314
13315         * gdk/x11/gdkpixmap-x11.c: GObject conversion
13316
13317         * gdk/x11/gdkprivate-x11.h: indentation fixes
13318
13319         * gdk/x11/gdkproperty-x11.c: renamings
13320
13321         * gdk/x11/gdkselection-x11.c: renamings
13322
13323         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
13324         implements the platform-specific "impl" object.
13325         Moved gdk_window_get_children to gdk/gdkwindow.c
13326
13327         * gdk/x11/gdkx.h: Remove all the private structs and private datas
13328         that no longer exist. Add declaration of GdkGCX11 object here.
13329         Fix all the macros to still work. 
13330
13331         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
13332         GdkDragContext from the boxed types since they are now GObjects.
13333
13334         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
13335         moved xthickness/ythickness into the instance. GtkStyleClass
13336         functions are now in the standard vtable for GtkStyle, so you have
13337         to create a GObject subclass to write a theme engine.
13338         (gtk_style_copy): fixed a leaked PangoFontDescription
13339         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
13340         can be the standard GObject function.
13341         
13342         * Throughout GTK:
13343         s/style->klass->[xy]thickness/style->[xy]thickness
13344         s/pango_layout_unref/g_object_unref/
13345
13346         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
13347         
13348         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
13349         accessing GDK internals.
13350
13351         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
13352         accessing GDK internals.
13353
13354 2000-06-18  Elliot Lee  <sopwith@redhat.com>
13355
13356         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
13357
13358         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
13359         problem by calculating event position relative to the trough
13360         rather than the slider.
13361         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
13362
13363         * gdk/gdkgc.h: Add GDK_NOR.
13364
13365         * configure.in, Makefile.am: Add modules top level dir
13366         * configure.in: Only use pangox library if building x11 target.
13367         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
13368
13369 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13370
13371         * gtk/gtkcolorsel.c: Change private class member to be named
13372         private_data throughout the file.
13373
13374         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
13375         private_data to avoid clashing with keyword.
13376
13377 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
13378
13379         * gdk/gdkdnd.h: Add comment to remove warning.
13380
13381 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
13382
13383         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
13384         Byelorussian language; changed the Makefile and file names 
13385         to reflect that.
13386
13387 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
13388
13389         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
13390         rather than gdk_window_hide; this makes things work
13391         correctly if the window is programmatically hidden while
13392         iconified.
13393
13394 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
13395
13396         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
13397         cut and paste typo where wrong pixmap was being
13398         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
13399
13400 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
13401
13402         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
13403         Add helper function to compute format / bytes 
13404         relationship. Use in a couple places to fix up
13405         errors which assume 8 * format.
13406
13407         * gtk/gtkselection.c (gtk_selection_request): Use 32
13408         rather than 8 * sizeof (GdkAtom), to work correctly
13409         on Alpha.
13410
13411 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
13412
13413         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
13414         libgtk.la
13415         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
13416         versions
13417
13418         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
13419         checking macros return NULL since the function has a return value.
13420
13421 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
13422
13423         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
13424         GTK+ from building at all.
13425
13426         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
13427
13428 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
13429
13430         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
13431         gtk/Makefile.am: make it possible to configure gtk for different
13432         targets on the same platform. The library name is now 
13433         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
13434         flag. Only the x11 target compiles right now.
13435         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
13436         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
13437         * gdk/nanox/gdk*generic*: delete generic region code.
13438         * gdk/linux-fb/gdk*generic*: delete generic region code.
13439         * README.nanox: update information.
13440         
13441 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
13442
13443         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
13444         prepend not append. (Pointed out by Brett Hall.)
13445
13446 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
13447
13448         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
13449
13450 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
13451
13452         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
13453         need this later, and this makes sure that the atexit for
13454         glib gets called after that for GDK, so atexits are
13455         properly ordered for object leak checking.
13456
13457         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
13458
13459         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
13460         pango_x_shutdown_display()
13461
13462         * gtk/simple.c (main): Close window on destroy.
13463
13464 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
13465
13466         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
13467         to treat initial creation different from setting with 
13468         regards to the graphics-exposures parameter, so add a parameter
13469         indicating whether this is initial or not.
13470
13471 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
13472
13473         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
13474         to sort of work by adding an extra return_exposes arg
13475         to gdk_event_translate() - it might be better to simply
13476         deprecate the function altogether and force people to rewrite
13477         without it. gdk_window_scroll() handles most of it, and where
13478         gdk_window_scroll() doesn't work, simply redrawing more does.
13479
13480         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
13481         assertion.
13482
13483         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
13484
13485         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
13486         bunch of pretty much useless /* Print debugging info */ comments 
13487         which had drifted away from the code they were commenting.
13488
13489 2000-06-02  Havoc Pennington  <hp@pobox.com>
13490
13491         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
13492         is in working order.
13493         
13494         * gtk/testtext.c: Change to reflect anonymous mark API
13495
13496         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
13497
13498         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
13499         field, which was unused.
13500
13501         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
13502         saves some typing.
13503
13504         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
13505
13506         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
13507         flag on the insertion point and selection bound
13508
13509         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
13510         make mark-manipulation functions take a GtkTextMark* instead of a
13511         mark name.
13512         
13513         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
13514         GtkTextMarkBody; will be used to detect attempts to delete
13515         the permanent marks (insert and selection bound)
13516
13517         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
13518
13519 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
13520
13521         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
13522         flag to on.
13523
13524         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
13525         Honor DOUBLE_BUFFRED_FLAG
13526
13527         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
13528         function to set the DOUBLE_BUFFERED flag.
13529
13530         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
13531         or not exposes done on the widget should be double-buffered.
13532
13533         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
13534         to be what would be expected. (Fixes problem with a
13535         g_return_if_fail() validating a TextDirection enumeration)
13536
13537 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
13538
13539         * gtk/gtkwidget.c: Remove all references to 
13540         offscreen flag which was no longer used.
13541
13542         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
13543
13544         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
13545         for non-null label_widget->parent.
13546
13547         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
13548         which no longer was used.
13549
13550         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
13551
13552         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
13553         for null arguments.
13554
13555         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
13556         check for destroyed windows.
13557
13558 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
13559
13560         * gtk/gtkimmulticontext.c: Add a finalize method and unref
13561         the slave context there.
13562
13563         * gtk/gtkinvisible.[ch]: Make reference counting behavior
13564         identical to GtkWindow.
13565
13566 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
13567
13568         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
13569         pangox to here, so we can write them independent of rendering
13570         system, using GDK primitives.
13571
13572         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
13573         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
13574         since we have a rendering-system independent implementation in
13575         terms of draw_glyphs().
13576         
13577         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
13578         function to render a single line.
13579
13580         * gdk/x11/gdkpango.c: Move the guts of this file mostly
13581         into ../gdkpango.c, which simplifies things, since we
13582         don't have to deal with raw X gc's.
13583
13584 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
13585
13586         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
13587         get the logical attributes for a given GtkTextLine.
13588
13589 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
13590
13591         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
13592         g_locale_get_codeset() to g_get_codeset() change.
13593
13594 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
13595
13596         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
13597         descriptions.
13598
13599         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
13600         the entry.
13601
13602         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
13603         redoing (vastly simplifying) for Pango. Still needs quite
13604         a bit of work. (Size selection is currently poor. List of 
13605         predefined sizes is not a good idea, since all of these
13606         sizes won't necessarily be distinct.)
13607
13608 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
13609
13610         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
13611         CODESET results for LANG=C.
13612
13613 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
13614
13615         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
13616         which takes a stringized pango font description;
13617         ignore the older 'font' and 'fontset' declarations.
13618
13619         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
13620         field with a GdkFont derived via gdk_font_from_description(),
13621         for compatibility. (Should we just remove it entirely?
13622         Probably too much compatibility breakage, but people
13623         should be migrating to the new Pango stuff as quickly
13624         as possible.)
13625
13626 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
13627
13628         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
13629
13630 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
13631
13632         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
13633         redoing; there are some bugs in size allocation right
13634         now, the semi-existant distinction between header / day
13635         fonts was removed, but, with Pango, could actually
13636         be made functional in a nice way.
13637         
13638         * gtk/testcalender: Move calender from examples into this
13639         directory as a test program. (We really need to restrcture
13640         testgtk into a whole directory full of tests for every
13641         widget or functionality group, separated into multiple .c
13642         files.)
13643
13644 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
13645
13646         * gtk/testgtk.c (file_exists): Fix stupid typo that
13647         was keeping RC file from being loaded.
13648
13649         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
13650         RC file font code.
13651
13652 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
13653
13654         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
13655         Add function to load a GdkFont from a PangoFontDescription.
13656
13657 2000-05-29  Tor Lillqvist  <tml@iki.fi>
13658
13659         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
13660         variable should be of type GdkEventPrivate.
13661
13662 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
13663
13664         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
13665         to have any widget for the label, use a GtkLabel widget
13666         to display the text. (Based partially on a patch from
13667         Anders Carlson.)
13668
13669         (Quite a bit of code reorganization - strip 90% of the
13670         guts out of gtkaspectframe and add a single virtual
13671         func to GtkFrameClass - compute_child_allocation.)
13672
13673 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
13674
13675         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
13676         (Removed clist->row_center_offset field because caching
13677         it wasn't saving time or code, added private function
13678         _gtk_clist_create_cell_layout()).
13679
13680 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
13681
13682         * gtk/gtkaccellabel.c: Pangoized.
13683
13684         * gtk/[hv]ruler.c: Pangoized
13685
13686 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
13687
13688         * gtk/gtkfilesel.c (gtk_file_selection_init):
13689         Use gtk_clist_set_column_auto_resize() to remove need
13690         need for manual column width computations.
13691
13692 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
13693
13694         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
13695         ensuring Pango correctness, and considerably simplifying the
13696         code.
13697         
13698         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
13699
13700         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
13701         getting of numbers of lines.
13702
13703         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
13704         to the actual requested width of the lable, not to the wrap
13705         width we set.
13706
13707         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
13708
13709         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
13710           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
13711
13712         * gtk/gtktextview.c: Fix structure inheritance.
13713
13714         * gtk/gtkprogressbar.c: Pangoize.
13715
13716 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
13717
13718         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
13719         in a function.
13720
13721         * gtk/gtktextlayout.c (find_display_line_above): Fixed
13722         bug with computing line tops.
13723
13724         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
13725
13726 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
13727
13728         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
13729         and y_offset coordinates to do what we need now. (The offset between
13730         buffer and layout coordinates has been reintroduced, but is a 
13731         bit different than before.)
13732
13733         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
13734         handle the adjustments ourselves, and scroll as necessary using
13735         the new gdk_window_scroll().
13736         
13737         The advantage of this is that when we are incrementally revalidating,
13738         we are essentially rearranging things around the visible portion
13739         of the screen. With the old setup, the visible portion of the
13740         screen was moved around in the layout, so scrolling and redrawing
13741         to track that caused jumping of the display. Since we now
13742         control the scrolling ourselves, we can suppress this and
13743         only redraw when things actually change.
13744
13745 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
13746
13747         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
13748         the region not just redisplay it after-all, since we store the
13749         cursors in the LineDisplay. (Ugly interactions here between
13750         GtkLayout and GtkTextBTree here.)
13751         
13752         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
13753
13754 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
13755
13756         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
13757         Added function to scroll contents of a window while keeping the
13758         window constant. Works by XCopyArea or guffaw-scrolling depending
13759         on the details of how the window is set up. (guffaw-scrolling
13760         still needs to be filled in.)
13761
13762 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
13763
13764         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
13765         move the debugging that was tied to a global variable
13766         to that.
13767
13768         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
13769
13770         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
13771         validated flag, in line data instead of setting height/width to
13772         -1. This allows us to perform operations with partially invalid
13773         buffer (using the old size for invalid lines) and thus to do
13774         incremental vaidation. Keep height/width aggregates up to date
13775         when deleting text and rebalancing the tree.
13776
13777         * gtk/gtktextbtree.[ch]: Add functions validate a line
13778         (gtk_text_btree_validate_line), and to validate up
13779         to a number of pixels (gtk_text_btree_validate).
13780
13781         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
13782         that indicates that something is changed and a revalidation
13783         pass is needed. Change ::need_repaint to ::changed, and
13784         make it take old and new yranges instead of a rectangle.
13785
13786         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
13787         the line_data_destroy() function from 
13788         gtk_text_btree_add_view() to a virtual function in 
13789         GtkTextLayout
13790
13791         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
13792         since we are handling partial repaints in a different fashion
13793         now.
13794
13795         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
13796         of the selection instead of queueing a repaint on the
13797         entire widget.
13798
13799         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
13800         get_selection_bounds() down to btree, make the function
13801         in buffer a wrapper around the btree function.
13802
13803         * gtk/gtktextlayout.[ch]: Add functions to check if the
13804         layout is valid and to recompute either a range of pixels
13805         aroudn a line or a certain total number of pixels.
13806
13807         * gtk/gtktextlayout.[ch]: Cache a single line display;
13808         now that we only redraw the needed portions, the hit rate
13809         for this cache is quite high.
13810         
13811         * gtk/gtktextview.[ch]: Keep track of the first paragraph
13812         on the screen so that when re-laying-out the buffer, we can
13813         keep the same place. This requires connecting to ::value_changed
13814         on the adjustments
13815
13816         * gtk/gtktextview.[ch]: Add idle functions to revalidate
13817         the buffer after we receive an ::invalidated signal.
13818         
13819 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
13820
13821         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
13822         to max of allocation and layout size, not just to the
13823         layout size.
13824
13825         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
13826         Invalidate window so it gets redrawn properly.
13827
13828         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
13829         to mean the entire window.
13830
13831         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
13832         into public header.
13833
13834 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
13835
13836         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
13837         to get the name of a mark.
13838
13839         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
13840         to find the paragraph from a y position.
13841
13842 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
13843
13844         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
13845         nodes have width/height >= 0, not > 0.
13846
13847 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
13848
13849         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
13850         Add a size_only flag, so when we only need the size, we don't create
13851         useless appearance attributes.
13852
13853         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
13854         duplicate setting of font description.
13855
13856         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
13857
13858 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
13859
13860         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
13861         EXTRA_DIST. It does not work well when the file that
13862         everything depends on is not in the tarball.
13863
13864 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
13865
13866         * gtk/testgtk.c: Some hacks and fixes so that it basically
13867         works when not sitting in the GTK+ build tree.
13868
13869 2000-05-03  Havoc Pennington  <hp@redhat.com>
13870
13871         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13872         Properly determine the ordering of the tag root and the current
13873         line within the tree. Previous algorithm only worked if the tag
13874         root's immediate parent was the common root of both the current
13875         line and the tag root.
13876
13877 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
13878
13879         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
13880         alignment.
13881
13882         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
13883         the widget text directional dynamically.
13884
13885         * gtk/gtktextview.[ch]: Added functions to get and set default
13886         wrap mode.
13887
13888 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
13889
13890         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
13891         in cursor location computation.
13892
13893 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
13894
13895         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
13896         vadjusment values properly when layout gets smaller.
13897
13898         * gtk/gtktextview.c (need_repaint_handler): Areas being
13899         passed in are far completely inaccurate, and sometimes
13900         too small, so, for now, just queue a redraw on the
13901         whole visible region.
13902
13903 2000-04-25  Havoc Pennington  <hp@redhat.com>
13904
13905         * gtk/gtktextbtree.c (summary_destroy): new function to 
13906         destroy tag summary nodes
13907         (gtk_text_line_next_could_contain_tag): this function was 
13908         totally broken if the line passed in wasn't below the tag
13909         root. Fix it.
13910         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
13911         "wildcard" case, we have to do a linear scan. Blah.
13912         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
13913         we have to do the linear scan
13914         (tag_removed_cb): When a tag is removed from the tag table, 
13915         remove the GtkTextTagInfo node from the btree.
13916         (gtk_text_btree_spew): Implement the spew function, for 
13917         our debugging pleasure.
13918
13919 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
13920
13921         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
13922         a problem with referring to the wrong buffer.
13923
13924         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
13925
13926         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
13927         font description to gtk_style_new() - otherwise things
13928         don't work without a .gtkrc file.
13929
13930         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
13931         tags table if we create it ourself, too.
13932
13933         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
13934         it was conflicting with XKB modifiers.
13935
13936         * gtk/gtktextview.[ch]: Add simple support for 
13937         GtkIMContext.
13938
13939 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
13940
13941         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
13942         with deletion from last commit.
13943
13944 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
13945
13946         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
13947         in the context from the current locale.
13948         
13949         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
13950         context, not hardcoded value.
13951
13952         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
13953         not logical.
13954
13955 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13956
13957         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
13958         attributes - that doesn't handle partial-glyph selection
13959         properly. Instead use new pango_layout_line_get_x_ranges()
13960         functionality to draw the selection.
13961
13962         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
13963         now properly handles out-of-range coordinates.
13964
13965         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
13966
13967         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
13968         public.
13969
13970         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
13971         for paragraphs opposite to the base direction of the widget.
13972
13973         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
13974
13975         * gtk/gtktextlayout.c: Don't split segments on marks, since that
13976         causes Arabic words to reshape as you cursor through.
13977
13978         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
13979         cursor position when moving vertically with the arrow keys and
13980         scrolling with page-up/page-down. (Arrow keys save only the X,
13981         scrolling saves both X and Y.)
13982
13983         This means you can line-up / line-down or page-up / page-down
13984         without losing your place, and also that moving vertically
13985         with the cursor keys keeps the same X position, not the same
13986         character count:
13987
13988         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
13989         arrow keys move by display lines, not paragraphs.
13990
13991 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
13992
13993         * gtk/gtklayout.c: Make sure that the bin window is at least
13994         as big as the allocation. (Should we also make sure that the
13995         bin window is big enough to completely cover widget->window?)
13996
13997         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
13998         function to get the onscreen rectangle.
13999
14000         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
14001         for offsets in window coordinates.
14002
14003 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
14004
14005         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
14006         confusion.
14007
14008         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
14009         from the widget direction.
14010
14011         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
14012         Add a "direction" attribute.
14013
14014         * gtk/gtktextview.c: global s/tkxt/text_view/.
14015
14016         * gtk/testtext.c: Added long block of text in Arabic, to test out
14017         the direction attributes. (Some problems with the shaping system
14018         for arabic become obvious - like the fact the cursor splits words
14019         into unjoined pieces.)
14020
14021 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
14022
14023         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
14024
14025         * gtk/gtktextlayout.c: Fix up alignment.
14026
14027         * gtk/testtext.c: Add some tests for centering, wrapping.
14028
14029 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
14030
14031         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14032         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
14033         If we wrote GTK+-specific layout-render function this could just replace
14034         the draw_layout() operation in the vtable.
14035
14036         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
14037         pango_layout_get_cursor_pos() and use that function.
14038
14039         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
14040         is a non-static symbol.
14041
14042         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
14043         with gtk_text_btree_find_line_by_y()
14044
14045         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
14046         renderer that handles GtkTextAppearance attributes.
14047
14048         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
14049
14050           - Move the values in the style that don't affect geometry into a
14051             GtkTextAppearance structure.
14052           - Change underline to take a PangoUnderline and "font" a string
14053             representation of a font description
14054           - Add a "font_desc" attribute which takes a FontDescription structure.
14055
14056         * gtk/gtktextlayout.[ch]:
14057
14058           - Get rid of the display-line list per each line. Instead, we
14059             generate, on demand, a GtkTextLineDisplay structure which]
14060             contains a PangoLayout * and other necesary information
14061             (offsets, cursor locations) for displaying a paragraph.
14062           - Get rid of the code to wrap lines, create display chunks,
14063             etc. Instead, we just go through a paragraph and convert
14064             it into the necessary inputs to a PangoLayout.
14065           - Implement a new attribute type, GtkTextAttrAppearance. This
14066             holds a GtkTextAppearance, and is used to pass colors, 
14067             stipple, etc, through from the layout to the display without
14068             having to use lots and lots of individual attributes.
14069           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
14070             in terms of PangoLayout functions.
14071         
14072         * gtk/gtktextview.c: 
14073          
14074           - Handle passing the necessary PangoContext to the layout
14075           - Some fixups in painting to deal with the automatic backing store
14076             and offsetting of GTK+-1.4
14077           - Add a style_set handler so that the default style reacts
14078             properly to theme changes.
14079         
14080         * gtk/gtktext?*.[ch]: Random code-style fixes.
14081
14082         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
14083
14084 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
14085
14086         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
14087         in original form preparatory to Pango-ization and gdkimcontext-ization.
14088
14089 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
14090
14091         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
14092         so that we can derive from gtkimcontext in language bindings properly.
14093
14094 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
14095
14096         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
14097         Add a compose table including (almost) all the compose combinations
14098         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
14099         data in the XIM implementation.
14100
14101         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
14102         Moved functions to convert keyvalues from and to unicode here from
14103         the win32 port and made them public.
14104
14105 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
14106
14107         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
14108
14109 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
14110
14111         * gtk/gtkimcontext.[ch]: Base class for new input context system
14112
14113         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
14114         the real input context implementation to be loaded from modules
14115         and switched on the fly.
14116
14117         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
14118         context that just does direct keysymbol => unicode translation.
14119
14120         * gtk/gtkentry.[ch]: Start switching editing over to using
14121         GtkInputContext. (No handling of preedit yet.)
14122
14123 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
14124
14125         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
14126         many substitutions. (klass should not be subsituted.)
14127
14128 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
14129
14130         * configure.in: Add checks for Pango
14131
14132         * configure.in docs/Makefile.am: Add test for sgml2html
14133         and allow 'make dist' without building html, but print out
14134         warnings in that case. (For making snapshots)
14135
14136         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
14137         Add Pango libraries and C flags
14138
14139         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
14140         Add function (gdk_draw_layout) to draw a pango layout.
14141
14142         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
14143         for getting Pango contexts for GDK.
14144
14145         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
14146
14147         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
14148         editing.
14149
14150         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
14151         keysym => unicode translations. More languages can be added
14152         here, but real input-method support is needed.
14153
14154         * docs/Changes-1.4.txt: Added note about entry behavior.
14155         
14156         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
14157         to set the reading direction for a widget and the global direction.
14158         Add test which allows toggling the global direction. Two private
14159         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
14160
14161         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
14162           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
14163
14164         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
14165
14166         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
14167         underlining now handled by Pango.
14168
14169         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
14170         to RCStyle and Style. (Having both this and the old font name and GdkFont 
14171         is temporary.)
14172
14173         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
14174         convenience functions for creating contexts and layouts for widgets.
14175
14176         * gtk/testgtk.c: Enhance label tests with multilingual labels.
14177
14178 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
14179
14180         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
14181         titles to be active, even if they aren't visible.
14182         (gtk_clist_column_titles_passive):  Ditto.
14183
14184 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
14185
14186         * gtkmenu.c:
14187         * gtkmenu.h:
14188         * gtktypeutils.h: Spelling/grammar fixes in comments.
14189
14190 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
14191
14192         * gdk/nanox/*.h: add missing header files.
14193
14194 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
14195
14196         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
14197         send_event to TRUE.
14198         (gtk_drawing_area_size): queue a resize.
14199
14200 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
14201
14202         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
14203         the handlers, also invalidate them. bug nailed down by Karl Nelson
14204         <kenelson@ece.ucdavis.edu>.
14205
14206 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
14207
14208         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
14209         "(nil)" foundries, patch from Grigorios Magklis.
14210
14211         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
14212         on non-available fonts, based on a patch by Grigorios Magklis
14213         <maglis@cs.rochester.edu>.
14214
14215 2000-05-18  Elliot Lee  <sopwith@redhat.com>
14216
14217         * gdk/x11/gdkregion-generic.c: If a region does not have any
14218         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
14219         instead of GDK_OVERLAP_RECTANGLE_IN.
14220
14221 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
14222
14223         * gtk/gtklayout.c (gtk_layout_map): Remove references to
14224         OFFSCREEN, as it is no longer necessary.
14225
14226 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
14227
14228         * gtk/gtkcolorsel.c: Patch from David Santiago
14229         <mrcooger@cyberverse.com> to change things so that the 
14230         indicator of the active palette entry is done independently,
14231         not via the focus, since it should always be visible.
14232
14233 2000-05-17  Tor Lillqvist  <tml@iki.fi>
14234
14235         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
14236         refcount leaks as in the X11 backend.
14237
14238         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
14239         cosmetics.
14240
14241         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
14242         backend. Add _gdk_windowing_window_destroy().
14243
14244         * gtk/gtkcolorsel.c: Include correct backend-specific header.
14245         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
14246         either, but these probably do exist on nanox?)
14247         
14248         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
14249         which isn't necessarily defined by <math.h>.
14250
14251         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
14252         ancestry past GtkObject.
14253
14254         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
14255         from DLL on Win32.
14256
14257         * gtk/gtk.def: Update corresponding to recent changes.
14258
14259         * gtk/makefile.{cygwin,msc}: Updates.
14260
14261 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
14262
14263         * docs/Changes-1.4.txt: A bit of editing.
14264
14265         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
14266         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
14267         to clear the update area for the window, and clear it
14268         when hiding a window.
14269
14270         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
14271         if window destroyed.
14272
14273         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
14274
14275         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
14276         gdk_window_destroy() to the generic code, since there was a lot of 
14277         window-system-independent logic it in. Add a function:
14278         
14279          _gdk_window_destroy() 
14280
14281         to the internal API to destroy a window without unreferencing it.
14282         Add a function:
14283
14284          _gdk_windowing_window_destroy()
14285
14286         That does the windowing-system-dependent part of destroying 
14287         the window.
14288
14289 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
14290
14291         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
14292
14293 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
14294
14295         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
14296         Make gtk_widget_shape_combine_mask() keep a reference count on
14297         the pixmap since it keeps it around.
14298
14299 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
14300
14301         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
14302         leak.
14303
14304         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
14305         leak with event filters.
14306
14307 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
14308
14309         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
14310         signal handlers with the right data arguments. (Fixes
14311         some warnings when a widget was repeatedly set as a drag
14312         destination.)
14313
14314         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
14315         window so we can avoid avoid setting the DND properties on the
14316         toplevel window repeatedly.
14317
14318 2000-05-13  Tor Lillqvist  <tml@iki.fi>
14319
14320         * gdk/win32/gdkwin32.h: Define more message types missing from
14321         mingw headers.
14322
14323         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
14324         call gdk_window_destroy_notify(). It was never called. This
14325         probably meant that the GdkWindow was never freed. Thanks Owen for
14326         noticing (!).
14327
14328         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
14329         window as destroyed before calling DestroyWindow(). DestroyWindow()
14330         causes a call to the window procedure (gdk_WindowProc), which
14331         calls gdk_event_translate(), which calls
14332         gdk_window_destroy_notify(), which gets confused unless the window
14333         is set as destroyed.
14334
14335         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
14336         this function to indicate it's win32 only. Put inside #ifdef
14337         G_ENABLE_DEBUG.
14338
14339         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
14340         debugging function. (gdk_event_translate:) Add a default branch
14341         that uses the above function to print debug messages with all
14342         Windows messages symbolically.
14343
14344         * gdk/win32/gdkprivate-win32.h: Declare it, and
14345         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
14346
14347 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
14348
14349         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
14350         public header file.
14351
14352 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
14353
14354         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
14355
14356         * gtk/gtktext.c: made the adjustments no-construct args, simply
14357         provide default adjustments.
14358         (gtk_text_destroy): release adjustments.
14359
14360         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
14361         adjustment argument non-construct.
14362
14363         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
14364         instead of in finalize.
14365         (gtk_progress_get_text_from_value): 
14366         (gtk_progress_get_current_text): 
14367         (gtk_progress_set_value): 
14368         (gtk_progress_get_percentage_from_value): 
14369         (gtk_progress_get_current_percentage): 
14370         (gtk_progress_set_percentage): 
14371         (gtk_progress_configure): ensure an adjustment is present.
14372
14373 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
14374
14375         * gtk/gtkcolorsel.[hc]:
14376         * gtk/gtkcolorseldialog.[hc]:
14377         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
14378         their parent implementation, use bit fields for boolean values, don't
14379         create unused widgets, usage of glib types, braces go on their own
14380         lines, function argument alignment, #include directives etc. etc. etc..
14381
14382         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
14383
14384 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
14385
14386         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
14387
14388         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
14389         of NULL.
14390
14391         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
14392         to freed data.
14393         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
14394
14395         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
14396         to NULL when the toplevel is getting destroyed.
14397         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
14398         (gtk_menu_destroy): 
14399         (gtk_menu_init): store the information of whether we have to
14400         readd the initial child ref_count during destruction in a new
14401         GtkMenu field needs_destruction_ref_count.
14402
14403         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
14404         here, those reading: learn from my mistake! ;)
14405         in order for set_?adjustment to support a default adjustemnt if
14406         invoked with an adjustment pointer of NULL, the code read (pseudo):
14407         if (v->adjustment) unref (v->adjustment);
14408         if (!adjustment) adjustment = adjustment_new ();
14409         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
14410         now imagine the first unref to actually free the old adjustment and
14411         adjustment_new() creating a new adjustment from the very same memory
14412         portion. here, the latter comparision will unintendedly fail, and
14413         all hell breaks loose.
14414         (gtk_viewport_set_hadjustment):
14415         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
14416         after unreferencing it.
14417
14418         * gtk/gtkcontainer.[hc]: removed toplevel registration
14419         functions: gtk_container_register_toplevel(),
14420         gtk_container_unregister_toplevel() and
14421         gtk_container_get_toplevels() which had wrong semantics
14422         anyways: it didn't reference and copy the list.
14423
14424         * gtk/gtkwindow.c: we take over the container toplevel registration
14425         bussiness now. windows are registered across multiple destructions,
14426         untill they are finalized. the initial implicit reference count
14427         users are holding on windows is removed with the first destruction
14428         though.
14429         (gtk_window_init): ref & sink and set has_user_ref_count, got
14430         rid of gtk_container_register_toplevel() call. add window to
14431         toplevel_list.
14432         (gtk_window_destroy): unref the window if has_user_ref_count
14433         is still set, got rid of call to
14434         gtk_container_unregister_toplevel().
14435         (gtk_window_finalize): remove window from toplevel list.
14436         (gtk_window_list_toplevels): new function to return a newly
14437         created list with referenced toplevels.
14438         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
14439
14440         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
14441         adjustment a non-construct arg.
14442         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
14443         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
14444         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
14445
14446         * gtk/gtkrange.c: added some realized checks.
14447         (gtk_range_destroy): get rid of the h/v adjustments in the
14448         destroy handler instead of finalize. remove timer.
14449         (gtk_range_get_adjustment): demand create adjustment.
14450
14451         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
14452         we simply create them on demand now and get rid of them in
14453         the destroy handler.
14454         (gtk_viewport_destroy): get rid of the h/v adjustments in the
14455         destroy handler instead of finalize.
14456         (gtk_viewport_get_hadjustment): 
14457         (gtk_viewport_get_vadjustment): 
14458         (gtk_viewport_size_allocate): demand create h/v adjustment
14459         if required.
14460
14461         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
14462         gtk_widget_real_destroy () functionality.
14463         (gtk_widget_real_destroy): reinitialize with a new style, instead
14464         of setting widget->style to NULL.
14465
14466 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
14467
14468         * gtk/gtkcalendar.c:
14469         * gtk/gtkbutton.c: ported _get_type() implementation over to
14470         GType, either to preserve memchunks allocation facilities,
14471         or because Gtk+ 1.0 GtkTypeInfo was still being used.
14472
14473         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
14474         over. prepare for ::destroy to be emitted multiple times.
14475         removed reference tracer magic. chain into GObjectClass.shutdown()
14476         to emit ::destroy signal.
14477
14478         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
14479         fundamental.
14480
14481         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
14482         cludge.
14483
14484         * gtk/gtksocket.c:
14485         * gtk/gtkplug.c:
14486         * gtk/gtklayout.c:
14487         * gtk/gtklabel.c:
14488         * gtk/gtkargcollector.c:
14489         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
14490         not being a fundamental anymore, and to work with the new
14491         type system (nuked fundamental type varargs clutter).
14492
14493         * gtk/*.c: install finalize handlers in the GObjectClass
14494         part of the class structure.
14495         changed direct GTK_OBJECT()->klass accesses to
14496         GTK_*_GET_CLASS().
14497         changed direct object_class->type accesses to GTK_CLASS_TYPE().
14498
14499         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
14500         GType. made most of the GTK_*() type macros and Gtk* typedefs
14501         simple wrappers around macros and types provided by GType.
14502         most notably, a significant portion of the old API vanished:
14503         GTK_TYPE_MAKE(),
14504         GTK_TYPE_SEQNO(),
14505         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
14506         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
14507         GTK_TYPE_ARGS,
14508         GTK_TYPE_CALLBACK,
14509         GTK_TYPE_C_CALLBACK,
14510         GTK_TYPE_FOREIGN,
14511         GtkTypeQuery,
14512         gtk_type_query(),
14513         gtk_type_set_varargs_type(),
14514         gtk_type_get_varargs_type(),
14515         gtk_type_check_object_cast(),
14516         gtk_type_check_class_cast(),
14517         gtk_type_describe_tree(),
14518         gtk_type_describe_heritage(),
14519         gtk_type_free(),
14520         gtk_type_children_types(),
14521         gtk_type_set_chunk_alloc(),
14522         gtk_type_register_enum(),
14523         gtk_type_register_flags(),
14524         gtk_type_parent_class().
14525         replacements, where available are described in ../docs/Changes-1.4.txt.
14526         implemented compatibility functions for the remaining API.
14527
14528         * configure.in: depend on glib 1.3.1, use gobject module.
14529
14530 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
14531
14532         * TODO.xml: Various updates to current status.
14533
14534 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
14535
14536         * gtk.m4: Print out version when test succeeds.
14537
14538 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
14539
14540         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
14541         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
14542         
14543         (Original triangle color selector from Simon Budig
14544         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
14545         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
14546         Santiago <mrcooger@cyberverse.com>)
14547
14548         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
14549         out into a separate widget.
14550
14551         * gtk/testgtk.c: Add some checkbuttons for toggling palette
14552         and opacity controls.
14553
14554 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
14555
14556         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
14557         snuck in prematurely.
14558
14559 2000-05-07  Tor Lillqvist  <tml@iki.fi>
14560
14561         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
14562         had deleted a ! operator by mistake, which caused
14563         GDK_SELECTION_CLEAR events never to be generated, which caused
14564         only the first copy to the clipboard from an gtkeditable to
14565         actually cause a copy to the Windows clipboard.
14566
14567 2000-05-06  Tor Lillqvist  <tml@iki.fi>
14568
14569         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
14570         compilation, too. Current mingw gcc distributions include the
14571         necessary headers. Also the necessary IIDs are now in mingw
14572         headers/libraries, and own definitions unnecessary.
14573
14574         More hacking on OLE2 DND, still doesn't work though, and thus
14575         ifdeffed out.
14576
14577         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
14578         here, too.
14579
14580 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
14581
14582         * gdk/nanox/*: nano-X port work in progress.
14583         * gdk/simple.c: simple test for Gdk.
14584         * README.nanox: notes about the port: read this first!
14585         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
14586         with nano-X.
14587
14588 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
14589
14590         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
14591         gdk_window_clear() into common code, implement in terms of
14592         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
14593         not redirected to the backing rectangle.
14594
14595 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
14596
14597         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
14598         EXTRA_DIST. It does not work well when the file that
14599         everything depends on is not in the tarball.
14600
14601 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
14602
14603         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
14604         with recursion where process_updates() is called from
14605         an expose handler. (GtkTextView is highly broken in
14606         doing this, but it should work, so it is a nice test
14607         case.)
14608
14609 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14610
14611         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
14612         handle the case where updates are queued during processing of
14613         updates.
14614
14615 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
14616
14617         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
14618         window is on gdk_display - use that instead of segfaulting.
14619
14620 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
14621
14622         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
14623         broken and require an empty arg, give it to them.
14624
14625 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
14626
14627         * gtk/gtklabel.h: indentation fixes.
14628
14629 2000-05-02  Tor Lillqvist  <tml@iki.fi>
14630
14631         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
14632         draw too narrow or too low arcs, they seem to fail, at least with
14633         some display drivers.
14634
14635         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
14636
14637         Large changes to the Win32 backend, partially made necessary by
14638         the changes to the backend-independent internal
14639         structures. Attempts to implement similar backing store stuff as
14640         on X11. The current (CVS) version of the Win32 backend is *not* as
14641         stable as it was before the no-flicker branch was merged. A
14642         zipfile with that version is available from
14643         http://www.gimp.org/win32/. That should be use by "production"
14644         code until this CVS version is usable. (But note, the Win32
14645         backend has never been claimed to be "production quality".)
14646
14647         * README.win32: Add the above comment about versions.
14648
14649         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
14650
14651         * gdk/gdk.def: Update.
14652
14653         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
14654         presumably be replaced by some more better mechanism as 1.4 gets
14655         closer to release shape.
14656
14657         * gdk/makefile.{cygwin,msc}: Update.
14658
14659         * gdk/win32/*.c: Correct inclusions of the backend-specific and
14660         internal headers. Change code according to changes in these. Use
14661         gdk_drawable_*, not gdk_window_* where necessary.
14662
14663         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
14664         our old DND.
14665
14666         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
14667         to interpret single characters as UTF-8. Thanks to Hans Breuer.
14668         Use correct function name in warning messages.
14669
14670         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
14671         GSourceFuncs gdk_event_prepare and gdk_event_check.
14672         (gdk_event_get_graphics_expose): Do implement, use
14673         PeekMessage. Thanks to Hans Breuer.
14674         (event_mask_string): Debugging function to print an GdkEventMask.
14675         (gdk_pointer_grab): Use it.
14676
14677         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
14678         (old) book I used claimed was Hangul actually is CJK Unified
14679         Ideographs Extension A. Also, Hangul Syllables were missing.
14680         Improve logging.
14681
14682         * gdk/win32/gdkgc-win32.c: Largish changes.
14683
14684         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
14685         g_win32_getlocale() from GLib, and not setlocale() to get current
14686         locale name.
14687
14688         * gdk/win32/gdkprivate-win32.h
14689         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
14690         gdkwin32.h, similarily as in the X11 backend.
14691
14692         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
14693         assignment was used instead of equals in if test. Thanks to Hans
14694         Breuer.
14695
14696         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
14697         the X11 version.
14698
14699         * gdk/win32/makefile.{cygwin,msc}
14700         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
14701         path to the Win32 headers that works also with the mingw compiler.
14702
14703         * gtk/gtkstyle.c: Include <string.h>.
14704
14705 2000-04-26  Havoc Pennington  <hp@redhat.com>
14706
14707         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
14708         replacing the broken gtk_label_get ()
14709
14710 2000-04-15  Havoc Pennington  <hp@pobox.com>
14711
14712         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
14713         this keeps scanner scripts from getting confused.
14714
14715         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
14716         data, rather than void
14717
14718 2000-04-15  Tor Lillqvist  <tml@iki.fi>
14719
14720         * gtk/gtkclist.c (gtk_clist_motion)
14721         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
14722         with is_hint FALSE, get x and y from the event. They used to be
14723         used uninitialised. The Win32 backend never sends motion events
14724         marked as hints. This for instance fixes the annoying file and
14725         font selector behaviour in the Win32 version.
14726
14727 2000-04-14  Tor Lillqvist  <tml@iki.fi>
14728
14729         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
14730         gtk_private_n_signals variables, they are used by some software,
14731         sigh.
14732
14733         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
14734         installation directory from the Registry, where the installer
14735         should have put it.
14736
14737 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
14738
14739         * gdk/x11/Makefile.am: Fix problem with installation directory for
14740         gdkx.h
14741
14742         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
14743         <mrcooger@cyberverse.com> so that when selecting menus with the
14744         mouse, the first item will not be selected, but when selecting
14745         with an accelerator, or navigating left-right on a menubar with
14746         the menus popped up, the first item will be selected.
14747
14748 2000-04-05  Dan Damian  <dand@dnttm.ro>
14749
14750         * configure.in: Added "ro" to ALL_LINGUAS.
14751
14752 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
14753
14754         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
14755         indentation.
14756
14757         * Makefile.am (EXTRA_DIST): Fix typo.
14758
14759         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
14760         to catch gdkconfig.h
14761
14762         * gtk/gtkitemfactory.c: Added FIXME.
14763
14764 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
14765
14766         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
14767         s/return_if_fail/return_val_if_fail/g and add a return value.
14768
14769 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
14770
14771         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
14772         merge slipup.
14773
14774         * gdk/gdkinput.h: Fix missing line from merge.
14775
14776 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
14777
14778         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
14779         instead of gdkprivate.h.
14780
14781 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
14782
14783         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
14784         parent class to correctly be GtkDialogClass.
14785
14786 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
14787
14788         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
14789         toplevel windows and their immediate children by their parents,
14790         since the size of toplevel windows is out of our immediate
14791         control and we don't get any real benefit from trying to track
14792         this size for clipping.
14793
14794         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
14795         for input_only windows.
14796
14797         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
14798         to fix some hacks and make sure that we don't try to set the
14799         background of input only windows.
14800
14801 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
14802
14803         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
14804         the _really_ internal stuff, and leave gdkprivate.h for the fake private
14805         stuff that we've traditionally exposed.
14806
14807         * gdk/**.c: Use gdkinternals.h where appropriate.
14808
14809         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
14810         not include gdkprivate-x11.h, move all stuff of conceivable public
14811         interest into gdkx.h; keep all really private stuff in
14812         uninstalled header gdkprivate-x11.h.
14813
14814         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
14815         image->image_put on windows through a new function _gdk_window_draw_image()
14816         to allow us to do backing store for images. (Sort of ugly)
14817
14818         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
14819         contexts locally so that we can offset them properly when drawing 
14820         onto backing pixmaps.
14821
14822         * gdk/gdkinput.h: Reindented
14823
14824         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
14825         pixmap or color for the window, so we can properly initialize
14826         our double-buffer pixmaps, and also so that we temporarily set
14827         a background of None while scrolling.
14828
14829         * gdk/gdkregion.h: Revise region boolean operators to have an
14830         interface that is actually convenient - switch from creating new
14831         regions on every op, to "methods" that modify existing regions
14832         (A = A OP B). 3 argument forms which allow dest == src, would also
14833         be possible, but the current interfaces seem to map nicely
14834         onto what needs to be done. (There is quite a lot of region
14835         code in GDK now.)
14836
14837         * gdk/gdkregion.h: Add constructor from rectangle and a copy
14838         operator.
14839
14840         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
14841         gdkpoly-generic.h: Copy region code from Xlib, switch it over
14842         to 32 bit coordinates, modify it to be mostly GTK+ style
14843         and to have interfaces that match gdkregion.h.
14844
14845         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
14846         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
14847         create a backing pixmap and redirect all drawing to
14848         that backing pixmap until a matching gdk_window_end_paint().
14849
14850         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
14851         Create a special drawable class for GtkWindow's that 
14852         redirects the drawing to the backing pixmap as necessary
14853         and then calls the real operations in _gdk_windowing_window_class.
14854
14855         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
14856         Store invalid region for each window. Generate expose events for invalid
14857         region in an idle. This replaces both the expose compression
14858         and the redrawing queuing in GTK+. It is both more efficient and
14859         simpler than either one individually and far more so then the
14860         combination.
14861
14862         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
14863         Emulate 32 bit coordinates for windows with 16 bit coordinates
14864         by offsetting drawing, guffaw scrolling techniques and
14865         mapping/unmapping child windows as necessary.
14866
14867         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
14868         where, when invalid regions are processed, the region is stored,
14869         and if expose events come in that are detectably duplicate
14870         the processed exposes (by comparison of event serial numbers),
14871         the stored region is subtracted out of those exposes.
14872
14873         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
14874         regions newly exposed when scrolling or resizing windows.
14875         This, combined with forcing processesing of queued invalidated
14876         regions, gives nice flicker-free scrolling.
14877
14878         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
14879         invalidated regions after every scroll.
14880
14881         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
14882         emulation in GDK. Its, for all practical purposes just a
14883         GtkViewport/GtkFixed hybrid now.
14884
14885         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
14886         (16-bit) structures as necessary instead of just casting.
14887
14888         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
14889         in terms of the structures from gdkregion-generic.c, using appropriate
14890         offsets from GDK to X11 coordinates. Cache clip mask and
14891         origin and ts origin locally and only flush to the server
14892         when drawing, to avoid constantly setting and resetting these
14893         values when offsetting GC's for scrolling and backing pixmaps.
14894
14895         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
14896
14897         * gtk/gtkcontainer.c: Call process_all_updates at end
14898         of resizing to reduce flicker. (Avoids having redraw
14899         lag arbitrarily behind resize under some circumstances)
14900
14901         * gtk/gtkentry.c: Remove old backing store code, and simply take
14902         advantage of the new backing store capabilities of GDK.
14903
14904         * gtk/gtkmain.c: Simple implementation of widget backing
14905         store - simply push a paint while handling each expose.
14906         (Should really be configurable widget for widget.)
14907         
14908         * gtk/gtkwidget.c: Remove all the old complicated redraw
14909         code, and simply invalidate the GDK windows from
14910         gdk_window_queue_clear(), etc. (Sigh, so much carefully
14911         debugged complexity ... gone to the winds.)
14912
14913         Remove all the code for suppressing expose events while
14914         resizes are pending; this isn't needed since the invalid
14915         areas won't be processed until after the resizes are
14916         processed, since they are in a lower priority idle.
14917
14918 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
14919
14920         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
14921         and height of dest rectangle for non-intersecting rectangles.
14922
14923 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
14924
14925         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
14926         for GdkRectangle.
14927
14928 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
14929
14930         * gdk/gdk{events,image,private,types,window}.h
14931          gdk/x11/gdkinputprivate.h: Change all coordinates
14932          from int16 to int. Also, Change width and height from
14933          unsigned to signed to avoid all the stupid C 
14934          signedness bugs.
14935
14936 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
14937
14938         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
14939         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
14940         Add some more detailed checking.
14941
14942         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
14943         New function to retrieve the depth of a drawable.
14944
14945         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
14946         field, reorder fields to save memory. 
14947
14948 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
14949
14950         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
14951         of the background image instead of scaling the background down to
14952         a line.
14953
14954         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
14955         which temporarily set slider to wrong size.
14956
14957         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
14958         queue_clear().
14959
14960 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
14961
14962 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
14963
14964         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
14965
14966 2000-03-17  Tor Lillqvist  <tml@iki.fi>
14967
14968         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
14969         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
14970
14971         * gdk/win32/gdkfont-win32.c
14972         * gdk/win32/gdkproperty-win32.c
14973         * gdk/win32/gdkselection-win32.c
14974         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
14975         now declared such.
14976
14977 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
14978
14979         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
14980
14981 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
14982
14983         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
14984         is called without trapping X errors.
14985
14986 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
14987
14988         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
14989         way into the fontset lists.
14990
14991 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
14992
14993         * gtk/gtkthemes.h: add extern "C" scope.
14994
14995 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
14996
14997         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
14998         to make appends to the list constant. (gtk-guy-990901-0.patch)
14999
15000 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
15001
15002         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
15003         for the typename hash table.
15004
15005 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
15006
15007         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
15008         to make sure we never divide by zero. 
15009         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
15010
15011 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
15012
15013         * gtk/gtkfontsel.c: Apply patch from
15014         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
15015         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
15016
15017         Also, some cleanups in atom handling.
15018
15019 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
15020
15021         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15022         not GtkWidget.
15023
15024 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
15025
15026         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
15027         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
15028         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
15029         more guint wrap-around bugs before going to bed.
15030
15031 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
15032
15033         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
15034         guint wrap arounds in allocation.width.
15035
15036         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
15037         process untill we fit the allocation given.
15038
15039 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
15040
15041         * gtk/gtkwidget.c:
15042         (gtk_widget_unrealize): guard widget access with ref/unref
15043         around signal emission.
15044         (gtk_widget_hide): same here, but also check its destroyed
15045         state before queueing a resize.
15046
15047 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
15048
15049         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
15050         of gtk_default_insensitive_bg as insensitive base color.
15051
15052         * gtk/gtktext.c (gtk_text_style_set): set the background color according
15053         to the widget's state.
15054         (gtk_text_realize): same here.
15055         (gtk_text_state_changed): same here.
15056         (draw_bg_rect): compare background color against base[] from
15057         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
15058
15059 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
15060
15061         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
15062         grabs are active, unless a delete event is send to the toplevel
15063         of the currently grab holding widget.
15064
15065 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
15066
15067         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
15068         debugging g_print's.
15069
15070 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
15071
15072         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
15073         ever make the scrolled-window requisition ever depend on the 
15074         visibility state of the scrollbars for the AUTOMATIC policy. 
15075         This breaks the GTK+ requisition model, and causes loops.
15076
15077 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
15078
15079         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
15080         the default font to avoid problems with XFree86-4.0 where the
15081         default charset is iso10646-1, not iso8859-1.
15082
15083 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
15084
15085         * acinclude.m4
15086         * config.guess
15087         * config.sub
15088         * ltconfig
15089         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
15090
15091         * gtk/Makefile.am: minor cosmetic consistency tweak
15092
15093 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
15094
15095         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
15096         the activate_time to 0, so that we handle a quick
15097         press/release press/release properly and don't suppress
15098         the second release. (Red Hat bug #7545)
15099
15100 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
15101
15102         * gtk/gtkctree.c (row_delete):
15103         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
15104         bugs with destruction notifier, *always* update internal
15105         structures *before* calling user code.
15106
15107 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
15108
15109         A few more fixes for bug #5487, #2051, #2677.
15110         * gtk/gtkclist.c : 
15111         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
15112         not GDK_BUTTON_PRESS.
15113         (resync_selection): resync only if selection_mode is
15114         GTK_SELECTION_EXTENDED
15115         * gtk/gtkctree.c (resync_selection): same here
15116
15117 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
15118
15119         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
15120         gdk_drag_get_selection() and gtk_menu_detach().
15121
15122         [ From Jeroen Ruigrok/Asmodai ]
15123
15124 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
15125
15126         * gtk/gtknotebook.c (gtk_notebook_size_request): 
15127         page->tab_label can be NULL.
15128
15129 2000-01-25  Havoc Pennington  <hp@pobox.com>
15130         
15131         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
15132         arg is boolean
15133
15134         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
15135
15136         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
15137
15138         * gdk/gdkproperty.c (gdk_property_get): return boolean
15139
15140         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
15141
15142         * gdk/gdkim.c (gdk_im_ready): return boolean
15143
15144         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
15145
15146         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
15147         glib clash, should fix glib)
15148
15149         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
15150         (gdk_get_show_events): return gboolean, and canonicalize 
15151         to TRUE/FALSE
15152
15153         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
15154         colormap is private
15155         (gdk_colors_alloc): gboolean whether to be contiguous
15156         (gdk_color_equal): return gboolean since we are a predicate
15157         and not a qsort() (this looks semi-wrong due to glib breakage,
15158         IMO glib should be fixed)
15159         
15160         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
15161         (gdk_get_use_xshm): return gboolean
15162         (gdk_pointer_is_grabbed): return gboolean
15163
15164         * gdk/gdk.h: Change prototypes to match all the above changes,
15165         and re-run egtk-format-protos as required.
15166
15167 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
15168
15169         * gtk/gtkctree.c (resync_selection): 
15170         * gtk/gtkclist.c (resync_selection):
15171
15172         Return immediately if clist->drag_pos < 0. This is a workaround
15173         for the corrupt state that the clist gets into when a
15174         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
15175
15176         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
15177         
15178         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
15179         variable from recent commit.
15180
15181 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
15182
15183         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
15184
15185 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
15186
15187         * gtk/Makefile.am: prefix all autogenerated source that get build in
15188         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
15189         in builddir. since we subsequently cd into srcdir for autogeneration,
15190         the paths have to be stripped from the target file names, thusly we
15191         use $(@F) as target names now.
15192         put a comment about configure.in's --disable-rebuilds option,
15193         which can be used for non-writable source directories, for development
15194         setups though, srcdir has to be *writable*.
15195
15196 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
15197
15198         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
15199           Finish the job of allowing event to be NULL.
15200           (Fixes bug #4283, reported by Chris Blizzard)
15201
15202         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
15203           things so that the cursor appears on screen, properly
15204           take into account INNER_BORDER.
15205           (Fixes bug #4754, reported by Antonio Campos)
15206
15207 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
15208
15209         * gtk/gtknotebook.c (gtk_notebook_map): Don't
15210           show the tab_label unless it itself is visible.
15211
15212           gtk/gtknotebook.c (gtk_notebook_size_request):
15213           Do a better job of making sure that the visibility
15214           of the tab label corresponds to whether it should
15215           be mapped or not.
15216
15217 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
15218
15219         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
15220           Use the requisition, not the allocation, since the
15221           allocation has not necessarily been computed yet.
15222           (Pointed out by Eugene Osintsev)
15223
15224 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
15225
15226         * gtk/gtkstyle.c (gtk_style_new): Dont' set
15227           style/base[GTK_STATE_INSENSITIVE] both to
15228           gtk_default_insensitive_bg!
15229           (Bug #2187, reported by Jonathan Blandford)
15230
15231         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
15232           Add Alt_L, Alt_R to list of invalid accelerators.
15233           (Bug #3736, reported by Vlad Harchev)
15234
15235 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
15236
15237         * gtk/gtkfilesel.c (open_ref_dir): Fix several
15238         bugs which occured after an attempt to open 
15239         invalid home directory left cmpl_state->reference_dir == NULL.
15240
15241          - completion on files in home directory didn't work
15242          - completion on an empty string caused  segfault
15243
15244          (Bug #3678, reported by Steve Ratcliffe)
15245
15246         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
15247         cut and paste error that was causing scales to
15248         be incorrectly positioned.
15249         (Bug #2956,
15250          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
15251
15252 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
15253
15254         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
15255         when checking for dcgettext, if we've found we needed
15256         it for dgettext.
15257 +
15258 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
15259
15260         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
15261         queue_clear on NO_WINDOW widgets during a reparent,
15262         since at that point the window and widget heirarchies
15263         are out of sync. This stops crashing in some cases
15264         (the scrolled window reparent test, for instance), and
15265         _probably_ won't cause drawing errors.
15266
15267         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
15268         test do what it was supposed to do and be robust against
15269         window closings, etc. (Bug #2443)
15270
15271 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
15272
15273         * gtk/gtkentry.c: Fix return values on mouse events.
15274         (Bug #2686, Sky <seb_sky@yahoo.com>)
15275
15276         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
15277         (pointed out by George Lebl)
15278
15279         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
15280         (From Ettore Perazzoli  <ettore@helixcode.com>)
15281  
15282 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
15283
15284         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
15285         clicks between rows or outside calender area correctly.
15286         (Patch from Damon Chaplin)
15287
15288         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
15289         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
15290           Call destroy function when overwriting existing data. 
15291           (Pointed out by Damon Chaplin)
15292
15293 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
15294
15295         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
15296           which was causing problems on various systems with Xmu.
15297           This hasn't been needed for a very long time.
15298           (Fixes #1185 3167)
15299
15300 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
15301
15302         * gdk/gdki18n.h: Include <ctype.h> when defining
15303           gdk_isw* in terms of is* as a fallback.
15304           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
15305
15306 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
15307
15308         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
15309           realize the widget when it is size allocated!
15310           (old, old bug)
15311
15312         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
15313           Removed unused call to gdk_window_get_size() that
15314           showed up when the above was fixed.
15315
15316 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
15317
15318         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
15319           fix up widget->window when the widget is a
15320           NO_WINDOW container widget.
15321
15322 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
15323
15324         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
15325           to account for the fact that feof() does _not_ 
15326           return TRUE on errors, and thus avoid infinite loops
15327           when trying to use gdk_pixmap_create_from_xpm()
15328           on unreadable values.
15329
15330 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
15331
15332         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
15333
15334 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
15335
15336         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
15337           gdk_gc_set_dashes to take gint8 instead of gchar to
15338           make it clearer that it is _not_ a NULL terminated string.
15339
15340         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
15341           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
15342           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
15343           arguments.
15344
15345 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
15346
15347         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
15348         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
15349         background size relative to our allocation, guard against small
15350         allocations, we may have not yet been size allocated.
15351
15352 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
15353
15354         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
15355         not just version == 3. We implement all 3 + most of 4 - 
15356         (we don't support matching text/plain;charset=iso-8859-1
15357         to a dest that expects text/plain). We'll still advertise
15358         3 to be safe, but any client implementing version >= 3
15359         must interoperate with 3.
15360         
15361 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15362
15363         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
15364         background and gc members, add a warning in gtk_tooltips_set_color()
15365         indicating that this function is deprecated.
15366
15367 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
15368
15369         * docs/gtkfaq.sgml: FAQ Update:
15370           - Minor cleanups (Emmanuel, me)
15371           - New questions:
15372                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
15373                 How can I retrieve the text from a GtkMenuItem? (timj)
15374                 How do I validate/limit/filter the input to a GtkEntry? (me)
15375                 Memory does not seem to be released when I free the list
15376                         nodes I've allocated (timj)
15377
15378 2000-03-07  Tor Lillqvist  <tml@iki.fi>
15379
15380         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
15381         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
15382         for which it is no use to call GetLastError onWin9x.
15383         (gdk_other_api_failed) New function, for general error
15384         reporting without calling GetLastError.
15385         (gdk_win32_api_failed) OTOH, this function always calls
15386         GetLastError. (gdk_win32_last_error_string) Remove this function,
15387         GLib has the equivalent now.
15388
15389         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
15390         call them with function name, file name and line number in the
15391         arguments.
15392
15393         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
15394         functions.
15395         
15396         * gtk/gtk.def: Add some missing entry points.
15397
15398         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15399         gtk_paned_set_gutter_size, which don't exist any longer, as void.
15400         
15401         Fixes by Hans Breuer:
15402
15403         * gdk/makefile.msc: Update for debugging.
15404
15405         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
15406         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
15407         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
15408         in the dash_list.
15409
15410         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
15411         the x11 backend.
15412
15413         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
15414
15415         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
15416
15417 2000-03-04  Tor Lillqvist  <tml@iki.fi>
15418
15419         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
15420         just pixel value of background colour.
15421
15422         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
15423         containing code snippet previously duplicated in a couple of
15424         places.
15425         
15426         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
15427         gdk_colormap_color.
15428
15429         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
15430         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
15431         events for autorepeated Shift, Control and Alt keys. Use
15432         gdk_colormap_color.
15433
15434         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
15435         pointer is inside the window the cursor of which we are setting,
15436         call SetCursor immediately.
15437
15438         * gdk/win32/makefile.cygwin
15439         * gtk/makefile.cygwin: If we don't have the build number stamp
15440         file, use zero.
15441
15442         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
15443         gtk_paned_set_gutter_size as empty.
15444
15445         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
15446         
15447 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
15448
15449         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
15450           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
15451           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
15452           docs/gtk_tut.sgml docs/gtk.texi TODO:
15453
15454           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
15455
15456 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
15457
15458         * gtk/gtkcalendar.c: Implement num_marked_dates,
15459           and don't emit mutiple day_selected signals on
15460           month_prev.
15461
15462 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
15463
15464         * docs/make-todo (lineno): let title and logo be configurable so
15465         that GNOME can use this script too.
15466
15467         * TODO.xml: added logourl and a title
15468
15469 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
15470
15471         * TODO.xml: Added some UI items, and an explanatory
15472         comment at the top of the file.
15473
15474 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
15475
15476         * TODO.xml: some updates, added abunch of new entries.
15477         a note for those fiddeling with this file, when done
15478         with it, invoke:
15479         $ ./docs/make-todo TODO.xml >/dev/null
15480         and correct output errors before comitting changes.
15481
15482 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
15483
15484         * TODO.xml: Added XML-structured TODO file.
15485         * docs/make-todo: python script to turn TODO.xml into
15486           pretty XML output. 
15487
15488 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
15489
15490         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
15491         the function to let it draw the seven dots, instead of the old,
15492         much maligned, method.
15493         (draw_dot): New function to draw a dot.
15494
15495         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
15496         to draw the handle inside the border width as opposed to outside.
15497         Use paint function instead of gdk_draw_point.
15498
15499         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
15500         to draw the handle inside the border width as opposed to outside.
15501         Use paint function instead of gdk_draw_point.
15502
15503         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
15504         Change indenting to be more GTK like.
15505
15506 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
15507
15508         * docs/gtk_tut.sgml: New section on GtkCalendar
15509         * examples/calendar: Update example code
15510
15511 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
15512
15513         * docs/gtkfaq.sgml: FAQ Update
15514
15515 2000-02-19  Anders Carlsson  <andersca@gnu.org>
15516
15517         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
15518         to prevent the scroll event to be propagated upwards.
15519
15520 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15521
15522         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
15523         OwnerGrabButtonMask from button entries for
15524         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
15525
15526         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
15527         to the event mask (which will result in button/press release
15528         being added to the event mask on Unix) so scrolling works
15529         for layouts in scroll windows.
15530
15531         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
15532
15533         Patch from Anders Carlsson  <andersca@gnu.org> to add
15534         a scroll event.
15535
15536         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
15537         scrolling to the "Test Scrolling" part of testgtk.
15538  
15539         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
15540  
15541         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
15542         it against GDK_SCROLL.
15543  
15544         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
15545         way of mouse wheel scrolling.
15546  
15547         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
15548  
15549         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
15550  
15551         * gtk/gtkmain.c: Removed previous mouse wheel hack.
15552  
15553         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
15554         gdk_event_mask_table.
15555  
15556         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
15557         GdkEventScroll handler.
15558  
15559         * gdk/gdkevents.h: Added GdkEventScroll structure.
15560  
15561 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
15562
15563         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
15564         and Anders Carlsson to change the Paned widgets so that they
15565         can be dragged from anywhere along the length. Also change
15566         the way that this is drawn to make this apparent.
15567
15568         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
15569         from George Lebl to check that option_menu->menu is present
15570         before getting history.
15571
15572 2000-02-14  Tor Lillqvist  <tml@iki.fi>
15573
15574         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
15575         before the assertion for non-NULL segment list.
15576
15577         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
15578         Seems that pattern brushes *must* be 8x8 pixels! At least on my
15579         machine, but it might be display driver dependent. Sigh, so make
15580         sure the stipple is that size. Does Windows suck or what?
15581
15582         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
15583         places.
15584
15585 2000-02-13  Havoc Pennington  <hp@pobox.com>
15586
15587         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
15588         refcount to 1
15589         (gdk_cursor_new): init refcount to 1
15590
15591         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
15592
15593 2000-02-13  Tor Lillqvist  <tml@iki.fi>
15594
15595         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
15596         so that we don't have to do unnecessary settings to the HDC.
15597
15598         * gdk/win32/gdkdrawable-win32.c
15599         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
15600         gdk_gc_predraw.
15601
15602         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
15603         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
15604         GDI paths, call WidenPath to get the outline of the stroken path,
15605         and then fill the outline (with the brush that was built from the
15606         stipple).
15607
15608         * gdk/win32/gdkgc-win32.c: Factor out common code from
15609         _gdk_win32_gc_new and gdk_win32_gc_set_values into
15610         gdk_win32_gc_values_to_win32values. Use correct colour for
15611         SetBkColor() (Until now the code actually used a random colour in
15612         the call to SetBkColor()... but that didn't show up as not many
15613         GDI APIs use the background colour. Pattern (opaque stippled)
15614         brushes do.)
15615
15616         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
15617         gdk_win32_api_failed): New functions for error logging.
15618
15619         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
15620         WIN32_API_FAILED to call them, passing function or file name and
15621         line number.
15622
15623         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
15624
15625         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
15626         GdkColor for foreground and background in GdkGCWin32Data.
15627
15628         * gdk/makefile.cygwin: Link in the resource object separately.
15629
15630         * gdk/win32/rc/gdk.rc
15631         * gtk/gtk.rc (New file)
15632         * gdk/win32/makefile.cygwin
15633         * gtk/makefile.cygwin: Update build number in DLLs automatically,
15634         as in GLib.
15635
15636 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
15637
15638         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
15639         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
15640         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
15641         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
15642         parameters given and cursor->ref_count. coding style fixups.
15643
15644         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
15645         not GtkWidget.
15646         
15647         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
15648         fix up widget macros and add _GET_CLASS() variant.
15649         
15650         * gtk/*.c: some GtkType fixups.
15651
15652 2000-02-09  Tor Lillqvist  <tml@iki.fi>
15653
15654         * gdk/win32/gdkproperty-win32.c
15655         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
15656         were reversed.
15657
15658 2000-02-04  Tor Lillqvist  <tml@iki.fi>
15659
15660         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
15661         g_filename_to_utf8 to convert the font names Windows gives us from
15662         whatever is the default codepage to UTF-8.
15663         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
15664         in the other direction.
15665
15666         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
15667         error in debugging output.
15668
15669 2000-02-02  Tor Lillqvist  <tml@iki.fi>
15670
15671         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
15672         and height parameters to gdk_window_clear_area(). Not minus one.
15673
15674 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
15675
15676         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
15677         checks if the widget passed to gtk_drag_get_data() was not the
15678         dest widget.
15679
15680 2000-02-01  Tor Lillqvist  <tml@iki.fi>
15681
15682         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
15683         g_filename_from_utf8 functions (which were added a moment ago to
15684         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
15685         size buffers.
15686
15687         gtk_file_selection_get_filename returns the filename in the C
15688         runtime encoding. It calls g_filename_from_utf8, but copies the
15689         returned string to a static buffer, which is returned. I think
15690         this is better than returning the result from g_filename_from_utf8
15691         directly, which would mean all apps that use it would have to free
15692         the return value. Or should this function care about this issue at
15693         all? Maybe a new function with clearly defined semantics.
15694
15695         * gtk/gtkfilesel.h: Add comment about
15696         gtk_file_selection_get_filename returning the filename in the C
15697         runtime's encoding.
15698
15699         * README.win32
15700         * gdk/gdk.def
15701         * gdk/makefile.{cygwin,msc}
15702         * gtk/gtk.def: Updates.
15703
15704         * gdk/gdkcursor-win32.c: Initialise refcount.
15705
15706 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
15707
15708         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
15709
15710 2000-01-30  Havoc Pennington  <hp@pobox.com>
15711
15712         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
15713         destroy
15714
15715         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
15716
15717         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
15718         implemented in platform-specific code
15719
15720         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
15721
15722         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
15723         underscore in front
15724
15725         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
15726         put an underscore in front
15727
15728         * gdk/gdkcursor.c: new file, implements
15729         gdk_cursor_ref/gdk_cursor_unref
15730
15731         * gdk/gdkcursor.h: Refcount GdkCursor
15732
15733         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
15734
15735 2000-01-29  Tor Lillqvist  <tml@iki.fi>
15736
15737         * gdk/gdkwindow.h
15738         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
15739
15740 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15741
15742         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
15743         structures to properly inherit from GtkWidget not GtkBin.
15744
15745 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
15746
15747         * gtk+.spec.in: Added lib/gtk+/include/* to %files
15748         (bug #5178 - Peter Wainright)
15749         
15750         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
15751         so that it will be installed.
15752         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
15753
15754 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
15755
15756         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
15757         for the GtkStyleClass vtable const.
15758
15759         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
15760         take a const string argument like GtkTranslateFunc. This will
15761         require changes in use code.
15762
15763 2000-01-19  Tor Lillqvist  <tml@iki.fi>
15764
15765         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
15766         semantics (to mimic the X11 backend, which just calls XClearArea)
15767         is to check for zero width (and height), and in that case use the
15768         window's width minus x (height minus y). This fixes for instance
15769         some redraw problems with gtkclist, which were easily noticeable
15770         in the gtk file selection widget.
15771
15772         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
15773         windows.
15774
15775 2000-01-13  Tor Lillqvist  <tml@iki.fi>
15776
15777         * configure.in
15778         * gdk/Makefile.am
15779         * gdk/x11/Makefile.am
15780         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
15781         (bug #5177).
15782         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
15783         out later.
15784
15785 2000-01-09  Tor Lillqvist  <tml@iki.fi>
15786
15787         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
15788         WM_MOVE for iconified or invisible windows. This fixes various
15789         problems when minimising windows. Thanks to Bernd Herd.
15790
15791 2000-01-05  Tor Lillqvist  <tml@iki.fi>
15792
15793         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
15794         backend's draw_lines method, not draw_points.
15795
15796 2000-01-02  Tor Lillqvist  <tml@iki.fi>
15797
15798         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
15799         before Owen's reorganisation: Don't have queued_events and
15800         queued_tail statics in this file, but use gdk_queued_events and
15801         gdk_queued_tail. This makes exposure event compression work again.
15802
15803         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
15804         seem to be needed?
15805
15806 1999-12-30  Tor Lillqvist  <tml@iki.fi>
15807
15808         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
15809         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
15810         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
15811         doesn't do anything.
15812
15813         * gdk/gdk.def: Add gdk_xid_table_insert.
15814
15815         * gdk/win32/gdkprivate-win32.h
15816         * gdk/win32/gdkevents-win32.c
15817         * gdk/win32/gdkinput-win32.c
15818         
15819         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
15820         extension_events field in the GdkWindowWin32Data struct. Use only
15821         the extension_events field in GdkWindowPrivate. Previously one was
15822         set, and the other one tested, which broke tablet
15823         functionality. Thanks to Keishi Suenaga for pointing this out.
15824
15825 1999-12-18  Tor Lillqvist  <tml@iki.fi>
15826
15827         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
15828         When handling a single character (text length == 1), don't handle
15829         it as if it was UTF-8.
15830
15831 1999-12-11  Tor Lillqvist  <tml@iki.fi>
15832
15833         * Makefile.am: Distribute README.win32.
15834         
15835         * gdk/Makefile.am
15836         * gdk/win32/Makefile.am: Distribute Win32 files.
15837
15838         * gdk/makefile.msc: New file.
15839
15840         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
15841         after label).
15842
15843         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
15844         gdk_error_code as GDKVAR, as they are referred outside GDK.
15845
15846         * gdk/win32/makefile.msc: Update.
15847
15848         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
15849         tweaks. Check only if at least one of those Unicode subrange bits
15850         we care for is set. If no code page bits are set, guess (wildly)
15851         based on the charset.
15852
15853         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
15854
15855         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
15856         non-NULL.
15857
15858         * gtk/gtkdnd.c
15859         * gtk/gtklayout.c
15860         * gtk/gtkplug.c
15861         * gtk/gtkselection.c
15862         * gtk/gtksocket.c
15863         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
15864         appropriate. There must be a cleaner way to handle this?
15865
15866         * gtk/gtkrc.c: Must include windows.h on Win32.
15867
15868         * gtk/testgtk.c: No need to include gdkx.h.
15869
15870         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
15871
15872 1999-12-07  Tor Lillqvist  <tml@iki.fi>
15873
15874         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
15875         the rbearing is set to the same as the width, but this should be
15876         fixed.
15877
15878 1999-12-06  Tor Lillqvist  <tml@iki.fi>
15879
15880         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
15881         function. If Windows doesn't tell us what Unicode subranges a font
15882         covers, guesstimate based on the codepages it covers. This will
15883         hopefully help those Windows versions or fonts that don't give us
15884         any useful Unicode subrange information with GetTextCharsetInfo.
15885         Call this function in gdk_font_load_internal.
15886
15887         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
15888         minor changes.
15889
15890 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
15891
15892         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
15893         New function, long needed.
15894
15895 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
15896
15897         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
15898         only_if_exists argument of gdk_atom_intern to
15899         bool.
15900
15901 1999-11-25  Tor Lillqvist  <tml@iki.fi>
15902
15903         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
15904         Fix two copy&paste errors.
15905
15906         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
15907         win32 has changed.
15908
15909         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
15910         GdkWin32SingleFont struct.
15911
15912         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
15913         subranges of loaded fonts. Clear font signature first, in case
15914         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
15915         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
15916
15917         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
15918         Unoffset clip region.
15919
15920 1999-11-23  Tor Lillqvist  <tml@iki.fi>
15921
15922         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
15923         event->any.window before calling filter functions.
15924
15925 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
15926
15927         * gtk/gtkgamma.h: Adapt cast macros to standard.
15928
15929 [ Merges from 1.2 ]
15930
15931 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
15932
15933         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
15934         If translation does not include a '/', use entire
15935         translation instead of crashing.
15936
15937 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
15938
15939         * docs/gtk_tut.sgml:
15940         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
15941
15942 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
15943
15944         * gtk/gtkselection.c (gtk_target_list_remove): Use
15945         g_list_remove_link, not g_list_remove.
15946
15947         [ From Geert Bevin <gbevin@thunderstorms.org> ]
15948         
15949 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
15950
15951         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
15952         statement upon unselection (how the heck did that slip in?).
15953
15954 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
15955
15956         * gtk/gtktext.c (gtk_text_freeze): 
15957         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
15958         in frozen state (and aparently crashes). patch provided by Anders
15959         Melchiorsen <and@kampsax.dtu.dk>.
15960
15961 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
15962
15963         * fix insensitive default/focus widget activation,
15964         reported by Matt Goodall <mgg@isotek.co.uk>.
15965
15966         * gtk/gtkwindow.c (gtk_window_key_press_event): 
15967         (gtk_window_activate_default):
15968         (gtk_window_activate_focus):
15969         return handled=FALSE for actiavtion of insensitive default
15970         widgets. return handled=TRUE for activation of insensitive
15971         focus widgets. don't activate in either case.
15972
15973 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
15974
15975         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
15976         and $glib_cflags to match library order and in the
15977         theory that an old version of GLib is more likely to
15978         be in the include directory for X then vice-versa.
15979         (Bug #2776)
15980
15981 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
15982
15983         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
15984         to determine the locale for fontsets, not LC_MESSAGES;
15985         the user may want English messages with a handling
15986         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
15987         will still be broken) (Bug #2891)
15988
15989 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15990
15991         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
15992
15993 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
15994
15995         * gtk/gtkrc.ko: Changed the Korean default fontset.
15996
15997 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
15998
15999         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
16000         where when scrolling to the left or top double exposes
16001         were done, causing major slowdowns.
16002
16003 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
16004
16005         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
16006         names to lowercase and alphanumeric, before looking
16007         them up.
16008
16009         * gtk/Makefile.am: Install codeset variant gtkrc files
16010         with normalized names.
16011
16012 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
16013
16014         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
16015         popup menus when the menu is already visible, but its parent
16016         is still hidden, (happens after tornoff window got hidden).
16017
16018 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
16019
16020         * gtk/Makefile.am (install-data-local): Fix
16021         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
16022         deleted, causing error messages on install.
16023
16024 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
16025
16026         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
16027         the handle as well, since we now sometimes ignore
16028         exposes on the handle while resizing.
16029
16030 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
16031
16032         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
16033         extra g_free introduced in one of the last one or two 
16034         commits.
16035
16036 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
16037
16038         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
16039         consistent, put each style that a gtkrc.* file creates
16040         in a unique namespace, remove old files before installing.
16041
16042 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
16043
16044         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
16045         gtk_rc_init is called multiple times. (Yes, people who
16046         do that have bugs in their code.)
16047
16048 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
16049
16050         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
16051         Remove it since it's generated by the Makefile anyway
16052
16053 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
16054
16055         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
16056         device->info.axes for core pointer.
16057
16058 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
16059
16060         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
16061         idle_id, to deal with obsolete, broken C libraries.
16062
16063 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
16064
16065         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
16066         allocation->x/y twice!
16067
16068         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
16069         consistent with gtk_vscale_pos_trough().
16070
16071 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
16072
16073         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
16074         be queueing a resize on a toplevel container between
16075         the time we show it and when we map it. So, we need
16076         to test GTK_WIDGET_VISIBLE() for toplevels, and only
16077         use GTK_WIDGET_DRAWABLE() for child windows.
16078
16079 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
16080
16081         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
16082         (fixes bug #2144)
16083
16084 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
16085
16086         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
16087         container DRAWABLE (instead of VISIBLE), so we don't queue
16088         resizes on non-toplevel containers.
16089
16090 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
16091
16092         * gtk/gtkselection.[ch]: Make the data argument
16093         const guchar *.
16094
16095 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
16096
16097         * gtk/gtkwindow.c: Try to behave sensibly if 
16098         the focus widget is the window itself. (Should
16099         we allow this at all?)
16100
16101 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
16102
16103         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
16104         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
16105         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
16106         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
16107         in prototypes and implementations consistent (Tomas Ogren).
16108
16109         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
16110         before the widget is unparented (reported by damon).
16111
16112         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
16113         since we provide unsigned data anyways.
16114
16115 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
16116
16117         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
16118         the call to gtk_tooltips_layout_text() until later.
16119
16120         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
16121         Call gtk_widget_ensure_style() before using the style.
16122
16123 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
16124
16125         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
16126         for old widgets that don't propagate draws to all
16127         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
16128
16129 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
16130
16131         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
16132         for a redraw but just the widget that requested the resize.
16133
16134 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
16135
16136         * gtk/gtkcontainer.c: added new widget level method
16137         gtk_container_set_reallocate_redraws() and a GtkContainer flag
16138         reallocate_redraws : 1 to reflect the setting, exported this through
16139         the argument system as a boolean ::reallocate_redraws.
16140
16141         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
16142         on the widget because the allocation changes, do so as well for
16143         widget->parent if the parent has reallocate_redraws set to TRUE.
16144         with that containers requesting reallocation redraws get automatically
16145         redrawn if their children changed allocation (this unfortunately
16146         affects also other children that didn't change allocation, but we
16147         cannot work around that before 1.3).
16148
16149 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
16150
16151         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
16152         _and_ height are >0 (not _or_).
16153
16154         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
16155         instead of gtk_container_queue_resize(), which is a core gtk internal
16156         function (must have been on crack when i queued that).
16157
16158         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
16159         we can check more reliably if we want to discard expose events.
16160         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
16161         flag.
16162         
16163         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
16164         we simply trust these events. for deciding whether to discard exposes,
16165         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
16166         
16167 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
16168
16169         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16170         queues of areas that are completely off screen.
16171
16172         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
16173         logic for handleboxes.
16174
16175         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
16176         check on width/height.
16177
16178 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
16179
16180         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
16181         we are fine with using $@ the way we do (if we actually encounter
16182         brokeness with $@ in VPATH builds because of additional path prefixes,
16183         we need to use $(@F) actually).
16184
16185 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
16186
16187         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
16188         short lived bugs, that would allow language bindings to do surgeries
16189         to our guts.
16190
16191 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
16192
16193         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
16194         where comparison was being done against an uninitialized
16195         value causing intermittant results depending on
16196         compiler flags. Also make it clearer that we aren't
16197         ever initializing the child as 0x0 (though this will
16198         be caught in gtk_widget_size_allocate())
16199
16200 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
16201
16202         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
16203         gtk_window_unset_transient_for() call after we do checks
16204         involving the old transient parent.
16205         [ From Lance Capser <lmc@cyberhighway.net> ]
16206
16207 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
16208
16209         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
16210         an empty file.
16211
16212 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
16213
16214         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
16215         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
16216
16217 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
16218
16219         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
16220         `$@' is valid only in the build dir, not after we've done 
16221         `cd $srcdir'.  Also use `test -f' instead of less portable
16222         `test -e'.
16223
16224 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
16225
16226         * gtk/gtktext.c (correct_cache_insert): Rewrite
16227          for simplicity, and hopefully correctness.
16228          (Fixes bug #1322, which was a segfault when
16229           on some insertions with the properties around
16230           the insertion set up just wrong.)
16231
16232         * gtk/gtktext.c (gtk_text_adjustment): When we receive
16233          a "changed" signal, clamp the new value to the adjustment
16234          bounds to avoid segfaulting if someone tries to change
16235          the adjustment to a bogus value. (Bug #1795)
16236
16237 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
16238
16239         * gtk/gtkmain.c: Ignore unexpected destroy notifies
16240         for children, for toplevel windows handle them
16241         like delete_event.
16242
16243         * gtk/gtkplug.c: Add an unrealize handler so that
16244         we unref plug->socket_window when we are done
16245         with it.
16246
16247 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
16248
16249         * gtk/gtktext.c (clear_area): Fix stupid signedness
16250          problem that was causing background to sometimes
16251          be misaligned.
16252
16253 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
16254
16255         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
16256         
16257         * gtk/gtkmenu.c (gtk_menu_position): Make
16258          sure we never position menus with negative x, y,
16259          since gtk_widget_set_uposition() can't handle that.
16260
16261         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
16262          Modify the positioning code a bit so that we always
16263          put the top-left corner onscreen. (This is for
16264          UI reasons, gtk_menu_position() now takes care of
16265          gtk_widet_set_uposition() brokeness.)
16266
16267 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
16268
16269         * gtk/Makefile.am: fixed up things for -jx, x > 1.
16270
16271 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
16272
16273         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
16274           RC style that is passed in. The lack of the ref
16275           before was a bug. If people worked around this
16276           bug, this will introduce a slight memory leak
16277           in their code. The code should typically look like:
16278
16279             rc_style = gtk_rc_style_new ();
16280             [...]
16281             gtk_widget_modify_style (widget, rc_style);
16282             gtk_rc_style_unref (rc_style);
16283
16284         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
16285           the style if it was already set.
16286
16287         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
16288           style if it was set before.
16289
16290 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
16291
16292         * gtk/testgtk.c (main): Add a check to see if we
16293           are being run from the correct directory and
16294           to quit nicely if we are not.
16295
16296         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
16297           static.
16298
16299 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
16300
16301         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
16302
16303         * gtk/gtkwindow.c:
16304         queue resizes unconditionally (gtk_widget_queue_resize will figure
16305         what to do if the window is not realized).
16306         (gtk_window_move_resize): only recenter the window
16307         for GTK_WIN_POS_CENTER_ALWAYS.
16308         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
16309         the same way as GTK_WIN_POS_CENTER.
16310
16311 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
16312
16313         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
16314         with (!(info->last_flags & GDK_HINT_POS)) instead of
16315         (!info->last_flags & GDK_HINT_POS).
16316
16317         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
16318         new_height unconditionally, because we use these values even if
16319         !default_size_changed && !hints_changed.
16320         comented the (default_size_changed || hints_changed) case with
16321         respect to resize rejects from the window manager.
16322
16323         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
16324         in the zvt condition hack, since this includes the window hints, set
16325         the hints after the handling_resize case.
16326
16327         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
16328         window is initially shown with to the geometry.
16329
16330 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
16331
16332         * gtk/gtkwindow.c (gtk_window_move_resize):
16333         s/size_changed/default_size_changed/g so i know what's
16334         really going on (frying brain on smaller flame now).
16335
16336 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
16337
16338         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
16339         we have size_changed upon handling_resize. this is a gross
16340         workaround for the broken zvt widget and should be removed in
16341         1.3 again (search for FIXME).
16342         Owen provided an accurate comment for this:
16343
16344         /* We could be here for two reasons
16345          *  1) We coincidentally got a resize while handling
16346          *     another resize.
16347          *  2) Our computation of size_changed was completely
16348          *     screwed up, probably because one of our children
16349          *     is broken. It's probably a zvt widget.
16350          *
16351          * For 1), we could just go ahead and ask for the
16352          * new size right now, but doing that for 2)
16353          * might well be fighting the user (and can even
16354          * trigger a loop). Since we really don't want to
16355          * do that, we requeue a resize in hopes that
16356          * by the time it gets handled, the child has seen
16357          * the light and is willing to go along with the
16358          * new size. (this happens for the zvt widget, since
16359          * the size_allocate() above will have stored the
16360          * requisition corresponding to the new size in the
16361          * zvt widget)
16362          *
16363          * This doesn't buy us anything for 1), but it shouldn't
16364          * hurt us too badly, since it is what would have
16365          * happened if we had gotten the configure event before
16366          * the new size had been set.
16367          */
16368
16369 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
16370
16371         * gtk/gtkrc.c: deal properly with the fact that RC
16372           style lists may include rc styles more than once.
16373
16374         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
16375           unused static function.
16376
16377         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
16378           stack of directories of RC files currently being
16379           parsed and implicitely add them to pixmap path.
16380           
16381           This fixes a bug where the directory would get
16382           appended then overwritten by pixmap_path declarations.
16383
16384           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
16385
16386         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
16387           theme's exit function. (Patch from Peter Wainwright,
16388           bug #1454)
16389
16390         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
16391           Add a destroy() handler to take care of removing
16392           group for menu item. (Fixes bug #1197)
16393
16394         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
16395           in warning message.
16396
16397 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
16398
16399         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
16400         roundtrip to figure window's width and height, since we know that
16401         anyways from widget->allocation.
16402
16403 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
16404
16405         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
16406           the hints after we request the new size.
16407
16408 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
16409
16410         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
16411           GTK_WIDGET_REALIZED() assertion - we can compute the
16412           hints before we are realized.
16413
16414         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
16415           hint changing so that we have a value of hints_changed
16416           when we decide whether to constrain the window size.
16417
16418         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
16419
16420         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
16421         change back to G_MAXINT.
16422
16423 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
16424
16425         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
16426         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
16427         contain uncluttered values.
16428         (gtk_window_compute_hints): simply assert that window is realized
16429         and that geometry_info is valid, since we rely on this anyways.
16430         (gtk_window_constrain_size): major cleanups to the code.
16431         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
16432         for the base size, instead of the minimums. use 32767 as max width
16433         and height (like in gtkwindow.c) instead of G_MAXINT.
16434
16435 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
16436
16437         * cleaned up the GtkContainer.need_resize flag handling mess, we
16438         only need to force resize requests when we were prematurely
16439         realized, or our widget tree was modified when we were temporarily
16440         hidden. handling these cases directly upon showing the window (i.e.
16441         while the GdkWindow is still unmapped) avoids the need to wait for
16442         a configure event response and therefore makes the GUI more snappier
16443         and avoids blank windows during the roundtrip.
16444
16445         * gtk/gtkwidget.c:
16446         (gtk_widget_hide): 
16447         (gtk_widget_show): don't queue resizes on toplevels, they know how
16448         to deal with matters.
16449
16450         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
16451         flag directly for not visible resize containers and spare us unecessary
16452         signal emissions.
16453
16454         * gtk/gtkwindow.c:
16455         (gtk_window_realize): if we need to enforce premature size allocation,
16456         queue a container resize so we are correctly resized later on.
16457         (gtk_window_init):
16458         (gtk_window_size_request):
16459         don't freak around with the ->need_resize flag,
16460         gtk_container_queue_resize() will care about that.
16461         (gtk_window_show):
16462         handle initial resizing issues here, we can handle matters better in
16463         this place, especially since we know that our GdkWindow is still
16464         unmapped.
16465         (gtk_window_move_resize):
16466         don't care about ->need_resize at all.
16467         handle size changes properly that occoured while we waited for a
16468         configure event.
16469
16470 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
16471
16472         * gtk/gtkwidget.c (gtk_widget_set_uposition):
16473         * gtk/gtkwindow.[hc] (gtk_window_reposition):
16474         Move the hint setting code from gtk_widget_set_uposition
16475         to here; set the hints so that we respect any previously
16476         set geometry hints.
16477
16478         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
16479         change the window hints here or move the window here,
16480         let that happen in gtk_window_move_resize().
16481
16482 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
16483
16484         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
16485         to already queued resizes (and therefore redraws) on a widget, check
16486         its anchestry as well.
16487
16488         * gtk/gtkcontainer.c:
16489         (gtk_container_queue_resize): clear resize widgets for resize
16490         containers before aborting prematurely. this is especially important
16491         for toplevels which may need imemdiate processing or their resize
16492         handler to be queued.
16493         (gtk_container_dequeue_resize_handler): added new internal function for
16494         gtkwindow.c.
16495
16496         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
16497         configure event, take possible changes in window position into account
16498         as well.
16499         if we request a new window size, queue up a resize handler that will
16500         last until the configure event response arrives.
16501         combined the ->need_resize case (initial show) with the general size
16502         (hints) changed case and added even more comments.
16503         if !auto_shrink, only revert to the old allocation if the new size
16504         is smaller than the current allocation.
16505
16506 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
16507
16508         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
16509                            gtk_window_set_geometry_hints
16510                            gtk_window_set_default_size):
16511         When hints are set, queue a resize so that the hints will
16512         be eventually reset on the toplevel.
16513
16514         * gtk/gtkwindow.c (gtk_window_show): Use
16515         gtk_window_compute_default_size(). Clear the need_resize flag
16516         on the initail map so that we don't unnecessarily trigger the
16517         resize code.
16518
16519         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
16520         into separate functions. Compare the hints we are setting
16521         with what we set last time so that we can accurately
16522         tell when we need to reset the hints.
16523
16524         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
16525         function to figure out the size from requisition
16526         and default_size.
16527
16528         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
16529         from fvwm to constrain a size to the geometry hints.
16530
16531         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
16532         to compare two sets of geometry hints.
16533
16534         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
16535         from gtk_window_set_hints(), just compute the hints,
16536         don't set them.
16537
16538         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
16539         code from gtk_window_move_resize() to separate function,
16540         rationalize a bit.
16541
16542 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
16543
16544         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
16545         structure into a new private structure.
16546
16547         * gtkrc.c: Split GtkRcStyle into public/private.
16548         In the private part, add a list of pointers to the
16549         RcStyle lists this RcStyle participates in.
16550
16551         * gtkrc.c: When a RcStyle is free, remove all
16552         lists referencing it from the 
16553         realized_style_ht hash, and free those lists.
16554         
16555         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
16556         gtk_rc_init(), since that adds the default styles
16557         to the list of parsed RC files again.
16558
16559         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
16560         
16561 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
16562
16563         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
16564         checks that ensure that a widget's allocation is at least 1 in width
16565         and height. (GNOME note: this doesn't affect old panel code anymore,
16566         because GtkSocket will request width and height of at least 1 since
16567         Fri Jul 23).
16568
16569         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
16570         allocated yet (happens if the user realizes the window prematurely),
16571         size request and allocate it.
16572         (gtk_window_size_allocate): guard against guint underflows.
16573
16574 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
16575
16576         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
16577         in gtk_built_sources, so gtk.defs gets built prior to all other
16578         sources.
16579
16580 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
16581
16582         * gtk/Makefile.am:
16583         invoke indent on gtkmarshal.*. 
16584         rewrote source generation rules, use COPYING as oldest source tag for
16585         a piggyback rule to generate all sources from (don't touch it ;).
16586         major cleanups, strip spaces on build rules for GNU Make.
16587
16588         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
16589         source and target files from commandline arguments. don't invoke indent.
16590
16591 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16592
16593         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16594         notebook after switch to avoid drawing problems.
16595         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16596         
16597         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16598         show them instead. 
16599         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16600
16601 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
16602
16603         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
16604         notebook after switch to avoid drawing problems.
16605         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
16606         
16607         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
16608         show them instead. 
16609         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
16610
16611 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
16612
16613         * gtk/gtkwindow.c:
16614         we use window->need_resize from configure_event now, to indicate that
16615         the gtkwindow should keep its allocation (e.g. because the user resized
16616         the window through window manager handles). resize_count is now reliably
16617         used to figure whether we got the allocation we requested from the
16618         window manager.
16619         configure events get queued as resizes now, the real stuff (size
16620         computation and allocation) now only goes on in gtk_window_move_resize().
16621         GtkWindow's requisition now contains its *real* requisition (like all
16622         other widgets), *not* taking usize into account.
16623         geometry_info->last_{width|height} is now updated from set_hints() only
16624         so it always contains the last hints we set for the window manager.
16625         made some event handlers return TRUE instead of FALSE.
16626         the overall code should be much more straight forward now, and the
16627         significant code portions are accompanied by comments now.
16628         (gtk_window_set_hints):
16629         removed requisition argument and made it
16630         fetch the requisition through gtk_widget_get_child_requisition.
16631         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
16632         does that now.
16633         (gtk_window_show):
16634         ensure that the widget is realized before calling 
16635         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
16636         ensure that we got properly size requested and allocated before
16637         realization.
16638         (gtk_window_configure_event):
16639         ignore plain window moves, or reallocate the widget tree through the
16640         resize queue otherwise.
16641         (gtk_window_move_resize):
16642         mostly rewrote this function to figure window manager hints more
16643         reliably, coalesce window moves and resizes to reduce configure events
16644         and do actuall size allocations.
16645
16646 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
16647
16648         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
16649         that have a resize pending, because a redraw is already queued for them.
16650
16651         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
16652         hack to clear resize_widgets.
16653
16654         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
16655         for resize containers prior to size allocation. (this is also a bit
16656         ugly, but avoids side effects for stopped emissions and is thus more
16657         reliable).
16658         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
16659
16660         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
16661         function from gtk_tooltips_expose, as we connect to ::expose_event
16662         *and* ::draw now.
16663
16664 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
16665
16666         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
16667         checks.
16668         (gtk_target_list_unref): Likewise.
16669
16670         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
16671
16672 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
16673
16674         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
16675         guard against division by zero. (Fixes bug #1339)
16676
16677 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
16678
16679         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
16680         Prevent the trivial leak of information of allowing
16681         word motion when the entry is not visible.
16682
16683 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
16684
16685         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
16686         modality to error dialog as well as confirmation dialogs.
16687         (Bug #1803, reported by Rosanna Wing Sze Yuen)
16688
16689 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
16690
16691         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
16692         tree->view_lines.
16693         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
16694
16695         * gtk/Makefile.am (install-data-local): Solaris apparently
16696         has various troubles with ln -f; use rm first instead.
16697         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
16698
16699 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
16700
16701         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
16702         use `cp' followed by `rm' (the `rm' was already there).
16703
16704 July 30, 1999 Elliot Lee <sopwith@redhat.com>
16705         
16706         * configure.in: Fix autoconf warnings about cross compilation by
16707         trying to provide sane defaults for AC_TRY_RUN.
16708         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
16709         put them into $(srcdir) when generated. Also add a dependency of
16710         gtksignal.h on gtkmarshal.h for -j builds. 
16711         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
16712
16713 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
16714
16715         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
16716         GDK_THREADS_{LEAVE,ENTER} pair.
16717         (From Paul Fisher <pnfisher@redhat.com>)
16718
16719 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
16720
16721         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
16722         width and height are always >0 (owen).
16723
16724 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
16725
16726         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
16727         change that assured that a widget's allocated with and height are
16728         always >1, since this breaks *buggy* panel code. unfortunately this
16729         back-breaks the gimp's color selector.
16730
16731         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
16732         allocation is always >0 in width and height, before sending the
16733         configure event; this is a *gross* hack to get the gimp back to work.
16734         
16735         * marked both cases with TODO-1.3
16736
16737 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
16738
16739         * gtk/gtktext.c: Don't display wrap indicators when
16740         text is not editable and word wrap is on.
16741
16742 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
16743
16744         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
16745         option menus here as they are not derived from menu shell, assure that
16746         the option menu has a menu we can add items to.
16747
16748 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
16749
16750         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
16751         width/height to (gint) before calculations and check against < 0 to
16752         avoid guint wraparounds.
16753
16754 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
16755
16756         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
16757         width and height is never zero. sanity check both dimensions against
16758         32767 and issue a warning if the allocation is greater than that.
16759
16760 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
16761
16762         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
16763         to g_main_pending() as well.
16764
16765 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
16766
16767         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
16768         call to g_main_iteration() - since that will regrab
16769         GTK+ lock to process events.
16770
16771 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
16772
16773         * gtk/gtkwindow.c
16774         - Regularize with the rest of GTK+ by making widget->requisition
16775           not reflect the set_usize()
16776         - Always recompute geometry hints, then check if they
16777           changed before sending them to the X server. The
16778           previous checks for changes would fail in a number
16779           of circumstances. 
16780
16781 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
16782
16783         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
16784
16785 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
16786
16787         * gtk/gtkdnd.c:
16788         - Code cleanups
16789         - Instantaneously update on modifier key presses
16790         - Allow cancellation of the drag with Escape.
16791
16792 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
16793
16794         * gtk/testgtk.c (create_handle_box): Set the policy
16795         to auto_shrink - otherwise the appearance is rather
16796         strange when flipping between horizontal and vertical.
16797
16798 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
16799
16800         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
16801         (gtk_window_set_default_size): don't change a value if it's < 0.
16802         queue a resize.
16803
16804 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
16805
16806         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
16807
16808 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
16809
16810         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
16811         add an extra "/" when concating "/" + filename.
16812         (From Matt Grossman <mattg@oz.net>)
16813
16814 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
16815
16816         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
16817         for fg_gc if we set it for drawing pixmap.
16818
16819 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
16820
16821         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
16822         
16823         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
16824         already set, call old engine's destroy function and
16825         unref the old engine.
16826
16827 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
16828
16829         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
16830
16831 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
16832
16833         * gtk/gtkaccelgroup.h: mark certain functions as internal.
16834
16835 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
16836
16837         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
16838         expand behaviour changed.
16839
16840         * gtk/gtklabel.c (gtk_label_set_pattern):
16841         (gtk_label_set_justify):
16842         (gtk_label_set_line_wrap):
16843         don't bother invoking queue_clear, the reallocation does
16844         that for us, always free_words so the upcoming resize will
16845         relayout the label's contents.
16846
16847 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
16848
16849         * applied argument implementation patches from Elena Devdariani
16850         <elena@cogent.ca>.
16851
16852         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
16853         ::space_style, ::relief
16854         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
16855         * gtk/gtkpreview.c: ::expand
16856         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
16857         * gtk/gtknotebook.c: ::homogeneous
16858         * gtk/gtklabel.c: ::wrap
16859         * gtk/gtklist.c: ::selection_mode
16860         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
16861         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
16862         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
16863         * gtk/gtkclist.c: ::sort_type
16864         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
16865         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
16866
16867 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
16868
16869         * gtk/gtkstyle.c: Removed ill-thought-out part of last
16870         comment.
16871
16872 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
16873
16874         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
16875         counting right when we have to attach a new style
16876         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
16877
16878         * gtk/gtkstyle.c: Documented the refcounting
16879         peculularities of gtk_style_attach.
16880
16881 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16882
16883         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
16884         window types.
16885
16886         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
16887         of GTK_TOPLEVEL for creating the window.
16888
16889 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
16890
16891         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
16892         the last argument (reported by Per Winkvist).
16893         
16894 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
16895
16896         Fixes for invisible XOR lines (Frank Loemker
16897         <floemker@TechFak.Uni-Bielefeld.DE>)
16898         
16899         * gtk/gtkclist.c (gtk_clist_realize): Always use
16900         a non-zero pixel for GDK_XOR.
16901
16902         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
16903         Use GDK_INVERT instead of GDK_XOR.
16904
16905 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
16906
16907         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
16908         signals if h/voffsets differ from adjustment values.
16909         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
16910
16911 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
16912
16913         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
16914         ::selection-done emissions up to the topmost menu shell.
16915
16916 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
16917
16918         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
16919         the user data on the window before destroying it.
16920
16921         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
16922         unrealize handler to take care of destroying 
16923         notebook->panel properly. 
16924         (Bug #1198 - Morten Welinder <terra@diku.dk>)
16925
16926         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
16927         of g_new and g_realloc to stop memory leak. (Actually,
16928         we could just use g_realloc(), but I'm not 100% sure
16929         that is portable).
16930         (Bug #1196 - Morten Welinder <terra@diku.dk>)
16931
16932 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
16933
16934         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
16935
16936         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
16937         for fontsets.
16938
16939         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
16940         with bin/button confusion.
16941
16942 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
16943
16944         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
16945         and show how preselection of radio items is done.
16946
16947 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
16948
16949         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
16950         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
16951         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
16952         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
16953         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
16954         * gtk/gtktable.c (gtk_table_attach): 
16955         * gtk/gtklist.c (gtk_list_insert_items): 
16956         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
16957         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
16958         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
16959         * gtk/gtkbin.c (gtk_bin_add): 
16960         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
16961         * gtk/gtkfixed.c (gtk_fixed_put): 
16962         * gtk/gtklayout.c (gtk_layout_put):
16963         general fixups to container_add logic. always realize child if
16964         child->parent is realized, only map the child and queue a resize
16965         if child and child->parent are both visible.
16966
16967 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
16968
16969         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
16970         instead of gtk_container_foreach to walk and unrealize children, so
16971         composite children get also unrealized.
16972         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
16973         (gtk_widget_map): assert that the widget is visible (basic constrain).
16974         (gtk_widget_real_map): assert that the widget is realized (basic
16975         constrain).
16976
16977 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
16978
16979         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
16980
16981 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
16982
16983         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
16984         file for iso-8859-2 locales.
16985
16986         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
16987
16988 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
16989
16990         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
16991          (Pointed out by andy@rz.uni-karlsruhe.de and others).
16992          Remove some suspicious and useless lines. 
16993
16994 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
16995
16996         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
16997         width,height = 0, 0 to mean - here to edge of window,
16998         instead of -1, -1, since the former is all we support.
16999
17000 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
17001
17002         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
17003         when removing from quit_functions list.
17004
17005 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
17006
17007         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
17008
17009 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
17010
17011         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
17012          When redrawing characters on non-visible entry, use appropriate
17013          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
17014
17015 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
17016
17017         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
17018         from drag coordinates.
17019         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
17020         use drag_dest_cell.
17021
17022         * gtk/gtktree (drag_dest_cell)
17023         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
17024         (Bug #1129)
17025
17026 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
17027
17028         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
17029         translate_* fields.
17030         (gtk_item_factory_finalize): invoke translate_notify independant from
17031         translate_data.
17032         (gtk_item_factory_set_translate_func): likewise.
17033         (gtk_item_factory_destroy): only remove ifactory pointer from those
17034         widgets that belong to us (stupid me).
17035
17036 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
17037
17038         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
17039         rc_style list when lookup succeeeds.
17040
17041 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
17042
17043         * gtk/gtkctree.c (resync_selection): 
17044         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
17045         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
17046         bug.
17047
17048 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
17049
17050         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
17051         Add some missing GDK_THREADS_ENTER()/LEAVE around
17052         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
17053
17054 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
17055
17056         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
17057         rather than emit_by_name.
17058
17059         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
17060         on the widget across multiple signal emissions.
17061         (gtk_editable_delete_text): same here.
17062         (gtk_editable_class_init): set widget_class->activate_signal after
17063         editable_signals[ACTIVATE] has been created.
17064
17065 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
17066
17067         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
17068         position here prematurely -- we might not have the
17069         right ->min_position and ->max_position yet.
17070
17071 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
17072
17073         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
17074         Add error traps so if the other end of the connection
17075         dies, we survive.
17076
17077         * gtk/gtkselection.c (gtk_selection_notify): Clean
17078         up properly when selection property retrieval fails.
17079         
17080         * gtk/gtkselection.c (gtk_selection_request): Correctly
17081         reject SelectionRequest notifies where the handler
17082         returns no data.
17083
17084 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17085
17086         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
17087         when we've previously highlighted.
17088
17089         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
17090         emit two "drag_leave" signals for Motif drops.
17091
17092         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
17093         back the correct status messages when dropping from
17094         Motif onto a proxy window that is rejecting the
17095         drop.
17096
17097 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
17098
17099         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
17100         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
17101         to compare two argument values. added gtk_arg_to_valueloc() to set a
17102         variable from an arg through its location (pointer).
17103
17104         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
17105         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
17106         as gfloat*, uchars are collected as guchar*, ints are collected as
17107         gint*, etc...
17108
17109 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
17110
17111         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
17112         Include <string.h> instead of <strings.h>.
17113
17114         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
17115         (actually, a lot more duplicate includes occur if
17116          you trace through the sequence of #include's)
17117         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
17118         
17119 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
17120
17121         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
17122         gtk-a-higuti-990322-[0-3]
17123
17124         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
17125         that was causing -DX_LOCALE not to work.
17126
17127         * gtk/gtkrc.c (gtk_rc_init):
17128         X_LOCALE will never have LC_MESSAGES defined
17129
17130 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
17131
17132         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
17133         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
17134
17135         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
17136         left/right as well (gtk-michael-980726-0.patch.gz).
17137
17138         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
17139         for pointer values, use gchar instead of char. fixed uline allocation
17140         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
17141         chunks instead of G_ALLOC_ONLY.
17142         (gtk_label_size_request): always alter requisition as passed and leave
17143         widget->requisition alone.
17144         (gtk_label_set_text): allow NULL strings.
17145         (gtk_label_new): likewise.
17146
17147 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
17148
17149         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
17150
17151 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
17152
17153         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
17154         *and* mapped (i.e. drawable).
17155         (gtk_bin_expose): only send exposes to drawable children.
17156
17157         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
17158         (gtk_box_expose): only send exposes to drawable children.
17159
17160         * gtk/gtkhscale.c (gtk_hscale_draw): 
17161         * gtk/gtkvscale.c (gtk_vscale_draw):
17162         hm, this is an ugly one. we first compute the size of our trough area
17163         here (window relative) and then check intersection with the draw_area
17164         which is parent relative because we're a NO_WINDOW widget, so we need
17165         to offset the trough area by allocation.x and allocation.y before the
17166         check. (this must not be done for the background area though, since
17167         that's already computed parent relative).
17168
17169 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
17170
17171         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
17172         unrealize title buttons.
17173
17174 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
17175
17176         * gtk/gtkclist.c (gtk_clist_column_title_passive)
17177         (gtk_clist_column_title_active): 
17178         only connect/disconnect to GtkWidgetClass::event to block mouse events.
17179
17180         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
17181         zero initialize event, removed superfluous gdk_window_get_pointer call
17182
17183         * gtk/gtklist.c (gtk_list_vertical_timeout)
17184         (gtk_list_horizontal_timeout): removed superfluous
17185         gdk_window_get_pointer call
17186
17187 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
17188
17189         * plugging problems reported by "Bruce Mitchener, Jr."
17190         <bruce@puremagic.com> due to a purify session.
17191
17192         * gtk/gtkstyle.c:
17193         (gtk_style_ref): 
17194         (gtk_style_unref): assert ref_count to be > 0.
17195
17196         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
17197         the requisition.
17198         (gtk_clist_set_shift): likewise.
17199
17200         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
17201         adjustments.
17202
17203         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
17204         event before sending it and set send_event to TRUE (which needs to
17205         be done for *all* synthesized events).
17206         (gtk_list_vertical_timeout): likewise.
17207
17208         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
17209         leaks.
17210
17211         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
17212         to TRUE when synthesizing events.
17213
17214 [ *** end of merges from 1.2 *** ]      
17215         
17216 1999-11-21  Tor Lillqvist  <tml@iki.fi>
17217
17218         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
17219         (or copied from gdkconfig.h.win32 on Win32, sigh).
17220
17221         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
17222
17223         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
17224
17225         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
17226
17227         * gdk/gdkconfig.h.win32: New file.
17228
17229         * gdk/win32/makefile.cygwin: Build just a static archive here.
17230
17231         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
17232         for the DLL from the static archive built above.
17233
17234         * gdk/gdk.def: Moved here from the win32 subdirectory.
17235
17236         * gdk/win32/*: Adapt for the changed private struct organisation.
17237
17238         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
17239
17240 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
17241
17242         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
17243         for wheel mice (buttons 4 and 5).
17244
17245 1999-11-18  Tor Lillqvist  <tml@iki.fi>
17246
17247         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
17248         drawables use just the pixel field in the foreground and
17249         background GdkColor of the GdkGC.
17250
17251         gdk_gc_set_{fore,back}ground() are called in the GIMP with
17252         GdkColors containing uninitialized (red,green,blue) fields, and
17253         just the pixel field filled in, and furthermore in the
17254         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
17255         It thus turns out that we really don't need to have the full
17256         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
17257         it later to have just the pixel values.
17258
17259 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
17260
17261         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
17262
17263 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
17264
17265         * docs/gtkfaq.sgml: threads example from Erik Mouw.
17266         New question on GtkLabel background colors.
17267
17268         * docs/gtk_tut.sgml:
17269           - Correct the example code callback
17270             function definitions.
17271           - Update the gtkdial example code, from Frans van Schaik.
17272           - Update setselection.c to current API.
17273
17274         * examples/Makefile examples/*/*.c: Update to code
17275         listed in tutorial.
17276
17277 1999-11-10  Tor Lillqvist  <tml@iki.fi>
17278
17279         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
17280         subrange table (from the "Developing International Software for
17281         WIndows 95 and Windows NT" book) was missing the Hangul syllable
17282         block... Get the loaded font's charset correctly.
17283
17284         (Note that this, and the other *-win32.c files, still really are
17285         the old ones, the win32 subdirectory is not ready for compilation
17286         yet after the reorg.)
17287
17288 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
17289
17290         * gtk/gtkclist.c: Fix off-by-one bug in parameter
17291         check.
17292
17293 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
17294
17295         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
17296         on results of XQueryDeviceState().
17297
17298 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
17299
17300         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
17301         we need to accesss only ->children. We need an accessor
17302         for the children.
17303
17304         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
17305         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
17306         to get rid of gdkx.h include.
17307         
17308         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
17309         and random references to 'None'.
17310
17311         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
17312         Get rid of unused #include <gdk/gdkx.h>
17313
17314         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
17315         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
17316         gdkconfig.h.
17317
17318 1999-11-08  Tor Lillqvist  <tml@iki.fi>
17319
17320         * gdk/win32/gdkdraw.c
17321         * gdk/win32/gdkfont.c
17322         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
17323         following yesterday's changes. (Unrelated to Owen's reorg.)
17324
17325 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
17326
17327         * gdk/x11/gdkinput-gxi.c: Add missing include,
17328           fix GdkWindowPrivate => GdkDrawablePrivate.
17329
17330         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
17331
17332         * gdk/x11/Makefile.am (xinput_sources): Add missing
17333         backslash to fix building with --with-xinput=none
17334
17335 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
17336
17337         Move all X specific code into the x11/ directory.
17338         Aside from shuffling things around, did the following:
17339
17340        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
17341          gdk_arg_context_* - a simple argument parsing system
17342          in the style of popt.
17343
17344        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
17345          gdk/x11/gdkprivate-x11.h:
17346          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
17347          add ->klass and ->klass_data fields. The klass_data
17348          field points to an auxilliary structure that is
17349          windowing system dependent.
17350
17351        * gdk/gdkfont.c: Make most of the measurement functions
17352          simply wrappers around gdk_text_extents().
17353
17354        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
17355          _gdk_font_strlen() function that hides the weird
17356          behavior in gtk+-1.[02] where a string is interpreted
17357          differently for 8-bit and 16-bit fonts.
17358
17359        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
17360          to store common code for synthesizing double/triple
17361          press events.
17362         
17363        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
17364          Make all the function that modify an existing GC
17365          simply wrappers around gdk_gc_set_values().
17366          
17367        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
17368          for throwing out later.
17369
17370        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
17371          GdkImagePrivate and GdkColormapPrivate to have a
17372          windowing system dependent part (GdkFontPrivateX etc.)
17373          that "derives" from the system-independent part.
17374
17375        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
17376          Got rid of the included-source-files for XInput in
17377          favor of automake conditionals. (Which didn't exist
17378          when XInput support was originally added.)
17379
17380        * gdk/gdkrgb.c: Remove the visual id from the debugging
17381          statements since that is X11 specific; print out
17382          type/depth info instead.
17383          
17384
17385 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
17386
17387         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
17388         loading duplicates of hashed fonts.
17389
17390         * gdk/gdk.c (gdk_keysym_convert_case): rename
17391         gdk_XConvertCase to gdk_keysym_convert_case, allow
17392         results to be NULL in the GTK+ style.
17393
17394         * gdk/gdkcompat.h: Started compatibility header
17395         for renames.
17396
17397 1999-11-07  Tor Lillqvist  <tml@iki.fi>
17398
17399         * gdk/win32/gdkprivate.h: New font private structures, related to
17400         fontsets.
17401
17402         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
17403         gdk_font_list_free(). On X11, will just be wrappers to
17404         XListFonts() and XFreeFontNames(). On Win32, the code previously
17405         in gtkfontsel.c is now here.
17406
17407         New function gdk_font_xlfd_create(). On X11 will get the FONT
17408         property of the font (for GDK_FONT_FONTs), or call
17409         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
17410         builds a XLFD style name from the font information in the LOGFONT
17411         struct(s).
17412
17413         New function gdk_font_xlfd_free(), which correspondingly frees the
17414         string returned by gdk_font_xlfd_create().
17415
17416         Implement fontsets on Win32. Add a function that iterates over a
17417         wide char string and calls a callback function for each substring
17418         of wide chars from the same Unicode subrange (and thus probably
17419         available in the same real font).
17420
17421         Improve the XLFD emulation a bit.
17422
17423         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
17424
17425         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
17426         Beta3, WM_IME_CHAR messages don't seem to contain the composed
17427         multi-byte char as with the Active IMM on Win9x. Oh well, handle
17428         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
17429         ImmGetCompositionStringW() to get the composed Unicode chars.
17430
17431         * gdk/win32/gdkgc.c
17432         * gdk/win32/gdkdraw.c: Changes needed because of the font private
17433         struct changes.
17434
17435         * gdk/win32/gdk.def: Add the new functions.
17436
17437 1999-11-04  Tor Lillqvist  <tml@iki.fi>
17438
17439         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
17440         get the Platform SDK to get <dimm.h>.
17441
17442         * gdk/win32/gdkevents.c: More event handling fixes and
17443         simplification. Never generate motion events with is_hint true. We
17444         used to do that on bogus grounds earlier. Windows sends
17445         WM_MOUSEMOVE messages on button events even if the mouse hasn't
17446         moved, ignore these.
17447
17448         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
17449
17450         * gdk/win32/gdkglobals.c
17451         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
17452         the TrackMouseEvent function, and use it.
17453
17454         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
17455         char before calling WideCharToMultiByte in order to get a string
17456         for the window title.
17457
17458         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
17459
17460         * gdk/win32/gdk.def: Remove obsolete functions.
17461
17462         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
17463         /nodefaultlib and /defaultlib switches.
17464
17465         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
17466
17467 1999-10-31  Tor Lillqvist  <tml@iki.fi>
17468
17469         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
17470         EuroSign).
17471
17472         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
17473         same type as GdkWChar, especially on Win32.
17474
17475         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
17476
17477         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
17478         before passing to Windows GDI for drawing etc. Convert to the
17479         system default codepage before passing to Windows as window
17480         titles.
17481
17482         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
17483         support changing input locale on the fly.
17484
17485         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
17486         on-the-fly changes. Convert incoming characters from the current
17487         codepage to Unicode (and then to a UTF-8 multi-byte string) based
17488         on the current input language. Use keysym<->Unicode mapping tables
17489         and functions borrowed from xterm sources.
17490
17491         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
17492         editions of Win9x, use the ActiveX-based Active IMM (Input Method
17493         Manager) if available. IMEs and the Active IMM are available under
17494         the disguise of Chinese, Korean and Japanese support for IE and
17495         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
17496         support is present in all editions (as long as you install it).
17497
17498         Call DispatchMessage from gdk_events_queue() (and thus
17499         gdk_WindowProc()), instead of duplicating the code in
17500         gdk_WindowProc().
17501
17502         Reworked the grab handling and propagation code, factored out
17503         duplicated code snippets into separate functions. Other cleanups,
17504         too.
17505
17506         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
17507         the <dimm.h> header describing the Active IMM.
17508
17509         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
17510         just do the same as for "single" fonts.
17511
17512         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
17513         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
17514         the new keysyms from gdkkeysyms.h.
17515
17516         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
17517         fontset, so that gtkentry uses wide characters.
17518
17519         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
17520         GTk+'s system directory "gtk+", not "gtk".
17521
17522 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
17523
17524         * docs/gtkfaq.sgml: FAQ update
17525
17526 1999-10-21  Tor Lillqvist  <tml@iki.fi>
17527
17528         * gdk/win32/gdkprivate.h: Add more font private data.
17529
17530         * gdk/win32/gdkfont.c
17531         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
17532         fonts and strings. Now works much better. You still have to
17533         have a correct font selected, though. No fontset emulation yet.
17534
17535 1999-10-19  Tor Lillqvist  <tml@iki.fi>
17536
17537         * gtk/maketypes.awk: Use G_OS_WIN32.
17538
17539         * gtk/gtk.def: Add some missing entry points. Also some non-public
17540         ones, but PyGTK porter claims to need them.
17541
17542         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
17543         built-in type generation.
17544
17545 1999-10-14  Tor Lillqvist  <tml@iki.fi>
17546
17547         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
17548         GDK_FONT_FONT fonts (which is all we have for now, we don't
17549         emulate fontsets). The X11 version uses plain XDrawString in that
17550         case, too. The string passed to gdk_draw_text_wc seems to be in
17551         fact (at least, when used by gtkentry and gtktext) either in a
17552         single-byte charset, or a DBCS. Not Unicode.
17553
17554         This fixes the problem in gtkfontsel, where even if you had
17555         selected a font with a non-Latin1 charset (windows-greek, for
17556         instance), the preview still used Latin-1 glyphs.
17557
17558         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
17559         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
17560         (gdk_font_load): Recognize the demibold etc weights, even if we
17561         don't have the corresponding constants in the headers.
17562         (gdk_font_hash_insert): Use same hash mechanism as in the X11
17563         version. Should save font resources a bit, when we don't have
17564         multiple HFONTs for the same font.
17565
17566         * gdk/win32/gdkprivate.h: Add the names field as in the X11
17567         version.
17568
17569 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
17570
17571         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
17572         X values
17573
17574 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
17575
17576         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
17577         layout support (as mentioned on
17578         http://www.jcinteractive.com/gnome-ui/software/widgets/)
17579
17580 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
17581
17582         * gtk/fnmatch.c
17583         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
17584
17585 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
17586
17587         * configure.in (ALL_LINGUAS): Added Galician (gl)
17588
17589 1999-10-05  Tor Lillqvist  <tml@iki.fi>
17590
17591         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
17592
17593         * gdk/win32/gdkcompat.c: New file, actually provide an
17594         implementation for the deprecated functions. (Just temporarily.)
17595
17596         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
17597
17598         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
17599
17600         * gdk/win32/gdk.def gtk/gtk.def: Updates.
17601
17602 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
17603
17604         * configure.in: Added "uk" to ALL_LINGUAS.
17605         
17606 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
17607
17608         * configure.in: correct checking for BeOS check
17609
17610         * gdk/gdktypes.h
17611         * gtk/fnmatch.c
17612         * gtk/gtkfilesel.c
17613         * gtk/gtkitemfactory.c
17614         * gtk/gtkmain.[ch]
17615         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
17616
17617 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
17618
17619         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
17620         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
17621         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
17622         by Bulgarian). 
17623
17624 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
17625
17626         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
17627         Fix a reference to window_private->destroyed.   
17628
17629         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
17630         (ugly) setting of an internal GdkWindow member to use
17631         a _slightly_ cleaner macro.
17632
17633         * gdk/gdkprivate.h: Split GdkWindowPrivate into
17634         GdkDrawablePrivate and GdkWindowPrivate.
17635         Add extra macros for accessing GDK_DRAWABLE_ components.
17636
17637         * *.[ch]: Massive adjustments for the above, use the
17638         new macros in a lot of places.
17639
17640 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
17641
17642         * gdk/gdktypes.h: Make GdkDrawable the base type,
17643         not GdkWindow.
17644
17645 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
17646
17647         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
17648
17649 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
17650
17651         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
17652
17653 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
17654
17655         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
17656         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
17657
17658         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
17659
17660         * docs/gtk-config.1: Now autogenerated.
17661         * docs/Changes-1.4.txt: started
17662         
17663 1999-10-03  Tor Lillqvist  <tml@iki.fi>
17664
17665         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
17666         to #ifdef also here.
17667
17668         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
17669         Owen did to the X11 backend.
17670
17671         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
17672         ScrollWindowEx when blitting inside a window, it can't be correct
17673         in the general case.
17674
17675         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
17676         WM_GETMINMAXINFO is easier.
17677
17678         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
17679         depth equal to the bitspixel value, not the visual's depth.
17680
17681         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
17682         to 24 even if the bitspixel value is 32.
17683
17684         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
17685         need to check for depth==32 when bpp==32, depth will always be 24.
17686
17687 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
17688
17689         * docs/Changes-1.4.txt: Started
17690         
17691         * gtk/Makefile.am (gdk_headers): Include all the new headers.
17692
17693         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
17694         
17695         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
17696         into C file.
17697         
17698         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
17699         header to gdkinputprivate.h.
17700
17701         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
17702         unused since before 1.2.
17703
17704 1999-09-30  Tor Lillqvist  <tml@iki.fi>
17705
17706         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
17707         expand possible hex escapes in the font family (put there by
17708         logfont_to_xlfd if the font name isn't a legal XLFD font family,
17709         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
17710         On Win32, add hex escapes here, too.
17711
17712 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
17713
17714         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
17715         to #ifdef GDK_WINDOWING_X11.
17716
17717 [ Merges from gtk-1-2 ]
17718
17719 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
17720
17721         * configure.in: fixed "GNU Make" check to pass with new make version
17722         3.77.95.
17723
17724 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
17725
17726         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
17727         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
17728         AM_PATH_GTK() macros don't get confused by the -pre1.
17729
17730 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17731
17732         * configure.in (REBUILD): Change check for perl5
17733           to check explicitely for v >= 5.002. (5.001
17734           does not work with our scripts.)
17735
17736 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
17737
17738         * configure.in: evaluate $PERL for the perl version check. added
17739         --disable-rebuilds to give the user an option to completely disable
17740         any source autogeneration rules.
17741
17742 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
17743
17744         * configure.in: evaluate $ac_make when checking for GNU Make.
17745
17746 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17747
17748         * docs/Makefile.am: added generation.txt.
17749
17750         * Makefile.am: require automake 1.4, build README from README.in and
17751         INSTALL from INSTALL.in in dist-hook.
17752         
17753         * README.in:
17754         * INSTALL.in: new files to autogenerate README and INSTALL from.
17755
17756         * configure.in: figure whether we have GNU Make
17757
17758         * docs/generation.txt: minor additions/corrections.
17759
17760 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
17761
17762         * docs/gtkfaq.sgml: FAQ Update
17763
17764 July 30, 1999 Elliot Lee <sopwith@redhat.com>
17765         
17766         * configure.in: Fix autoconf warnings about cross compilation by
17767         trying to provide sane defaults for AC_TRY_RUN.
17768
17769 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
17770
17771         * ltconfig
17772         * ltmain.sh: upgrade to libtool 1.3.3
17773
17774 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
17775
17776         * INSTALL: Indicate that the --with-glib= configure
17777         time flag is unsupported.
17778
17779 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
17780
17781         * docs/generation.txt: Added a file that gives
17782         documenation about the autogeneration process for
17783         various autogenerated files.
17784         
17785 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17786
17787         * configure.in (LIBS): Look for libgmodule in the
17788         right location.
17789
17790 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
17791
17792         * docs/gtk_tut.sgml: Removed references to
17793         code examples in my directory on gtk.org as
17794         they should all be in the tutorial now.
17795
17796         * docs/gtk_tut.sgml: Added sources for dial-test
17797         and scribble-xinput programs that were previously
17798         missing.
17799
17800 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
17801
17802         * TODO: Added entry about menu keyboard navigation, removed
17803         some finished items.
17804
17805 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
17806
17807         * acinclude.m4: Standardize on func_dgettext
17808         not func_gettext, so that the checks for dgettext
17809         actually are paid attention to.
17810
17811 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
17812
17813         * configure.in (LIBS): Add $INTLLIBS into $LIBS
17814         directly, rather than repeating the checks for
17815         gettext.
17816
17817         * INSTALL: Added information about gettext and
17818         NLS support.
17819
17820         * acinclude.m4 (LIBM): Check for dgettext, not
17821         just gettext. This should hopefully fix things wrt
17822         systems with old versions of GNU gettext installed.
17823
17824 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
17825
17826         * configure.in (LIBS): Look for libgmodule in the
17827         right location.
17828
17829 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
17830
17831         * autogen.sh: add --enable-maintainer-mode
17832
17833         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
17834
17835 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
17836
17837         * docs/gtk-config.1.in:
17838           docs/Makefile.am:
17839           configure.in: gtk-config is now generated.
17840
17841         * docs/gtk-config.1: Removed, now generated.
17842
17843 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
17844
17845         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
17846         handle CreateNotify itself, still put out a debuging message for
17847         --gdk-debug=events. made the ReparentNotify debugging message more
17848         verbose.
17849         wrap xcoords translation for ConfigureEvents into an error trap,
17850         a destroy event may already be pending, and in that case, the
17851         actuall coordinate values are not at all critical.
17852
17853 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
17854
17855         * gdk/gdkcc.c: Stop leaking the color_hash all over
17856         the place. Simplify and improve the logic.
17857
17858 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17859
17860         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
17861         for prototypes and function implementations consistent (reported
17862         by Tomas Ogren).
17863
17864 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17865
17866         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
17867         send_event set in debugging output.
17868         (gdk_compress_exposures): default initialize the event so we don't
17869         operate on bogus values (namely send_event).
17870
17871 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17872
17873         * gdk/gdkwindow.c: When we receive an unexpected
17874         destroy notify on one of our windows, don't just
17875         warn about it, also mark our windows as destroyed.
17876
17877 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
17878
17879         * gdk/gdkfont.c (gdk_font_hash_insert): Add
17880           name => font and name => fontset hashes. The 
17881           name => fontset hash is a _big_ win since we
17882           weren't previously caching fontsets at all and loading
17883           fontsets is expensive. The name => font hash
17884           is less of a win, but it does save us from doing
17885           repeated XQueryFont calls on the same font.
17886
17887         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
17888           list so we can remove font/fontset from hash.
17889
17890 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17891
17892         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
17893           and slightly confusing test. [ XInternAtom (,,TRUE)
17894           will never return None ].
17895
17896 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
17897
17898         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
17899           gdk/gdkwindow.c (gdk_window_set_hints):
17900
17901         Don't omit setting the properties if flags == 0 -
17902         there may be an existing set of properties there
17903         already. (Very old bug. Would it be better to
17904         delete the property instead?)
17905
17906         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
17907           spelling error in comment.
17908
17909 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
17910
17911         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
17912           to avoid stomping over gdk_error_warnings.
17913
17914         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
17915           as (bits_per_pixel + 7) / 8. This gives the same
17916           result as before for multiples of 8, but actually
17917           a "reasonable" value for 1bit or 4bit displays.
17918
17919 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
17920
17921         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
17922         GNU Make.
17923
17924 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
17925
17926         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
17927         discarding configure events.
17928
17929 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
17930
17931         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
17932         refcount is greater than zero.
17933
17934         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
17935
17936         * gdk/gdkfont.c (gdk_font_unref): Likewise.
17937
17938         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
17939
17940         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
17941
17942 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
17943
17944         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
17945         that format 32 => sizeof(item) == 4. It really is
17946         sizeof(long).
17947
17948 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
17949
17950         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
17951         core dump at all on X IO errors, only core dump
17952         if --enable-debug for X errors.
17953
17954 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
17955
17956         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
17957         unknown window:" message. disabled ConfigureNotify discarding code,
17958         because it led to events being processed out of order.
17959
17960 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
17961
17962         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
17963
17964         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
17965         we export this function, supress error warnings and don't reset the
17966         error code in the first half of this function.
17967
17968         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
17969         code (instead of just -1) so gdk_error_trap_pop() reveals something
17970         actually informative about the error that happened.
17971
17972         * gdk/*.c:
17973         don't rely on gdk_error_code being -1 if an error occoured, but just
17974         gdk_error_code != 0.
17975
17976 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
17977
17978         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
17979         pointer *before* invoking the filter function, so we at least don't
17980         crash if a filter is removed that is currently executed. window filters
17981         *really* need to be made truely reentrant at some point.
17982
17983 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
17984
17985         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
17986         PropertyNotify debug messages.
17987
17988 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
17989         
17990         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
17991         
17992         * gdk/gdkim.c: Fix cut-and-paste errors for 
17993         x/y and PreeditAttributes/StatusAttributes.
17994
17995 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
17996
17997         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
17998         G_MAXINT to 2^16 to alleviate overflow problems in
17999         various window managers.
18000
18001 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18002
18003         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18004         for fontsets.
18005
18006 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
18007
18008         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
18009         Initialize size_hints.x and size_hints.y because kwm
18010         brokenly pays attention to them.
18011         (Bug #1181 -  Lars Heete <hel@admin.de>)
18012
18013 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
18014
18015         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
18016         return value of gdk_list_visuals(). 
18017         (Bug #1193 - Morten Welinder <terra@diku.dk>)
18018
18019 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
18020
18021         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
18022         XSetIMValues to (void *) when comparing to NULL, to workaround
18023         the problem of some compilers barfing since older X headers don't
18024         have the prototype for it.
18025
18026 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
18027
18028         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
18029         for pseudocolor where colormap->colors was double
18030         allocated.
18031
18032         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
18033         color value in the hash table with the pixel filled
18034         in so when we do later hash table lookups, the color
18035         value is correct.
18036         
18037 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
18038
18039         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
18040         making the call
18041
18042 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
18043
18044         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
18045         pointed out by Morten Welinder <terra@diku.dk>.
18046
18047 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18048
18049         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18050           default filter from the list
18051
18052 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18053
18054         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18055           default filter from the list
18056
18057 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
18058
18059         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
18060
18061         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
18062         g_strdup_printf instead of calcing the length separately
18063
18064 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
18065
18066         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
18067         that we don't do in many other places. (Fixing duplicate 
18068         #include of config.h)
18069
18070         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
18071         Otherwise, #ifndef XINPUT_NONE check in the latter
18072         doesn't work. (Bug #546)
18073
18074 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
18075
18076         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
18077         "None" case insensitive.
18078
18079 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18080
18081         * gdk/gdkselection.c: 
18082         Add error traps so if the other end of the connection
18083         dies, we survive.
18084
18085 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18086
18087         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
18088         dest_xid field into two fields - one for the window
18089         to send in messages, one to indicate the last looked
18090         up window for caching purposes. This is needed, so
18091         that Leave messages get the correct window.
18092
18093 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
18094
18095         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
18096         Fix warning created by people mucking around
18097         with the gsource API.
18098
18099         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
18100         Change mapping between GIOCondition and GdkInputCondition
18101         to match the way the Linux kernel does it. This should
18102         fix problems where closed pipes were no longer signalling
18103         GDK_INPUT_READ on systems with a native poll().
18104
18105 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
18106
18107         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
18108         explicitly for the string "None" - it is in the XPM
18109         spec and some servers treat unknown colors in odd ways
18110         (like asking the user!)
18111
18112 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
18113
18114         * gdk/gdkevents.c: made "->" into a "." of previous change so
18115         it compiles
18116
18117 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
18118
18119         * gdk/gdkevents.c (gdk_compress_exposures): Set the
18120         window field of the event structure before calling
18121         user filters.
18122
18123 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
18124
18125         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
18126         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
18127
18128 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
18129
18130         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
18131         intermediate text property - prevents major memory
18132         leak when gdk_use_mb.
18133         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
18134
18135 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18136
18137         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18138         gtk-a-higuti-990322-[0-3]
18139
18140         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
18141         sizeof(wchar_t) != sizeof (GdkWChar)
18142
18143         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18144         that was causing -DX_LOCALE not to work.
18145
18146         * gtk/gtkrc.c (gtk_rc_init):
18147         X_LOCALE will never have LC_MESSAGES defined
18148
18149         * gdk/gdk.c (gdk_init_check):
18150         Remove --xim-preedit and --xim-status from argv properly.
18151
18152         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
18153         that the client window is present on the X server
18154         before we pass it to the input method.
18155
18156 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18157
18158         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
18159         if --display is specified on the command line, than
18160         the drag window will not be created on that display.
18161         
18162 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
18163
18164         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
18165         lookups with only_if_exists == TRUE were inserting
18166         bogus values into the atom cache.
18167
18168 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18169
18170         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
18171         then reset it to NULL.
18172
18173         * gdk/gdkcolor.c:
18174         (gdk_colors_free): 
18175         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
18176         key for g_hash_table_remove() in both functions, this prevents us
18177         from accessing possibly uninitialized portions of a GdkColor structure
18178         where we are only interested in its pixel value.
18179
18180 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18181
18182         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18183         font hash table, if we have a GdkFontPrivate entry for this font
18184         already, simply increment its reference count, provided by Olaf Dietsche
18185         <olaf.dietsche+list.gtk@netcologne.de>.
18186
18187 1999-09-21  Tor Lillqvist  <tml@iki.fi>
18188
18189         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
18190         just to be sure.
18191
18192         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
18193         unused variables, leftovers from the X11 version.
18194
18195         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
18196
18197         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
18198         downcase fields on X11.
18199
18200 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
18201         
18202         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
18203         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
18204
18205 1999-09-17  Tor Lillqvist  <tml@iki.fi>
18206
18207         * gdk/win32/gdk.def: Add gdk_threads_mutex.
18208
18209         * gtk/makefile.msc: Correct path to libintl.
18210
18211         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
18212         use of gint vs. int, and gint vs. gboolean in headers and
18213         definitions. Use GtkType for the *_get_type functions. Note that
18214         these changes preserve binary compatibility.
18215
18216         * gdk/gdk.c
18217         * gdk/win32/gdk.c
18218         * gdk/gdk.h: Fix inconsistencies: gint vs int.
18219
18220         * gtk/gtkmain.c
18221         * gtk/gtkclist.c
18222         * gtk/gtkmenufactory.c
18223         * gtk/gtknotebook.c
18224         * gtk/gtkwidget.c: Fix inconsistencies, also gint
18225         vs. gboolean.
18226
18227         * gtk/gtkcolorsel.[ch]
18228         * gtk/gtkcombo.[ch]
18229         * gtk/gtkdrawingarea.[ch]
18230         * gtk/gtkgamma.[ch]
18231         * gtk/gtkhandlebox.[ch]
18232         * gtk/gtkhpaned.[ch]
18233         * gtk/gtkhruler.[ch]
18234         * gtk/gtkplug.[ch]
18235         * gtk/gtkpreview.[ch]
18236         * gtk/gtkruler.[ch]
18237         * gtk/gtksocket.[ch]
18238         * gtk/gtkstatusbar.[ch]
18239         * gtk/gtktoolbar.[ch]
18240         * gtk/gtkvbbox.[ch]
18241         * gtk/gtkvpaned.[ch]
18242         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
18243         functions.
18244
18245         * gtk/gtkgamma.h: Fix bug, missing () in call of
18246         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
18247
18248 1999-09-14  Tor Lillqvist  <tml@iki.fi>
18249
18250         * gdk/gdkcolor.c (gdk_colormap_new)
18251         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
18252         colormap->colors was allocated twice.
18253
18254         * gdk/win32/gdk.c: Remove some unused stuff.
18255
18256         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
18257         colormap.
18258
18259         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
18260         * gtk/gtklabel.h (gtk_label_get_type)
18261         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
18262         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
18263         in a couple of places, not guint.
18264
18265 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18266
18267         * configure.in,po/et.po: added Estonian language file
18268
18269 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
18270
18271         * configure.in,po/da.po: added Danish file
18272
18273 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
18274
18275         * docs/gtkfaq.sgml: Minor FAQ Update
18276
18277 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
18278
18279         * docs/gtkfaq.sgml: FAQ update
18280
18281 1999-08-27  Tor Lillqvist  <tml@iki.fi>
18282
18283         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
18284         way to get window contents continually refreshed while resizing. I
18285         didn't like the effects myself, so it's not on by default.
18286
18287         * gdk/win32/gdkprivate.h: New flag variable
18288         gdk_event_func_from_window_proc, FALSE by default.
18289
18290         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
18291         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
18292         are passed --gdk-event-func-from-window-proc.
18293
18294         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
18295         and we have am event_func, call it instead of enqueing the event.
18296
18297 1999-08-23  Tor Lillqvist  <tml@iki.fi>
18298
18299         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
18300         Kelley: Set expose_count in GdkEventExposes correctly.
18301
18302         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
18303         MULTIPLE_WINDOW_CLASSES).
18304
18305         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
18306         for bug in NT, apparently NT *does* draw the end pixel, too, in
18307         LineTo with a one-pixel pen, so we don't have to do it ourselves.
18308
18309 1999-08-21  Tor Lillqvist  <tml@iki.fi>
18310
18311         Improvements by Hans Breuer: 
18312
18313         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
18314
18315         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
18316         CS_?REDRAW flags as they cause lots of (late) redraws when "show
18317         window contents while dragging" is turned on. Allocate at least
18318         one unique class for every GdkWindowType. If support for single
18319         window-specific icons is ever needed (eg. Dialog specific), every
18320         such window should get its own class.
18321
18322 1999-08-19  Tor Lillqvist  <tml@iki.fi>
18323
18324         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
18325         error that caused crashes.
18326
18327 1999-08-17  Tor Lillqvist  <tml@iki.fi>
18328
18329         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
18330         window, use ScrollWindowEx, and call UpdateWindow. This prevents
18331         bugs when for instance part of the window was outside the
18332         display. Thanks to Philippe Colantoni for finding and fixing this.
18333
18334 1999-08-16  Tor Lillqvist  <tml@iki.fi>
18335
18336         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
18337         endpoint calculations which were totally wrong. (A little RTFMing
18338         helps a lot ;-)
18339
18340         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
18341         from a separate directory, not from gettext, because of licensing
18342         issues (we want to use the LGPL version).
18343
18344         * README.win32: Mention the intl from glibc vs from gettext issue.
18345
18346 1999-08-13  Tor Lillqvist  <tml@iki.fi>
18347
18348         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
18349         in the key event handling: Now AltGr chars work again. Also,
18350         now Alt-digits are passed up as well as Control-digits.
18351         Pass keypad plus and minus as normal plus and minus.
18352
18353 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
18354
18355         * docs/gtkfaq.sgml: FAQ Update
18356
18357 1999-07-25  Tor Lillqvist  <tml@iki.fi>
18358
18359         * README.win32
18360         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
18361         the Wintab SDK.
18362
18363         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
18364         OK, but getting closer. Guard against bogus tilt data from Wacom
18365         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
18366         enable easier building without Wintab.
18367
18368         * gdk/win32/gdkinput.h
18369         * gdk/win32/gdkevents.c 
18370         * gdk/win32/gdkwindow.c: Minor changes related related to above.
18371         
18372         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
18373         code. As we have just one visual on Win32, no sense to have it in a
18374         table, and no need for the hash table.
18375
18376         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
18377         better on white background.
18378
18379 1999-07-21  Tor Lillqvist  <tml@iki.fi>
18380
18381         * README.win32: Update gcc build instructions. Mention gettext is
18382         GPL.
18383
18384         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
18385         supported cursor size with GetSystemMetrics.
18386
18387         * gdk/win32/gdkfont.c
18388         * gtk/gtkfontsel.c: Guard against some font weight and charset
18389         symbols being undefined (in mingw32 headers).
18390
18391         * gdk/win32/makefile.cygwin
18392         * gtk/makefile.cygwin
18393         * gtk/gtkthemes.c: No longer need to have differently named
18394         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
18395
18396 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
18397
18398         * docs/gtkfaq.sgml: Long awaited FAQ update.
18399
18400 1999-07-15  Tor Lillqvist  <tml@iki.fi>
18401
18402         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
18403         it. Obscure bit manipulation needed.
18404
18405         * gdk/win32/gdkevents.c: Logging.
18406         
18407         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
18408         style (file name include compiler name) for theme engines.
18409
18410 1999-07-13  Tor Lillqvist  <tml@iki.fi>
18411
18412         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
18413
18414         * gdk/win32/gdkevents.c: Fix long-standing bug in key
18415         events. The key.string wasn't zero-terminated, still we strdup'ed
18416         it in gdk_event_copy(). Synthesize crossing events for button
18417         events before possible propagation.
18418
18419         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
18420
18421         * gdk/win32/makefile.cygwin
18422         * gtk/makefile.cygwin: Use new DLL naming style for the
18423         GCC-compiled ones.
18424
18425         * gdk/win32/makefile.msc
18426         * gtk/makefile.msc: Cosmetics mostly.
18427
18428         * gtk/gtk.def: Add missing entry points.
18429
18430         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
18431
18432 1999-07-09  Tor Lillqvist  <tml@iki.fi>
18433
18434         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
18435         or height is zero. Don't print a warning if Pie or Arc fails, they
18436         always fail (?) for very narrow ellipses.
18437
18438         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
18439         the part or the destination window corresponding to source area
18440         outside of the source drawable's boundary.
18441
18442         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
18443         anything if less than two points.
18444
18445         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
18446         return NULL. Gtk cut-and-paste inside a single program works
18447         better this way. (It always gets the clipboard contents from
18448         Windows, not from its own copy, which is cleared anyway. I can't
18449         say I fully understand what happens... Emulating the X selection
18450         and property stuff is a bit of a mess.)
18451
18452         * gdk/win32/gdkevents.c
18453         * gdk/win32/gdkproperty.c: A bit more verbose logging.
18454
18455         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
18456         that never got deleted). Revamp gdk_region_shrink.
18457
18458         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
18459         after use.
18460
18461         * gtk/gtk.def: Add some missing entry points.
18462
18463         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
18464         component.
18465
18466 1999-07-04  Tor Lillqvist  <tml@iki.fi>
18467
18468         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
18469         Control-digits specially.
18470
18471 1999-07-03  Tor Lillqvist  <tml@iki.fi>
18472
18473         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
18474
18475 1999-06-28  Tor Lillqvist  <tml@iki.fi>
18476
18477         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
18478         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
18479         finding this.)
18480
18481 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
18482
18483         * gtk+.spec.in: Corrected some typos in files section.
18484         
18485 1999-06-15  Tor Lillqvist  <tml@iki.fi>
18486
18487         * README.win32: Mention using GNU gettext.
18488         * config.h.win32: Enable NLS stuff.
18489         * gtk/makefile.msc: Use GNU gettext.
18490         * gdk/win32/gdkdnd.c: Minor header reorg.
18491         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
18492         cosmetics.
18493         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
18494         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
18495
18496 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
18497
18498         * acinclude.m4
18499         * config.guess
18500         * config.status
18501         * ltconfig
18502         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
18503
18504 1999-05-30  Tor Lillqvist  <tml@iki.fi>
18505
18506         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
18507         SafeAdjustWindowRectEx. Don't override all calls to
18508         AdjustWindowRectEx by it, but use it only in two places: When
18509         creating a new top-level window and when moving a top-level
18510         window.
18511
18512         Use screen coordinate rectangle, not client rectangle, in
18513         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
18514         when we try to place a window so that the decoration (mainly,
18515         title bar) isn't visible.
18516
18517         These changes fix the bug that showed up for instance as the
18518         GIMP's saved top-level windows moving right and down (by an amount
18519         equal to the window decoration) for each session. This bug showed
18520         up also in testgtk's "Saved Position".
18521
18522         gdk_window_resize also redone a bit.
18523
18524 1999-05-25  Tor Lillqvist  <tml@iki.fi>
18525
18526         * gtk/testgtkrc: Add (commented out) Windows-style theme
18527         include line.
18528
18529         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
18530
18531 1999-05-18  Tor Lillqvist  <tml@iki.fi>
18532
18533         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
18534         gdkx.h to a gdk subdirectory, so that applications can include
18535         these with <gdk/*.h> without trouble.
18536
18537         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
18538         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
18539         have their bitmap destroyed.
18540
18541         * gdk/win32/gdk.def: Add gdk_root_parent.
18542
18543 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
18544
18545         * configure.in
18546           gtk-config.in
18547           ltconfig
18548           ltmain.sh     
18549           gtk/Makefile.am: changes to compile nicely (with xlib) 
18550           on BeOS
18551
18552 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
18553
18554         * acinclude.m4
18555         * config.guess
18556         * config.sub
18557         * ltconfig
18558         * ltmain.sh: upgrade to libtool 1.3
18559
18560 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
18561
18562         * gtk/gtkclist.c:
18563         * gtk/gtkctree.c: merges from gtk-1-2
18564
18565 1999-04-25  Tor Lillqvist  <tml@iki.fi>
18566
18567         Support added for building using a GNU toolchain on Win32,
18568         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
18569
18570         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
18571         * config.h.win32: Changes for gcc.
18572         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
18573         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
18574         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
18575         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
18576         Protect shl stuff unavaiilable with mingw32 headers.
18577         * gdk/win32/gdkevents.c: Fix typo.
18578         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
18579         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
18580         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
18581         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
18582         the mingw32 headers.
18583         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
18584         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
18585         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
18586         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
18587         Test for NATIVE_WIN32, not _MSC_VER.
18588         * gtk/gtkmain.c: No use warning about developer version on Win32,
18589         there aren't any non-developer versions anyhow.
18590         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
18591         * gtk/makefile.msc: Use pthread from another directory. Minor other
18592         changes. 
18593
18594 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
18595
18596         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
18597           default filter from the list
18598
18599 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
18600
18601         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
18602          when gtk_widget_grab_default() is called for a widget that
18603          is not within a GtkWindow.
18604
18605 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
18606
18607         * docs/gtk_tut.sgml, examples/clist.c: use a
18608           scrolled window in the clist example. Minor
18609           tutorial fixes.
18610
18611 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
18612
18613         * docs/gtk_tut.sgml: Style check from David King
18614           <dking@youvegotmail.net>
18615
18616 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
18617
18618         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
18619         compile with unknown value of GDK_WINDOWING
18620
18621 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
18622
18623         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
18624         after the rule is fired.
18625         (install-exec-local): Install gdkconfig.h only if the contents are
18626         different from the currently installed gdkconfig.h.
18627
18628 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
18629
18630         * gdk/Makefile.am (configexecincludedir): Rename from 
18631         configincludedir so that gdkconfig.h will be installed 
18632         as part of `make install-exec'. 
18633
18634 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
18635
18636         * acinclude.m4
18637         * config.guess
18638         * config.sub
18639         * ltconfig
18640         * ltmain.sh: upgrade to libtool 1.2f
18641
18642         * autogen.sh: libtool is not required to autogen gtk+
18643
18644         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
18645         needed)
18646
18647 1999-03-18  Tor Lillqvist  <tml@iki.fi>
18648
18649         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
18650         declaring gdk variables exported/imported from the DLL. New image
18651         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
18652         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
18653         GDK_DRAG_PROTO_OLE2.
18654
18655         * gdk/gdk.h: Merge in Win32 version: Two new functions,
18656         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
18657         declared only for the Win32 version, but could be in the X11
18658         version as well. (Needed for a Xlib-less gdk_imlib.)
18659         gdk_color_hash should have only one parameter. Declare
18660         gdk_threads_mutex with GDKVAR.
18661         
18662         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
18663         just one parameter.
18664
18665         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
18666         per pixel, not bits.
18667
18668         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
18669         Fetch bpp (which means bits-per-pixel here) from another place on
18670         Win32. Accept also depth==32 (which we might get on Win32) with
18671         bpp==32.
18672
18673         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
18674         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
18675         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
18676         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
18677         in the backend-dependent directory, not in the common gdk
18678         directory.
18679
18680         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
18681         headers.
18682
18683 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
18684
18685         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
18686         want to use the Gtk+ devel version (which is true, and yes - even i am
18687         currently working with the 1.2.x branch). so everyone reading this, you
18688         probably want to issue
18689         cvs checkout -r glib-1-2 glib
18690         and
18691         cvs checkout -r gtk-1-2 gtk+
18692         as your next two comands.
18693
18694 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
18695
18696         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
18697         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
18698
18699         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
18700         file. strongly deprecated the GTK_HAVE_* macros, we provide
18701         GTK_CHECK_VERSION() for people that need to check for certain
18702         Gtk+ versions.
18703
18704         * gtk/gtkcompat.h: removed this from CVS.
18705         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
18706         idea right from the start, it just didn't seem like that back then.
18707
18708 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
18709
18710         * merges from gtk-1-2:
18711
18712 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
18713
18714         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
18715         item factory class has been created.
18716         (gtk_item_factory_parse_rc): likewise.
18717
18718         * gtk/gtkmenu.c:
18719         keep proper references for old_active_menu_item.
18720         (gtk_menu_reparent): unset the usize of the new parent,
18721         so the menu can sanely be size requested and we don't get nasty screen
18722         artefacts upon next reparentation.
18723         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
18724         enter notify. only synthesize enter notifies if the pointer really is
18725         inside the event window.
18726         (gtk_menu_popdown): use gtk_menu_shell_deselect().
18727         (gtk_menu_popup): move the background setting stuff into
18728         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
18729
18730         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
18731         gtk_menu_shell_select_item() to select the new item.
18732         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
18733         do the right thing for deselection as well.
18734
18735 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
18736
18737         * gtk/gtkwidget.[hc]:
18738         (gtk_widget_accelerators_locked): return whether a widget's accelerators
18739         are locked.
18740
18741         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
18742         existing accelerators if the widget's accelerators are locked.
18743
18744 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
18745
18746         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
18747
18748         * gtk/gtkmenu.c: truely forward key press and key release events to
18749         the menu widget from the toplevel or tearoff window. we can't simply
18750         connect to that, we need to stop further processing of the events as
18751         well.
18752
18753 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
18754
18755         * gtk/gtkmenu.c:
18756         (gtk_menu_key_press): pass event->keyval, event->state to
18757         gtk_accelerator_valid, instead of event->keyval twice.
18758         refuse to install single letter accelerators for menus that use
18759         single letter shortcuts.
18760
18761         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
18762         gtk_menu_ensure_uline_accel_group().
18763
18764         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
18765         which will always return an uline accel group, made
18766         gtk_menu_get_uline_accel_group() return NULL if the group isn't
18767         yet created.
18768
18769 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
18770
18771         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
18772
18773         * gtk/gtkclist.c (gtk_clist_column_title_passive):
18774         Leave button sensitive, trap  button_press, button_release,
18775         motion_notify, enter_notify and leave_notify events instead.
18776         (gtk_clist_column_title_active): disconnect event handler.
18777         (gtk_clist_drag_data_get): fixed memory leak. Reported by
18778         Guillaume Laurent <glaurent@worldnet.fr>
18779
18780 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
18781
18782         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
18783         width/height mixups.
18784
18785         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
18786         if needed.
18787
18788 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
18789
18790         * gtk/testgtk.c (create_item_factory): unref the item factory after
18791         window's destruction.
18792
18793         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
18794         count on the menu shell around the menu item's activation, since the
18795         signal emission may cause menu shell destruction.
18796
18797         * gtk/gtkitemfactory.c:
18798         the previous code leaked one accel group per menu. we use
18799         gtk_menu_get_uline_accel_group() now to fix that, and with that
18800         also create the underline accelerator group of the menus only if
18801         required (i.e. an underline accelerator has been specified).
18802         (gtk_item_factory_construct):
18803         (gtk_item_factory_create_item): removed code that would create an
18804         extra accel group for the menu (and leak references).
18805         (gtk_item_factory_create_item): adapted the underline accelerator
18806         installation code to properly feature gtk_menu_get_uline_accel_group().
18807
18808         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
18809         menu->accel_group, this may return NULL if the accelerator group
18810         hasn't been set yet.
18811         added gtk_menu_get_uline_accel_group() to retrive the underline
18812         accelerator group of the menu, this will be created on demand
18813         and proper care is taken about its reference count.
18814
18815         * gtk/gtkitemfactory.h:
18816         * gtk/gtkitemfactory.c:
18817         dumped the approach of keeping a widgets by action list on the
18818         factory since the factory<->widget destroy negotiation didn't work
18819         and would be hard to get going at all. instead we keep a list of
18820         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
18821         persistant throughout a program's life time).
18822         also, i removed the static const gchar *key_* variables, and made
18823         them inline strings (they weren't actually used anyways).
18824         (gtk_item_factory_add_item): update ifactory->items.
18825         (gtk_item_factory_destroy): destroy ifactory->items (and remove
18826         the item factory pointer from the remaining ifactory widgets).
18827         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
18828         list to find the widget.
18829         (gtk_item_factory_get_item): new function that works around
18830         gtk_item_factory_get_widget() limitations, this function will only
18831         return menu items, even for <Branch> entries.
18832
18833 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18834
18835         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18836         font hash table, if we have a GdkFontPrivate entry for this font
18837         already, simply increment its reference count, provided by Olaf Dietsche
18838         <olaf.dietsche+list.gtk@netcologne.de>.
18839
18840         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18841         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
18842
18843 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
18844
18845         * gtk/gtkcontainer.c:
18846         (gtk_container_add_with_args):
18847         (gtk_container_addv):
18848         (gtk_container_add): before adding a child to a conatiner, make sure
18849         it is (default) constructed, this is neccessary because under certain
18850         circumstances the child will get relized and mapped immediatedly, in
18851         which case it has to be constructed already.
18852
18853 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
18854
18855         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
18856         values > 1 as TRUE also.
18857
18858 1999-03-16  Tor Lillqvist  <tml@iki.fi>
18859
18860         * README.win32: New file.
18861                 
18862         * configure.in: Check for lstat.
18863
18864         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
18865         completeness.
18866
18867         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
18868
18869         * gtk/gtk.def: Removed CRs.
18870
18871         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
18872         ..\gdk\win32).
18873
18874         * gdk/win32/makefile.msc: Correct upwards relative paths.
18875         
18876 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
18877
18878         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
18879           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
18880           it was connecting a void function to expose_event and the int
18881           returning function to the draw signal
18882
18883 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
18884
18885         * configure.in:
18886         Use correct path to libgmodule.la when ref'ing uninstalled copy
18887         of glib.  (Already in stable branch, Bug #417)
18888
18889 1999-03-15  Tor Lillqvist  <tml@iki.fi>
18890
18891         Win32 merge and general portability stuff:
18892                 
18893         * acconfig.h,configure.in: Check for <sys/time.h>.
18894
18895         * gdk/win32: New directory (actually, been there for a while).
18896         
18897         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
18898         NATIVE_WIN32, and use these. Always case fold on Win32. No
18899         backslashed escapes on native Win32.
18900
18901         * gtk/{gtk.def,makefile.msc}: New files.
18902
18903         * gtk/Makefile.am: Add above new files.
18904         
18905         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
18906         instead of <strings.h>.
18907
18908         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
18909         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
18910         <unistd.h> appropriately.
18911
18912         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
18913         Use ABS() (from <glib.h>) instead of abs().
18914         
18915         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
18916         of gtk (and thus glib) headers, so that WIN32 will be
18917         defined. With MS C, include <direct.h> for mkdir prototype.
18918
18919         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
18920         some casts, needed by MS C.
18921
18922         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
18923         implemented).
18924
18925         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
18926         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
18927         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
18928
18929         * gtk/gtkmain.h: Mark variables for export/import on Win32.
18930                 
18931         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
18932         the event is not a hint, or its window is not the slider. Needed
18933         on Win32, at least.
18934
18935         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
18936         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
18937         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
18938         a subdirectory of the Windows directory as gtk system
18939         configuration directory.
18940
18941         * gtk/gtkselection.c: No chunks on Win32.
18942
18943         * gtk/gtksocket.c: Not implemented on Win32.
18944
18945         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
18946
18947         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
18948
18949         * gtk/maketypes.awk: Declare variables with a macro that expands to
18950         necessary export/import magic in the case of Win32.
18951                 
18952         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
18953
18954 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
18955
18956         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
18957         since those were meant only for gdki18n.h.  
18958         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
18959         for widechar tests.
18960         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
18961
18962 1999-03-13  Tor Lillqvist  <tml@iki.fi>
18963
18964         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
18965         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
18966
18967         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
18968         installed) to CFLAGS.
18969
18970         * gdk/Makefile.am: Add rules for gdkconfig.h.
18971
18972         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
18973         APIs.
18974
18975         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
18976         gdkx.h anyway when compiling for X11.
18977         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
18978         general): Merge in Win32 version.
18979         
18980         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
18981         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
18982         expansion (if we don't have HAVE_PWD_H), allow for drive
18983         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
18984         included code from Craig Setera's port to Win32 (the one that uses
18985         X11, and the cygwin dll), even if it probably will be abandoned.
18986
18987         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
18988         the user entered one herself.  This way one can complete *.h and
18989         don't get matches on any .help files, for instance.
18990         
18991 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
18992
18993         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
18994         font hash table, if we have a GdkFontPrivate entry for this font
18995         already, simply increment its reference count, provided by Olaf Dietsche
18996         <olaf.dietsche+list.gtk@netcologne.de>.
18997
18998         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
18999         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
19000
19001 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19002
19003         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
19004         the number of calls to gdk_draw_point() (and thus to X) by
19005         clipping the points by hand.
19006
19007         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
19008         the clip parameter.
19009         (gtk_handle_box_paint): Only paint the handle if the expose area
19010         intersects it.
19011
19012 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19013
19014         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
19015
19016 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
19017
19018         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
19019         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
19020
19021 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
19022
19023         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
19024          textmode (O_TEXT) for OS/2 version.
19025
19026 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
19027
19028         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
19029         GtkSpinButton, "input" and "output", to make the output more flexible.
19030         The user has to provide a mapping between adjustment->value and the
19031         output string (and vice versa, if the spin button is editable). 
19032         See testgtk for examples.
19033
19034 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
19035
19036         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
19037         new one.
19038         
19039         * configure.in: set gtk+ version to 1.3.0.