]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
88082d59f988f7414c687eec7c460d0d1858bd1b
[~andy/gtk] / ChangeLog.pre-2-0
1 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
4         warning.
5
6         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
7         unref nodes, #okay61676
8
9         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
10         to the property; no need to clear the other columns.  Also, we go
11         to 'unsorted' if the model supports it.
12
13 2001-10-05  Sven Neumann  <sven@gimp.org>
14
15         * demos/testpixbuf-save.c
16         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
17         feature.
18
19 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
20
21         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
22         destroy the search dialog
23
24         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
25         added check to prevent creation of a search dialog if there's
26         already one around
27
28         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
29         it instead of "search-dialog" (when getting/setting the search dialog
30         widget).
31
32 2001-10-05  Jakub Steiner <jimmac@ximian.com>
33
34         * gtk/stock-icons/stock_broken_image.png: broken images icon
35
36 2001-10-04  Havoc Pennington  <hp@pobox.com>
37
38         Fix #56586
39         
40         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
41         accelerator setting here...
42
43         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
44         because we try to use it when a menu bar hasn't necessarily been 
45         initialized.
46
47 2001-10-03  Havoc Pennington  <hp@redhat.com>
48
49         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
50         it previously verified incorrect behavior
51
52         Fixes for #61565
53         
54         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
55         off the end
56         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
57         the end
58         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
59         the end
60         (gtk_text_iter_forward_lines): if on the last line, move to end of
61         it
62
63         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
64         don't return a line off the end
65
66 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
67
68         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
69         functions to do_insert_text and do_delete_text, add signals
70         insert_text, delete_text and changed
71
72         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
73         and changed. Updates to match new situation.
74
75         * gtk/gtkspinbutton.c: updates to match new situation
76
77         * gtk/gtkoldeditable.h: remove signals changed, insert_text
78         and delete_text
79
80         * gtk/gtkoldeditable.c: updates to match new situation
81
82         * gtk/gtktext.c: updates to match new situation
83
84         Fixes bug #59803
85
86 2001-10-03  Havoc Pennington  <hp@redhat.com>
87
88         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
89         position
90
91         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
92         changes
93
94         * tests/testtextbuffer.c (logical_motion_tests): updates
95
96 2001-10-03  jacob berkman  <jacob@ximian.com>
97
98         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
99         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
100         * gtk/gtksettings.c (apply_queued_setting): 
101         * gtk/gtkmain.c (gtk_init_check): 
102         * gtk/gtkcontainer.c (gtk_container_child_get_property):
103         s/retrive/retrieve/
104
105 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
106
107         * gtk/gtktreemodelsort.[ch]: preparation for surgery
108         * tests/testtreesort.c: ditto
109
110 2001-10-02  Havoc Pennington  <hp@redhat.com>
111
112         Throughout: assorted docs
113         
114         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
115         gdk_window_set_geometry_hints() should be used instead.
116
117         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
118         document them
119
120         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
121         seem to exist in any .c files
122
123         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
124         g_return_if_fail (pixel < colormap->size).
125
126 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
127
128         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
129         NULL for @target_list to mean, use
130         gtk_drag_dest_get_target_list (widget).
131
132         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
133         drop could hang when calling gtk_drag_finish with 
134         success == FALSE and del == TRUE.
135
136         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
137         drops without a matching target found would propagate
138         to the parent widget rather than being rejected.
139
140         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
141         Use text_view->dnd_mark instead of mark name to be
142         consistent with the rest of the code.
143
144         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
145         pendantically correct for a drop-only-in-some-places
146         widget. (Check whether you can insert in drag_drop,
147         not just in drag_motion ... matters in theory, and
148         for Motif drag and drop in practice.)
149
150         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
151         Damian Ivereigh to not allow drops on non-editable
152         entries. (#61124)
153
154         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
155         text to be moved from a non-editable entry.
156         
157 2001-10-03  James Henstridge  <james@daa.com.au>
158
159         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
160         s/width/fixed_width/ in order to get things to compile.
161
162 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
163
164         * gtk/gtkcelleditable.c: docs
165
166         * gtk/gtktreemodel.h: more docs.
167
168 2001-10-02  Havoc Pennington  <hp@redhat.com>
169
170         * gdk/x11/gdkwindow-x11.c: docs
171
172         * tests/testtextbuffer.c (logical_motion_tests): add sentence
173         boundary tests
174
175 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
176
177         * demos/gtk-demo/Makefile.am: add editable_cells.c,
178         list_store.c and tree_store.c
179
180         * demos/gtk-demo/appwindow.c: remove tearoff item from
181         File menu, put menubar and toolbar in handle boxes.
182
183         * demos/gtk-demo/genincude.pl: various changes to support trees
184
185         * demos/gtk-demo/main.c: various changes to support trees
186
187         * demos/gtk-demo/stock_browser.c: changed name of demo
188         to Stock Item and Icon Browser, so geninclude.pl doesn't see
189         it as child
190
191         * demos/gtk-demo/editable_cells.c: new file/demo
192         * demos/gtk-demo/list_store.c: new file/demo
193         * demos/gtk-demo/tree_store.c: new file/demo
194
195 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
196
197         * gtk/gtkrc.c gtk/gtksettings.c: 
198         g_string_printfa => g_string_append_printf.
199
200 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
201
202         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
203         and destroy handler.
204
205         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
206
207         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
208         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
209         Singh <yosh@gimp.org>.
210
211 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
212
213         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
214         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
215
216         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
217
218 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
219
220         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
221         scroll_to_cell delayed code to happen in size_allocate.
222
223         * gtk/gtkstyle.c (gtk_default_draw_expander): change
224         prelight/normal arrow drawing.
225
226         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
227
228         * gtk/gtktreestore.c: refactor.
229
230 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
231
232         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
233         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
234         centers the child in relation to the to indicator height.
235
236 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
237
238         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
239         correct
240
241 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
242
243         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
244         property code using g_param_spec_int and changed from
245         g_value_get_enum to g_value_get_int instead. Probably a better way
246         to fix the problem :-)
247
248 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
249
250     * gtk/gtkcellrenderertext.c changed "weight" property type from 
251       g_param_spec_int to g_param_spec_enum.
252
253 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
254
255         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
256         fix: s/Wether/Whether/ in reorderable property description
257
258 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
259
260         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
261         start editing when you select with a keyboard.
262
263         (gtk_tree_view_button_press_event): much more graceful now.
264
265         * gtk/gtkstyle.c: Draw togglebutton better.
266
267 2001-09-26  Havoc Pennington  <hp@redhat.com>
268
269         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
270         of passing non-stock label in to gtk_dialog_new_with_buttons
271
272         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
273         debugging updates
274
275         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
276         are private
277
278         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
279         exist, fall back to mnemonic label, not plain label, bug #61184
280         
281 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
282
283         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
284         stupid and emitting the signal every time.
285
286         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
287
288 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
289
290        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
291
292        * contrib/gdk-pixbuf-xlib/Makefile.am: install
293        gdk-pixbuf-xlib-2.0.pc.
294
295 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
296
297         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
298         problem where menmonic wasn't removed properly when
299         setting a label when there already is a label.
300         Also, handle setting the tab label back to the same
301         value. (#61160, #61161)
302
303         * gtk/gtkentry.c (paste_received): Patch from 
304         Damian Ivereigh to replace selection if there is 
305         one. (#61121)
306
307 2001-09-25  Darin Adler  <darin@bentspoon.com>
308
309         * tests/.cvsignore: Ignore new test program.
310
311 2001-09-25  Havoc Pennington  <hp@redhat.com>
312
313         * gtk/gtktextview.c: fix for #50317
314         
315 2001-09-25  Havoc Pennington  <hp@redhat.com>
316
317         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
318         gtk_text_iter_can_insert
319         
320         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
321
322         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
323          (gtk_text_iter_can_insert): new function to fix #60282, should
324         also fix msw's "can paste into empty buffer" bug.
325
326         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
327         "event object,"  #59091
328
329         * gtk/gtktextbtree.c: indentation fixes
330
331         * gtk/gtktextiter.c (find_by_log_attrs): fixes
332
333 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
334
335         * configure.in: Version 1.3.9, interface age 0, binary age 0.
336
337         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
338
339         * NEWS: Updates.
340
341 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
342
343         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
344         function for drawing cursors between gtkentry/gtklabel/gtktextview.
345         Should this be public? It has a bit of an odd interface, but
346         custom editing widgets probably should be using it.
347         Function will draw with wider width for taller cursors, and
348         draws a little indicator arrow to indicate directoin for split 
349         cursors.
350
351         * gtk/gtktextview.c: Add a "cursor_color" property.
352
353         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
354         gtk_text_layout_draw().
355
356         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
357         _gtk_draw_insertion_cursor().
358
359 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
360
361         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
362         the behavior where you could turn family_set (etc) back on
363         and get back the values you had before.
364
365         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
366         g_string_ascii_up() rather than looping through the
367         string ourself.
368
369 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
370
371         * gtk/gtktreeviewcolumn.c
372         (gtk_tree_view_column_set_cell_renderer): Removed
373         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
374
375         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
376         Patch from Detlef Reichl
377
378 2001-09-25  Havoc Pennington  <hp@redhat.com>
379
380         * tests/testtextbuffer.c (line_separator_tests): Add tests for
381         line separators, addresses bug #57428
382
383 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
384
385         * gtk/gtkentry.c: Make a GtkCellEditable
386         (get_widget_window_size): Change to let it honor size_allocate
387         when a CellEditable.
388
389         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
390         editable changes.
391         (gtk_tree_view_set_cursor): Now you can set the cursor
392         horizontally, as well as start editing.
393
394         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
395         code to look more like the other check buttons.
396
397         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
398         Change the way we calculate cell size.
399
400         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
401
402         * demos/gtk-demo/sizegroup.c: Add mnemonics.
403
404         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
405         Fix logic.
406
407         * gtk/gtkcellrenderertext.c: Change to be editable.
408
409         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
410
411         * test/testtreesort.c: Fix misspelling
412
413         * test/testreecolumns.c: Add mnemonics.
414
415         * test/testreeedit.c: New test program.
416
417 2001-09-25  Havoc Pennington  <hp@pobox.com>
418
419         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
420         etc. docs about how these are not going to do what you want for 
421         the X/win32 ports. Futile attempt to avoid a FAQ...
422
423 2001-09-24  James Henstridge  <james@daa.com.au>
424
425         * gtk/gtkmarshal.list (VOID): add marshal function types.
426
427         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
428         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
429         GTK_TYPE_POINTER.
430         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
431         with no-op copy/free functions.
432
433         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
434         GtkCTreeNode get_type function.
435
436 2001-09-24  Havoc Pennington  <hp@redhat.com>
437
438         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
439         gtktextlayout.c:
440         Get rid of the newline-that-could-not-be-deleted; buffers may 
441         now be zero-length. Much easier to fix than expected, once 
442         I figured out the right way to do it. However, there are 
443         various subtle bugs introduced by this that will have to get 
444         sorted out. Please use bugzilla.
445
446 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
447
448         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
449         response back from the window manager if our size hasn't changed 
450         since we won't get a response back from the window manager;
451         there was code in there to do this, but it was in the wrong
452         place so if the hints change and the size didn't we'd expect
453         a response.
454
455         Also, optimize the position-only-changed case by running
456         the resize queue immediately, and clean up some comments
457         for the changes.
458
459 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
460
461         * gtk/gtknotebook.h: Add a compat macro that got lost.
462
463         * gtk/gtktreestore.c: Doc fixes.
464
465         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
466         leak for windows that receive events after being destroyed.
467         (#60863, Joshua N. Pritikin)
468
469         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
470         rather than gtk_container_queue_resize().
471
472         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
473         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
474         gtk_container_child_composite_name. (#60217.)
475
476 2001-09-22  Hans Breuer  <hans@breuer.org>
477
478         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
479
480 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
481
482         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
483         weight value should be an int
484
485 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
486
487         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
488         to gtk_menu_scroll_item_visible(). Only call
489         gtk_menu_scroll_item_visible() if the menu widget has been
490         realized. Fixes bug #55310.
491
492 2001-09-21  Havoc Pennington  <hp@redhat.com>
493
494         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
495         key press to IM context if cursor isn't in an editable location;
496         bug #58425, patch from Hidetoshi Tajima
497
498 2001-09-21  Havoc Pennington  <hp@redhat.com>
499
500         Bug #60862
501         
502         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
503         (_gtk_text_btree_unref): fix up mark memory management
504
505         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
506
507 2001-09-20  Havoc Pennington  <hp@redhat.com>
508
509         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
510         try to handle alignment here, because it's done by PangoLayout
511         after we set the layout width. Fix from Dov.
512
513 2001-09-21  Hans Breuer  <hans@breuer.org>
514
515         * gdk/gdk.def :
516         * gtk/gtk.def : updated externals
517
518         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
519         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
520         Also handle that Win32 pathes cann't be hard-coded      
521
522         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
523         module, themes etc directory calculations
524
525         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
526         >16 bit right. The size limit within Win9x appears _not_ to be 32767
527         but slightly smaller ...
528
529         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
530         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
531
532         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
533
534         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
535         handling. I'm not sure if it is better now, but at least not worse
536
537         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
538
539         * gdk/win32/gdkwin32.h : reflect recent API restrictions
540
541 2001-09-21  Matt Wilson  <msw@redhat.com>
542
543         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
544         radio_menu_item->group to NULL after removing it from the list, as
545         it is no longer in the group. (#60869)
546
547         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
548
549 2001-09-20  Havoc Pennington  <hp@pobox.com>
550
551         * configure.in (PANGO_REQUIRED_VERSION)
552         (ATK_REQUIRED_VERSION): add variables and checks for specific 
553         versions of dependencies. Previously we didn't verify the 
554         Pango or ATk versions.
555
556 2001-09-09  Havoc Pennington  <hp@pobox.com>
557
558         * gtk/gtktextiter.c: fool with indentation
559         (gtk_text_iter_in_range): add g_return_if_fail
560
561 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
562
563         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
564         ref count on new tag to be 1.  Update doc.  (#60836)
565
566 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
567
568         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
569         call to gdk_image_new_bitmap(). (#59094, reported by
570         by Sven Neumann)
571
572 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
573
574         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
575         day, as well as the current month and year.
576         (#59047, reported by Vitaly Tishkov)
577
578 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
579
580         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
581         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
582         
583 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
584
585         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
586
587         (build_option_menu): add func argument, connect ::changed
588         signal to option menu instead of connecting the ::activate
589         signal to the menu items,
590
591         (toplevel): get rid of RADIOMENUTOGGLED macro,
592
593         (list_toggle_sel_mode), (clist_toggle_sel_mode),
594         (ctree_toggle_line_style), (ctree_toggle_expander_style),
595         (ctree_toggle_justify), (ctree_toggle_sel_mode),
596         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
597         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
598
599         (notebook_type_changed): merged standard_notebook(),
600         notabs_notebook(), scrollable_notebook() and borderless_notebook()
601         into notebook_type_changed()
602
603         (create_list), (create_ctree), (create_notebook),
604         (create_progress_bar): changed OptionMenuItem arrays into
605         gchar * arrays. Removed "Extended" item where used.
606
607         Fixes bug #59885
608
609 2001-09-20  Sven Neumann  <sven@gimp.org>
610
611         * configure.in
612         * gdk/Makefile.am
613         * gtk/Makefile.am
614         * gtk/gtkselection.c
615         * gtk/gtktreeview.c
616         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
617
618 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
619
620         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
621         a missing pango_layout_iter_free ().
622
623 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
624
625         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
626         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
627
628         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
629         the function definition so we don't accidentally rely on
630         the compat #define from gtk_radio_menu_item_group.
631         (#60782, Jeff Franks)
632
633 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
634
635         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
636         incorrect values for top, right and bottom due to cut-and-paste
637         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
638
639 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
640
641         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
642         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
643         window, not just on the client leader. (#58463)
644
645 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
646
647         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
648
649         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
650         non-public _gtk_menu_item_set_placement.
651
652         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
653
654 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
655
656         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
657           gdk/linux-fb/gdkcolor-fb.c:
658         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
659         (#59723)
660
661 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
662
663         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
664         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
665         #59723)
666
667 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
668
669         Patch from Frank Belew #59037 for Solaris compilation.
670
671         * gtk/maketypes.awk: Change syntax slightly for a call
672         to sub(), apparently making awk on Solaris happier.
673
674         * gtk/gtktreeview.c: Remove C++ comments.
675
676 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
677
678         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
679         to handle '99% of the time. (#60473, reported by Christian Rose)
680
681         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
682         which no longer exists. (#60379, reported by Vitaly Tishkov)
683
684 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
685
686         * Released 1.3.8.
687
688         * gdk/Makefile.am: kill EXTRA_DIST clearing.
689         
690 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
691
692         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
693         as its broken in automake 1.4, add explicit object rule to
694         generate this.
695         
696         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
697         get rid of uneccessary stamps, group stuff more logically, and build
698         sources due to object rules. fix srcdir!=builddir.
699
700 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
701
702         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
703         incorrect parameter to compute_double_length
704         (#58680, patch from Matthias Clasen)
705
706         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
707
708         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
709
710         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
711         for GDK_RELEASE_MASK to avoid warnings with Forte.
712
713         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
714         break; statements.
715
716 2001-09-18  Alex Larsson  <alexl@redhat.com>
717
718         * gtk/gtkcheckbutton.c:
719         * gtk/gtkradiobutton.c:
720         Don't draw with GTK_STATE_ACTIVE.
721
722         * gtk/gtkclist.c:
723         * gtk/gtkctree.c:
724         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
725
726         * gtk/gtktextdisplay.c:
727         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
728         unfocused with base_gc [GTK_STATE_ACTIVE].
729         
730         * gtk/gtkentry.c:
731         Add select all menu-item.
732         Default cursor color is red.
733         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
734         unfocused with base_gc [GTK_STATE_ACTIVE].
735
736         * gtk/gtklabel.[ch]:
737         Add keynav + menu to selectable lables.
738         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
739         unfocused with base_gc [GTK_STATE_ACTIVE].
740
741         * gtk/gtkfilesel.c:
742         Add drag and drop support.
743
744         * gtk/gtkstyle.c:
745         (This was checked in earlier)
746         New default values for text/base SELECTED and ACTIVE
747         
748 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
749
750         * configure.in: up version to 1.3.8, interface age 0,
751         binary age 0, depend on glib 1.3.8.
752
753         * NEWS: 1.3.8 updates.
754
755 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
756
757         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
758         the editing code
759
760         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
761         reason to call it beyond emiting the two signals.
762
763         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
764         to GtkEntry.
765
766 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
767
768         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
769           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
770         PangoFontDescription.
771
772         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
773         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
774         structure.
775   
776         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
777
778         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
779         direct access to style->font. Deprecate gtk_style_ref/unref.
780   
781         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
782         Remove gtk_style_ref/unref with g_object_ref/unref.
783   
784         * gtk/gtkcalendar.c: Remove leftover macros accessing
785         style->font.
786   
787         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
788         variable.
789   
790         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
791         style->font.
792
793 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
794
795         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
796         "can_activate" properties in favor of
797         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
798         and GTK_CELL_RENDERER_MODE_EDITABLE
799
800 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
801
802         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
803         editable widgets.  This function is private, and should only be
804         used by GtkTreeView.
805
806 2001-09-18  Matt Wilson  <msw@redhat.com>
807
808         * docs/Makefile.am (EXTRA_DIST): don't use += before =
809
810         * docs/faq/Makefile.am (EXTRA_DIST): likewise
811
812         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
813         
814         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
815         (EXTRA_HEADERS): likewise
816
817         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
818         (EXTRA_HEADERS): likewise
819         (EXTRA_DIST): likewise
820         (CLEANFILES): likewise
821
822         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
823
824         * tests/Makefile.am (EXTRA_DIST): likewise
825         
826         * Makefile.am (install-data-local): changed to use
827         install-data-hook, which runs after install-pkgconfigDATA, so that
828         the pkgconfigdir will have been created and populated first.
829
830 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
831
832         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
833         be the last big GtkTreeView API change.
834
835         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
836         replace with "activate" and "start_editing".  Also, added a
837         "can_activate" and "can_edit" property.
838
839         * gtk/gtktreeviewcolumn.c: modify to use above.
840
841 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
842
843         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
844
845 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
846
847         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
848         icon instead of one with ugly white background.
849
850 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
851
852         * demos/gtk-demo/stock_browser.c (id_to_macro): make
853         the uppercasing work. (#59550)
854
855 2001-09-14  Jakub Steiner <jimmac@ximian.com>
856
857         * gtk/stock-icons/dialog_error.png:
858         * gtk/stock-icons/dialog_question.png: more road signs
859
860 2001-09-13  Jakub Steiner <jimmac@ximian.com>
861
862         * gtk/stock-icons/dialog_question.png:
863         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
864           like a road sign.
865
866 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
867
868         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
869         signals to make them more clear.  Also, change ::range_changed to
870         ::row_changed.
871         * gtk/gtktreemodel.c: Adjust to interface change
872         * gtk/gtktreemodel.h: ditto
873         * gtk/gtktreemodelsort.c: ditto
874         * gtk/gtktreestore.c: ditto
875         * gtk/gtkliststore.c: ditto
876         * gtk/gtktreeview.c: ditto
877         * tests/testtreecolumns.c: ditto
878         * gtk/gtkmarshal.list: Actually remove a marshaller!
879
880 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
881
882         * gtk/gtktextview.c
883         Add support for Ctrl+Up/Down arrow to move cursor to beginning
884         of previous/next paragraph. If within a paragraph cursor moves to
885         beginning of that paragraph.
886
887 2001-09-12  Jakub Steiner <jimmac@ximian.com>
888
889         * gtk/stock-icons/dialog_question.png: replacing the shaky
890           question mark with a sans-serif one.
891         * gtk/stock-icons/stock_top.png, stock_bottom.png,
892      stock_first.png, stock_last.png: using the new style arrows
893         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
894      colors.
895         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
896      color.
897         * gtk/stock-icons/stock_zoom*: anti-aliased
898         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
899      '-' with a '_', removed the wrong files
900
901 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
902  
903         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
904  
905         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
906         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
907         than in gtk-2.0/major.minor.micro/<type>/. This
908         works better for a search path for modules.
909  
910         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
911         gtk_binary_version variable holding major.minor.(micro-binary_age).
912  
913         * modules/input/Makefile.am (moduledir): Fix installation
914         directory to match change in lookup location.
915  
916         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
917         suffixes. Needs to be handled in g_module_build_path().
918
919         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
920         appropriate.
921  
922 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
923
924         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
925         causing RC properties not to work.
926
927 2001-09-11  Jakub Steiner <jimmac@ximian.com>
928
929         * gtk/stock-icons/dialog-error.png: less drastic
930         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
931           "STOP" is international enough.
932         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
933         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
934
935 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
936
937         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
938         (add|remove)_selection_clipboard symmetric. (bug #59836)
939
940         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
941         Avoid SEGV for empty tree. (bug #60243)
942
943 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
944
945         * tests/testgtk.c (create_idle_test): slight fix for
946         g_object_set() not usable for nesting anymore.
947
948         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
949         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
950         properties, supply ::shadow_type properties instead as most
951         other widgets do.
952
953 2001-09-10  Alex Larsson  <alexl@redhat.com>
954
955         * demos/gtk-demo/stock_browser.c:
956         * gdk/gdkcolor.c:
957         * gdk/gdkfont.c:
958         * gdk/gdkcursor.c:
959         * gdk/gdkevents.c:
960         * gdk/gdkrectangle.c:
961         * gtk/gtktypeutils.c:
962         Update to use the new g_boxed_type_register_static API.
963
964 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
965
966         * gtk/gtktreestore.c:
967         Fix looping in gtk_tree_store_init() waiting for zero random int.
968
969 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
970
971         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
972         behaviour which havoc broke. they have to default to 1.0 for
973         expand behaviour.
974
975         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
976
977 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
978
979         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
980         Amend previous change to avoid runtime error in g_param_spec_ref()
981
982 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
983
984         * gtk/gtkrc.c (insert_rc_property): Fix blank line
985         in the wrong place.
986
987 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
988
989         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
990         do a lookup immediately after creating style->property_cache,
991         since bsearch crashes on zero length for Solaris.
992         (Found by Padraig O'Briain.)
993
994 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
995
996         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
997         Really return NULL if not set.
998         (gtk_widget_init): Remove unused varaible.
999         
1000 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
1001
1002         * configure.in:
1003         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
1004         in cvs.
1005
1006 2001-09-08  Havoc Pennington  <hp@pobox.com>
1007
1008         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
1009         people might want to use
1010
1011 2001-09-08  Havoc Pennington  <hp@pobox.com>
1012
1013         * gtk/gtkalignment.c (gtk_alignment_class_init): default
1014         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
1015
1016         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
1017
1018         * gtk/gtktextiter.c: fix docs
1019         (gtk_text_iter_spew): get rid of this
1020
1021         * gtk/gtklayout.c: docs
1022
1023         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
1024         to center image and label together, instead of having image on
1025         left and label centered, patch/suggestion from Jacob
1026
1027         * gtk/gtkdialog.c: docs
1028
1029 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
1030
1031         * gtk/gtkliststore.c: Write documentation
1032         * gtk/gtktreestore.c: Write documentation
1033
1034 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
1035
1036         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
1037         with GArray and bsearch(), to remove dependency on a still
1038         evolving interface that we want to keep private to glib/gobject. 
1039
1040 2001-09-08  Havoc Pennington  <hp@pobox.com>
1041
1042         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
1043         docs fixes
1044
1045         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
1046
1047         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
1048
1049         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
1050
1051         * gtk/gtkscrolledwindow.h: docs fixes
1052
1053         * gtk/gtkimage.c (gtk_image_new): docs fixes
1054
1055 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
1056
1057         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
1058         false alarm  constness warning with a cast.
1059
1060         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
1061         for the inside-gdk case.
1062
1063 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
1064
1065         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
1066         remove g_print.
1067
1068         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
1069         change models, #59899
1070
1071 2001-09-07  Havoc Pennington  <hp@pobox.com>
1072
1073         * gtk/gtkmain.c: move some docs inline
1074
1075 2001-09-07  Havoc Pennington  <hp@pobox.com>
1076
1077         * gtk/gtk.h: tsk tsk, jrb broke the build
1078
1079 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
1080
1081         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
1082         Removed 'fill' attribute.  It was silly b/c that was a property of
1083         the cell renderer, anyway.
1084         (gtk_tree_view_column_render): Actually render the packed
1085         renderers.
1086         * doc/tree-column-sizing.txt: initial devel documentation.
1087         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
1088         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
1089
1090         * tests/testtreefocus.c: fix up to reflect above changes.
1091         * tests/testtreeview.c: ditto
1092         * demos/gtk-demo/stock_browser.c: ditto
1093
1094 2001-09-07  Alex Larsson  <alexl@redhat.com>
1095
1096         * gdk/linux-fb/gdkcolor-fb.c:
1097         Removed unused function.
1098         
1099         * gdk/linux-fb/gdkdrawable-fb2.c
1100         * gdk/linux-fb/gdkfont-fb.c:
1101         Use PangoLanguage functions.
1102
1103         * gdk/linux-fb/gdkinput.c:
1104         * gdk/linux-fb/gdkselection-fb.c:
1105         Fix const warnings.
1106         
1107         * gdk/linux-fb/gdkwindow-fb.c:
1108         Fix warning. Implement gdk_window_set_icon_list() and
1109         gdk_window_get_frame_extents(). (No icon support yet though.)
1110
1111         * gtk/gtkwindow.c (gtk_window_get_position):
1112         If window->frame is set get the extents of it instead.
1113         
1114 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1115
1116         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
1117         Make the default default colormap the GdkRGB colormap,
1118         not the system colormap.
1119
1120         * gtk/gtkinvisible.c (gtk_invisible_init) 
1121           gtk/gtkwindow.c (gtk_window_init): Set the current
1122         colormap, as returned by _gtk_widget_peek_colormap()
1123         on the widget.
1124
1125         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
1126         to GTK+. Make it return %NULL instead of the default
1127         colormap if no colormap has explicitely been pushed.
1128
1129         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
1130         colormaps on ancestral widgets before defaulting the
1131         the system default colormap.
1132
1133         * docs/Changes-2.0.txt: explain colormap changes.
1134
1135 2001-09-07  Havoc Pennington  <hp@redhat.com>
1136
1137         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
1138         #57424
1139
1140 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
1141
1142         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
1143         make gdk_set_use_xshm a noop. Remove --no-xshm command line
1144         option. If we aren't autodetecting properly, we need
1145         to fix the problem, or at least make it an environment
1146         variable setting, to avoid problems with propagating
1147         to embedded children, plugins, etc.
1148
1149         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
1150
1151         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
1152         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
1153         New function to render a pixmap and mask for a particular colormap.
1154
1155         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
1156         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
1157         of internal implementation of the same.
1158
1159 2001-09-07  Havoc Pennington  <hp@redhat.com>
1160
1161         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
1162         debug code that seems to have caused a breakpoint in valid cases
1163         
1164         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
1165         pointer on the first view when adding the second view, fixes
1166         crash when closing gtk-demo text test with active selection
1167
1168         * gtk/gtktextbuffer.c
1169         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
1170         clipboards in the list of clipboards - probably fixes #59836
1171
1172 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
1173
1174       Make gdkx.h the only installed header from gdk/x11.
1175       All structures in gdk/x11 are opaque.
1176
1177         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
1178         Don't install gdk{drawable,pixmap,window}-x11.h.
1179
1180         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
1181         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
1182         GdkVisualClass into C files.
1183
1184         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
1185
1186         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
1187         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
1188         Add public functions to replace previously exported direct
1189         structure access.
1190         gdk_x11_colormap_get_{xdisplay,xcolormap} 
1191         gdk_x11_cursor_get_{xdisplay,xcursor},
1192         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
1193         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
1194         gdk_x11_gc_get_{xdisplay,ximage}
1195         
1196         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
1197         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
1198
1199       Fix a number of variables and functions that were exported
1200       "accidentally" from GDK.
1201
1202         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
1203         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
1204         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
1205         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
1206         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
1207         gdk_event_queue_find_first, gdk_event_queue_remove_link,
1208         gdk_event_queue_append, gdk_event_button_generate,
1209         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
1210
1211         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
1212            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
1213         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
1214         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
1215         gdk_use_xshm, gdk_input_ignore_core.
1216
1217         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
1218         #defines to namespace functions into the private _gdk_ 
1219         namespace.
1220
1221         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
1222         to replace gdk_parent_root exported variable. Adjust and
1223         deprecate GDK_ROOT_PARENT().
1224
1225         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
1226         GDK_ROOT_PARENT usage, remove includes of port-specific
1227         headers.
1228
1229         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
1230         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
1231         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
1232
1233         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
1234         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
1235         gdk_wm_delete_window functions, gdk_wm_take_focus, 
1236         use gdk_atom_intern() instead.
1237
1238         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
1239           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
1240           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
1241           gtk/gtkselection.c 
1242         Unexport gdk_selection_property, just use 
1243         gdk_atom_intern ("GDK_SELECTION").
1244
1245         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
1246         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
1247         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
1248         GdkVisualprivate, gdk_x11_gc_flush.
1249
1250       Make a number of public exports of variables into functions
1251       to increase encapsulation.
1252
1253         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
1254         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
1255         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
1256
1257         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
1258         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
1259         gdk_error_warnings.
1260
1261         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
1262           docs/Changes-2.0.txt: 
1263         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
1264         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
1265         Add gdk_x11_get_default_xdisplay().
1266
1267         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
1268         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
1269         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
1270         Don't export gdk_progclass, move --class command line
1271         option and handling to common portion of GDK.
1272
1273       Miscellaneous fixes:
1274
1275         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
1276         g_return_val_if_fail that should have been g_return_if_fail.
1277
1278         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
1279         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
1280
1281         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
1282         X11 dependency.
1283
1284         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
1285         Remove unused gdk_key_repeat_disable/restore.
1286
1287         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
1288         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
1289         Remove unused gdk_null_window_warnings variable.
1290
1291         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
1292         it can be retrieved from the repository; it is too far
1293         from functional to be worth having people check out;
1294         it would be easier to start from scratch, I suspect.
1295
1296         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
1297
1298         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
1299         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
1300         Fix some accidentally global variables and unused global variables.
1301
1302         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
1303         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
1304         Fix some accidentally global variables and unused global variables.
1305
1306       Add some space for future expansion to multihead.
1307
1308         * gdk/gdkdrawable.h: Add four reserved function pointers
1309         for future expansion of GdkDrawableClass.
1310
1311         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
1312         where we can put a GdkScreen * later.
1313
1314 2001-09-07  Havoc Pennington  <hp@redhat.com>
1315
1316         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
1317         adjustments after validating destination yrange; fixes #53918
1318         (This may cause other issues, but I hope it won't)
1319         
1320 2001-09-05  Havoc Pennington  <hp@redhat.com>
1321
1322         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
1323         line into start line, update the character counts in parent nodes; 
1324         caused a bug when end and start line had different parent nodes.
1325
1326 2001-08-30  Havoc Pennington  <hp@redhat.com>
1327         
1328         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
1329         assertion that tag is in a table
1330
1331 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
1332
1333         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
1334         g_strcasecmp on NULL strings. (#59058)
1335
1336 2001-09-06  Alex Larsson  <alexl@redhat.com>
1337
1338         * gtk/gtkbin.c:
1339         * gtk/gtkfontsel.c:
1340         * gtk/gtkspinbutton.c:
1341         * gtk/gtktipsquery.c:
1342         Use GtkType/GType instead of uint.
1343
1344 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1345
1346         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
1347         sort column.
1348
1349         * gtk/gtktreestore.c (gtk_list_store_init): ditto
1350
1351         * gtk/gtktreesortable.c: add docs.
1352
1353 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
1354
1355         * Version 1.3.7
1356
1357         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
1358         docs for gtk-config
1359
1360         * modules/input/Makefile.am (install-data-local): Don't
1361         run gtk-query-immodules if DESTDIR is set.
1362
1363         * NEWS: Various additions.
1364
1365 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
1366
1367         * NEWS: updates for 1.3.7 release.
1368
1369 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
1370
1371         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
1372         handle default sort feature
1373
1374         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
1375         new function to handle default sort.
1376         (gtk_tree_sortable_has_default_sort_func): check if default sort
1377         is set.
1378
1379         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
1380         handle default sort feature
1381
1382 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
1383
1384         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
1385         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
1386         #59731
1387
1388 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1389
1390         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
1391         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
1392         time, #59727
1393
1394         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
1395         correctly.
1396
1397 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
1398
1399         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
1400         so that we don't eternally update the keymap after we
1401         get a change notification.
1402
1403         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
1404         incorrect cast.
1405
1406 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
1407
1408         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
1409         it working. It mostly works now, although there're still a few issues
1410         to be worked out.
1411
1412         * tests/testtreesort.c (main): changes to have a better test
1413         application for the GtkTreeModelSort.
1414
1415 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
1416
1417         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
1418         fix for bug #59222.
1419
1420         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
1421         gpointer search_data argument to function definition and
1422         prototype, to match GtkTreeViewSearchEqualFunc typedef.
1423
1424 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
1425
1426         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
1427         per jrb's request.
1428
1429 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
1430
1431         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
1432
1433         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
1434
1435 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1436
1437         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
1438         Instead of always mirroring the selection to a single PRIMARY
1439         selection, allow it to be mirrored to any number of clipboards.
1440
1441         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
1442         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
1443
1444         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
1445         GtkClipboard argument, and for paste_clipboard, the
1446         @override_location argument from @paste_primary.
1447
1448         * gtk/gtktextview.c: Adapt to above change.
1449         
1450 2001-08-30  Havoc Pennington  <hp@redhat.com>
1451
1452         * gtk/gtktextview.c (invalidated_handler): put validate idle at
1453         resize - 2 just for flexibility
1454
1455 2001-08-30  Havoc Pennington  <hp@redhat.com>
1456
1457         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
1458         object from the empty-child-anchor case by drawing a little box.
1459         
1460         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
1461         if the child anchor has no anchored widgets - fixes #59328.
1462
1463         Also, remove bizarre deletion of preedit string that seems to have
1464         gotten in here somehow.
1465
1466 2001-08-30  Havoc Pennington  <hp@redhat.com>
1467
1468         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
1469         to #58420 from Hidetoshi Tajima and Matthias Clasen
1470
1471 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
1472
1473         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1474         change color when the GtkTreeView loses focus.
1475
1476         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
1477         ditto.
1478         
1479         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
1480
1481 2001-08-28  Havoc Pennington  <hp@pobox.com>
1482
1483         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
1484
1485 2001-08-28  Havoc Pennington  <hp@pobox.com>
1486
1487         * demos/gtk-demo/main.c (setup_default_icon): add default icon
1488
1489         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
1490         warning fix
1491         (gtk_radio_button_new_with_label): warning fix
1492
1493         * gtk/gtkdnd.c: used some random GtkImage private structs, 
1494         update to reflect GtkImage changes
1495
1496         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
1497         whether the hint is supported, just always set the icon. A task
1498         list might want to use it even if the WM doesn't, and the WM may
1499         change over time. Also, XDeleteProperty() if list == NULL.
1500
1501         * gtk/gtkwindow.c (gtk_window_set_icon_list)
1502         (gtk_window_get_icon_list)
1503         (gtk_window_set_icon)
1504         (gtk_window_get_icon)
1505         (gtk_window_set_default_icon_list)
1506         (gtk_window_get_default_icon_list):
1507         new functions
1508
1509         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
1510
1511         * gtk/gtkimage.c: Implement property support, bug #59408
1512
1513         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
1514         on reparent-without-removing-first a bit more helpful.
1515         Let's just destroy this FAQ.
1516
1517 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
1518
1519         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
1520         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
1521
1522 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
1523
1524         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
1525         of use_text_format to the end of the function. (#56447)
1526
1527 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
1528
1529         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
1530         only in response to an area_prepared signal.
1531
1532 2001-08-28  Alex Larsson  <alexl@redhat.com>
1533
1534         * gtk/gtkwidget.c (gtk_widget_class_init):
1535         Make unrealize GTK_RUN_LAST.
1536
1537 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
1538
1539         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
1540         with_label and with_mnemonic should create radio buttons, not
1541         check buttons
1542
1543 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
1544
1545         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
1546         * tests/treestoretest.c (make_window): ditto
1547         * demos/gtk-demo/main.c (create_tree): ditto
1548         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
1549
1550 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
1551
1552         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
1553         GTK selection types rather than GtkTreeSelectionMode.
1554
1555         * docs/Changes-2.0: Add comment about selection change.
1556
1557 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
1558
1559         * gtk/gtkenums.h (GtkSelectionMode): deprecate
1560         GTK_SELECTION_EXTENDED.
1561
1562         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
1563         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
1564
1565         * gtk/gtkctree.c: ditto
1566
1567         * gtk/gtklist.c: ditto
1568
1569         * gtk/gtktree.c: ditto
1570
1571 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
1572
1573         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
1574         of typos in compat macros. (#59624, Skip Montaro)
1575
1576 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
1577
1578         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
1579         macro.
1580
1581          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
1582  
1583         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
1584         interface to be a standard setter from gtk_menu_item_right_justify.
1585         (gtk_menu_item_get_right_justified): a getter to go with the setter
1586
1587         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
1588         gtk_menu_item_right_justify.
1589
1590         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
1591         gtk_menu_item_set_right_justified.
1592  
1593 2001-08-27  Jens Finke <jens@gnome.org>
1594
1595         * gtk+.spec.in: Updated to match gpp requirements, reworked the
1596         files section to make it work with 1.3.x releases.
1597
1598 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
1599
1600         * gtk/gtkbutton.[ch]:
1601         Add properties for labels, mnemonics and stock items.
1602         Added C accessor functions for the properties.
1603         Removed deprecated button->child.
1604
1605         * gtk/gtkradiobutton.c:
1606         * gtk/gtktogglebutton.c:
1607         Update to use the functions in GtkButton.
1608
1609         * gtk/gtkcheckbutton.c:
1610         Update to use the functions in GtkButton.
1611         Changed size allocation of child. Now only gets as much
1612         space as it requests.
1613
1614         * gtk/gtkclist.c:
1615         Don't use GtkButton->child
1616
1617         * gtk/gtklabel.c:
1618         Fixed typo in docs
1619         
1620 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
1621
1622         * tests/testgtk.c:
1623         * tests/Makefile.am:
1624         Ressurect the properties test.
1625         I don't care if it is inferior, I just want to test my property code.
1626
1627 2001-08-25  Chema Celorio  <chema@celorio.com>
1628
1629         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
1630         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
1631         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
1632
1633 2001-08-24  Havoc Pennington  <hp@pobox.com>
1634
1635         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
1636         these are already in gtkmenu.h, and the copies
1637         here were broken.
1638
1639         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
1640
1641         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
1642         special-case bitmaps to allow no colormap
1643         (bitmap1): implement no-colormap bitmap-getting
1644         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
1645         alpha
1646         (rgb8): indentation
1647         (rgb1a, rgb1): change the way we read the data out of the image, 
1648         old way didn't seem to work quite right.
1649
1650         I'm pretty sure a lot of the rgbconvert code is still broken.
1651         
1652         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
1653         above position constraint (I really intended to do this before,
1654         don't know what's up with that)
1655         (gtk_XParseGeometry): shut up gcc
1656
1657         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
1658         and "0" should have been. remove the attempted 4-bytes-at-once
1659         optimization, it was totally broken.
1660
1661 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
1662
1663         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
1664         on push to buttons (based on patch from Soeren Sandmann, #54720)
1665
1666           - Add child_displacement_x/y style properties to control how far the
1667             child moves when the button is depressed.
1668
1669           - Add non-exported function _gtk_button_set_depressed to clean
1670             up the handling of the in/out shadow and separate it frmo
1671             widget->state.
1672
1673           - Lots of code cleanup and simplification of state handling
1674             for GtkButton/GtkToggleButton.
1675  
1676         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
1677         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
1678
1679 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
1680
1681         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
1682         and make gtk_image_new() take no arguments. The compiler will
1683         catch it, and it is vastly more useful than having
1684         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
1685
1686         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
1687         to add tearoff-title property (#51319, Lee Mallabone)
1688
1689 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
1690
1691         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
1692         gtk_menu_item_configure(). (#58925)
1693
1694 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
1695
1696         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
1697         "use_align" to give people the option to just make a cell visible.
1698
1699         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
1700         we were scrolling past the end of the tree.
1701
1702         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
1703         rename gtk_tree_view_column_pack_start_cell_renderer to
1704         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
1705
1706 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
1707
1708         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
1709         a stray g_object_ref() left over from gtk_object_ref/sink.
1710         (Pointed out by Josh Pritikin.)
1711
1712 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
1713
1714         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
1715         to gtk_container_get_children. Added deprecated compatibility
1716         macro. (Suggested by Vitaly Tishkov, #59051)
1717
1718         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
1719         calls.
1720
1721 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
1722
1723         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
1724         gtk_menu_bar_append/prepend/insert, forgot to do this
1725         when we deprecated gtk_menu_append/prepend/insert.
1726
1727         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
1728         compat macros.
1729
1730         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
1731         renamed by compat macro.
1732
1733         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
1734         gtk_font_selection_dialog_get_font(). (Suggested by
1735         Vitaly Tishkov, #59383)
1736
1737 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
1738
1739         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
1740         Rename from gtk_text_tag_table_size(). (#59366)
1741
1742 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
1743
1744         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
1745         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
1746         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
1747         (#59173).
1748
1749 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
1750
1751         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
1752         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
1753         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
1754
1755 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
1756
1757         [ Patch from Sebastian Wilhelmi, 52790 ]
1758
1759         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
1760
1761         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
1762         Move compatibility macros from g[dt]kcompat.h to within 
1763         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
1764
1765         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
1766
1767         * demos/Makefile.am demos/gtk-demo/Makefile.am 
1768           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
1769           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
1770
1771         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
1772                  testpixbuf.c}: Fix usages of deprecated functions.
1773
1774 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
1775
1776         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
1777         when changing models.
1778
1779 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
1780
1781         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
1782         We check the current event for modifiers rather than try to trap
1783         all presses.
1784
1785 2001-08-22  Anders Carlsson  <andersca@gnu.org>
1786
1787         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
1788         It's LIST_STORE, not LISTSTORE.
1789
1790 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
1791
1792         * gtk/gtk.h: Remove commented out gtkpacker reference.
1793
1794 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1795
1796         * configure.in (all_loaders): Add tga loader, 
1797         patch by Nicola Girardi. (#56067)
1798
1799 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
1800
1801         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
1802         a little.  More needs to be done tomorrow.
1803
1804 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
1805
1806         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
1807
1808 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
1809
1810         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
1811         reported by Kristian Rietveld <kristian@planet.nl> to handle row
1812         == NULL.
1813         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
1814         <kristian@planet.nl> to change destroy order.
1815
1816 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
1817
1818         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
1819         correct marshaller.
1820
1821 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
1822
1823         * gtk/gtkliststore.c: Fix up warnings, #58928.
1824
1825         * gtk/gtktreeselection.h: Change signal prototype, #58647
1826
1827         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
1828         #59221.
1829
1830         * gtk/gtkstyle.c: Actually prelight arrow, #50981
1831         
1832 2001-08-18  Hans Breuer  <hans@breuer.org>
1833
1834         * gdk/gdk.def : updated externals
1835
1836         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
1837         is required to get (at least) visible in entry fields. Some selections
1838         are really handled now - even on win32 - but copying via middle
1839         mouse button into a different app needs to wait ... 
1840
1841         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
1842         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
1843
1844         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
1845         handling. I'm not sure if it is better now, but at least not worse
1846
1847         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
1848         with SetWindowPos () which allows more fine-tuning backing-store wise
1849
1850         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
1851         Also changed move/resize to be more like the X version.
1852
1853         * gtk/gtk.def : updated externals
1854
1855 2001-08-19  Sven Neumann  <sven@gimp.org>
1856
1857         * gtk/gtktooltips.c
1858         * tests/testtreesort.c
1859         * tests/treestoretest.c: inserted some casts to get rid of compiler
1860         warnings.
1861
1862 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
1863
1864         * gtk/gtktreeviewcolumn.c
1865         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
1866
1867         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
1868         (_gtk_tree_view_find_node): If *node is NULL,
1869         *tree should be NULL too.
1870
1871         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
1872         column/renderers.
1873         * tests/testtreecolumns.c: ditto
1874         * tests/testtreefocus.c: ditto
1875         * tests/testtreesort.c: ditto
1876         * tests/testtreeview.c: ditto
1877         * tests/treestoretest.c: ditto
1878
1879 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
1880
1881         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
1882         signals; is_expander/is_expanded.
1883
1884         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
1885         pixbufs.
1886
1887         * gtk/gtktreeview.c: set above properties.
1888
1889 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
1890
1891         * gtk/gtkwidget.h: Really remove set_default_style().
1892
1893         * docs/Changes-2.0.txt: added a note about
1894         gtk_widget_push/pop/set_default_style.
1895
1896 2001-08-18  Havoc Pennington  <hp@pobox.com>
1897
1898         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
1899         hints_changed in addition to the other cases.
1900         (gtk_window_move_resize): include last position from configure
1901         notify in debug spew
1902
1903 2001-08-18  James Henstridge  <james@daa.com.au>
1904
1905         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
1906         second argument to the weak ref notify, cleaning up some uglyness.
1907         (gtk_accel_group_attach): remove and add the weak notifier when
1908         changing the accel groups slist.
1909         (gtk_accel_group_detach): same here.
1910
1911 2001-08-17  Darin Adler  <darin@bentspoon.com>
1912
1913         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
1914         missing parameters to utf8 functions to make it compile.
1915
1916 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
1917
1918         * gtk/gtktreeprivate.h:
1919         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
1920         (gtk_tree_view_init), (gtk_tree_view_set_property),
1921         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
1922         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
1923         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
1924         (gtk_tree_view_set_destroy_count_func),
1925         (gtk_tree_view_set_enable_search),
1926         (gtk_tree_view_get_enable_search),
1927         (gtk_tree_view_get_search_column),
1928         (gtk_tree_view_set_search_column),
1929         (gtk_tree_view_get_search_equal_func),
1930         (gtk_tree_view_set_search_equal_func),
1931         (gtk_tree_view_search_dialog_destroy),
1932         (gtk_tree_view_search_position_func),
1933         (gtk_tree_view_interactive_search),
1934         (gtk_tree_view_search_delete_event),
1935         (gtk_tree_view_search_button_press_event),
1936         (gtk_tree_view_search_key_press_event),
1937         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
1938         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
1939         * gtk/gtktreeview.h:
1940         Add heavily modified patch from Kristian Rietveld to handle
1941         interactive searching.
1942
1943 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
1944
1945         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
1946         string parameter.
1947
1948         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
1949         GtkMenuShell::selection_done, now that we have it, instead of 
1950         ::deactivate so we're not tearing the menu apart and notify
1951         the user prematurely.
1952
1953 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
1954
1955         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
1956         window, clear window->need_default_position to avoid infinite loops.
1957         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
1958
1959 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
1960
1961         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
1962         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
1963         (gtk_tree_view_set_property): don't cast possible NULL objects.
1964         (gtk_tree_view_destroy): reset the model to NULL.
1965
1966         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
1967         parent_class handler.
1968
1969 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1970
1971         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
1972
1973 2001-08-17  Anders Carlsson  <andersca@gnu.org>
1974
1975         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
1976         point numbers so that the result will be floating point.
1977
1978 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1979
1980         * tests/testgtk.c (create_handle_box): 
1981         (create_toolbar): Replace gtk_window_set_policy calls by
1982         gtk_window_set_resizable.
1983
1984 2001-08-16  Jakub Steiner <jimmac@ximian.com>
1985
1986         * gtk/stock-icons/dialog_info.png: new style bulb
1987         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
1988         * gtk/stock-icons/dialog_warning.png: need a hand?
1989         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
1990           the aa border gets chopped off ok
1991         * gtk/stock-icons/stock_colorselector.png: using the new hand
1992         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
1993           this one is for, but the old icon was butt ugly.
1994         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
1995         * gtk/stock-icons/stock*_insert_object.png: "
1996         * gtk/stock-icons/stock_index.png: using new hand icon
1997         * gtk/stock-icons/stock*_new.png: the document template being used 
1998           elsewhere too
1999         * gtk/stock-icons/stock*_print*.png: new print and print preview 
2000           icons (panel/menu)  
2001         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
2002           icons based on Tuomas' floppy image.
2003         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
2004         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
2005         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
2006         * gtk/stock-icons/stock*_undelete.png: "
2007         * gtk/stock-icons/stock_preferences.png: I have a version with a 
2008           document base if the sliders are no good.
2009         * gtk/stock-icons/stock_properties.png: properties 
2010         
2011
2012         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
2013           (tigert@ximian.com) clipboard icons
2014         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
2015         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
2016         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
2017           little bigger IMHO
2018
2019 2001-08-16  Sven Neumann  <sven@gimp.org>
2020
2021         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
2022
2023 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
2024
2025         * gtk/gtkcellrenderertext.c:
2026         Avoid warning when specifying NULL for "attributes" property
2027
2028 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2029
2030         * docs/debugging.txt: Add a warning about --enable-debug=no,
2031         some editorial changes.
2032
2033 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2034
2035         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
2036         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
2037         debugging info, remove unused debug flags. (#58330)
2038
2039 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
2040
2041         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
2042         (gtk_tree_selection_select_all): Remove strict checking for rows.
2043
2044 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2045         
2046         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
2047         Don't remove the tooltip window when the tip text changes. (#15891)
2048
2049 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
2050
2051         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
2052         $(srcdir).
2053
2054 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
2055
2056         * Makefile.am (EXTRA_DIST): Fix problem with trying to
2057         dist files from intl/, which is no longer there.
2058
2059 2001-08-11  Hans Breuer  <hans@breuer.org>
2060
2061         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
2062           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
2063           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
2064           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
2065           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
2066           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
2067
2068         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
2069           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
2070         GDK_TYPE_EVENT signals
2071
2072         * gtk/gtkalignment.c : removed 'direct allocation bug',
2073         which Tim discovered while reading the patch
2074
2075 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
2076
2077         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
2078         compat macros for push/pop/set_visual that were supposed
2079         to be added a long time ago, but got dropped. 
2080
2081 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
2082
2083         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
2084         property notifies.
2085
2086 2001-08-07  Havoc Pennington  <hp@pobox.com>
2087
2088         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
2089
2090         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
2091         some fixage is needed here, but nothing simple. Owen understands
2092         it. ;-)
2093
2094         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
2095         sizing and positioning.  Also, fix bug in compute_geometry_hints
2096         (width/height confusion for setting min size). 
2097         (gtk_window_move): new function
2098         (gtk_window_resize): new function
2099         (gtk_window_get_size): new function
2100         (gtk_window_get_position): new function
2101         (gtk_window_parse_geometry): new function
2102         
2103         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
2104         (gtk_widget_get_size_request): new function
2105         (gtk_widget_get_usize): delete, that was a short-lived function
2106         ;-)
2107         (gtk_widget_set_usize): deprecate
2108         (gtk_widget_set_uposition): deprecate, make it a trivial 
2109         gtk_window_move() wrapper
2110         (gtk_widget_class_init): remove x/y/width/height properties,
2111         add width_request height_request
2112         
2113         * demos/*: update to avoid deprecated functions
2114         
2115         * gtk/gtklayout.c: add x/y child properties
2116
2117         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
2118         uses of "gint16"
2119
2120         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
2121         sizing test
2122
2123         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
2124         configure events on toplevel windows are always in root window
2125         coordinates, following ICCCM spec that all synthetic events 
2126         are in root window coords already, while real events are 
2127         in parent window coords. Previously the code assumed that 
2128         coords of 0,0 were parent window coords, which was 
2129         really broken.
2130   
2131         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
2132         warning
2133  
2134         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
2135         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
2136         hints in gtk_window_parse_geometry()
2137  
2138         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
2139         new USER_POS USER_SIZE hints    
2140
2141 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2142
2143         * tests/prop-editor.c (properties_from_type): Use 
2144         g_object_class_list_properties to get the param specs 
2145         for a given type. (#58609)
2146
2147 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2148
2149         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
2150         free the text_aa parts. (#57549)
2151
2152 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2153
2154         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
2155         not the foreground color. (#57621)
2156
2157 2001-08-09  Alexander Larsson <alexl@redhat.com>
2158
2159         * gdk/win32/gdkfont-win32.c:
2160         Update to the new pango win32 api.
2161
2162 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
2163
2164         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
2165         COMPOUND_TEXT instead of TEXT
2166         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
2167         interpret the return value of g_string_to_compound_text()
2168         (#55152)
2169
2170 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2171
2172         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
2173         fail if iter is NULL. (#58347)
2174
2175 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2176
2177         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
2178         some off-by-one issues, fixing selection of line-ends. (#50323)
2179
2180 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2181
2182         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
2183         functions in order to make mouse operation work again in the
2184         color wheel. (#58604)
2185
2186 2001-08-07  James Henstridge  <james@daa.com.au>
2187
2188         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
2189         the accelerator when the accel object is changed.  Fixes bug
2190         #58628.
2191
2192 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
2193
2194         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
2195         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
2196         (gnome bugzilla #58202)
2197
2198 2001-08-06  Havoc Pennington  <hp@pobox.com>
2199  
2200         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
2201         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
2202         it was expecting a GdkWindow, not a GdkWindowImplX11.
2203  
2204         Also, we were getting the window rect in screen coords 
2205         and the screen rect in window coords then intersecting 
2206         them; instead, get window rect in window coords.
2207  
2208         Finally, there were codepaths that resulted in a stuck server grab
2209         (when the window was fully onscreen, or on gdk_image_new()
2210         failure); make the server ungrab thing a bit more
2211         robust/consistent.
2212
2213 2001-08-06  Sven Neumann  <sven@gimp.org>
2214
2215         * gdk/gdkpango.c (gdk_pango_context_destroy): 
2216         check if info->colormap != NULL before unref'ing it. It might have
2217         been set to NULL using gdk_pango_context_set_colormap().
2218
2219 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
2220
2221         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
2222         Fix conversion from float to int so that we don't get
2223         skew in the int => float => int roundtrip. 
2224         (#58120, reported by Vitaly Tishkov). Also fix problem
2225         where if no alpha was set, the returned alpha
2226         from (say) set_current_alpha() was returned as 1, not 65535.
2227
2228 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
2229
2230         * gtk/gtklist.c (gtk_list_clear_items): Fix
2231         problem with selecting a new focus child.
2232
2233         * gtk/gtklist.c (gtk_list_clear_items): Clear 
2234         list->undo/list_focus_child after unparenting
2235         child, since unparenting the child can result
2236         in list->last_focus_child being set. (#58024)
2237
2238         * Makefile.am (SUBDIRS): Add target specific pc
2239         files to DISTCLEANFILES.
2240
2241         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
2242         (58327, Matthias Clasen)
2243
2244 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
2245
2246         * tests/testgtk.c: Patch from Hans (with various modifications),
2247         to add the ability to use testgtk as a rough-and-ready
2248         benchmark. Try, 'testgtk --bench all:5' (if you want decent
2249         numbers, run without a window manager)
2250
2251 2001-08-04 Alexander Larsson <alexl@redhat.com>
2252
2253         * gdk/win32/gdkinput.c:
2254         Add #ifdef HAVE_WINTAB around wintab.h include.
2255
2256         * gtk/gtk.def:
2257         Removed marshals that have been moved to glib.
2258         Commented out plug and socket. They didn't compile for me 
2259         on win32.
2260
2261 2001-08-04  Hans Breuer  <hans@breuer.org>
2262
2263         * gtk/stocks-icons/makefile.msc : new file
2264         * gtk/makefile.msc.in : use it
2265
2266         * gtk/gtkstyle.c : not all platforms do provide M_PI and
2267         friends, but luckily there is G_PI
2268
2269         * gtk/gtk.def : updated
2270
2271         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
2272         windows WS_POPUP, but only those without a parent. This fixes the 
2273         mis-alignment between the selectable (temp, input only) window and 
2274         the window text of GtkLabel.
2275
2276         (gdk_window_show) : respect private->state when actually showing
2277         the window.
2278
2279         (gdk_window_set_transient_for) : Implementation from Wolfgang 
2280         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
2281         error handling. Should fix #50586.
2282
2283         * gdk/win32/gdkevents-win32.c : beautify log output
2284
2285 2001-08-04  Michael Natterer  <mitch@gimp.org>
2286
2287         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
2288         Need to show the image after adding it to the GtkImageMenuItem.
2289         This used to work without in testgtk because of the
2290         gtk_widget_show_all() at the end of the function.
2291         (Closes #54978).
2292
2293 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
2294
2295         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
2296         (gtk_notebook_set_child_property): fix finding of child's page,
2297         since we have to validly deal with labels and menus here as well.
2298         (gtk_notebook_get_child_property): fix warning.
2299         (gtk_notebook_class_init): property tab_pack is of type
2300         GTK_TYPE_PACK_TYPE (enum) not boolean.
2301         (gtk_notebook_find_child): don't always warn, we might be looking
2302         for a label or menu child.
2303         (gtk_notebook_map): fix mapping of panel.
2304
2305         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
2306         widget's mapped state, regardless of the value being set equals
2307         old settings, since things like REALIZED(parent) or MAPPED(parent)
2308         may have changed since the old value was set. make it an error to
2309         invoke this function on a toplevel widget.
2310
2311 2001-07-31  Darin Adler  <darin@bentspoon.com>
2312
2313         * gdk/gdkprivate.h:
2314         * gdk/x11/gdkx.h:
2315         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
2316
2317         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
2318         GTK_OBJECT.
2319
2320 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
2321
2322         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
2323         scoping error pointed out by matthiasc@poet.de.
2324
2325 2001-07-31  Sven Neumann  <sven@gimp.org>
2326
2327         * demos/gtk-demo/appwindow.c
2328         * demos/gtk-demo/item_factory.c
2329         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
2330
2331 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
2332
2333         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
2334         argument order for g_signal_has_handler_pending.
2335
2336 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
2337
2338         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
2339         instead of long deprecated g_scanner_stat_mode().
2340
2341 2001-07-29  Hans Breuer  <hans@breuer.org>
2342
2343         * gdk/makefile.msc : build in the backend dir after
2344         auto-generating files
2345
2346         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
2347         with code from win32-production-branch.
2348
2349         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
2350         before calling DestroyWindow, which indirectly calls 
2351         gdk_window_destroy_notify ()
2352
2353         (performance patch merged from win32-production-branch)
2354         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
2355         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
2356         R2_COPYPEN rop). It is claimed to be much faster.
2357
2358 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
2359
2360         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
2361         add an "attributes" property to the text renderer for ATK.
2362
2363 2001-07-26  Alex Larsson  <alexl@redhat.com>
2364
2365         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2366         Initialize image->bits_per_pixel from the drawable, not from
2367         the root window.
2368
2369         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
2370         Fix cast. argument is an IMPL already.
2371
2372 2001-07-15  James Henstridge  <james@daa.com.au>
2373
2374         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
2375         (gtk_window_remove_accel_group): same here.
2376         (gtk_window_key_press_event): same here.
2377
2378         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
2379         (gtk_widget_remove_accelerator): same here.
2380         (gtk_widget_remove_accelerators): same here.
2381
2382         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
2383
2384         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
2385         instead of GtkObject.
2386
2387         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
2388         now takes GObjects.
2389
2390         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
2391         pass a GObject to gtk_accel_group_entries_from_object.
2392         (gtk_item_factory_create_item): s/accel_widget/accel_object/
2393
2394         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
2395
2396         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
2397
2398         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
2399         GObjects can have accelerators set now.  Add compatibility
2400         defines.
2401
2402         * gtk/gtkmarshal.list: add missing marshallers.
2403
2404         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
2405         accelerators on plain GObjects.  gtk_accel_group_object_destroy
2406         has been converted into a weak reference, and
2407         gtk_accel_group_delete_entries is now a destroy notify for that
2408         piece of data.
2409
2410 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
2411
2412         * gdk/gdkdraw.c: Added a check on the colormap depth to
2413         gdk_drawable_set_colormap()
2414         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
2415         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
2416         for pixmaps without visuals (more specifically, bitmaps)
2417         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
2418         doesn't set a colormap with the wrong depth
2419
2420
2421 2001-07-22  Anders Carlsson  <andersca@gnome.org>
2422
2423         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
2424         expander_height and expander_width properties with a single
2425         property, expander_size.
2426         (gtk_tree_view_init): Set the tab_offset to expander_size
2427         plus some padding.
2428         (gtk_tree_view_unrealize): Remove the expand/collapse
2429         timeout if it exists.
2430         (coords_are_over_arrow): Fix a small bug.
2431         (gtk_tree_view_motion_draw_column_motion_arrow): Use
2432         expander_size.
2433         (gtk_tree_view_draw_focus): Use "treeview" instead of
2434         "add-mode" as detail when drawing the focus.
2435         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
2436         instead of "add-mode" as detail when drawing the focus.
2437         (gtk_tree_view_deleted): If we have a node currently being
2438         expanded or collapsed, remove the timeout and set the node 
2439         to NULL.
2440         (gtk_tree_view_queue_draw_arrow): New function that just
2441         redraws the arrow of a node.
2442         (gtk_tree_view_draw_arrow): Use expander_size instead of
2443         expander_width/expander_height, also pass a different
2444         expander_style to gtk_paint_expander depending on the 
2445         state of the node being drawn.
2446         (expand_collapse_timeout): New function for expanding 
2447         or collapsing a node depending on the previous state.
2448         (gtk_tree_view_real_expand_row): Add timeout and set 
2449         correct state for node being expanded.
2450         (gtk_tree_view_real_collapse_row): Add timeout and set
2451         correct state for node being collapsed.
2452
2453         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
2454         information about the node currently being expanded or
2455         collapsed, and also a timeout id.
2456
2457         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
2458         with expander_style for draw_expander.
2459
2460         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
2461         expander_style.
2462         (create_expander_affine): New function for creating an 
2463         expander affine.
2464         (apply_affine_on_point): New function for applying an 
2465         affine to a point.
2466         (gtk_default_draw_expander): Modified to take expander_style
2467         instead of is_open, and to draw the rectangle rotated differently
2468         depending on the expander style.
2469         (gtk_paint_expander): Replace is_open with expander_style.
2470
2471         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
2472
2473         * gtk/gtkenums.h: Add expander style enum.
2474
2475 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
2476
2477         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
2478         value from gtk_tree_model_get_iter, the model might be empty.
2479
2480 2001-07-20  Hans Breuer  <hans@breuer.org>
2481
2482         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
2483         gdk/gdkinput.c like the other backends
2484
2485         * gdk/win32/gdkinput-win32.h :
2486         * gdk/win32/gdkinput.c :
2487         * gdk/win32/gdkvisual-win32.c :
2488         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
2489         GdkVisual GObjectification. UNTESTED for pen-devices because
2490         I simply have none.
2491
2492         * gdk/gdk.def :
2493         * gtk/gtk.def : updated externals
2494
2495         * gtk/gtkiconfactory.c :
2496         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
2497         before passing &error to functions to avoid strange crashes
2498         
2499         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
2500
2501         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
2502
2503         * gtk/makefile.msc.in : updated
2504
2505 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
2506
2507         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
2508         Add property support. (#51858)
2509
2510 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
2511
2512         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
2513         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
2514         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
2515
2516 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
2517
2518         * gtk/gtkcolorsel.c: Add propery support (roughly
2519         based on patch from Lee Mallabone, #51014)
2520
2521         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
2522         deprecated, since we already g_warning() on it.
2523
2524 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
2525
2526         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
2527         typo that sometimes caused selection not to work properly.
2528
2529         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
2530         entry when tabbing in. (#57743)
2531         
2532         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
2533         user drags up above or down below the entry, move
2534         to the end or the beginning of the entry. (Suggestion
2535         from Jay Cox, #50940)
2536
2537         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
2538         a current selection, then when moving by chars or
2539         words, move to the end of the selection rather than
2540         from entry->current_pos. (Suggestion from Jay Cox,
2541         #50942)
2542         
2543 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
2544
2545         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
2546         set window->decorated. (Patch from Hidetoshi Tajima,
2547         #55846)
2548
2549 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
2550
2551         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
2552         the widget/child realization/mapping invariants.
2553
2554         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
2555         gtk_widget_[get/set]_child_visible() to control
2556         whether visible children of a mapped window are
2557         mapped.
2558
2559         * docs/widget_system.txt: Updated for changes in
2560         container contract, and addition of GTK_CHILD_VISIBLE.
2561
2562         * gtk/gtkcontainer.c: Add generic map()/unmap()
2563         functions that work for almost all containers.
2564
2565         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
2566         gtk_widget_set_child_visible() where necessary.
2567
2568         * gtk/*.c: Remove excess map(), unmap(), and 
2569         realization/mapping invariant enforcing code
2570         from many containers.
2571
2572 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
2573
2574         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
2575         Get the foreground color from 'text', nor 'fg'. (#57568)
2576
2577 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
2578
2579         * gtk/*.c: Patch from Matthias Clasen to remove remove
2580         all instances of g_return_if_fail (foo != NULL); that are
2581         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
2582         since the second check catches the NULL anyways.
2583
2584 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2585
2586         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
2587         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
2588         GDK_THREADS_ENTER()/LEAVE() pairs.
2589
2590         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
2591         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
2592         pairs. (Problem found by M. Meeks)
2593
2594 2001-07-18  Darin Adler  <darin@bentspoon.com>
2595
2596         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
2597         that we don't get a g_warning message every time we register a new
2598         icon size.
2599
2600         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
2601         using pixel variable of the correct type.
2602         
2603 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
2604
2605         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
2606         so that using X functions on a GdkWindow is possible, if
2607         a little hairy.
2608
2609         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
2610         and ts_origin of a GC, so that external parties can offset/restore
2611         a GC, when using gdk_window_get_internal_paint_info().
2612
2613 2001-07-17  Darin Adler  <darin@bentspoon.com>
2614
2615         * .cvsignore: Ignore the sgml directory made by gtkdoc.
2616         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
2617         instead of the deprecated gtk_window_set_policy.
2618         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
2619         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
2620         function to get rid of warning and some code too.
2621         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
2622         missing const.
2623         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
2624         unused local.
2625         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
2626         const.
2627         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
2628         (gdk_utf8_to_compound_text): Add missing const.
2629         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
2630         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
2631         cast and get rid of an unnecessary one.
2632         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
2633         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
2634         local.
2635         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
2636         Remove unused local.
2637         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
2638         missing const.
2639         * tests/testsocket.c: (add_child): Add cast so the printf format
2640         doesn't make us implicitly depend on what integer type
2641         gtk_socket_get_id returns.
2642         * tests/testtextbuffer.c: Add missing const.
2643         * tests/testtreefocus.c: (main): Remove unused local.
2644         * tests/treestoretest.c: (iter_remove): Remove unused local.
2645         (uppercase_value): Remove unused function.
2646         (make_window): Add statement to quiet the compiler's uninitialized
2647         variable warning.
2648
2649 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
2650
2651         * gtk/gtkrange.c:
2652         (second_timeout): 
2653         (initial_timeout): 
2654         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
2655         (gtk_range_calc_layout): compute the new layout based on an
2656         adjustment->value being passed in as argument.
2657         (gtk_range_button_press): for button2 slider warps, first recalc
2658         the layout, then adjust the value. also, use update_slider_position()
2659         for adjusting the value, so we keep pixel quantisation at which we
2660         usually operate (upon motion or button releases). the reason for this
2661         is that, we can't change the adjustment upon button2 presses to a non
2662         quantised value and upon button2 release re-quantise the value since
2663         that'd alter the value even if we didn't get any motion events (causing
2664         unexpected scroll area warps upon release and/or slider pixel-jitter).
2665         (gtk_range_motion_notify): update the slider position from queried
2666         coordinates, not event coordinates.
2667
2668 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
2669
2670         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
2671         the default gc values are: width=0, CapBut, JoinMiter.
2672
2673 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
2674
2675         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
2676         into account the xpad and ypad when calculating the width and the
2677         height of the pixbuf cel.
2678
2679 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
2680
2681         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
2682         Rename to gtk_radio_menu_item_get_group(), add deprecated
2683         alias. (#57044)
2684
2685         * gtk/gtkfilesel.c: Indentation fix.
2686
2687 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
2688
2689         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
2690         Hasselmann to fix warnings in compat macros. 
2691         (#56773)
2692
2693         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
2694         stupid wrong cast added in last patch.
2695
2696 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
2697
2698         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
2699         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
2700
2701 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
2702
2703         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
2704         missing cast.
2705
2706         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
2707         NULL/FALSE return value confusion.
2708
2709         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
2710         problem when scrollbar completely fills range. (Patch
2711         from  Matthias Clasen, #57047)
2712
2713 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
2714
2715         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
2716         clean up when handling events for move-resize emulation.
2717         (Problem traced down by Matthias Clasen, #57271)
2718
2719 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
2720
2721         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
2722           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
2723           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
2724           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
2725           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
2726           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
2727           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
2728         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
2729
2730 2001-07-09  Peter Williams  <peterw@ximian.com>
2731
2732         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
2733         for when srcdir != builddir
2734
2735 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
2736
2737         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
2738         gtk_tree_model_get_iter_root.
2739
2740         * gtk/gtkliststore.c: Add a bunch of g_return statements.
2741         (gtk_list_store_iter_n_children): Fix up.
2742
2743         * gtk/gtktreestore.c: Add a bunch of g_return statements.
2744
2745 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
2746
2747         * gtk/gtkwidget.c (gtk_widget_class_init):
2748         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
2749         restore some workingness.
2750
2751         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
2752         handle of window type for input-only windows.
2753
2754 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
2755
2756         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
2757         Patch from Gregory Merchan to add 
2758         gtk_button_box_set_secondary(), which separates
2759         the child into a separate group from the normal
2760         buttons. (#56331)
2761
2762         * gtk/gtkdialog.c: Make help buttons secondary by
2763         default.
2764
2765         * gtk/gtkbbox.c: Added a child property "secondary".
2766
2767         * gtk/testgtk.c: Turn on the help button for the 
2768         color selector to check that it properly appears
2769         as secondary.
2770
2771 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
2772  
2773         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
2774         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
2775         Add gdk_set_pointer_hooks() to allow pointer-querying to
2776         be hooked by an event record/playback system like GERD.
2777         (#56914)
2778         
2779 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
2780
2781         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
2782         in the right value of initial_emission to
2783         gtk_widget_set_style_internal (#57091)
2784
2785 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
2786
2787         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
2788         Make compile.
2789
2790         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
2791         with calling gtk_widget_set_style_internal() with
2792         the old style, not the new style. (#56989)
2793
2794 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
2795
2796         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
2797           gtk/gtkwidget.c:
2798         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
2799         not GTK_WIDGET_GET_ANCESTOR ... see 
2800         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
2801         Indicate the best practice in the docs for gtk_widget_get_toplevel().
2802
2803         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
2804         so GtkPlug can give the correct signals when transforming
2805         from a child to a toplevel.
2806         
2807         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
2808         reparentation correctly.
2809
2810         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
2811         Propagate the previous_toplevel argument down properly.
2812
2813         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
2814         of wrong atr list.
2815
2816         * gtk/gtkplug.[ch]: Add an "embedded" signal.
2817
2818         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
2819         signals.
2820
2821         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
2822         functions gtk_plug_get_id(), gtk_socket_get_id(),
2823         to avoid the user having to worry about realization,
2824         and gdkx.h.
2825
2826         * tests/testsocket.c: Extend to try out the new signals
2827         and gtk_plug/socket_get_id().
2828
2829         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
2830         setting of underline attributes.
2831
2832         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
2833         DestroyNotify events from SubstructureNotifyMask
2834
2835         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
2836         Switch GDK_WINDOW_TYPE (window) as needed.
2837
2838         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
2839         allow creation of toplevel windows as children of
2840         foreign windows.
2841
2842         * gtk/gtkplug.c: Remove hacks involving changing private
2843         fields of GdkWindow.
2844
2845         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
2846         exactly the same signals and notification
2847         be emitted for local embedding as for inter-process
2848         embedding.
2849
2850 2001-07-04  James Henstridge  <james@daa.com.au>
2851
2852         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
2853
2854 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
2855
2856         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
2857         XEMBED embedding add a _XEMBED_INFO property to the
2858         client with version number and a "mapped" flags.
2859         Use the mapped flag instead of the racy MapRequestEvent
2860
2861         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
2862         code to reliably set things (when the child is a passive
2863         embedder participating in the XEMBED protocol) intead
2864         of just being a hack for embedding non-participating
2865         programs. Fix various bugs and race conditions.
2866         
2867         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
2868         work by simply making the GtkSocket the gtk parent
2869         of the GtkPlug. Set a flag in this case and make
2870         the GtkPlug work like a normal container by overriding
2871         methods such as check_resize and "chaining past" GtkWindow
2872         to GtkBin.
2873
2874         * gtk/gtkentry.c (gtk_entry_real_activate)
2875           gtk/gtkmain.c (gtk_propagate_event): 
2876         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
2877         
2878         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
2879         gtk_widget_get_ancestor):
2880         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
2881         might not give the expected result and recommend
2882         an alternative.
2883
2884         * tests/testsocket.c tests/testsocket_child.c
2885         tests/testsocket_common.c tests/Makefile.am: Extended
2886         to test different type of adding plugs to sockets
2887         (local,active,passive), and to test mapping/unmapping
2888         the plug.
2889
2890         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
2891         mark the window as destroyed until after we
2892         called _gdk_windowing_window_destroy().
2893         (_gdk_windowing_window_destroy() may use GDK functions
2894         on the window.)
2895
2896         * gdk/x11/gdkinput.c: Remove the check for finalization - 
2897         devices can be finalized under some circumnstances.
2898  
2899         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
2900         small problem with GDK_TYPE_DEVICE.
2901  
2902 2001-07-02  Havoc Pennington  <hp@pobox.com>
2903
2904         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
2905         use constants not atoms.
2906
2907 2001-07-02  James Henstridge  <james@daa.com.au>
2908
2909         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
2910         PANGO_TYPE_TAB_ARRAY.
2911
2912         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
2913         for PANGO_TYPE_TAB_ARRAY.
2914
2915         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
2916         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
2917
2918         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
2919         the file.  Remove Pango types from defs -- they are now defined in
2920         libpango.
2921
2922 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
2923
2924         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
2925
2926         * gtk/gtkobject.c (gtk_object_destroy): invoke
2927         g_object_run_dispose().
2928
2929         * gtk/gtkwindow.c: 
2930         * gtk/gtkwidget.c: 
2931         * gtk/gtkobject.c:
2932         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
2933         method.
2934
2935 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
2936
2937         * gtk/gtktypeutils.c (gtk_type_class): Remove
2938         change check for GTK_TYPE_OBJECT derivation to
2939         G_TYPE_OBJECTS - it's Tim-approved to use this 
2940         for arbitary objects.
2941
2942         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
2943         prefix gtk_container_dequeue_resize_handler().
2944
2945         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
2946         to the hierarachy_changed signal, since you otherwise
2947         have to always keep that around.
2948
2949         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
2950         for extra argument to hierarchy_changed.
2951
2952 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
2953
2954         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
2955         for style to mean "revert to default style"
2956
2957         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
2958           gtk_widget_restore_default_style): Make this functions
2959         deprecated aliases for gtk_widget_set_style (widget, NULL).
2960
2961         * gtk/gtkwidget.[ch]: Remove:
2962            gtk_widget_set_default_style ()
2963            gtk_widget_push_style ()
2964            gtk_widget_pop_style ()
2965         These functions interact are overriden by RC files, and
2966         thus virtually useless, and complicated.
2967
2968 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
2969
2970         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
2971         most of the previous global variables in gtkrc.c. This is
2972         in preparation for multi-head, since each screen can
2973         have different GtkSettings and RC information.
2974
2975         * gtk/gtkrc.[ch]: 
2976
2977         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
2978         GtkSettings parameter to GtkRcStyle::parse.
2979
2980         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
2981         Add two new settings gtk-theme-name, gtk-key-theme-name,
2982         for RC files that are loaded by name after reading
2983         the default RC files.
2984         
2985         * gtk/gtkrc.c: Allow priorities for styles, as wll as
2986         bindings.
2987
2988         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
2989         and use it by default for RC files loaded via 
2990         gtk-theme-name, gtk-key-theme-name.
2991
2992         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
2993         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
2994         tests/testgtkrc: Require pathnames to be absolute.
2995
2996         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
2997         the source when parsing, since the operation of looking up a
2998         pixmap from an RC file depends on the parsing context.
2999
3000         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
3001         reset RC styles on all widgets when files are reparsed.
3002
3003         * tests/testgtk.c (create_rc_file) 
3004           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
3005         Simplify, now that gtk_rc_reparse_all() resets styles on
3006         all widgets itself.
3007
3008         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
3009         return value.
3010
3011         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
3012         GtkSettings argument.
3013
3014         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
3015         gtk_settings_get_global().
3016
3017         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
3018         to get the appropriate GtkSettings for a widget. (For now,
3019         just gets the default GtkSetttings.) 
3020
3021         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
3022           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
3023         changes.
3024
3025         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
3026         getting a style for a path without actually having a widget.
3027         (Allows using a style for a subpart of a widget, for
3028         example.)
3029
3030         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
3031         the RC files to be reloaded for just one GtkSettings
3032         (not sure how useful this really is.)
3033
3034         * gtk/gtkrc.h: Deprecate
3035         gtk_rc_add_widget_name/widget_class/class_style
3036
3037 2001-06-30  Alex Larsson  <alexl@redhat.com>
3038
3039         * gdk/linux-fb/gdkinput-none.c:
3040         * gdk/linux-fb/gdkinput.c:
3041         * gdk/linux-fb/gdkinputprivate.h:
3042         Convert GdkDevice to a GObject.
3043
3044         * linux-fb/gdkprivate-fb.h:
3045         * linux-fb/gdkvisual-fb.c:
3046         Convert GdkVisual to a GObject.
3047
3048 2001-06-29  Alex Larsson  <alexl@redhat.com>
3049
3050         * gdk/gdkvisual.h:
3051         * gdk/gdkcolor.c:
3052         * gdk/x11/gdkx.h:
3053         * gdk/x11/gdkvisual-x11.c:
3054         Convert GdkVisual to a GObject.
3055
3056         * gdk/gdkinput.h:
3057         * gdk/gdkevents.c:
3058         * gdk/x11/gdkinputprivate.h:
3059         * gdk/x11/gdkinput-gxi.c:
3060         * gdk/x11/gdkinput-none.c:
3061         * gdk/x11/gdkinput-x11.c:
3062         * gdk/x11/gdkinput-xfree.c:
3063         * gdk/x11/gdkinput.c:
3064         Convert GdkDevice to a GObject.
3065
3066 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
3067
3068         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
3069         to just plain new, fixing the number of columns, and column types
3070         at creation time.
3071
3072         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
3073
3074         * gtk/gtkcellrenderertext.c
3075         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
3076         height to a specific font.
3077
3078         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
3079
3080         * tests/*c: change to work with new store models.
3081
3082 2001-06-29  Havoc Pennington  <hp@redhat.com>
3083
3084        * Throughout: fixes to compile with G_DISABLE_COMPAT
3085         (s/g_signal_connectc/g_signal_connect/,
3086         s/g_signal_newc/g_signal_new/,
3087         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
3088
3089 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
3090
3091         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3092         add path argument to selection callbacks.
3093
3094 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
3095
3096         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
3097         walk through a model in a depth first manner, with the option to
3098         break out.
3099
3100 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
3101
3102         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
3103         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
3104         column and follow it when draged, rather than a location in the
3105         view. "expander_column" property and drawing functions changed
3106         accordingly.  Fixes bug #55942.
3107
3108         (gtk_tree_view_{set,get}_expander_column): Now works with a
3109         GtkTreeViewColumn* instead of int.
3110
3111 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
3112
3113         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
3114
3115 2001-06-28  Havoc Pennington  <hp@pobox.com>
3116
3117         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
3118         image data to the screen, using a server grab to avoid race
3119         conditions.
3120
3121         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
3122         check for NULL return from gtk_image_new_from_stock(), it never
3123         returns NULL.
3124         (gtk_item_factory_create_item): fix bug where we parsed the stock
3125         ID as an inline pixbuf
3126
3127         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
3128
3129         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
3130         support (should be using binding set here)
3131
3132         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
3133         support (should be using binding set here)
3134
3135         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
3136         support
3137
3138         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
3139
3140         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
3141
3142         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
3143
3144         * gtk/gtkimcontextsimple.c
3145         (gtk_im_context_simple_filter_keypress): keypad
3146
3147         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
3148
3149         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
3150
3151         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
3152
3153         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
3154         should be binding-setted)
3155
3156         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
3157
3158         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
3159
3160         * gtk/gtkcalendar.c: numeric keypad fixes
3161
3162         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
3163         support
3164
3165         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
3166         screwup
3167
3168         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
3169         clip the render area to the drawable's clip region in advance,
3170         so we don't get data from the server that we don't need.
3171
3172         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3173         check return value of gdk_pixbuf_get_from_drawable(), fall back 
3174         to bilevel alpha if we can't get the pixbuf to composite against.
3175
3176         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
3177
3178         * gdk/gdkimage.c (gdk_image_get_colormap): add
3179         gdk_image_set_colormap, gdk_image_get_colormap
3180
3181         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
3182         take a region of the image, instead of converting the entire
3183         image.
3184
3185         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
3186         keybinding signal. Add default bindings for it. Add default
3187         handler for show_help that shows the tooltip for the widget.
3188
3189         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
3190         "close" keybinding signal, remove key press handler.
3191
3192         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
3193         it's not our usual practice to leave a deprecated function around
3194         with a runtime warning, plus we don't want it to appear in docs,
3195         plus if we make them yellow no one will want to change them
3196         anyhow.
3197
3198 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
3199
3200         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
3201         GTK_WIDGET_REALIZE() for resize queueing.
3202
3203         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
3204         GTK_WIDGET_REALIZE() for post event delivery destruction upon
3205         GDK_DESTROY.
3206         
3207         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
3208         sompensate for former (pre-2.0) connect_after() facility.
3209         (gtk_widget_send_expose): 
3210         (gtk_widget_event): assert the widget is realized, since event delivery
3211         to non-realized widgets is essentially a bug. event handlers should
3212         be able to unconditionally rely on widget->window (unless they
3213         emit events on their own which can trigger widget destruction).
3214         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
3215         logic. event delivery happens as follows:
3216         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
3217         b) if !was_handled in (a) and the widget is still realized, emit event-
3218            specific signal (RUN_LAST handler). returns was_handled.
3219         c) emission of GtkWidget::event-after for notification if the widget is
3220            still realized (regardless of was_handled from previous stages, no
3221            class handler). no return value.
3222         d) was_handled gets passed on to caller, to determine further
3223            propagation. if the widget got unrealized meanwhile, was_handled
3224            is returned as TRUE.
3225
3226         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
3227         gdk_event_get_coords().
3228
3229 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
3230
3231         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
3232         age 0, binary age 0. depend on glib 1.3.7.
3233
3234         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
3235
3236         * gtk/gtkmenubar.c: same here.
3237         
3238         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
3239
3240         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
3241
3242         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
3243         
3244         * gtk/gtkmenubar.c (add_to_window): likewise.
3245         
3246         * gtk/gtktextbtree.c: and here...
3247         
3248         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
3249         
3250         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
3251         
3252         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
3253         
3254         * gtk/gtktreeviewcolumn.c:
3255         (_gtk_tree_view_column_set_tree_view): yet again.
3256
3257         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
3258         signal connections without g_signal_connect_data().
3259         
3260         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
3261         demo of the matter.
3262         
3263         * demos/testpixbuf.c (main): running out of equality phrases for the
3264         ChangeLog, but had to adapt connections here as well.
3265         
3266         * demos/testanimation.c (progressive_timeout): and for the fun of it,
3267         tackled this the same way.
3268         
3269         * tests/testtext.c (create_view): ok, it's becoming a pain at this
3270         point, but had enough enery for one more fix.
3271
3272         * tests/testtreecolumns.c (main): stand up man, do your work!
3273
3274         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
3275         fix, either that's been all of it or CVS gtk is broken yet again.
3276         
3277 2001-06-29  James Henstridge  <james@daa.com.au>
3278
3279         The following changes correspond to bug #56812
3280
3281         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
3282         code for GdkDevice.
3283
3284         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
3285         GdkCursor.
3286
3287 2001-06-19  Havoc Pennington  <hp@pobox.com>
3288
3289         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
3290         for mapping a window without fooling with stacking order, but
3291         updating the "withdrawn" flag
3292
3293         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
3294         filtering as soon as possible, moving move resize and wmspec_check
3295         handling after the event filter.  Make default filter apply to all
3296         events, not just those with no GdkWindow wrapped around the X
3297         window. Fix a FIXME about how the window could be a pixmap using 
3298         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
3299
3300         Also, be robust against events not on a known GdkWindow.
3301
3302         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
3303         gdk_x11_ungrab_server): export reference-counted server grabs, so
3304         other people can grab server over a GDK function that also does
3305         so.
3306
3307 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
3308
3309         * gtk/gtktreeviewcolumn.c
3310         (gtk_tree_view_column_pack_start_cell_renderer): New function to
3311         reflect that you can (hypothetically) pack cell renderers into a
3312         column.
3313         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
3314         (gtk_tree_view_column_cell_is_visible): Move more functionality to
3315         the column.
3316         (gtk_tree_view_column_cell_can_focus): Move more functionality to
3317         the column.
3318
3319         * gtk/gtktreeview.c: Move to use new column-packing code.
3320         (gtk_tree_view_real_expand_row): remove totally braindead code.
3321         (gtk_tree_view_real_collapse_row): ditto.
3322
3323 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
3324
3325         * gtk/gtktreeviewcolumn.c: Fix a typo.
3326         
3327 2001-06-26  Joel Becker  <jlbec@evilplan.org>
3328
3329         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
3330           at the end of the file
3331
3332 2001-06-26  Havoc Pennington  <hp@redhat.com>
3333
3334         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
3335
3336 2001-06-26  Havoc Pennington  <hp@redhat.com>
3337
3338         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
3339         property
3340
3341 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
3342
3343         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
3344         stupid missing statement
3345
3346         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
3347         private function for ATK.  It notifies you of how many _visible_
3348         children are deleted when a node is deleted.  Should be used by
3349         atk only.
3350
3351 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
3352
3353         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
3354         Use new pango_context_get_metrics() to fix problems
3355         with font lists in descriptions. (#56184, reported by
3356         Jonas Borgström)
3357
3358 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
3359
3360         * gtk/gtkiconfactory.c:
3361         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
3362         item factory so inlined pixbufs actually work.
3363
3364 2001-06-25  Havoc Pennington  <hp@redhat.com>
3365
3366         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
3367         s/RESIZEABLE/RESIZABLE/
3368
3369         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
3370
3371 2001-06-25  Alexander Larsson  <alexl@redhat.com>
3372
3373         * configure.in:
3374         Added --enable-fbmanager. This is some experimental code
3375         that lets several GtkFB apps coordinate their access to the
3376         framebuffer.
3377         
3378         * acconfig.h:
3379         Added ENABLE_FB_MANAGER.
3380
3381         * gdk/linux-fb/Makefile.am:
3382         Added gdkfbmanager and gdkfbswitch.
3383
3384         * gdk/linux-fb/gdkkeyboard-fb.c:
3385         * gdk/linux-fb/gdkmouse-fb.c:
3386         * gdk/linux-fb/gdkprivate-fb.h:
3387         Split device init and open so that
3388         they can be opened and closed while switched
3389         away.
3390
3391         * gdk/linux-fb/gdkmain-fb.c:
3392         Add the basic manager communication.
3393
3394         * gdk/linux-fb/gdkrender-fb.c:
3395         Don't update to the shadow fb if we're
3396         blocked by the fb manager.
3397
3398 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
3399
3400         * docs/Changes-2.0.txt: Add note about child property
3401         changes.
3402
3403 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
3404
3405         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
3406         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
3407
3408         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
3409         with un'reffing wrong list reported by Jeff Franks.
3410
3411         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
3412
3413         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
3414         for the default icon. Remove inline XPM.
3415
3416         * gtk/gtkstock.h gtk/gtkiconfactory.c:
3417         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
3418         is used for GTK_STOCK_DND, but it is a bit too small.)
3419
3420         * gtk/stock-icons/stock_dnd_multiple.png
3421         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
3422
3423         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
3424         TRUE when starting a drag. In other cases, we are
3425         just observing. (#52995)
3426
3427         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
3428         function to set the icon for a drag from a GdkPixbuf
3429         or stock ID.
3430
3431         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
3432         Likewise, for drag sources.
3433
3434         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
3435         (Now should be done using the stock system.)
3436
3437 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
3438
3439         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
3440         Removed - didn't work and not particularly useful anyways
3441         if it did. 
3442
3443 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
3444
3445         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
3446         introduced last night that was making things decidedly not work.
3447
3448         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
3449         so that we have getter/setter pairing everywhere it makes
3450         sense. (#55767)
3451
3452         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
3453         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
3454         deprecated compat macro. (#55516)
3455
3456         * gtk/gtklabel.[ch]: Add functions
3457         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
3458         gtk_label_set_label(), which mirror the property API for GtkLabel.
3459         Make gtk_label_get_attributes() only reflect the attributes
3460         set by gtk_label_set_attributes.
3461
3462         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
3463         from gtk_notebook_set_page().
3464
3465 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
3466
3467         * configure.in: Fix tests for XShm.h.
3468
3469         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
3470         gdk_image_new() by use of goto, properly use g_object_unref().
3471
3472 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
3473
3474         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
3475         calls, as GdkImage is an object. these should be g_obejct_unref()
3476         instead but that won't work because of the g_error() statement
3477         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
3478         to spot these places.
3479
3480 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
3481
3482         * modules/input/gtkimcontextxim.c: Fixup some problems with 
3483         text length handling in error cases.
3484
3485         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
3486         a bit to make test actually warn on attempt to allocation
3487         a negative size. (#56101, Matthias Clasen)
3488
3489 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
3490
3491         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3492         noticed by Brian Cameron.
3493         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
3494         Cameron.
3495
3496 2001-06-22  Hans Breuer  <hans@breuer.org>
3497
3498         * gdk/gdk.def : updated externals
3499
3500         * gdk/win32/gdkdrawable-win32.c : corrected some casts
3501         in GDK_NOTEs
3502
3503         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
3504         to translate coordinates to the internal > 16 bit system
3505         Try to handle WM_WINDOWPOSCHANGED to get better performance for
3506         when moving/resizing
3507
3508         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
3509         and gdk_keymap_get_direction (). The latter is untested for
3510         the RTL case
3511
3512         * gtk/gtk.def : updated externals
3513
3514         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
3515         from pango_language_from_string (), not an already freed pointer
3516
3517         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
3518         binary (-kb) to be useable on windoze
3519  
3520 2001-06-21  Alexander Larsson  <alexl@redhat.com>
3521
3522         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
3523         Update to new PangoLanguage changes.
3524         
3525         * gtk/gtkwindow-decorate.c:
3526         * gtk/gtkwindow.[ch]:
3527         Added setting argument to gtk_window_set_has_frame ()
3528         
3529 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
3530
3531         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
3532         the case without XKB properly.
3533
3534         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
3535         unused gtk_rc_auto_parse variable.
3536
3537         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
3538         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
3539         longer needed with GdkPixbuf.
3540
3541         * gtk/gtkrc.c (_gtk_rc_init): Make private.
3542
3543 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
3544
3545         * gtk/gtkentry.h: Mark deprecated functions with
3546         GTK_DISABLE_DEPRECATED.
3547
3548 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
3549
3550         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
3551
3552         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
3553
3554         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
3555           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
3556           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
3557           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
3558           to recent changes in Pango.
3559
3560         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
3561           to test whether the basic engine honors them.
3562
3563 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
3564
3565         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
3566         gtk_container_child_get_property().
3567
3568 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
3569
3570         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
3571         (gtk_tree_view_move_cursor_page_up_down): implement.
3572
3573 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
3574
3575         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
3576         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
3577         don't use automatic fixed size buffer for printf-ing floats, doubles
3578         can expand to really _huge_ strings, use g_strdup_printf() instead.
3579
3580 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
3581
3582         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
3583         construct property in 1.2 and still needs to be.
3584
3585         * gtk/gtkwidget.c: "composite_child" is not a settable property.
3586
3587 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
3588
3589         * gtk/gtkliststore.c (gtk_list_store_clear): 
3590         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
3591         clear a model.
3592
3593 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
3594
3595         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
3596
3597         * gtk/Makefile.am:
3598         * gtk/gtk.h: disabled GtkPacker compilation.
3599
3600         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
3601
3602         * gtk/gtknotebook.c:
3603         * gtk/gtktable.c:
3604         * gtk/gtkbox.c: ported this over to child properties.
3605
3606         * gtk/gtksettings.c: fetch class properties via
3607         g_object_class_list_properties().
3608
3609         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
3610         child arg interface. use gobjectnotifyqueue.c for child property
3611         notification.
3612
3613         * gtk/gtkwidget.[hc]: provide necessary means for container child
3614         properties, i.e. ::child_notify signal,
3615         gtk_widget_freeze_child_notify(),
3616         gtk_widget_child_notify(),
3617         gtk_widget_thaw_child_notify().
3618
3619         * tests/testgtk.c: removed inferior property handling code, for
3620         property editing, a generic module should be used, and GLE
3621         coincidentally fullfills that purpose.
3622
3623         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
3624         needs to be adapted to g_object_class_list_properties() before this
3625         builds again.
3626
3627 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
3628
3629         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
3630         test if a node is expanded.
3631
3632 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
3633
3634         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3635         where collapsing a selected row would result in the cursor/anchor
3636         getting screwed up.
3637
3638 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
3639
3640         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
3641         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
3642         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
3643         Now I can really reorder/sort all Store widgets.  treesorttest
3644         seems to just work now.
3645         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
3646         testtreesort worked through a big coincidence all this time.
3647         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
3648         code.
3649         * tests/testtreecolumns.c: Big 'ol warning at the top letting
3650         people know that this code should never ever ever be copied.
3651
3652 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
3653
3654         * gtk/gtkwindow.h: Fixed a small typo, it should be
3655         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
3656         on line 134.
3657
3658 2001-06-14  Havoc Pennington  <hp@redhat.com>
3659
3660         Docs fixups, and:
3661         
3662         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
3663         GTK_DISABLE_DEPRECATED
3664
3665 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
3666
3667         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
3668         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
3669         finish it off tonight, though it basically works now when it's a
3670         list.  Also, I have a sinking feeling neither GtkTreeStore or
3671         GtkListStore actually resort when adding a new item.  I'll look
3672         into it.
3673
3674 2001-06-14  Havoc Pennington  <hp@redhat.com>
3675
3676         * demos/gtk-demo/main.c (load_file): fix bug identified by
3677         warnings I just added to gtktextbuffer
3678
3679 2001-06-14  Havoc Pennington  <hp@redhat.com>
3680
3681         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
3682
3683         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
3684
3685         * gtk/gtktextbtree.c: don't leak node data all over the place.
3686
3687         * demos/gtk-demo/main.c (main): create fontify tags for the right
3688         buffer
3689
3690         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
3691         to mention tags in the same table can't have the same name,
3692         suggested by Skip Montanaro
3693
3694 2001-06-11  Havoc Pennington  <hp@redhat.com>
3695
3696         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
3697         for trying to add two tags with same name to the tag table
3698
3699         * demos/gtk-demo/main.c (main): fix colors ;-)
3700
3701 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
3702
3703         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
3704         that allows grouping together multiple windows so that grabs
3705         within that set of windows only affect those windows.
3706
3707         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
3708         signal for notification when a widget becomes shadowed
3709         by a grab or is no longer shadowed by a grab.
3710
3711         * gtk/gtkwidget.c (gtk_widget_propagate_state)
3712           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
3713         insenstive widgets to maintain a grab.
3714
3715 2001-06-14  Alexander Larsson  <alexl@redhat.com>
3716
3717         * docs/README.linux-fb:
3718         Add some example config files that can be used with the URW fonts.
3719         
3720         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
3721         Set up the color ramps for DirectColor mode.
3722
3723 2001-06-11  Havoc Pennington  <hp@redhat.com>
3724
3725         * Release 1.3.6
3726          
3727 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3728
3729         * gdk/linux-fb/gdkwindow-fb.c:
3730         Unify shaped window code and make it repaint the area that used
3731         to be part of the shape, but isn't anymore.
3732
3733 2001-06-11  Havoc Pennington  <hp@redhat.com>
3734
3735         * NEWS: Updates
3736
3737         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
3738
3739         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
3740         
3741 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3742
3743         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
3744         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
3745         passes zero instead, so do we.
3746         
3747 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3748
3749         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3750         Deep copy dash_list too.
3751         (_gdk_fb_gc_new): Set default cap_style before
3752         setting values.
3753
3754 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
3755
3756         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
3757         gdk_keymap_get_direction): New functions.
3758
3759 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
3760
3761         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
3762         gtk_tree_model_get_flags by adding a second flag for atk.
3763
3764         * gtk/gtktreemodel.c: make cursor behavior interact better with
3765         mouse presses.
3766
3767 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
3768
3769         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
3770         expand_row/collapse_row to be 2 signals each -- test_expand_row
3771         and row_expanded as well as test_collapse_row and row_collapsed.
3772
3773 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
3774
3775         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
3776         signal name to be changed instead of selection_changed.
3777
3778 2001-06-08  Havoc Pennington  <hp@redhat.com>
3779
3780         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
3781         "scroll_offset" property for notification when the layout offsets
3782         may have changed
3783         (gtk_entry_adjust_scroll): add notify for scroll_offset
3784         (gtk_entry_layout_index_to_text_index): function to compensate for
3785         preedit string when doing coordinate stuff on the entry's layout
3786         (gtk_entry_text_index_to_layout_index): inverse function
3787         (gtk_entry_get_layout_offsets): hook to get current position of
3788         the layout      
3789         (gtk_entry_get_layout): hook to get the layout itself.
3790
3791         * gtk/gtklabel.c (gtk_label_get_layout): new function
3792
3793 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
3794
3795         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
3796         keybinding.
3797         (gtk_tree_view_focus): Fix merge conflict.
3798
3799 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
3800
3801         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
3802         clean up cursor handling.
3803
3804 2001-06-08  Havoc Pennington  <hp@redhat.com>
3805
3806         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
3807         function
3808
3809         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
3810         this function
3811
3812 2001-06-08  Alex Larsson  <alexl@redhat.com>
3813
3814         * gtk/gtkcompat.h.in:
3815         Added compat macros for all old GTK_TYPE_GDK_xxx types.
3816         Fixes bug #52892
3817
3818 2001-06-08  Havoc Pennington  <hp@redhat.com>
3819         
3820         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
3821         parent still
3822
3823 2001-06-08  Havoc Pennington  <hp@redhat.com>
3824
3825         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
3826         don't call g_list funcs on GSList
3827
3828         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
3829         gtk_container_focus(), since some widgets have focusable locations
3830         which are not other widgets. These widgets should not have to be 
3831         containers just to manage the focus. For example, GtkHSV is
3832         currently a container for no good reason. Also, this cleans
3833         up the "if (is_container && is_sensitive && is_drawable)
3834         container_focus ()" mess in widget implementations.
3835
3836         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
3837         function, and have it just call gtk_widget_child_focus().
3838
3839         * gtk/gtkhsv.c: derive from widget not container
3840         
3841         Throughout: fix to reflect GtkContainer::focus change
3842         
3843 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
3844
3845         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
3846         range.  Fix bug #55921
3847
3848         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
3849         (#55920).
3850
3851 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
3852
3853         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
3854         and gdk_keymap_get_current_direction().
3855
3856         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
3857           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
3858         the current locked group, use it to set the keymap
3859         direction.
3860
3861         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
3862         to determine whether we draw a split cursor or use
3863         a jumping cursor based on the current direction.
3864
3865         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
3866         Obey the split cursor setting. 
3867
3868 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
3869
3870         * gtk/gtkimmulticontext.c (activate_cb): Only activate
3871         when toggling on, not when toggling off... (#55906)
3872
3873 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
3874
3875         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
3876         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
3877         in docs. (#55812, Vitaly Tishkov)
3878
3879 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
3880
3881         * demos/gtk-demo/main.c (create_tree): Changed signal name from
3882         selection_changed to changed in signal connection to GtkTreeSelection,
3883         also used g_signal_connectc since GtkTreeSelection is now a GObject.
3884
3885 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
3886
3887         * gtk/gtktreeselection.c: Now it's a GObject instead of a
3888         GtkObject.  The GtkTreeSelection::selection_changed signal is now
3889         the GtkTreeSelection::changed signal.
3890
3891         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
3892         object.
3893
3894         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
3895         object.
3896
3897 2001-06-07  Havoc Pennington  <hp@redhat.com>
3898
3899         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
3900
3901 2001-06-07  Havoc Pennington  <hp@redhat.com>
3902         
3903         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
3904         (not tested yet because with absolute path to srcdir I can't build
3905         atk, but it was broken anyway so this may help) 
3906
3907 2001-06-07  Havoc Pennington  <hp@redhat.com>
3908
3909         * configure.in: output m4macros/Makefile
3910         
3911 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
3912
3913         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
3914         buttons.  Fixes #55460 reported by matthiasc@poet.de.
3915
3916 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
3917
3918         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
3919         expansion/collapsing so it only happens in one place.
3920         (gtk_tree_view_real_expand_row): ditto.
3921
3922 2001-06-07  Havoc Pennington  <hp@redhat.com>
3923
3924         * tests/Makefile.am: add missing -I flag
3925
3926         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
3927
3928         * configure.in: use pkg-config to see if GModule is
3929         supported; fix to properly turn on included loaders 
3930         when GModule isn't supported; don't use AC_CHECK_LIB 
3931         when libs are not installed yet
3932
3933         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
3934
3935         * Makefile.am (SUBDIRS): add m4macros subdir
3936
3937         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
3938         dependencies also.
3939
3940 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
3941
3942         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
3943         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
3944
3945 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
3946
3947         * gtk/gtktreeview.c
3948         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
3949         bindings to expand and collapse rows.
3950         (gtk_tree_view_real_select_cursor_parent): New key binding.
3951         (gtk_tree_view_real_toggle_cursor_row): New key binding.
3952
3953         * gtk/gtkmarshal.list: new
3954         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
3955
3956 2001-06-06  Havoc Pennington  <hp@redhat.com>
3957
3958         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
3959
3960         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
3961         Down to move visually rather than logically, since it confuses 
3962         people. Add -/+ and Ctrl--/+ bindings for logical movement.
3963
3964 2001-06-06  Alex Larsson  <alexl@redhat.com>
3965
3966         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3967         Fix up error messages.
3968
3969 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
3970
3971         * gtk/gtktooltips.h: Include gtkwidget.h 
3972         (#55798, Karl Nelson)
3973
3974         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
3975         a valid latin-1 character. (Marc Lehmann, #35467)
3976
3977         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
3978         (Marc Lehmann, #35467)
3979         
3980 2001-06-05  Alex Larsson  <alexl@redhat.com>
3981
3982         * demos/gtk-demo/appwindow.c (do_appwindow):
3983         Don't swap the order of the args to gtk_widget_destroyed.
3984
3985         * tests/testgtk.c (destroy_properties):
3986         Don't crash when the properties window is destroyed.
3987
3988         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
3989         Use with_mnemonics to handle the case of stock items with
3990         underscores in them.
3991
3992 2001-06-05  Havoc Pennington  <hp@redhat.com>
3993
3994         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
3995         gtk_text_iter_reorder
3996
3997 2001-06-05  Havoc Pennington  <hp@redhat.com>
3998
3999         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
4000
4001 2001-06-05  Havoc Pennington  <hp@redhat.com>
4002
4003         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
4004         to the range that was set
4005
4006         * gtk/gtkrange.c: add value_changed signal, primarily 
4007         intended for use with GtkScale
4008         (gtk_range_set_increments): new function
4009         (gtk_range_set_range): new function with weird name
4010         (gtk_range_set_value): new function
4011         (gtk_range_get_value): new function
4012
4013         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
4014         from gtk_spin_button_get_value_as_float(). Compat #define
4015         added for get_value_as_float.
4016
4017         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
4018
4019         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
4020
4021 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
4022
4023         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
4024
4025 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
4026
4027         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
4028
4029         * tests/testgtk.c (create_tooltips): Remove usage of
4030         gtk_widget_set().
4031
4032 2001-06-05  Havoc Pennington  <hp@redhat.com>
4033
4034         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
4035
4036         Applying patch from Jeff Franks, with function docs added.
4037         
4038         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
4039         remove call to set_mnemonic_widget, change docs a bit.  
4040
4041         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
4042         new function
4043
4044         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
4045         new function
4046
4047         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
4048
4049         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
4050         function
4051         (gtk_radio_button_new_with_mnemonic_from_widget): new function
4052
4053         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
4054         new function
4055
4056         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
4057         function        
4058
4059         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
4060         auto-selection of mnemonic widget.
4061
4062 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
4063
4064         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
4065         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
4066         (gtk_tree_view_column_set_min_width): ditto.
4067
4068 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
4069
4070         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
4071         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
4072
4073 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
4074
4075         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
4076         gtk_clist_thaw().
4077
4078 2001-06-04  Havoc Pennington  <hp@pobox.com>
4079
4080         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
4081         releases for buttons 6, 7
4082
4083 2001-06-04  Havoc Pennington  <hp@redhat.com>
4084
4085         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
4086         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
4087         #55562
4088
4089 2001-06-04  Havoc Pennington  <hp@redhat.com>
4090
4091         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
4092         where text_view->layout == NULL by assuming its size is 0, 
4093         i.e. same as if we haven't done any reflow. Reported by 
4094         Hidetoshi Tajima #55448 
4095
4096 2001-06-04  Havoc Pennington  <hp@redhat.com>
4097
4098         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
4099         and 7 for scroll left/right, from Thomas Broyer
4100
4101 2001-05-10  Havoc Pennington  <hp@redhat.com>
4102
4103         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
4104         we need to parse the xsetting as if it were an RC file string.
4105
4106         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
4107         value of palette from settings, not from static variable
4108
4109         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
4110         xsettings translation table
4111
4112         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
4113         hardcoding the toolbar style conflicts with new customizable 
4114         toolbar style philosophy
4115         (gtk_toolbar_class_init): add settings for default toolbar style;
4116         these are used unless the app specifically forces a toolbar style
4117
4118         * gtk/gtksettings.c (settings_install_property_parser): only
4119         return at the start if we warn and parser == NULL
4120
4121         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
4122         palette changed handler so we don't notify dead color selections
4123
4124         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
4125         xthickness/ythickness of 0 or 1 properly 
4126         (gtk_default_draw_resize_grip): clear the background behind the
4127         resize grips, and align to bottom right if we square the 
4128         area to be drawn.
4129
4130         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
4131         statusbar label to 1, so it doesn't make toplevels resize oddly
4132         (gtk_statusbar_size_request): add grip size to request
4133         (gtk_statusbar_size_allocate): hack so the hbox still works with 
4134         the grip size in the request
4135
4136         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
4137         bug where showing all on a toplevel makes the toolbar 
4138         button text appear despite the toolbar mode
4139
4140         * gtk/gtkmenubar.c: add internal padding style property
4141
4142         * gtk/gtktoolbar.c: Add internal padding style property; add
4143         shadow type style property
4144
4145         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
4146         state; and put Container::border_width outside the frame
4147
4148         * gtk/gtktextview.c: don't draw focus rectangle if we're in
4149         interior focus mode, we just use blinking cursor
4150
4151 2001-06-04  Havoc Pennington  <hp@redhat.com>
4152
4153         * configure.in: Make gdk-pixbuf have same version number as GTK
4154
4155 2001-06-04  Havoc Pennington  <hp@redhat.com>
4156
4157         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
4158         digits greater than 6. If there actually are limits (which there
4159         likely aren't), should clamp to them not warn.
4160         (gtk_spin_button_new_with_range): don't take log of 0
4161         (gtk_spin_button_size_request): use digits to compute size
4162         request, rather than step increment.
4163
4164         * tests/testgtk.c (create_spins): test larger values of digits
4165         
4166         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
4167         font on map not expose, so we don't get weirdness during scrolling
4168
4169 2001-06-04  Havoc Pennington  <hp@redhat.com>
4170
4171         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
4172         Sam Solon, bug #54577, update value even if not drawable.
4173
4174 2001-06-04  Havoc Pennington  <hp@redhat.com>
4175
4176         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
4177         SCROLL_LEFT, reported by Thomas Broyer.
4178
4179 2001-06-04  Havoc Pennington  <hp@redhat.com>
4180
4181         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
4182         Process updates immediately, to prevent funny lag effect
4183         when scrolling, at some mild potential efficiency cost.
4184
4185 2001-06-04  Havoc Pennington  <hp@redhat.com>
4186
4187         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
4188         slider on the click.
4189
4190 2001-06-03  Havoc Pennington  <hp@pobox.com>
4191
4192         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
4193         hscale/vscale details, so we can use it for scrollbar as well.
4194
4195         * tests/testgtk.c (reformat_value): honor digits from GtkScale
4196
4197         * gtk/gtkenums.h (GtkTroughType): Remove this enum
4198         (GtkScrollType): add START and END from GtkTroughType
4199
4200         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
4201         its x/y arguments
4202
4203         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
4204         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
4205         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
4206         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
4207         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
4208
4209         Notable changes in the process:
4210          
4211         - stepper_size style property is the height for vertical 
4212           ranges, width for horizontal; the other dimension matches
4213           the trough size
4214         - add ability to do NeXT-style steppers (and several other styles
4215           that don't make any sense)
4216         - added min_slider_length, fixed_slider_length properties to
4217           GtkScrollbar
4218         - cleaned some private (or at least useless) functions out of
4219           gtkscale.h    
4220         - moved bindings to GtkScale from subclasses, even arrow keys,
4221           since blind users don't know scale orientation.
4222         - change move_slider action signal to use new GtkScrollType,
4223           remove GtkTroughType argument
4224         - digits rounds the values a range will input to the given 
4225           number of decimals, but will not try to force adjustment 
4226           values set by other controllers. That is, we no longer
4227           modify adjustment->value inside a value_changed handler.
4228         - added getters for GtkScale setters
4229         - middle-click begins a slider drag
4230         
4231 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
4232
4233         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
4234         getting the focus code to work.
4235         (gtk_tree_view_class_init): Add a bunch of keybindings.
4236
4237         * gtk/gtktreeviewcolumn.c
4238         (gtk_tree_view_column_set_cell_data_func):
4239         s/GtkCellDataFunc/GtkTreeCellDataFunc.
4240         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
4241         of "properties_changed" to help justify the death of the latter
4242         signal. (-:
4243
4244         * tests/testtreefocus.c (main): Let some columns be focussable to
4245         test focus better.
4246
4247 2001-06-01  Havoc Pennington  <hp@redhat.com>
4248
4249         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
4250         
4251         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
4252         overwrite in overwrite mode if we already deleted the selection
4253         and replaced it with new text.  
4254
4255         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
4256         selection to an empty range, clear the clipboard if we owned it.
4257         (gtk_label_set_selectable): give up selection if we become
4258         unselectable.
4259         (gtk_label_state_changed): override state changed to unselect text
4260         when insensitive
4261         (get_text_callback): add paranoia check that indexes aren't
4262         outside of label->text
4263         (gtk_label_select_region): make -1 for start_offset mean "end of
4264         label," for consistency with GtkEditable
4265
4266         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
4267         GTK_DIALOG_NO_SEPARATOR flag
4268
4269 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
4270
4271         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
4272         notifications on non-existant "enable_arrow_keys".
4273         (#53753, Skip Montanaro)
4274
4275 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
4276
4277         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
4278         GDK_TYPE_RECTANGLE.
4279
4280         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
4281         of allocation argument be GDK_TYPE_RECTANGLE.
4282
4283 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
4284
4285         * gtk/gtkoptionmenu.c: Account for the fact that the border
4286         width is _outside_ the window. (Fixes #54585, bug found
4287         by Bastien Nocera.)
4288
4289 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
4290
4291         * gtk/gtksettings.c (gtk_settings_get_property): Validate
4292         value from GDK settings against parameter spec.
4293
4294         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
4295         to temporary values and use g_value_transform(), since
4296         thinking that GValue was going to be easy or efficient
4297         to use was, of course, a mistake.
4298
4299         * gtk/gtksettings.c: Add cursor blink setting.
4300         
4301         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
4302
4303         * gtk/gtkentry.c: Add cursor blinking.
4304
4305         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
4306         cursor blink global settings.
4307
4308         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
4309         for :text_position in places where it is missing.
4310
4311 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
4312
4313         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
4314
4315 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
4316
4317         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
4318         not pkg-config. (#51032)
4319
4320         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
4321         (fixes #51952, James Henstridge)
4322         
4323 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
4324
4325         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
4326         Rename to the more correct gtk-go-up.
4327
4328         * gtk/stock-icons/stock_menu_sort_ascending.png:
4329         Added new file.
4330         
4331         * gtk/stock-icons/stock_menu_sort_descending.png:
4332         Changed to show descending instead of ascending.
4333
4334         * gtk/gtkiconfactory.c:
4335         Added menu size icon to sort ascending.
4336
4337         * gtk/stock-icons/Makefile.am:
4338         Added stock_menu_sort_ascending.png.
4339         
4340         * gtk/gtkseparatormenuitem.c:
4341         Use correct typenames.
4342
4343 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
4344
4345         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
4346         gulong as in GSignal.
4347
4348 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
4349
4350         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
4351         instances of GtkCellRenderer in code (all but dnd icon code).
4352         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
4353         there, and I can do multiple Cells per column.
4354
4355         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
4356
4357         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
4358         when model was unreffed prior to removing the row reference.
4359
4360 2001-05-25  Havoc Pennington  <hp@redhat.com>
4361
4362         * gtk/gtkiconfactory.c: fix so that default icons are created if 
4363         you call gtk_stock_list_ids()
4364
4365         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
4366         in list
4367
4368 2001-05-25  Havoc Pennington  <hp@redhat.com>
4369
4370         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
4371         set can render without falling back to missing image icon
4372
4373         * gtk/gtktextview.c (gtk_text_view_size_request): request full
4374         size of text, instead of random values
4375
4376         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
4377         size of tree view, instead of random values
4378
4379         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
4380         image in an appropriate size
4381
4382         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
4383         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
4384
4385         Throughout: fix GTK_STOCK_BUTTON_ instances
4386         
4387         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
4388         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
4389         Add a bunch of new stock items/icons
4390
4391         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
4392         new function, convenience for inserting columns with a data func
4393
4394         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
4395         (_gtk_icon_factory_list_ids): use list of all factories to
4396         generate a list of all known IDs
4397
4398         * gtk/gtkstock.c (gtk_stock_list_ids): replace
4399         gtk_stock_list_items() with a function that returns all IDs known
4400         including those for GtkIconFactory.
4401
4402 2001-05-25  Hans Breuer  <hans@breuer.org>
4403
4404         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
4405         work -> check boxes and radio buttons are drawn now, even on win9x.
4406         Improved line settings a bit, still no clue how to get really dotted
4407         lines on win9x, on NT it's PS_ALTERNATE.
4408
4409         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
4410         GDK_HINT_MIN_SIZE as well
4411
4412         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
4413
4414         * gtk/gtk.def : updated
4415
4416         * gtk/gtktreeprivate.h : change column_drop_func to be a function
4417         pointer not a function pointer pointer
4418
4419         * tests/testdnd.c : include <stdlib.h> for putenv prototype
4420
4421         * tests/testsocket.c : made it compile on win32 again
4422
4423         * tests/makefile.msc : one more test-app uses prop-editor.obj
4424
4425 2001-05-22  Havoc Pennington  <hp@pobox.com>
4426
4427         * gtk/gtkbin.c (gtk_bin_get_child): New function
4428
4429 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
4430
4431         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
4432         to ignore when doing compose processing.
4433
4434 2001-05-22  Joe Shaw  <joe@ximian.com>
4435
4436         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
4437         Simplify as suggested by Havoc. Just get the last iter and work
4438         backward to the tag instead of getting a line and working back from
4439         there. Fixes passing in an invalid offset to
4440         iter_init_from_byte_offset().
4441
4442 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
4443
4444         * gtk/gtktreeview*.h: 
4445         * gtk/gtkcell*.h:
4446         * gtk/gtk*store.h:
4447         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
4448         macros to all objects.
4449
4450 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
4451
4452         * gtk/gtkcellrenderertext.c
4453         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
4454         with very large (TM) amounts of text.  May be moved to
4455         GtkCellRenderer in the future, though I'm not sure it wants to be
4456         this accessible.
4457
4458         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
4459         More sanity brought to this class.  I like it.
4460
4461         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
4462         case.  Kids, don't try this at home.
4463
4464         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
4465         convenience function.
4466
4467         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
4468
4469 2001-05-21  Alexander Larsson  <alexl@redhat.com>
4470
4471         * gtk/gtkfontsel.c:
4472         Added properties. Based on patch by Lee Mallabone.
4473
4474         * gtk/gtkruler.c:
4475         * gtk/gtkhruler.c:
4476         * gtk/gtkvruler.c:
4477         * gtk/gtktext.c:
4478         * gtk/gtktextview.c:
4479         Converted GtkArg to GParam. Based on patches by John Margaglione.
4480
4481         * tests/Makefile.am:
4482         * tests/testtext.c:
4483         Add a property editor to testtext.
4484         
4485 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
4486
4487         * gtk/gtk{h,v,}paned.c: Only show the separator if 
4488
4489         * configure.in: Fixed reversed conditional causing all image
4490         libraries to be linked in.
4491
4492 2001-05-21  Joe Shaw  <joe@ximian.com>
4493
4494         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
4495         that top_y needs to be >= 0.
4496
4497 2001-05-11  Havoc Pennington  <hp@pobox.com>
4498         
4499         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
4500         losing connection to the X server.
4501
4502 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
4503
4504         * configure.in: Start checks for X from pangox/pangoxft
4505         CFLAGS to avoid duplicate libraries.
4506
4507         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
4508
4509         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
4510         to include gobject.
4511         
4512 2001-05-18  Alexander Larsson  <alexl@redhat.com>
4513
4514         * gtk/gtkspinbutton.c:
4515         Convert GtkArgs to GParams. Based on patch by John Margaglione.
4516         Also do size request reasonable for MAXDOUBLE. Previously it printed
4517         the limits to a buffer and overran it. Instead do it using log10() and
4518         limit the width to 10 digits.
4519         
4520         * gtk/gtkwidget.c (gtk_widget_get_property):
4521         Correctly handle setting the parent property to NULL.
4522
4523 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
4524
4525         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
4526         style attributes even if the widget isn't realized.
4527
4528         * demos/gtk-demo/main.c: Use a slightly smaller font.
4529
4530 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
4531
4532         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
4533         This is something that only a widget writer would ever want
4534         to change.
4535
4536         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
4537         gtk_signal_emit_by_name().
4538
4539         * gtk/gtkviewport.c: Fix some warnings.
4540
4541         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
4542         allowing the requisitions of multiple widgets to be grouped
4543         together.
4544
4545         * tests/testgtk.c: Add GtkSizeGroup test
4546
4547         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
4548
4549         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
4550         warnings.
4551
4552         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
4553
4554 2001-04-28  Martin Baulig  <baulig@suse.de>
4555
4556         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
4557         to gtk_image_menu_item_set_icon() and made it work if there's already
4558         an image.
4559         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
4560         (gtk_image_menu_item_new_with_label): New function.
4561
4562 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
4563
4564         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
4565         highlighting code!!!!  The result is okay so long as you don't try
4566         to stress it.  It also highlights a bug in the TextView so it's in
4567         an unproportional font right now until it's fixed.
4568
4569         *demos/gtk-demo/*.c: Clean up code a bit to make it
4570         ugly-parser(TM) friendly. (-:
4571
4572 2001-05-17  Joe Shaw  <joe@ximian.com>
4573
4574         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
4575         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
4576         if it is only partially onscreen.
4577
4578 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
4579
4580         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
4581         not by characters.
4582
4583         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
4584         are not zero or one; that is, when graphemes of multiple characters
4585         are involved.
4586
4587         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
4588         FIXME.
4589
4590 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
4591         
4592         * gtk/gtkbbox.c:
4593         Add properties, based on patch by Lee Mallabone.
4594
4595         * gtk/gtknotebook.c:
4596         * gtk/gtktoolbar.c:
4597         Convert from GtkArg to GParam, based on patch by John Margaglione.
4598         
4599         * gtk/gtkhscale.c:
4600         * gtk/gtkvscale.c:
4601         * gtk/gtkhscrollbar.c:
4602         * gtk/gtkvscrollbar.c:
4603         * gtk/gtkrange.c:
4604         Move adjustment property to GtkRange.
4605
4606         * gtk/gtklabel.c:
4607         Setup mnemonics on property changes
4608
4609         * gtk/gtkwidget.c (gtk_widget_get_property):
4610         GdkExtensionMode is an enum, not a flag. Set it with
4611         g_value_set_enum ().
4612
4613         * tests/prop-editor.c:
4614         Better propery editor.
4615
4616         * tests/testgtk.c:
4617         Add new property test. Pass zero to the property editor to
4618         get properties from all derived types.
4619         
4620 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
4621
4622         * autogen.sh (have_automake): Require libtool-1.4,
4623         automake-1.4p1.
4624
4625         * acinclude.m4: Remove libtool macros.
4626
4627         * gdk-pixbuf/Makefile.am: Add dependencies to loade
4628         modules.
4629
4630         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
4631         for libgdk.
4632
4633         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
4634         libgdk.la for libgtk.
4635
4636         * modules/input/Makefile.am: Make modules have full
4637         dependencies.
4638
4639 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
4640
4641         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
4642         #54699 where paths weren't being checked for correctness.
4643
4644 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
4645
4646         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
4647         in any order you wan, whether or not the column is added to the
4648         tree, or the tree is realized.  Yay!
4649
4650         * gtk/gtktreeviewcolumn.c
4651         (gtk_tree_view_column_setup_sort_column_id_callback): handle
4652         sorting columns a lot saner
4653
4654         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
4655         new function to actually set wether or not a column is
4656         reorderable.
4657
4658         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
4659         if we have 'em.
4660
4661         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
4662         Fix nasty bug where we were showing the button just before
4663         realizing it.  As a result, the parent window was
4664         tree_view->window instead of tree_view->priv->header_window.
4665
4666         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
4667         to let you easily reorder a list or tree.
4668
4669 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
4670
4671         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
4672         from args to properties.
4673
4674 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
4675
4676         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
4677         from args to properties. (#51957)
4678
4679         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
4680         calls to after ->set_property call.
4681
4682 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
4683
4684         * tests/prop-editor.c: Block against redundant changes.
4685
4686         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
4687         properties.
4688
4689 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
4690
4691         * gdk/gdkpixmap.h: Remove creative formatting.
4692
4693 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
4694
4695         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
4696         property API. (#51669)
4697
4698         * gtk/gtkscale.c: Patch from John Margaglione converting to
4699         property API. (#51891)
4700
4701         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
4702         to property API. (#50985)
4703
4704 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
4705
4706         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
4707         buffering state across expose event, so we still call end_paint().
4708
4709 2001-05-11  Alexander Larsson  <alexl@redhat.com>
4710
4711         * gtk/gtkhsv.c (paint_triangle):
4712         Expose the ring in the triangle at the correct place when
4713         exposing just a part of the triangle.
4714
4715         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
4716         Return FALSE, or window focusing will not work.
4717
4718 2001-05-11  Havoc Pennington  <hp@pobox.com>
4719
4720         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
4721         #54144
4722
4723         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
4724         bug #54330
4725
4726 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
4727
4728         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
4729         propagate exposes to NULL child.
4730
4731         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
4732         against not having one of the scrollbars.
4733
4734         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
4735         we don't keep a mnemonic window if we have no mnemonic installed.
4736
4737 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
4738
4739         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
4740         it has the _important_ side effect of initializing a class.
4741
4742 2001-05-10  Alexander Larsson  <alexl@redhat.com>
4743
4744         * gdk/linux-fb/gdkprivate-fb.h:
4745         Make sure you can compile out the implementation/wrapper assert
4746         macros.
4747
4748         * gdk/linux-fb/gdkdrawable-fb2.c:
4749         Check implementation/wrappers, initialize type for pixmap dummys.
4750
4751         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
4752         Hide the cursor if reading from the screen.
4753
4754         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4755         Fix sign bug in tiling code.
4756
4757         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4758         Handle background pixmaps.
4759
4760 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
4761
4762         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
4763         function to let user control where columns are dragged.
4764
4765         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
4766         Escape is pressed.
4767
4768 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
4769
4770         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
4771         "columns_changed" signal.
4772         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
4773         motion code to draw arrows to the side if indicator is outside the
4774         widget.
4775         (gtk_tree_view_map_expanded_rows): Implement.
4776
4777 2001-05-07  Alexander Larsson  <alexl@redhat.com>
4778
4779         * demos/testpixbuf-save.c: 
4780         * demos/testpixbuf-drawable.c:
4781         Include gdkfb.h on linux-fb.
4782
4783 2001-05-07  Alexander Larsson  <alexl@redhat.com>
4784
4785         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
4786         New function for getting toplevel window at position.
4787         (gdk_drag_find_window): Use get_toplevel_window () instead
4788         of gdk_window_get_pointer(). (gdk_drag_status): Use
4789         correct context for getting window.
4790
4791         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
4792         g_strdup the atom name.
4793
4794         * gdk/linux-fb/gdkwindow-fb.c:
4795         Costmetic fix.
4796
4797         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
4798         Add code for changing cursor on linux-fb backend (same as
4799         win32).
4800
4801 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
4802
4803         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
4804         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
4805         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
4806         report was not for the development branch of GTK+, but it applies
4807         anyways).
4808
4809 2001-05-04  Havoc Pennington  <hp@redhat.com>
4810
4811         * configure.in: fix some shell typos
4812
4813         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
4814
4815         * gtk/gtkimage.c: handle animations
4816
4817         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
4818         border_width * 2, not just border_width
4819
4820         * gtk/gtkscale.c: add "format_value" signal to allow people
4821         to override the way values are drawn.
4822         (gtk_scale_get_value_size): fix width/height mistake,
4823         and compute size from actual displayed text, not 
4824         from made-up text.
4825
4826         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
4827         signal registration
4828
4829         * tests/testtext.c: Add "Remove all tags" menu item for testing
4830
4831         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
4832
4833         * demos/gtk-demo/main.c (main): add hack so we can find modules
4834         without installing gtk
4835
4836         * demos/gtk-demo/textview.c (insert_text): demo font scaling
4837
4838         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
4839         factor)
4840         (gtk_cell_renderer_text_set_property): remove some bogus
4841         g_object_notify
4842
4843         * gtk/gtktexttag.c: add "scale" property which is a font scaling
4844         factor
4845
4846         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
4847         to layout
4848
4849         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
4850         gtk_text_iter_is_first
4851
4852 2001-01-06  Hans Breuer  <hans@breuer.org>
4853
4854         * gdk/gdk.def : updated exports
4855
4856         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
4857         gdk won't compile anymore
4858  
4859         * gdk/win32/gdkevents-win32.c : initialize ret_val when
4860         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
4861         Improved gdk_flush () to not only do pending drawing operations
4862         but also process all currently pending events. This should make
4863         the behaviour more similar to the X11 version.  
4864
4865         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
4866         option needs to be set even if there is no GDK_GC_BACKGROUND.
4867         (gdk_win32_hdc_get) : use predraw_set_background () independent
4868         of value_mask. This allows to draw dashed lines leaving the original
4869         background intact.
4870
4871         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
4872         after processing, because we can't reuse it as the X11 version does.
4873
4874         * gtk/gtk.def : updated exports
4875
4876         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
4877         would like to get rid of this file again, and use straight
4878         makefile.msc again, as the other Gtk+ subdirs do)
4879
4880         * test/makefile.msc (new file) : build the test apps here
4881
4882 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
4883
4884         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
4885         strike-through setting
4886         (gdk_draw_layout_line_with_colors): Render strike-through
4887
4888 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
4889
4890         * Release 1.3.5
4891
4892         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
4893
4894         * NEWS: Updated
4895
4896         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
4897         Makefile breakage.
4898
4899 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
4900
4901         * demos/gtk-demo/images.c (progressive_timeout): Fix
4902         typo in filename.
4903
4904         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
4905         out FIXME warning; just too annoying.
4906
4907 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
4908
4909         * gdk/linux-fb/gdkcolor-fb.c:
4910         Better error messages.
4911
4912         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
4913         Initialize abs_x and abs_y.
4914         
4915         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4916         Correct handling of stipple offset.
4917
4918         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
4919         Treat directcolor framebuffers as truecolor.
4920         
4921 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
4922
4923         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
4924         dependency on Atk for accessibility support.
4925
4926         * configure.in **/Makefile.am: Major reworking of substituted
4927         variables for CFLAGS/LIBS to make a lot more sane and 
4928         keep the the compile/link lines a bit shorter.
4929
4930         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
4931
4932 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
4933
4934         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
4935         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
4936         use _gtk_boolean_handled_accumulator.
4937
4938 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
4939
4940         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
4941         to fix things so clicking inside selection leaves cursor
4942         at point where clicked. (#50324)
4943
4944         * gtk/gtksettings.c (gtk_settings_class_init): Restore
4945         sane value for default double click time.
4946
4947         * tests/testtext.c (test_init): Really path to input modules.
4948
4949 2001-05-03  Sven Neumann  <sven@convergence.de>
4950
4951         * demos/testpixbuf-save.c: include target-specific headers as
4952         done in testpixbuf-drawable.c
4953
4954 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
4955
4956         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
4957         new_text_length appropriately when we run into the 
4958         size limit for the entry. (#53445, reported by Jeff Franks)
4959
4960         * tests/testgtk.c (create_entry): Remove most of the
4961         property toggle buttons. Replace with a "Props" button
4962         that brings up a property editor.
4963
4964         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
4965         Split the property editor code out for reuse, improve.
4966
4967 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
4968
4969         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
4970         trap errors around calls to XSetInputFocus since we have
4971         no way of knowing reliably whether we are viewable or
4972         not. (#53947)
4973
4974 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
4975
4976         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4977         fix bug in dropping columns.  Moving columns now basically works
4978         modula some fine tuning.
4979
4980 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
4981
4982         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
4983         autoscroll support.  It mostly works, but could use some fine
4984         tuning.
4985         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4986         Actually move the column.
4987
4988 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
4989
4990         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
4991           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
4992           New default theme! A slighly improved version of the 2.0 Raleigh
4993           theme, with Windows-esque focus/drawing default. 
4994           (GtkWidget::interior_focus defaults to TRUE.)
4995
4996         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
4997
4998 2001-04-30  Havoc Pennington  <hp@pobox.com>
4999
5000         * tests/testtext.c (line_numbers_expose): fix to work with
5001         gtk_paint_layout change
5002
5003 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
5004
5005         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
5006           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
5007           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
5008           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
5009
5010         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
5011           with GtkWidget::interior_focus = TRUE better.
5012
5013         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
5014         ::default_outside_border for more flexibility.
5015
5016         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
5017         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
5018         change that had to be made with g_object_get.
5019
5020 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
5021
5022         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
5023         (gtk_tree_view_move_column_after): Clean up interface. 
5024
5025 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
5026
5027         * gtk/gtkpacker.h:
5028         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
5029          to gtkenum.h.
5030
5031         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
5032         handled in switch).
5033
5034         * gtk/Makefile.am:
5035         (gtk.defs): generate enum portions with  glib-mkenums.
5036         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
5037         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
5038         
5039         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
5040         addition.
5041
5042         * docs/Changes-2.0.txt: keep a note on signal handlers now
5043         not getting emitted during the emission they were connected within.
5044
5045 2001-04-28  Havoc Pennington  <hp@pobox.com>
5046
5047         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
5048
5049 2001-04-24  Havoc Pennington  <hp@redhat.com>
5050
5051         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
5052         (gtk_text_layout_move_iter_to_next_line): fix these two for
5053         invisible text, lots of other stuff still hosed.
5054
5055         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
5056         new function, replaces the get/set palette stuff. This function 
5057         is intended for use by libgnomeui which should set the hook to a
5058         thing which sets the palette in GConf, and we need the
5059         GConf-to-xsettings proxy which will result in the change being
5060         propagated back to the GTK app.
5061
5062         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
5063         about unusable signals that it may be because the signal has 
5064         parameters.
5065
5066         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
5067         style, otherwise gtkrc.c won't know to create a new GtkStyle for
5068         it.
5069         (gtk_widget_modify_color_component): call
5070         gtk_widget_modify_style() so the rc style will get copied.
5071         (gtk_widget_modify_font): ditto
5072
5073         * gtk/gtkrc.c: make a couple variables static
5074
5075         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
5076         help button by default, since it does nothing
5077
5078         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
5079         around with UI
5080
5081         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
5082         so we can have tooltips
5083
5084         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
5085         can have tooltips
5086
5087         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
5088         GDK_ENABLE_BROKEN, because its memory behavior is completely
5089         hosed.
5090
5091         * gtk/gtknotebook.c: remove key press handler, replace with
5092         binding set, add numeric keypad support
5093
5094         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
5095
5096         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
5097
5098         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
5099         addition to plain Delete
5100
5101         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
5102         GDK_KP_Enter in addition to GDK_Return
5103
5104         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
5105         activate on entry instead of key press
5106         (gtk_font_selection_on_clist_key_press): get
5107         rid of this signal handler, not needed with new font sel.
5108
5109         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
5110         no-longer-needed emit_stop_by_name(), just return TRUE
5111
5112         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
5113         cruft, this widget is no longer focusable.
5114
5115         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
5116         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
5117         move_slider action signal, add binding set for vscale/hscale, in
5118         the process support numeric keypad
5119
5120         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
5121         make GDK_Return and GDK_KP_Enter activate the entry via 
5122         binding set, instead of hardcoded.
5123
5124 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
5125
5126         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
5127         code.  Some documentation added.
5128
5129 2001-04-27  Havoc Pennington  <hp@redhat.com>
5130
5131         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
5132
5133         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
5134
5135         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
5136         line/para separators
5137         (gtk_entry_create_layout): set single paragraph mode on the layout
5138
5139         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
5140         spacing between the image and label; instead, inside a button box 
5141         the button will get extra space that will go there, but if people 
5142         configure button box for 0 chubbiness, then there's no spacing.
5143
5144         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
5145         and min/max size style properties, so people can tune their
5146         chubbiness.
5147
5148         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
5149         functions
5150
5151         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
5152         space_style, and button_relief into style properties, remove
5153         functions for setting them
5154         
5155         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
5156         it back down
5157
5158         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
5159         types from gtk_widget_style_get
5160
5161         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
5162         with a style property.
5163
5164         * gdk/x11/gdkevents-x11.c: namespace the settings
5165
5166         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
5167
5168         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
5169         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
5170         be used. Also, translate doc strings for settings. Also, namespace
5171         the double-click-time property. Also, remove bell properties crap.
5172
5173 2001-04-27  Sven Neumann  <sven@gimp.org>
5174
5175         * Makefile.am: before creating links, check if pkg-config files
5176         exist for the default target. Otherwise link to the pkg-config files
5177         that got installed with this build.
5178
5179 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
5180
5181         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
5182         dragging code.  Revealed some (potential) GdkWindow bugs.
5183
5184         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
5185         _gdk_window_init_position to the end of reparent to fix the case
5186         of reparenting when new_x != old_x and new_y != old_y.
5187
5188 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
5189
5190         * gtk/gtkentry.c (strstr_len): Fix optimization that
5191         was correct for the use here, but completely incorrect
5192         in general.
5193
5194 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
5195
5196         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
5197         until patch adding gtk_window_set_size() is recommitted. 
5198
5199         * **Makefile.am configure.in gdk/x11/gdkim-11.c
5200           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
5201           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
5202           (#10784)
5203
5204 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
5205
5206         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
5207         window == NULL in a number of cases.
5208
5209         * tests/testdnd.c: Set module path for gdk-pixbuf.
5210
5211 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
5212
5213         * gtk/Makefile.am xembed.h: File containing #defines
5214         for XEMBED protocol.
5215
5216         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
5217
5218         - Change protocol from old plug/socket specific protocol
5219           to XEMBED draft
5220         - Various fixes to work with GTK+-2.0
5221
5222         Still quite a bit of work to do here to handle initiation
5223         from the socket side (as specified by XEMBED), to handle
5224         the more advanced features of XEMBED, and to figure out
5225         a good way to handle same-app embedding with less overhead
5226         than using full XEMBED.
5227
5228 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
5229
5230         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
5231         track of whether the toplevel has the focus; only send
5232         focus-in events to the focus widget when the window
5233         actually has the focus.
5234
5235 2001-04-25  Havoc Pennington  <hp@pobox.com>
5236
5237         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
5238         were still in the header
5239
5240 2001-04-24  Alexander Larsson  <alexl@redhat.com>
5241
5242         * gtk/gtkclist.[ch]:
5243         * gtk/gtkctree.c:
5244         When there is a row highlighted for D'n'D it must alse
5245         be painted hightlighted on exposes. Otherwise exposes from
5246         the icon being dragged will mess up the hightlight.
5247
5248         * gtk/gtkfontsel.c:
5249         Don't recenter selected font when exposing the font family
5250         clist. This means you can now actually scroll the font family
5251         list.
5252
5253         * gtk/gtknotebook.c:
5254         Fix focus movement on scrolling tabs that are placed on the left
5255         and right.
5256
5257 2001-04-21  Havoc Pennington  <hp@pobox.com>
5258
5259         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
5260         empty/invisible lines.
5261
5262         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
5263         (gtk_text_iter_set_visible_line_index): new functions to set
5264         indexes excluding invisible text
5265
5266         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
5267         index
5268
5269         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
5270         (gtk_text_iter_get_visible_line_offset): new functions to 
5271         get indexes excluding invisible text
5272
5273         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
5274         bunch of extra padding that served no purpose
5275
5276         * gtk/gtkdialog.c: Make all the spacings configurable via style
5277         properties, for chubbiness configuration in themes
5278
5279         * tests/testtext.c: fix path to the immodules.
5280         
5281 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
5282
5283         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
5284         got munched by #endif.
5285
5286         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
5287
5288         * gtk/gtktreeview.c: Refactored code to clean up a number of
5289         events.
5290
5291         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
5292         values to make consistent with other functions.  Spotted by Jeff
5293         Franks <jcf@tpg.com.au>.
5294
5295         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
5296         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
5297
5298 2001-04-23  Sven Neumann  <sven@gimp.org>
5299
5300         * gtk/Makefile.am
5301         * gtk/gtkplug.c
5302         * gtk/gtksocket.c: on request of Owen, reverted my last change 
5303         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
5304
5305 2001-04-23  Sven Neumann  <sven@gimp.org>
5306
5307         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
5308         compile for non-X11 targets again
5309
5310 2001-04-20  Alexander Larsson  <alexl@redhat.com>
5311
5312         * gtk/gtkcolorsel.[ch]:
5313         API Change. Take GdkColor arguments instead of gdouble *.
5314         Leave the old gtk_color_selection_set_color for compatibility,
5315         but marked deprecated.
5316         Do correct rounding when converting RGB <-> HSV.
5317         
5318         * gtk/gtkcolorseldialog.c:
5319         * tests/testgtk.c:
5320         Use new GtkColorSelection API.
5321
5322         * gtk/gtkhsv.c:
5323         Fix problem selecting colors in triangle when Hue is 330.
5324         Fix some black dots around the HSB triangle.
5325         
5326         * gtk/gtkfilesel.c:
5327         return FALSE from the focus_in_event handler to fix focus problems.
5328
5329 2001-04-18  Havoc Pennington  <hp@redhat.com>
5330
5331         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
5332         set, so keybindings are configurable    
5333         (gtk_window_activate_default): Change to activate the focus widget
5334         instead if there's a focus widget, to be consistent with the
5335         behavior that previously existed in key_press_event
5336
5337 2001-04-18  Havoc Pennington  <hp@redhat.com>
5338
5339         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
5340
5341 2001-04-18  Havoc Pennington  <hp@redhat.com>
5342
5343         Close bug #50615:
5344         
5345         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
5346         the layout
5347
5348         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
5349
5350         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
5351
5352         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
5353         
5354         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
5355         to blue for base, in addition to bg
5356         
5357 2001-04-18  Havoc Pennington  <hp@redhat.com>
5358
5359         * tests/testgtk.c (create_image): allow shrinking the image window
5360         to test that we clip to allocation.
5361
5362         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
5363         #9845
5364
5365         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
5366
5367 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
5368
5369         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
5370         mode on shm segments to 0600. We'll see who complains.
5371
5372         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
5373         _gdk_windowing_window_destroy() AFTER recursing through
5374         children.
5375
5376         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
5377         testsocket_child on X.
5378
5379         * tests/testsocket[_child].c: Fix uses of
5380         gtk_window_get_default_accel_group().
5381
5382         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
5383
5384         * gdk/gdkimage.c: (gdk_image_get):
5385         Deal with the possibility that XGetImage() might return NULL.
5386         Allocate the GdkImagePrivate structure only after XGetImage()
5387         succeeds in order not to dereference a NULL ximage pointer.  This
5388         prevents a core dump when XGetImage() fails - which is unlikely,
5389         but can happen due to race conditions accessing the geometries of
5390         drawables.  An x error will still be triggered, but the gdk image
5391         wrapper at least wont seg fault.
5392         
5393 2001-04-18  Havoc Pennington  <hp@redhat.com>
5394
5395         * gtk/gtkimage.c: fix to properly queue resizes when the image is
5396         set
5397
5398         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
5399         if the insertion point isn't editable
5400
5401         * demos/gtk-demo/images.c: Added a GtkImage demo
5402
5403         * demos/gtk-demo/drawingarea.c: drawing area demo
5404         
5405         * demos/gtk-demo/menus.c (create_menu): cleanups
5406
5407 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
5408
5409         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
5410           gdk/x11/gdkevents-x11.c: Introduce an extra child
5411         of toplevel windows that serves to hold the focus to
5412         avoid events being delivered to embedded windows.
5413
5414         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
5415         some extra variables to clean up code and reduce the
5416         number of casts.
5417
5418         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
5419         guint for 1 bit bit fields, not gboolean.
5420
5421 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
5422
5423         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
5424         not TRUE. (Fixes #52925)
5425
5426 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
5427
5428         * Released 1.3.4
5429
5430         * NEWS: Updated
5431
5432         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
5433         use GTK_TYPE_ENUM.
5434
5435 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
5436
5437         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
5438
5439         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
5440         names to compatibility #defines so docs work.
5441
5442         * gtk/gtkenums.h: Remove GtkMenuFactoryType
5443
5444         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
5445
5446         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
5447
5448         * tests/testgtkrc: No magenta cursors, please.
5449
5450         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
5451
5452         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
5453         
5454 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
5455
5456         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
5457         grabs, since they are no longer necessary.
5458
5459         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
5460         by signal_connect() and call gtk_button_pressed() rather
5461         than signal_connect_after().
5462
5463         * tests/testgtk.c: Restore radio menu items to combos 
5464         since they'll look OK with Raleigh, and it is easier
5465         than finishing the process of removing them that was
5466         started earlier.
5467
5468 2001-04-16  Hans Breuer  <hans@breuer.org>
5469
5470         * gdk/gdk.def :
5471         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
5472
5473         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
5474         we are interested in the functions return value not the function address
5475         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
5476
5477         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
5478
5479 2001-04-14  Hans Breuer  <hans@breuer.org>
5480
5481         * gdk/gdk.def :
5482         * gdk/makefile.msc : updated
5483
5484         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
5485         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
5486         (the testgtk::text backgound pixmap is drawn again)
5487         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
5488         Win32 Pango change
5489         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
5490
5491         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
5492         Not sure if the returned settings have the right unit, because I couldn't
5493         find any docs for the X version ...
5494
5495         * gtk/gtk.def :
5496         * gtk/makefile.msc.in : updated
5497
5498 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
5499
5500         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
5501         wording problems. (Compared to version from Johannes Stezenbach to
5502         check correctness.)
5503
5504 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
5505
5506         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
5507         this to compile.
5508
5509 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
5510
5511         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
5512         not pixbufpos.
5513
5514         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
5515
5516         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
5517         are unsigned insts, therefore use g_value_set_uint.
5518         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
5519
5520 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
5521
5522         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
5523
5524         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
5525         GTK_TYPE_STRING.
5526
5527         * gtk/gtktreeview.c: New functions to allow initial column
5528         dragging work.
5529
5530         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
5531
5532         * tests/testtreefocus.c: give dave some love.
5533
5534         * tests/testtreesort.c: Modify test to check really long samples.
5535
5536 2001-04-11  Alexander Larsson  <alexl@redhat.com>
5537
5538         * gtk-2.0.m4: Pass pkg-config options
5539         before the other args so it works even if
5540         POSIXLY_CORRECT is set.
5541
5542 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
5543
5544         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
5545         0, interface 0).
5546
5547 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
5548
5549         * gtk/gtkcalendar.c (gtk_calendar_button_press):
5550         check for action_func != NULL
5551
5552 2001-04-04  Sven Neumann  <sven@gimp.org>
5553
5554         * tests/testgtk.c (test_init): corrected path to gtk.immodules
5555
5556 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
5557
5558         * Released Gtk+-1.3.3.
5559
5560 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
5561
5562         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
5563
5564 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
5565
5566         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
5567         files to/from source dir. (if we don't stay in builddir, we
5568         can't reach make-inline-pixbuf.
5569
5570         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
5571         deps.
5572
5573         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
5574         ages 0).
5575
5576 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
5577
5578         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
5579         moved to the GtkTreeSortable interface.
5580
5581         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
5582         Make more efficient (fixes #50262).
5583
5584 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
5585
5586         * NEWS: Updated.
5587
5588         * configure.in: Remove support for uninstalled glib.
5589
5590         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
5591         so as not to stop emission.
5592
5593         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
5594         is no longer supported.
5595
5596         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
5597         into tests, change build order to build modules before
5598         gtk/.
5599
5600         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
5601         to here.
5602
5603 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
5604
5605         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
5606         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
5607         GPatternSpec. this is actually unlikely to cause breakage in
5608         third-party apps since except for gle, pretty much ever caller
5609         passes NULL here.
5610
5611         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
5612
5613         * *.c: use g_pattern_*() API.
5614
5615         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
5616
5617         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
5618         directions aren't passed in.
5619
5620         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
5621         functionality to be usable from gtkstyle.c as well, give precedence
5622         for conversion to user-supplied parsers.
5623         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
5624
5625         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
5626         _gtk_settings_parse_convert() for rcporperty value conversion.
5627
5628 2001-04-03  Alexander Larsson  <alexl@redhat.com>
5629
5630         * gdk/linux-fb/gdkevents-fb.c:
5631         Add empty gdk_setting_get().
5632
5633 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
5634
5635         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
5636         variable names.
5637         
5638         * gtk/makeenums.pl: touch this so enum files get remade.
5639
5640 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
5641
5642         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
5643         work again when not sorted.
5644
5645         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
5646         and "expand_row" signal, closing bug 52578.
5647
5648         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
5649         support.
5650
5651         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
5652         support.
5653
5654 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
5655
5656         * gdk/gdkevents.h: Add GdkEventSetting event for notification
5657         of changes to system settings, gdk_setting_get() to retrieve
5658         a single system setting.
5659
5660         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
5661         to the draft XSETTINGS mechanism.
5662
5663         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
5664         XSETTINGS.
5665
5666         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
5667         of GDK settings changes to the GtkSettings object.
5668
5669         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
5670         double-click-timeout property to GDK.
5671
5672         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
5673         Define GDK boxed types here.
5674
5675         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
5676         gdk/gdkenumtypes.[ch] for enum definitions.
5677
5678         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
5679         * gtk/gtk-boxed.defs: Comment out GDK types
5680         * gtk/gtktypeutils.h: Remove GDK types
5681         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
5682
5683 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
5684
5685         * Applied patch from Ron Steinke to add signal accumulators
5686         so that signals with the convention 'TRUE return means
5687         handled' stop emission on a TRUE return.
5688
5689         * gtk/gtkmain.[ch]: Add private accumulator 
5690         _gtk_boolean_handled_accumulator, used throughout GTK+.
5691         
5692         * gtk/gtkspinbutton.c: Add accumulator for ::output.
5693
5694         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
5695         
5696         * gtk/gtkwidget.c: Add accumulators for event signals,
5697         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
5698         for ::mnemonic-activate.
5699
5700         * gtk/gtkwindow.c: Add accumulator for ::frame_event
5701
5702 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
5703
5704         * gtk/gtkwidget.c: Add missing include.
5705
5706 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
5707
5708         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
5709         marshaller.
5710
5711         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
5712         "changed" signal to "range_changed".
5713
5714         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
5715         removing a tree from one model would remove all trees from that
5716         model.
5717         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
5718         changed signal instead.
5719
5720 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
5721
5722         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
5723         chaining up to parent impl, since we have a INPUT_ONLY
5724         window.
5725
5726         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
5727         foreground color for the cursor.
5728
5729 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
5730
5731         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
5732         param spec when caching property values, since we unref it
5733         later when we free the style.
5734
5735         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
5736         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
5737
5738 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
5739
5740         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
5741         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
5742         stupidity.
5743
5744 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
5745
5746         [ First pass at adding style properties. Still needs some definite
5747         fine-tuning. ]
5748
5749         * gtk/gtkbutton.c: Add ::default_spacing style property.
5750          
5751         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
5752         ::indicator_spacing style properties.
5753
5754         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
5755         style properties.
5756
5757         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
5758         rather than a normal property.
5759
5760         * gtk/gtkwidget.c: Add an ::interior_focus style property to
5761         draw focus inside buttons, in the Windows/Java Metal/etc. style.
5762
5763         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
5764         Honor ::interior_focus.
5765         
5766         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
5767         TRUE.
5768
5769         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
5770         Add ::slider_width, ::trough_border, ::stepper_size,
5771         ::stepper_spacing style properties.
5772
5773         * gtk/gtkscale.[ch] Add ::slider-length style property.
5774
5775 2001-04-02 Alexander Larsson   <alexl@redhat.com>
5776
5777         * gdk/linux-fb/gdkwindow-fb.c:
5778         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
5779         warnings that were spewed on startup.
5780
5781         * gtk/gtkwindow-decorate.c:
5782         gtk_window_reposition -> _gtk_window_reposition
5783
5784 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
5785
5786         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
5787         Add boxed type for GtkRequistion. Use it for ::size-request.
5788
5789         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
5790         Add a new GtkBorder structure useful for geometry properties
5791         for widgets. Add corresponding GTK_TYPE_BORDER.
5792         
5793         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
5794         Support automatic parser selection like
5795         gtk_settings_install_property_parser().
5796
5797         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
5798         functionality for use by gtk_widget_class_install_style_property.
5799         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
5800
5801 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
5802
5803         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
5804         g_param_spec_unichar(). 
5805
5806 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
5807
5808         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
5809         _NET window managers.
5810
5811         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
5812
5813 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
5814
5815         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
5816         bad needs to be nuked, not just deprecated.
5817
5818         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
5819         gtk_widget_popup().
5820
5821         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
5822         
5823         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
5824         widget.
5825         
5826         * docs/Changes-2.0.txt: updates.
5827         
5828 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
5829
5830         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
5831         for (i = 0; i < 100; i ++)
5832           g_print ("I will confirm it compile before committing\n");
5833
5834 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
5835
5836         * gtk/gtktreestore.c: Initial work on implementing the
5837         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
5838
5839 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
5840
5841         * gtk/gtkwidget.c: fixed a bunch of notifications, added
5842         reference counts around emissions where the widget is used afterwards.
5843         added freeze/thaws around multiple properties being notified.
5844         (_gtk_widget_get_aux_info): cleanups.
5845         
5846         * gtk/gtksettings.c (gtk_settings_install_property): provide
5847         default parsing functions for gdkcolor, enums and flags.
5848
5849         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
5850         applied by owen.
5851         backed out gtk_window_get_location(), gtk_window_set_location(),
5852         gtk_window_get_size() and gtk_window_set_size(), these
5853         have to be sorted out wrg x/y/width/height/default_with/default_height
5854         properties.
5855         kept a flag in GtkWindowGeometryInfo to handle user
5856         resetting default sizes.
5857         cleaned up ZVT comments.
5858         bunch of assorted bug fixes, notification fixes.
5859         (_gtk_window_reposition): make this a really internal function.
5860         
5861         * gtk/testgtk.c: fixups.
5862         
5863 2001-03-31  Hans Breuer  <hans@breuer.org>
5864
5865         * config.h.win32.in : disable USE_MMX for msvc build cause
5866         the assembler doesn't fit and is out of my scope. Disable
5867         USE_GMODULE for msvc build as wel. The right way to share
5868         binaries on win32 would be to use libtiff.dll etc. To reduce
5869         installation hassles IMO it's better to include all fileformats
5870         builtin to gdk-pixbuf
5871
5872         * gdk-pixbuf/makefile.msc : new file
5873
5874         * gdk/gdk.def : updated
5875
5876         * gdk/win32/gdkevents-win32.c : don't erase the background if
5877         .no_bg is set. It improves the scrolling (e.g. of testgtk main
5878         buttons
5879         * gdk/win32/gdkgeometry-win32.c : added comment about the above
5880
5881         * gdk/win32/gdkwindow-win32.c : added three new functions like
5882         the X version. Only one is implemented, because the other two
5883         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
5884         be default behaviour on win32 anyway ...
5885
5886         * gtk/gtk.def : updated
5887
5888         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
5889         from where it was built and add an additional rule to automagically
5890         build gtkmarshal.[hc]
5891
5892         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
5893         before array access for the current entry isn't finished
5894
5895         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
5896         use g_return_val_if_fail
5897
5898         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
5899         for the static array, but let the compiler calculate it. It
5900         makes me wonder if gcc isn't capable to catch bugs like this ...
5901
5902 2001-03-31  James Henstridge  <james@daa.com.au>
5903
5904         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
5905         constant "-1" in the aux info structure.
5906
5907 2001-03-30  Alexander Larsson  <alexl@redhat.com>
5908
5909         * gtk/gtkbutton.c (gtk_button_get_property):
5910         * gtk/gtklabel.c:
5911         Remove leaks.
5912         
5913         * gtk/gtkcontainer.c:
5914         * gtk/gtkhscale.c:
5915         * gtk/gtkhscrollbar.c:
5916         * gtk/gtklayout.c:
5917         * gtk/gtkmisc.c:
5918         * gtk/gtkprogress.c:
5919         * gtk/gtkprogressbar.c:
5920         * gtk/gtkrange.c:
5921         * gtk/gtktable.c:
5922         * gtk/gtkviewport.c:
5923         * gtk/gtkvscale.c:
5924         * gtk/gtkvscrollbar.c:
5925         * gtk/gtkwidget.c:
5926         Property patches, based on patches from John Margaglione and Lee Mallabone.
5927
5928 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
5929
5930         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
5931         adjustment. Cleaned redundant preconditions (spin != NULL). Added
5932         inline API function docs.
5933         (gtk_spin_button_new_with_range): New convenience constructor.
5934         (gtk_spin_button_set_increments): New adjustment helper.
5935         (gtk_spin_button_set_range): New adjustment helper.
5936
5937         * gtk/testgtk.c : added test of the new convenince constructor and
5938         value_changed signals.
5939
5940 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
5941
5942         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
5943         listen to the reorder signal.
5944
5945 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
5946
5947         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
5948         to get the aux info structure fo the widget.
5949
5950         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
5951         above function.
5952
5953         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
5954
5955         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
5956         to get the size of the window manager frame, basically the same
5957         code that gdk_window_get_root_origin() had
5958         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
5959
5960         * gtk/gtkwindow.c (gtk_window_set_default_size): use
5961         gdk_window_resize() if the window is realized and resizeable
5962
5963         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
5964         typo so that setting gravity works
5965
5966         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
5967         allocation if auto_shrink is on, even if the default size
5968         has not changed.
5969
5970         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
5971         g_return_if_fail
5972
5973 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
5974
5975         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
5976         reordering/sorting work.  Now pretty much works.
5977
5978         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
5979         reorder mostly work.  Still need to get the parity correct.
5980
5981         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
5982         signal, so I can listen for the sort_column_changed signal so I
5983         can change my "sort_indicator" property.  Cool.
5984
5985 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
5986
5987         [ Patch from Havoc Pennington, hp@redhat.com ]
5988
5989         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
5990         Add functions gdk_window_begin_resize_drag/begin_move_drag
5991         to start resizing or moving a toplevel window. This
5992         is done either using the _NET_WM_MOVERESIZE protocol,
5993         or, if that isn't present, by emulation.
5994
5995         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
5996         to export the above to GTK+-land.
5997
5998         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
5999         
6000         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
6001         Move this function into gdkwindow, since we need it
6002         when implementing fallback resizing.
6003
6004         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
6005         Fix typo when setting gravity.
6006
6007         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
6008         Add an optional (but on by default) resize grip for resizing 
6009         the parent window.
6010
6011 01-03-29  Alexander Larsson  <alexl@redhat.com>
6012
6013         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
6014         Don't return TRUE from the event handler, that blocks all
6015         event signals on the tooltip widget. Now you can press buttons
6016         in toolbars again.
6017
6018 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
6019
6020         * gtk/testtext.c (create_buffer): Add missing NULL on
6021         valist.
6022
6023         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
6024         c-n-p problem with INCONSISTENT property.
6025
6026         [ Patch from Havoc Pennington  <hp@redhat.com> ]
6027
6028         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
6029         hook.
6030
6031         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
6032         signal as a hook for extending the default popup menu
6033
6034         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
6035         use radio menu items for the input method menuitems
6036
6037         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
6038         inserted unicode from Ctrl-Shift-hex input method
6039
6040         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
6041         validatation here, already done at GtkTextBuffer level.
6042
6043         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
6044         popup_menu run action signal and Shift+F10 and Menu keybindings.
6045
6046         * gtk/gtkentry.c: implement a default handler for popup_menu
6047
6048         * gtk/gtktextview.c: implement a default handler for popup_menu
6049
6050         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
6051         from a key event
6052         
6053         * gtk/gtklabel.c: remove "trailer" cruft
6054
6055 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
6056
6057         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
6058         handle reordering of trees.  Seems to mostly work w/ the exception
6059         of the parity flag.
6060
6061         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
6062         signal.
6063
6064 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
6065
6066         * gtk/gtkwidget.h: c++ fixes.
6067
6068 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
6069
6070         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
6071         memory.
6072
6073 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
6074
6075         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
6076         Nils Barth fixing event return values. (#51041)
6077
6078         * gtk/gtkwidget.c: Fix some return values for default
6079         functions.
6080
6081         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
6082         return values for trough_keys functions.
6083
6084         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
6085         value for add_accelerator (shoudl have been a void
6086         return.)
6087
6088         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
6089         Fix return type of EVENT.
6090
6091         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
6092         signal return a boolean.
6093
6094 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
6095
6096         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
6097         reordered signal.
6098
6099         * tests/testtreesort.c (main): fix spelling.
6100
6101 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
6102
6103         * gtk/gtkliststore.c: More work on implementing sortable
6104         interface.
6105
6106 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
6107
6108         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
6109         reference the widgets in the resulting list. (#11821)
6110         This makes this consistent with gtk_container_children.
6111
6112         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
6113         uses of gtk_window_list_toplevels.
6114
6115 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
6116
6117         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
6118         a virtual function to set whether the IM context should use 
6119         the preedit string. (#51922)
6120         
6121 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
6122
6123         * gdk/gdkpango.h: Remove stale FIXME comment.
6124
6125 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
6126
6127         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
6128         Fixed bug that returned NULL if a filename was selected.
6129
6130 2001-03-24  Havoc Pennington  <hp@pobox.com>
6131
6132         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
6133         to contain the word "theme"
6134
6135 2001-03-24  Havoc Pennington  <hp@pobox.com>
6136
6137         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
6138         slower but finer-grained
6139         (gtk_hsv_focus): get initial focus on the ring or triangle 
6140         according to tab direction
6141
6142         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
6143
6144 2001-03-23  Havoc Pennington  <hp@pobox.com>
6145
6146         * gtk/gtkhsv.c: make this somewhat key-navigable
6147
6148         * gtk/gtkfontsel.c: mnemonics
6149
6150         * gtk/gtkgamma.c: mnemonics
6151
6152         * gtk/gtkcolorsel.c: add mnemonics to labels
6153
6154 2001-03-22  Havoc Pennington  <hp@pobox.com>
6155
6156         Applied big patch from Seth Lytle to fix event handler return
6157         values, slightly modified.
6158
6159         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
6160         handled.
6161         (gtk_calendar_key_press): return TRUE for GDK_space triggers
6162         select_day
6163
6164         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
6165         (gtk_clist_button_release): return TRUE if handled
6166
6167         * gtk/gtkcolorsel.c (mouse_release):
6168         (palette_activate): 
6169         (palette_press): 
6170         (palette_new): 
6171         (mouse_press): 
6172         (get_screen_color): 
6173         fixed return type (void to gboolean), return TRUE,
6174         added GTK_SIGNAL_FUNC cast
6175
6176         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
6177         (void to gboolean), and return TRUE
6178         (gtk_combo_button_release): changed return value to TRUE after
6179         gtk_grab_add on combo->popwin
6180
6181         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
6182         collapse or expand
6183
6184         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
6185         button/motion
6186
6187         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
6188         press/release and motion that trigger act
6189
6190         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
6191
6192         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
6193         for GDK_Return
6194         
6195         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
6196         (gtk_list_button_release): return TRUE if selection
6197
6198         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
6199         press
6200
6201         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
6202         (gtk_menu_shell_button_release): chain parent_menu_shell retval
6203
6204         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
6205         nothing triggered
6206         (gtk_notebook_button_release): return TRUE if we do anything
6207
6208         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
6209         (gtk_spin_button_button_release): return TRUE or chained retval
6210
6211         * gtk/gtktext.c (gtk_text_button_press): 
6212         (gtk_text_button_release): return TRUE
6213         (gtk_text_key_press): remove redundant retval code
6214         
6215         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
6216         and sensitive
6217         (gtk_tree_item_subtree_button_click): changed type to gint, and return
6218         TRUE if sensitive
6219
6220         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
6221         return TRUE
6222
6223 2001-03-23  Havoc Pennington  <hp@redhat.com>
6224
6225         * gtk/testgtk.c: fix warnings
6226
6227         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
6228
6229         * gtk/gtktextview.c: fix warnings
6230
6231         * gtk/gtktext.c (find_cursor_at_line): fix warning
6232
6233         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
6234
6235         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
6236         of this function
6237
6238         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
6239         fix warning
6240
6241         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
6242
6243         * gtk/gtkfontsel.c: fix warning
6244
6245         * gtk/gtkcolorsel.c: fix warnings
6246
6247 2001-03-23  Havoc Pennington  <hp@redhat.com>
6248
6249         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
6250
6251         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
6252
6253         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
6254         and deprecated gtk_check_menu_item_set_show_toggle().
6255         
6256         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
6257
6258         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
6259
6260         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
6261
6262 2001-03-23  Havoc Pennington  <hp@redhat.com>
6263
6264         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
6265         some docs
6266
6267 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
6268
6269         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
6270         this.
6271
6272         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
6273         set_cell to set_value
6274
6275         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
6276         set_cell to set_value
6277
6278 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
6279
6280         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6281         fix braino.
6282         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
6283         support.
6284
6285         * gtk/gtktreeview.c: Addition of initial sortable support.
6286
6287         * gtk/gtktreestore.c: Addition of initial sortable support.
6288
6289         * gtk/gtkliststore.c: Addition of initial sortable support.
6290
6291         * gtk/gtkmarshal.list: yet another marshaller.
6292
6293         * gtk/gtktreedatallist.[ch]: shared code between the store models
6294         for handling sorting headers.
6295
6296 2001-03-22  Havoc Pennington  <hp@redhat.com>
6297
6298         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
6299         (gtk_container_unset_focus_chain): Add ability to override the 
6300         focus chain for a container explicitly
6301
6302 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
6303
6304         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
6305         added PROP_MNEMONIC_WIDGET.
6306
6307         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
6308         (gtk_window_remove_mnemonic): 
6309         (gtk_window_add_mnemonic): fixed assertions.
6310         (gtk_window_activate_mnemonic): constrain modifier checks to those
6311         permitted by gtk_accelerator_get_default_mod_mask().
6312         got rid of gtk_window_get_default_accel_group().
6313
6314         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
6315         activatable widgets either by focussing or a warning.
6316         added a signal accumulator to ::activate_mnemonic which stops the
6317         emission once a handler returned TRUE.
6318
6319 2001-03-22  Havoc Pennington  <hp@pobox.com>
6320
6321         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
6322         the stock item label
6323
6324         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
6325
6326         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
6327
6328         * demos/gtk-demo/*.c: Add mnemonics all over the place
6329
6330         * gtk/gtklabel.h: mark parse_uline deprecated
6331
6332 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6333
6334         * gtk/gtkitemfactory.[ch]:
6335         Add support for stock and normal imagemenuitems.
6336         
6337         * gtk/testgtk.c:
6338         Add some tests for mnemonics, stock toolbars, stock
6339         and image menuitems in itemfactory and gdk_window_scroll.
6340
6341 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6342
6343         * gtk/gtkbutton.[ch]:
6344         * gtk/gtkdialog.c:
6345         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
6346         removed accel_group argument. Renamed gtk_button_new_accel() to
6347         gtk_button_new_with_mnemonic() and removed accel_group argument.
6348
6349         * gtk/gtkcheckbutton.[ch]:
6350         New function gtk_check_button_new_with_mnemonic().
6351
6352         * gtk/gtkentry.c:
6353         Override activate_mnemonic and just grab focus.
6354
6355         * gtk/gtkitemfactory.c:
6356         Don't add menu uline accel group, instead use mnemonics support.
6357
6358         * gtk/gtklabel.[ch]:
6359         New support for mnemonics.
6360
6361         * gtk/gtkmarshal.list:
6362         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
6363
6364         * gtk/gtkmenu.[c]:
6365         * gtkmenushell.c:
6366         Use mnemonics instead of accel groups for uline
6367         support in menu items.
6368         Removed gtk_menu_get_uline_accel_group() and
6369         gtk_menu_ensure_uline_accel_group().
6370
6371         * gtk/gtkmenuitem.c:
6372         Override activate_mnemonic to handle switching between
6373         menu items if there are collisions.
6374         
6375         * gtk/gtknotebook.c:
6376         Connect to activate_mnemonic on the tab_label, so that
6377         activating it switches to that notebook page.
6378
6379         * gtk/gtkwidget.[ch]:
6380         Add activate_mnemonic signal. New function
6381         gtk_widget_activate_mnemonic() to emit it.
6382         Default implementation does activate/grab_focus.
6383
6384         * gtk/gtkwindow.[ch]:
6385         Add support for mnemonics in windows.
6386         New functions:
6387         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
6388         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
6389
6390         * gtk/testgtk.c:
6391         Update to function name changes.
6392         
6393 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6394
6395         * gtk/gtkimagemenuitem.[c]:
6396         Add gtk_image_menu_item_new_from_stock()
6397
6398 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
6399
6400         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6401         Fix buglet in meeting.
6402
6403 2001-03-19  Havoc Pennington  <hp@redhat.com>
6404
6405         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
6406         add a bunch of accessor functions. This is because we have
6407         reasonable expectations of extending what fields it contains in
6408         the future.
6409
6410         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
6411         changes
6412
6413         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
6414         GtkIconSource   
6415
6416 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
6417
6418         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
6419         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
6420
6421         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
6422           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
6423           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
6424           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
6425         Change float to double everywhere with the exception of 0<->1.0 alignment
6426         and GtkCurve.
6427
6428 2001-03-19  Tor Lillqvist  <tml@iki.fi>
6429
6430         * gdk/win32/gdkdrawable-win32.c
6431         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
6432         output.
6433
6434         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
6435         gdkwin32.h.
6436
6437 2001-03-18  Tor Lillqvist  <tml@iki.fi>
6438
6439         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
6440         print_event_state, print_event): Use preprocessor macro to make
6441         code more compact. Print also GDK_WINDOW_STATE events.
6442         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
6443         
6444         * gtk/gtk.def
6445         * gtk/makefile.mingw.in: Update.
6446
6447         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
6448         to catch also Cygwin.
6449
6450 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
6451
6452         * gtk/gtkspinbutton.[hc]: added rc-style argument
6453         GtkSpinButton::shadow_type.
6454         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
6455         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
6456         rc-style settings.
6457
6458         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
6459
6460         * gtk/gtkwidget.c: quark cleanups.
6461
6462         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
6463         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
6464         to create_rc_style() (we don't do cloning in standard OO sense).
6465         added per rc style properties.
6466         
6467         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
6468         property values and for caching those. some cleanups.
6469         
6470         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
6471         
6472         * gtk/gtksettings.[hc]: new file for global rc-file properties
6473         (at least currently, should get extended to support X properties
6474         and other communication mechanisms).
6475         
6476         * gtk/gtkwidget.[hc]: added style property support:
6477         (gtk_widget_class_install_style_property_parser): install style
6478         property pspec with parser function for rc-file values other
6479         than LONG, DOUBLE or STRING.
6480         (gtk_widget_class_install_style_property): same as above without
6481         parser (parsers are going to be needed quite infrequently).
6482         (gtk_widget_style_get_property): retrive style property value.
6483         (gtk_widget_style_get_valist): same as above with varargs support,
6484         has NOCOPY semantics.
6485         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
6486
6487 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
6488
6489         * demos/gtk-demo/main.c (row_activated_cb): modified to use
6490         "row_activated" signal.
6491
6492         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
6493         stupidity.  Lets actually pass in the row with this signal...
6494
6495 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
6496
6497         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
6498
6499         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
6500
6501         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
6502         everything into the ::destroy function, and freed a lot more.
6503
6504 2001-03-16  Havoc Pennington  <hp@redhat.com>
6505
6506         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
6507         instead of gint16, to avoid overflow issues, since sizes > 16-bit
6508         are now allowed.
6509
6510 2001-03-16  Havoc Pennington  <hp@redhat.com>
6511
6512         * Applied patch from Nils Barth (bug # 51041) to 
6513         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
6514         in various places.
6515
6516 2001-03-15  Havoc Pennington  <hp@redhat.com>
6517         
6518         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
6519         for properties to set on the tag.
6520
6521         * gtk/testtext.c: fixups to reflect create_tag change
6522         
6523         * gtk/gtktexttag.c (gtk_text_tag_set_property):
6524         background/foreground stipple are objects, not boxed.
6525
6526         * demos/gtk-demo/textview.c: intellihancing
6527
6528 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
6529
6530         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
6531         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
6532
6533 2001-03-16  Alexander Larsson  <alexl@redhat.com>
6534
6535         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
6536         Fix sign error with queued region translations.
6537
6538 2001-03-15  HideToshi Tajima  <tajima@happy>
6539
6540         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
6541         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
6542         * gtk/gtkentry.c (update_im_cursor_location): 
6543         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
6544         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
6545         set_cursor_pos to set_cursor_location in GtkInputContext class
6546
6547 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
6548
6549         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
6550         the location of the cell relative to its area.
6551         * gtk/gtkcell*: modified for above change
6552         * gtk/gtktreeview.c: modified for above change.
6553
6554 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
6555
6556         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
6557          (gtk_tree_view_finalize): actually unref the model.  Thanks to
6558         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
6559
6560 2001-03-14  Havoc Pennington  <hp@redhat.com>
6561
6562         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
6563         
6564         * gtk/gtk.h: remove gtkdata.h
6565
6566         * gtk/Makefile.am: remove gtkdata
6567         
6568         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
6569         not "disconnect" on the adjustments.
6570         
6571         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
6572         GtkData
6573
6574         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
6575         not GtkData
6576
6577         * configure.in: handle case where X render exists, but Pango lacks
6578         Xft support.
6579
6580 2001-03-15 Alexander Larsson  <alexl@redhat.com>
6581
6582         * gtk/gtktoolbar.[ch]:
6583         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
6584         to add stock items to toolbars.
6585
6586         * gtk/Makefile.am:
6587         Remove ../gdk/gdkim.h from gdk_headers.
6588
6589 2001-03-15  Sven Neumann  <sven@gimp.org>
6590
6591         * gdk/gdkim.h: removed
6592         
6593         * gdk/gdkprivate.h
6594         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
6595
6596 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
6597
6598         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
6599         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
6600         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
6601         set_cursor_pos() virtual method
6602
6603         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
6604         (gtk_im_context_xim_set_cursor_pos): add implementation for
6605         set_cursor_pos() method
6606
6607         * gtk/gtkentry.c (recompute_idle_func): set current cursor
6608         position to input methods
6609
6610 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
6611
6612         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
6613         code a lot.
6614
6615         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
6616         g_mem_chunk.
6617         (_gtk_tree_data_list_alloc): use g_mem_chunk.
6618         (_gtk_tree_data_list_node_to_value): Fix to switch on
6619         G_TYPE_FUNDAMENTAL.
6620         (_gtk_tree_data_list_value_to_node): Fix to switch on
6621         G_TYPE_FUNDAMENTAL.
6622         (_gtk_tree_data_list_node_copy): Fix to switch on
6623         G_TYPE_FUNDAMENTAL.
6624
6625 2001-03-12  Havoc Pennington  <hp@redhat.com>
6626
6627         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
6628         to convert to new property API. Also, change default_width and
6629         default_height get_property to return 0 as the flag value for
6630         "unset"; -1 is not a valid value for these fields.
6631
6632 2001-03-12  Havoc Pennington  <hp@redhat.com>
6633
6634         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
6635         enum with registration for icon sizes, instead of strings.
6636
6637         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
6638         gtkwidget.c: Fix to reflect GtkIconSize
6639         
6640 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6641
6642         Make GtkFB compile and link.
6643         
6644         * gdk/linux-fb/gdkdrawable-fb2.c:
6645         window->mapped to GDK_WINDOW_IS_MAPPED(). 
6646         
6647         * gdk/linux-fb/gdkwindow-fb.c:
6648         window->mapped to GDK_WINDOW_IS_MAPPED(). 
6649         Added gdk_window_shape_combine_region.
6650         Added assorted placeholders for unimplemented new GdkWindow API calls.
6651
6652 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6653
6654         * gtk/gtkfilesel.c:
6655         Add more test when converting filenames from/to utf-8.
6656         Don't allow entering text in the filename entry which isn't allowed in
6657         a filename. Just beep instead.
6658
6659 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6660
6661         * gtk/gtkclist.c:
6662         Scroll using gdk_window_scroll(). Don't wait for exposes.
6663         Move the column headers in an order that makes them flash less.
6664
6665 2001-03-10  Hans Breuer  <hans@breuer.org>
6666
6667         * gdk/gdk.def : updated
6668
6669         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
6670         to offseting the clip_mask at the right place
6671
6672         * gdk/win32/gdkwindow-win32.c : don't create background brushes
6673         for all the gdkClasses, especially not for the input_only case.
6674         Otherwise flickering wont be avoidable, because we don't get
6675         WM_ERASEBKGND message for these windows.
6676
6677         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
6678         and fixed massive redraw problems apparently triggered by Alexanders 
6679         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
6680         but it seems to work quite well :-)
6681
6682         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
6683         prototype
6684
6685 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
6686
6687         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
6688         (gtk_list_store_set_cell): Fix a stupid typo.
6689
6690 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
6691
6692         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
6693         select_all not work if you're in SINGLE mode (it doesn't make that
6694         much sense, anyway.)
6695
6696         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6697         handle types more sanely.
6698         (_gtk_tree_data_list_value_to_node): handle types more sanely.
6699         (_gtk_tree_data_list_node_copy): handle types more sanely.
6700
6701         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
6702         GValue better. Converts the type as well.
6703
6704         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
6705         GValue better. Converts the type as well.
6706
6707 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
6708
6709         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
6710         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
6711         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
6712         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
6713
6714         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
6715         gdk_im/gdk_ic.
6716
6717 2001-03-09  Hans Breuer  <hans@breuer.org>
6718
6719         * gdk/gdk.def : updated
6720
6721         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
6722         for their palette
6723
6724         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
6725         removing
6726
6727         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
6728         removing and implemented Havoc's GdkWindow state functions; 
6729         stick/unstick only as no-op, cause I don't know how to emulate 
6730         on win32 ...
6731
6732         * gtk/gtk.def : updated
6733
6734         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
6735
6736         * gtk/gtktypeutils.c : #include <string.h>
6737
6738         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
6739
6740 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
6741
6742         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
6743         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
6744         not a boxed.
6745
6746 2001-03-09  Alexander Larsson  <alexl@redhat.com>
6747
6748         * docs/Changes-2.0.txt:
6749         Document expose event->region change and that gtk_widget_event
6750         doesn't allow passing expose events.
6751
6752         * gdk/gdkevents.h:
6753         Add region to expose event.
6754         
6755         * gdk/gdkevents.c:
6756         Handle event->region in gdk_event_copy() and gdk_event_free().
6757
6758         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
6759         Generate expose_event->region when creating expose events.
6760
6761         * gdk/x11/gdkevents-x11.c:
6762         Generate expose events with regions when translating X events.
6763
6764         * gtk/gtkcontainer.[ch]:
6765         Default expose handler that propagates expose events to NO_WINDOW
6766         children. New function gtk_container_propagate_expose()
6767
6768         * gtk/gtkwidget.[ch]:
6769         Moved gtk_widget_event implementation to gtk_widget_event_internal.
6770         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
6771         expose events. New function gtk_widget_send_expose() to send expose
6772         events. New function gtk_widget_region_intersect() to calculate
6773         window/region intersections.
6774         
6775         * gtk/gtkmain.c (gtk_main_do_event):
6776         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
6777         Use gtk_widget_send_expose() to send expose events.
6778         
6779         * gtk/gtkbin.c:
6780         * gtk/gtkbox.c:
6781         * gtk/gtkfixed.c:
6782         * gtk/gtkimagemenuitem.c:
6783         * gtk/gtklist.c:
6784         * gtk/gtkpacker.c:
6785         * gtk/gtktable.c:
6786         * gtk/gtktree.c:
6787         Remove expose handler, using the default container implementation
6788         instead.
6789         
6790         * gtk/gtkbutton.c:
6791         * gtk/gtkcheckbutton.c:
6792         * gtk/gtkeventbox.c:
6793         * gtk/gtkfixed.c:
6794         * gtk/gtkhandlebox.c:
6795         * gtk/gtklayout.c:
6796         * gtk/gtklistitem.c:
6797         * gtk/gtkmenu.c:
6798         * gtk/gtkmenubar.c:
6799         * gtk/gtkmenuitem.c:
6800         * gtk/gtknotebook.c:
6801         * gtk/gtkoptionmenu.c:
6802         * gtk/gtkpaned.c:
6803         * gtk/gtkscrolledwindow.c:
6804         * gtk/gtktogglebutton.c:
6805         * gtk/gtktoolbar.c:
6806         * gtk/gtktreeitem.c:
6807         * gtk/gtkviewport.c:
6808         Chain expose handler to parent class handler. Use
6809         gtk_container_propagate_expose() to propagate exposes.
6810
6811         * gtk/gtkclist.c (check_exposures):
6812         * gtk/gtktext.c (process_exposes):
6813         Use gtk_widget_send_expose instead of gtk_widget_event.
6814
6815 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
6816
6817         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
6818
6819 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
6820
6821         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
6822         unref the nodes.   Fixes bug #50058.
6823
6824         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
6825         "::ref_iter" to "::ref_node".
6826         (gtk_tree_model_unref_node): change "::unref_iter" to
6827         "::unref_node". Fixes bug #50064.
6828
6829 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
6830
6831         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
6832         support for invisible cells.
6833          (gtk_tree_view_bin_expose): ditto
6834
6835 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
6836
6837         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
6838         on gobjects.
6839
6840         * tests/testtreefocus.c (main): New test file.
6841
6842         * tests/testtreeview.c: update to latest glib changes.
6843
6844         * tests/testtreecolumns.c: update to latest glib changes.
6845
6846 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
6847
6848         * gtk/testgtk.c: re-enabled event watcher emission hooks.
6849
6850 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
6851
6852         * *.c: added accumulator data argument to g_signal_newc()
6853         functions.
6854
6855         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
6856         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
6857         * gtk/treestoretest.c (make_window):
6858         s/g_signal_connect/g_signal_connectc/.
6859
6860         * gtk/gtktextbuffer.c: completed signal arg fixups,
6861         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
6862
6863 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
6864
6865         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
6866         G_CONST_RETURN.
6867
6868         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
6869         ::hierarchy-changed signal when a widget changes
6870         from anchored to unanchored or vice versa.
6871         (anchored means 
6872          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
6873         Use a private flag to keep track of this efficiently.
6874
6875 2001-03-07  Havoc Pennington  <hp@redhat.com>
6876
6877         * gtk/testgtk.c (create_spins): uglify so that size request gets
6878         tested.
6879
6880         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
6881         request on values for upper/lower, completes #6152
6882
6883 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
6884
6885         * Makefile.am: Remove gtk-config-2.0 again.
6886         (Grrrr, pkg-config. And stops make loops.)
6887
6888 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
6889
6890         * gtk/gtksignal.[hc]: removed old emission hook API.
6891         
6892         * docs/Changes-2.0.txt: fixed sections.
6893         
6894         * gtk/gtktextbuffer.c: signal arg fixups.
6895
6896 2001-03-07  Havoc Pennington  <hp@redhat.com>
6897
6898         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
6899
6900         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
6901         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
6902         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
6903         validation and the redraw which is higher priority than the
6904         validation.
6905
6906 2001-03-07  Havoc Pennington  <hp@redhat.com>
6907
6908         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
6909         (gtk_entry_set_property): remove trailer
6910
6911         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
6912         (gtk_entry_get_width_chars): new functions, to set size request to 
6913         a given number of characters
6914
6915         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
6916
6917         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
6918         (gtk_dialog_get_has_separator): new function
6919         (run_delete_handler): fix to not emit "response" signal
6920         because we already did in the delete event handler installed
6921         at dialog creation time.
6922         
6923         * gtk/gtkdialog.h: add a has_separator property,
6924         add GTK_DIALOG_NO_SEPARATOR flag
6925
6926 2001-03-07  Havoc Pennington  <hp@redhat.com>
6927
6928         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
6929         off decorations for a window.
6930
6931         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
6932         changes
6933
6934         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
6935         to get location of PangoLayout inside the label, closes #51198
6936
6937         * gtk/testgtk.c (create_bbox): fix up button box usage
6938
6939         * gtk/testcalendar.c (create_calendar): fix up button box usage
6940
6941         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
6942
6943         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
6944
6945         * gtk/gtkhbbox.h: deprecations
6946
6947         * gtk/gtkvbbox.h: deprecations
6948
6949         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
6950         emulate deprecated gtk_button_box_get_spacing
6951
6952         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
6953         the "set global default" functions
6954         (struct _GtkButtonBox): remove "spacing" field, use the one from 
6955         GtkBox base class
6956
6957         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
6958
6959         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
6960         render the icon, return the missing image icon.
6961
6962         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
6963         image icon if the load fails.   
6964
6965         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
6966         when no image is found; should be the Netscape "missing image"
6967         icon eventually but for now is a random image
6968
6969         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
6970         role for the session manager
6971
6972         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
6973
6974         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
6975         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
6976
6977         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
6978
6979 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
6980
6981         * gtk/*.c: marshaller fixes.
6982         
6983         * gtk/gtkmarshal.list: extreme cleanup.
6984
6985         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
6986         param spec for now.
6987
6988         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
6989         where appliable.
6990
6991         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
6992         special cased autogenerated boxed types from gtktypebuiltins_ids.c
6993         which are not reference counted:
6994         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
6995         PangoFontDescription, GtkTreeIter and GtkTreePath.
6996
6997 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
6998
6999         * gtk/gtktreeselection.h: 
7000         * gtk/gtktreemodel.c:
7001         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
7002         file should be included directly, and gobject/gmarshal.h
7003         as well as gtk/gtkmarshal.h even can't be included directly.
7004
7005         * Makefile.am: grr, install gtk-config-2.0.
7006
7007         * gtk/testgtk.c:
7008         * gtk/simple.c:
7009         * gtk/gtkmenu.c:
7010         * gtk/gtkitemfactory.c: use g_object_connect() instead of
7011         passing "*signal*::*" args to gtk_widget_set().
7012         
7013         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
7014         
7015         * gtk/*.c: removed trailer arg from property setters and getters.
7016         macro fixups.
7017
7018 2001-03-07  Alexander Larsson  <alexl@redhat.com>
7019
7020         * gtk/gtklabel.c (set_markup): Removed warning
7021
7022 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
7023
7024         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
7025         field to allow you to hide cell renderers.
7026
7027         * gtk/gtkcellrenderer.c: Add support for invisible cells.
7028
7029         * gtk/gtktreeview.c: Add support for invisible cells.
7030
7031 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
7032
7033         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
7034         Add "clicked" signal back to columns.
7035
7036         * ChangeLog: remove conflict markers.
7037
7038 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
7039
7040         * gtk/gtkbutton.c: Add animation of activation by, on 
7041         activate, pressing the button, and adding a timeout that 
7042         releases the button after 250ms or on key release and
7043         emits ::clicked. (#51501)
7044
7045         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
7046         action area, we connect to ::clicked instead of ::activate
7047         so the dialog stays up through the animation.
7048
7049 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
7050
7051         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
7052         check the ignore_enter flag for the menu shell that
7053         the item is actually a child of, not for attached
7054         submenus. (#51536)
7055
7056 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
7057
7058         * gtk/gtkmain.c (gtk_propagate_event): Only do special
7059         special key-press grab handling for widgets within
7060         GtkWindows. Otherwise, fall through to normal case.
7061
7062         This prevents key events being sent twice to GtkInvisible
7063         widgets, which can cause all sorts of mischief.
7064
7065 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
7066
7067         * gtk/gtkmain.c (gtk_propagate_event): When a grab
7068         widget is in effect, give the grab widget a first
7069         crack at KEY_PRESS/RELEASE events. (#424)
7070
7071 2001-03-06  James Henstridge  <james@daa.com.au>
7072
7073         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
7074         offset for the window_state_event to point at window_state_event
7075         rather than no_expose_event.
7076
7077 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
7078
7079         * gtk/gtkimmodule.h: fix busted /* comment */
7080
7081 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
7082
7083         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
7084         object properties.
7085
7086 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
7087
7088         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
7089         add object properties.
7090
7091         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
7092         to add object properties.
7093
7094         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
7095         object properties.
7096
7097         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
7098         add object properties.
7099
7100         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
7101         object properties.
7102
7103 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
7104
7105         * gtk/gtktreemodel.c: renamed "child_toggled" to
7106         "has_child_toggled".
7107
7108         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
7109         handle new signal name.
7110
7111         * gtk/gtktreestore.c: Updated to handle new signal name.
7112         * gtk/gtklisttore.c: Updated to handle new signal name.
7113         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
7114
7115 2001-03-05  Alexander Larsson  <alexl@redhat.com>
7116
7117         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
7118         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
7119
7120 2001-03-05  Michael Natterer  <mitch@gimp.org>
7121
7122         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
7123         pixbuf-engine coincidentially also failed to make one of it's
7124         parent_class pointers static, causing overwriting of GtkLabel's
7125         parent_class pointer in pixbuf_style_class_init().
7126         (Will commit the fix to the pixbuf-engine too).
7127
7128 2001-03-05  Alexander Larsson  <alexl@redhat.com>
7129
7130         * gdk/gdkwindow.h:
7131         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
7132         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
7133         gdk_window_set_icon_list for net wmspec functionality.
7134
7135         * gdk/x11/gdkwindow-x11.c:
7136         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
7137         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
7138         gdk_window_set_icon_list.
7139         Added gdk_wmspec_change_state helper function and used it in the code.
7140         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
7141
7142         * gtk/gtkdialog.c (gtk_dialog_init):
7143         Set GDK_WINDOW_TYPE_HINT_DIALOG.
7144
7145         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
7146         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
7147
7148         * gtk/gtkwindow.c:
7149         new function gtk_window_set_type_hint.
7150         On realize, set type hint and modal hint.
7151
7152         * gtk/gtkwindow.h:
7153         Added type_hint field and gtk_window_set_type_hint.
7154
7155 2001-03-05  Alexander Larsson  <alexl@redhat.com>
7156
7157         * gtk/gtklabel.[ch]:
7158         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
7159         New function gtk_label_get_accel_keyval () to get the underline accelerator
7160         of the label. Setting the label pattern overrides other attributes.
7161
7162 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
7163
7164         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
7165         Added missing initializers to gtk_rc_style_init().
7166
7167 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
7168
7169         * gtk/gtktextview.c: fixed bug #51097 about setting 
7170         gtk_text_view_set_border_window_size() if the widget is 
7171         already realized.
7172
7173 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
7174
7175         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
7176
7177         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
7178         comment. Won't do to have duplicated doc comments between
7179         the platform subdirs.
7180
7181 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
7182
7183         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
7184           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
7185
7186         Detectable auto-repeat - make a repeating key generate
7187         press/press/press/release instead of press/release pairs.
7188
7189         If we have Xkb and XkbSetDectableAutoRepeat supports
7190         that, we do it that way. Otherwise, when we get
7191         a release event, we check ahead with XPending to see
7192         if the next key is a KeyPress with the same keycode
7193         and timestamp. (Not 100% reliable, but pretty close.)
7194           
7195 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
7196         
7197         * gtk/gtkmain.c (gtk_propagate_event): Only do special
7198         special key-press grab handling for widgets within
7199         GtkWindows. Otherwise, fall through to normal case.
7200  
7201         This prevents key events being sent twice to GtkInvisible
7202         widgets, which can cause all sorts of mischief.
7203  
7204 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
7205  
7206         * gtk/gtkmain.c (gtk_propagate_event): When a grab
7207         widget is in effect, give the grab widget a first
7208         crack at KEY_PRESS/RELEASE events. (#424)
7209  
7210 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
7211
7212         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
7213         to extend the selection. (Roughly based on patch
7214         from Jay Cox, #50939)
7215
7216         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
7217         to properly handle previous GDK_BUTTON_PRESS. 
7218         (Patch from Jay Cox, #50938)
7219
7220         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
7221         '\0' back along with the deleted text. (#51148)
7222
7223 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
7224
7225         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
7226         the group when extracting it from the X keyboard event.
7227
7228         * modules/input/Makefile.am modules/input/imipa.c: 
7229         Simple module for entering IPA. (Do we need a 
7230         gtk-stupid-input-tricks CVS module?)
7231
7232 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
7233
7234         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
7235         const.
7236
7237         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
7238
7239         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
7240         is no focus widget for the dialog currently, grab the focus as well
7241         as the default.
7242
7243         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
7244         the action area's children to iterate through, not the
7245         dialog's children.
7246
7247 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
7248
7249         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
7250         Add plug-socket tests. (Won't work worth a darn until I commit
7251         the rest of the plug-socket changes, but no reason these
7252         can't go into CVS now.)
7253
7254 2001-03-02  Havoc Pennington  <hp@redhat.com>
7255
7256         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
7257         _gdk_region_get_xrectangles()
7258
7259         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
7260
7261         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
7262
7263         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
7264         function, contributed by Ron Steinke    
7265
7266         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
7267         gdk_net_wm_supports
7268
7269         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
7270         New function, contributed by Ron Steinke
7271
7272         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
7273         used to line up the text in the entry when using the entry for
7274         editable sheet cell hacks
7275
7276         * gtk/testgtk.c (create_entry): test the activate_default setting
7277         on GtkEntry
7278
7279         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
7280         cause the entry to activate the default button for a dialog when 
7281         activated
7282         (gtk_entry_get_activates_default): new function
7283
7284 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
7285
7286         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
7287         Hwang to move call to sync_selection() up a few lines
7288         to before the row list is modified, to fix crash when
7289         removing rows in the undo_selection list.
7290
7291         (Test case provided by Daniel Elstner:
7292
7293         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
7294
7295 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
7296
7297         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
7298         of tree->root_tree in parent_set rather than _map(), 
7299         fixing #50892 in a bit better manner.
7300
7301 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
7302
7303         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
7304
7305 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
7306
7307         * gtk/gtkstyle.c : Remove duplicate fwd decl for
7308         gtk_default_draw_shadow.
7309
7310 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
7311
7312         * gdk/gdkimage.c (gdk_image_new): Remove excess 
7313         warning, make warnings more verbose, treat a error
7314         in shmat as permanent, and don't try again.
7315         (#51163, Ed Randall.)
7316
7317 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
7318
7319         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
7320         delay for the first click before starting to scroll.
7321         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
7322
7323         * gtk/gtktext.c: GtkText should have I-beam cursor. 
7324         (based on gtk-enf-990513-1.patch, Eric Fisher.)
7325
7326 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
7327
7328         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
7329         cleanup to remove some references to unused
7330         ->xoffset, ->yoffset.
7331
7332 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
7333
7334         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
7335         mask. (#51039, fix from Martin Maierhofer)
7336
7337 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
7338
7339         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
7340         for unshifted + and shifted = for non-us keyboards.
7341         Make <Control>+ and <Control>- work as well as 
7342         <Control>KP_Plus, <Control>KP_Minus for recursive
7343         open/close.  (#2682, René Seindal)
7344
7345 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
7346
7347         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
7348         the active menu item before deactivating the menu,
7349         so gtk_menu_popdown doesn't change the history. (#50964)
7350         
7351 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
7352
7353         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
7354         draw lines with text_gc rather than black_gc.
7355         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
7356
7357 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
7358
7359         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
7360         Move handling of buttons fully in gtktreeviewcolumn.  This code is
7361         less interrelated then it was, but it still requires the
7362         GtkTreeView to map it.
7363
7364         * test/testtreecolumn.c: Now I can add a column to one view,
7365         remove it, add it to the another view, remove it, then re-add it
7366         to the first.  Nifty.
7367
7368 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
7369
7370         * docs/tutorial/gtk-tut.sgml: Minor corrections
7371
7372 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
7373
7374         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
7375         GtkRowReference.
7376
7377 2001-02-28  Havoc Pennington  <hp@redhat.com>
7378
7379         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
7380         draw_default
7381         (gtk_widget_draw_focus): remove this function; we could instead
7382         make it just gtk_widget_draw(), but in most cases I think the
7383         result would be broken user code, so think it's better to have
7384         that code not compile and get fixed
7385         (gtk_widget_draw_default): ditto
7386
7387         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
7388         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
7389         
7390         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
7391         widgets lose/get the default, instead of calling draw_default
7392         
7393         * docs/Changes-2.0.txt: note about all this
7394
7395         Then fixed every widget in GTK, I won't list all the filenames.
7396
7397 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
7398
7399         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
7400         _gtk_tree_row_reference_deleted.
7401         (inserted_callback): Proxy out to
7402         _gtk_tree_row_reference_inserted.
7403         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
7404         get around signal emission ordering problem.
7405
7406         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7407         fix to work with SINGLE 
7408         (_gtk_tree_selection_internal_select_node): Major sanitization on
7409         selections.  SINGLE now seems to work.
7410
7411         * tests/Makefile.am: add testtreecolumn.c:
7412
7413         * tests/testtreecolumn.c: New test.  Mostly points out selection
7414         bugs currently, but will test columns later.
7415
7416         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
7417         selection bug.  I hate touching this code -- it's scary.
7418
7419 2001-02-26  Havoc Pennington  <hp@redhat.com>
7420
7421         * gtk/testgtk.c: test the window state stuff
7422
7423         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
7424         window come to the user's attention as if it were just created
7425         (gtk_window_iconify): new function
7426         (gtk_window_deiconify): new function
7427         (gtk_window_stick): new function
7428         (gtk_window_unstick): new function
7429         (gtk_window_maximize): new function
7430         (gtk_window_unmaximize): new function
7431
7432         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
7433
7434         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
7435
7436         * gdk/x11/gdkevents-x11.c: create window state events when
7437         appropriate
7438         (gdk_wmspec_supported): new function
7439
7440         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
7441         iconification before showing the window
7442         (gdk_window_deiconify): new function
7443         (gdk_window_stick): new function
7444         (gdk_window_unstick): new function
7445         (gdk_window_maximize): new function
7446         (gdk_window_unmaximize): new function
7447
7448         * gdk/gdkwindow.c: store the window state in the window; 
7449         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
7450         window->mapped.
7451         (gdk_window_get_state): return the current window state
7452
7453         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
7454         (gdk_event_get_state): handle GDK_WINDOW_STATE
7455         (gdk_synthesize_window_state): function to create the window state
7456         events
7457
7458         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
7459         event, for changes to "window state" such as maximized, sticky, 
7460         etc.
7461         
7462         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
7463         focuses a window
7464
7465         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
7466         finds out if we support a given WM spec hint
7467
7468 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
7469
7470         * docs/faq/gtk-faq.sgml: New question re memory leaks.
7471
7472 2001-02-25  Hans Breuer  <hans@breuer.org>
7473
7474         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
7475         cause we want to loose those prototypes only in the latter case
7476
7477         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
7478         GdkPixmapImplWin32 because it itsn't derived from it. Use the
7479         impl member variable instead
7480
7481         * gtk/gtk.def : updated
7482
7483         * gtk/gtklist.c : 
7484         * gtk/gtkmenus.c : include <string.h> for memset ()
7485
7486         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
7487         for everthing built here, but for gtk-x.x.dll only. This solves
7488         problem of indifferent gtk type definitions
7489
7490 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
7491
7492         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
7493
7494 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
7495
7496         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
7497         column that is exposed.
7498
7499         (_gtk_tree_view_update_size): Changed name from set_size, and
7500         changed function to do more work, and not force people calling it
7501         to figure out the size.  Simplifies a lot of code elsewhere.
7502
7503 2001-02-23  Alexander Larsson  <alexl@redhat.com>
7504
7505         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
7506         return solid masks for xpms that have no transparent color.
7507         This makes the ..._create_from_xpm... API backwards
7508         compatible.
7509
7510 2001-02-23  Tor Lillqvist  <tml@iki.fi>
7511
7512         * README.win32: Update. Mention the gtk-1-3-win32-production
7513         branch.
7514
7515         * gdk/win32/bdfcursor.c: New file. A program that generates
7516         xcursors.h. Thanks to Stefan Ondrejicka.
7517
7518         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
7519         compact format.
7520
7521         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
7522
7523         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
7524         function, uses xcursors.h.
7525         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
7526         cursor from inline data instead of using LoadCursor() to generate
7527         it from a resource.
7528
7529         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
7530         event, must check the Windows message for mouse button state, as
7531         the GDK event state might not have been built if it is
7532         undelivered. Remove one goto.
7533
7534         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
7535         SetCursor() if the current cursor as returned by GetCursor() is
7536         the window's previous cursor. The ChildWindowFromPoint() test
7537         apparently didn't work correctly.
7538
7539         * gdk/win32/rc/*.cur: Remove.
7540
7541         * gdk/win32/rc/gdk.rc.in: Remove cursors.
7542
7543         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
7544
7545         * gtk/makefile.{mingw,msc}.in: Updates.
7546
7547 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
7548
7549         * gtk/gtktreemodel.h: add functions for signal emission.
7550
7551         * gtk/gtktreestore.c: move to use above functions instead of
7552         g_signal_emit.
7553
7554         * gtk/gtkliststore.c: ditto
7555
7556 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
7557
7558         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
7559         GObject instead of GtkObject.
7560
7561         * gtk/gtkliststore.c: ditto.
7562
7563         * gtk/gtktreemodelsort.c: ditto.
7564
7565         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
7566         GtkTreeModelIface, instead of in each model.
7567
7568 2001-02-21  Havoc Pennington  <hp@redhat.com>
7569
7570         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
7571         unbreak this function
7572
7573         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
7574         properties
7575
7576         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
7577         properties
7578
7579         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
7580         properties
7581
7582         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
7583         mean unset the max length
7584
7585 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
7586
7587         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
7588         Changed name to be set_cell_data_func to make it clear what
7589         the functino does.  Close bug #51069.
7590
7591 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
7592
7593         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
7594         have memory actually freed.  Keeps box running longer.
7595
7596 2001-02-21  Alexander Larsson  <alexl@redhat.com>
7597         
7598         * gtk/gtkseparatormenuitem.[ch]:
7599         Added new menu separator item. The drawing and size handling
7600         is still done in GtkMenuItem, but the API is a bit more sane.
7601         
7602         * gtk/Makefile.am:
7603         Add gtkseparatormenuitem.[ch].
7604
7605         * gtk/gtk.h:
7606         Add gtkseparatormenuitem.h.
7607         
7608         * gtk/gtkentry.c:
7609         * gtk/gtkmenufactory.c:
7610         * gtk/gtktextview.c:
7611         Use the new API for menu separators.
7612         
7613         * demos/gtk-demo/menus.c (create_menu):
7614         Add some GtkSeparatorMenuItem demo code.
7615
7616 2001-02-20  Havoc Pennington  <hp@redhat.com>
7617
7618         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
7619         Lee Mallabone
7620
7621         * gtk/gtkarrow.c: Convert to new property API, patch from 
7622         Lee Mallabone
7623
7624 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
7625
7626         * tests/testtreeview.c (toggled_callback): fix to reflect change
7627         in GtkTreeModelStore.
7628
7629 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
7630
7631         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
7632         function to create an icon set from a pixbuf.
7633
7634 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7635
7636         * gtk/gtkcellrenderertext.[ch]:
7637         Add a "markup" property.
7638
7639         * gtk/treestoretest.c:
7640         Use the markup property, remove some leftover stuff from
7641         GtkTreeModelMapping.
7642
7643 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7644
7645         * gtk/gtklabel.c (gtk_label_set_selectable):
7646         Queue a redraw if the selectable setting was changed.
7647
7648 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7649
7650         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
7651         Actually copy the whole gc, not just the public parts.
7652         
7653         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7654         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
7655         labels.
7656
7657 2001-02-19  Havoc Pennington  <hp@pobox.com>
7658
7659         * gdk/gdkwindow.c: docs
7660
7661         * gdk/gdkrgb.c: docs
7662
7663         * gdk/gdkregion-generic.c: docs
7664
7665         * gdk/gdkgc.c (gdk_gc_set_values): docs
7666
7667         * gdk/gdkdraw.c: docs
7668
7669         * gdk/gdkdrawable.h: deprecate drawable get/set data
7670
7671 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
7672
7673         * demos/gtk-demo/dialog.c: Add simple new demo.
7674
7675 2001-02-19  Havoc Pennington  <hp@redhat.com>
7676
7677         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
7678         insert_child_anchor signal, bug #50245
7679
7680         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
7681         from create_child_anchor, so the anchor is passed in
7682
7683         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
7684         (_gtk_widget_segment_new): have the child anchor object passed in, 
7685         instead of creating it.
7686
7687         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
7688         to gtk_text_buffer_get_modified
7689
7690 2001-02-19  Havoc Pennington  <hp@redhat.com>
7691
7692         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
7693         changed GLib without fixing GTK
7694
7695         * gtk/gtkrange.h: Rename all the stupid implementation detail 
7696         functions to have an underscore in front. Most of them should 
7697         probably just go away, but for starters don't export them.
7698         Bug #50482
7699
7700 2001-02-19  Havoc Pennington  <hp@redhat.com>
7701
7702         * gdk/gdkcolor.h: test was backward, so deprecated functions were
7703         excluded by default
7704
7705         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
7706         clean up the old code a bit
7707
7708         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
7709         inconsistent state
7710
7711         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
7712         draw inconsistent state
7713
7714         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
7715         (create_menu): add inconsistent test
7716
7717         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
7718         new function
7719         (gtk_check_menu_item_get_inconsistent): new function
7720         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
7721         state (using etched in for now)
7722
7723         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
7724         draw inconsistent state
7725
7726         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
7727         function, used when the user has selected a range of stuff in
7728         different states
7729         (gtk_toggle_button_get_inconsistent): accessor for that
7730         (gtk_toggle_button_paint): draw inconsistent state (etched in?
7731         don't know what else to do)
7732
7733 2001-02-19  Hans Breuer <hans@breuer.org>
7734
7735         * gtk/gtk.def : updated exported symbols
7736
7737         * gtk/makefile.msc.in : updated
7738
7739         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
7740         a colormap, when invoked from testgtk::entry. I'm not sure where
7741         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
7742         avoids immediate crashing ...
7743
7744         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
7745         any objections ?
7746
7747         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
7748         0 parameter. At least msvc doesn't like macros with var args. 
7749         I simply removed the extra 0, was it a feature or a typo ?
7750
7751         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
7752         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
7753         because the value assignment to the internal struct wasn't working.
7754         I'm not absolutely sure. The problem could have been resolved by
7755         changing the "func" declartion in the struct, but was the pointer
7756         to the function pointer intended ?
7757
7758         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
7759
7760         * gdk/gdk.def : updated exported symbols
7761
7762         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
7763         only use SetDIBitsToDevice if there is a palette at the drawable
7764         and the image is GDK_VISUAL_PSEUDO_COLOR
7765
7766         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
7767
7768         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
7769
7770         * gdk/*/makefile.msc : updated
7771
7772 2001-02-19  Havoc Pennington  <hp@redhat.com>
7773
7774         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
7775         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
7776
7777         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
7778         (gdk_key_repeat_restore): nuke
7779
7780         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
7781         (gdk_init_check): no atexit func
7782
7783         * gdk/gdkrgb.h: mark some stuff deprecated
7784
7785         * gdk/gdkcolor.h: mark some stuff deprecated
7786         
7787         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
7788
7789         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
7790
7791 2001-02-16  Havoc Pennington  <hp@redhat.com>
7792
7793         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
7794         scroll steps.
7795
7796         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
7797         steps, and add Ctrl-arrow shortcuts for paging visually as with
7798         HScale, since Page Up and Page Down move logically.
7799
7800         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
7801         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
7802         
7803         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
7804         steps
7805         (gtk_range_scroll): handle the visual steps
7806
7807         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
7808         scroll steps
7809
7810         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
7811         steps, not the logical ones.
7812
7813         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
7814         (scroll_vertical): handle up/down steps
7815
7816 2001-02-19 Alexander Larsson  <alexl@redhat.com>
7817
7818         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
7819         Copy data and free data with free().
7820
7821         * gdk-pixbuf/gdk-pixbuf.c:
7822         * gdk-pixbuf/io-jpeg.c:
7823         * gdk-pixbuf/io-png.c:
7824         Use g_try_malloc/g_free instead malloc/free.
7825         
7826         * gdk-pixbuf/test-gdk-pixbuf.c:
7827         Must... initialize... gobject...
7828         
7829         * gdk-pixbuf/pixops/timescale.c:
7830         * gtk/gtkcalendar.c:
7831         Use g_malloc instead of malloc.
7832         
7833 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
7834
7835         * gtk/testgtkrc:
7836         Comment out property assignments, these don't work yet.
7837
7838 2001-02-17  Havoc Pennington  <hp@pobox.com>
7839
7840         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
7841         bit.
7842
7843 2001-02-17  Havoc Pennington  <hp@pobox.com>
7844
7845         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
7846         shadowed variables that had broken size request in some cases,
7847         leading to bogus tooltips (#50996)
7848
7849 2001-02-06  Jon K Hellan  <hellan@acm.org>
7850
7851         Implement fast browsing of tooltips, bug #50619
7852         
7853         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
7854         and last_popdown
7855         
7856         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
7857         use_sticky_delay and last_popdown.
7858         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
7859         time of popdown.
7860         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
7861         is NULL.
7862         (gtk_tooltips_recently_shown): New static function.  Return true
7863         if < sticky_delay has elapsed since last popdown.
7864         (gtk_tooltips_event_handler): Display window after sticky_delay
7865         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
7866         since last popdown.
7867         
7868 2001-02-17  Havoc Pennington  <hp@pobox.com>
7869
7870         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
7871         instead of (). #6394
7872
7873         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
7874         G_CONST_RETURN, make it return by reference, #50473
7875         
7876 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
7877
7878         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
7879         generated ENTER_NOTIFY event with 0, otherwise not explicitely
7880         setup fields contain garbage (e.g. subwindow, breaking
7881         gdk_drawable_ref() upon event copy).
7882         (gtk_menu_stop_navigating_submenu_cb): same here.
7883
7884         * gtk/gtklist.c (gtk_list_vertical_timeout): 
7885         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
7886         * gtk/gtkclist.c (vertical_timeout): 
7887         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
7888         default-zero-intialization for unions to memset(,0,), as unions are
7889         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
7890         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
7891
7892         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
7893         g_closure_sink() warning.
7894
7895         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
7896         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
7897         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
7898         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
7899         
7900 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
7901
7902         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
7903         gtk_*_store_get, and moved to GtkTreeModel.
7904
7905         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
7906
7907         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
7908
7909         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
7910
7911         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
7912         set the func.
7913
7914         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7915         freeze/thaw notify between setting all the properties for a cell.
7916
7917         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
7918
7919 2001-02-15  Havoc Pennington  <hp@redhat.com>
7920
7921         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
7922         the X coordinates so they're with respect to the line, rather than 
7923         with respect to the layout.
7924
7925         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
7926         Mallabone
7927
7928         * gtk/testgtk.c (create_range_controls): add vscale tests, 
7929         and inverted test
7930
7931         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
7932         #50806
7933
7934         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
7935
7936         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
7937         gtk_text_iter_is_end
7938
7939         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
7940         rename gtk_text_buffer_get_end_iter
7941
7942         * gtk/testgtk.c (create_labels): Add test for selectable
7943
7944         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
7945         the selection stuff. This code is kind of broken since it doesn't 
7946         use the theme engine.
7947
7948         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
7949         fix infinite loop and y offset problem
7950         (gdk_draw_layout_line_with_colors): fix foreground color handling
7951
7952         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
7953         that makes the label selectable.
7954         
7955         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
7956         layout when the style is set, since fonts etc. could have changed.      
7957
7958 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
7959
7960         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
7961
7962         * gtk/gtktreemodelsimple.[ch]: removed.
7963
7964 2001-02-16  Alexander Larsson  <alexl@redhat.com>
7965
7966         * gtk/gtktreemodelmapping.[ch]:
7967         New files. Implement GtkTreeModelMapping.
7968         
7969         * gtk/Makefile.am:
7970         Add gtktreemodelmapping.[ch].
7971         
7972         * gtk/gtk.h:
7973         Add gtktreemodelmapping.h
7974
7975         * gtk/treestoretest.c:
7976         Test the GtkTreeModelMapping
7977
7978 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
7979
7980         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
7981         have a demo, we might as well pass in real values.  Thanks to
7982         clahey for pointing this out.
7983
7984 2001-02-14  Havoc Pennington  <hp@pobox.com>
7985
7986         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
7987         "static" to a private function
7988         (gtk_image_menu_item_class_init): remove destroy handler,
7989         add "image" object property
7990
7991 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
7992
7993         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
7994         Add a shortcut if the window and the current clip_region doesn't
7995         overlap. This is needed when there are a lot of windows in a
7996         window. The layout test in testgtk is a good test.
7997
7998         * gdk/linux-fb/gdkwindow-fb.c:
7999         Whitespace fix.
8000
8001 2001-02-13  Sven Neumann  <sven@convergence.de>
8002
8003         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
8004
8005 2001-02-13  Alexander Larsson  <alexl@redhat.com>
8006
8007         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
8008         Don't reference last_cursor if it is null. Fixes crash when rotating
8009         the screen before having moved the mouse.
8010
8011         * gdk/linux-fb/gdkcc-fb.c: Zapp!
8012
8013         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
8014
8015         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
8016         when using 90 or 270 degrees rotation.
8017
8018 2001-02-12  Havoc Pennington  <hp@pobox.com>
8019
8020         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
8021         it always set the foreground, even if we were only using
8022         a stipple.
8023         (gdk_draw_layout_line_with_colors): new function, allow
8024         override colors
8025         (gdk_draw_layout_with_colors): new function, allow override
8026         colors
8027         (gdk_pango_layout_line_get_clip_region): function to get the clip
8028         region for a logical text range
8029         (gdk_pango_layout_get_clip_region): get the clip region for a
8030         logical text range
8031
8032         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
8033         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
8034         the right number of arguments.
8035
8036         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
8037         enhance the function to check that node data corresponds to a 
8038         view still belonging to the tree.
8039
8040         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
8041         GtkTreePath
8042         (gtk_tree_view_inserted): ditto
8043         (gtk_tree_view_child_toggled): ditto
8044
8045         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
8046         simplify this code.
8047
8048         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
8049         a PangoAttrList
8050
8051         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
8052
8053         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
8054
8055         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
8056         size in the size request 
8057         (gtk_menu_bar_size_allocate): consider toggle size here
8058
8059         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
8060         that displays a widget in the toggle slot
8061
8062         * gtk/testgtk.c: test GtkImageMenuItem
8063
8064         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
8065         
8066         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
8067         request and allocation
8068
8069         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
8070
8071         * gtk/gtkcheckmenuitem.c
8072         (gtk_check_menu_item_toggle_size_request): ditto
8073         
8074 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
8075
8076         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
8077         reference.
8078
8079         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
8080         and refuse to initialize GTK+ if they fail.
8081
8082 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
8083
8084         * configure.in: Add check for gtk-doc version.
8085
8086 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
8087
8088         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
8089         where the xpad/ypad was only being used on one side!
8090
8091 2001-02-11  Tor Lillqvist  <tml@iki.fi>
8092
8093         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
8094         function, copied from X11 version.
8095
8096         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
8097         DestroyCursor failures. The reason for the problem (despite the
8098         inconsistent messages from GetLastError()) was that
8099         DestroyCursor() cannot be called while a cursor is set in a
8100         window. Set the new cursor first and then destroy the old one.
8101         Thanks to jpe@archaeopteryx.com.
8102
8103         * gdk/win32/gdkcc-win32.c: Remove.
8104
8105         * gdk/win32/Makefile.am: Remove from here, too.
8106         
8107         * gdk/gdk.def
8108         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
8109
8110         * gtk/gtk.def
8111         * gtk/makefile.mingw.in: Updates.
8112
8113 2001-02-08  Havoc Pennington  <hp@redhat.com>
8114
8115         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
8116         add a widget to a bin that already has a child.
8117
8118         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
8119
8120         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
8121         
8122         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
8123
8124         * gdk/gdk.h: remove gdkcc.h
8125
8126         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
8127
8128         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
8129         GdkPixbuf, since the previous implementation was GdkColorContext
8130         dependent.
8131
8132         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
8133         
8134 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
8135
8136         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
8137         a sane value!
8138
8139 2001-02-08  Havoc Pennington  <hp@redhat.com>
8140
8141         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
8142         lighten them.
8143
8144 2001-02-08  Havoc Pennington  <hp@redhat.com>
8145
8146         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
8147         validation idle
8148
8149         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
8150         cell renderer
8151
8152         * demos/pixbuf-demo.c (timeout): remove deprecated
8153         gtk_widget_draw
8154
8155         * demos/testpixbuf-save.c (main): remove deprecated
8156         gtk_drawing_area_size
8157
8158         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
8159         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
8160         at the start of the allocation.
8161         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
8162         unsetup or NULL model.
8163
8164         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
8165         even/odd/sorted cells in the tree view.
8166
8167         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
8168         bugfixes
8169
8170         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
8171         backgrounds with draw_flat_box using different detail for even/odd
8172         rows.
8173
8174         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
8175         row, so we can draw the alternating colors thing
8176
8177         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
8178         property from a synonym property, notify for the synonym.
8179         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
8180         (gtk_text_tag_get_property): Always return the font, even if
8181         all its fields aren't set
8182
8183         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
8184         store the attr list; it leaves us with no way to change attributes
8185         in _render according to the render flags, and no way to implement
8186         get_property. Instead store all the specific text attributes. 
8187         Separate whether an attribute is enabled from its value. Sync all
8188         properties with GtkTextTag, make them all consistent, etc.
8189
8190         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
8191         renderers can highlight the sort row/column     
8192
8193         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
8194         accessor functions to get values; this has the side effect of
8195         showing up which accessor functions were missing. Added those.
8196
8197         * gtk/gtktreeviewcolumn.h: Replace set_justification with
8198         set_alignment, to be consistent with GtkLabel, GtkMisc
8199
8200         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
8201         arrow.
8202
8203         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
8204
8205         * gtk/gtktreesortable.h: updates in here
8206
8207 2001-02-07  Sven Neumann  <sven@convergence.de>
8208
8209         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
8210         pango dimensions after painting the background. We used to draw
8211         gigantic flat boxes here.
8212
8213 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
8214
8215         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
8216         error introduced with earlier commit) (pointed out by
8217         Ollie Lho)
8218
8219 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
8220
8221         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
8222         which are no longer necessary.
8223
8224 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
8225
8226         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
8227
8228 2001-02-04  Tor Lillqvist  <tml@iki.fi>
8229
8230         * gdk/gdk.def
8231         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
8232         Provide dummy implementations.
8233
8234 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
8235
8236         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
8237
8238         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
8239         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
8240         deprecated this function.
8241
8242         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
8243         argument.
8244
8245 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
8246
8247         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
8248
8249 2001-02-03  Havoc Pennington  <hp@pobox.com>
8250
8251         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
8252         Mikael Hermansson with patch from Mikael (if there was a toggle
8253         start one after the first character in the range, this function
8254         was broken). Bug #50380
8255
8256 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
8257
8258         * configure.in: Remove confusing comment about X11.
8259
8260 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
8261
8262         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
8263         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
8264         
8265 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
8266
8267         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
8268         it breaks things on BSD. If you want to compile GTK+ with
8269         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
8270         when configuring, since GTK+ simply can't be "pure ANSI" 
8271         in the header files it uses. (#8170, Greg Hudson)
8272
8273 2001-02-02  Havoc Pennington  <hp@redhat.com>
8274
8275         * gtk/gtkwindow.c: docs
8276
8277         * gtk/gtkwidget.c: docs
8278         (gtk_widget_set_colormap): add a reference to the colormap
8279         (gtk_widget_get_default_colormap): add a reference to the colormap
8280
8281         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
8282
8283         * gtk/gtktextiter.c: docs
8284
8285         * gtk/gtkmain.c (gtk_propagate_event): docs
8286
8287         * gtk/gtkpaned.c (gtk_paned_get_position): docs
8288         (gtk_paned_set_position): docs
8289
8290         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
8291         sort interface, no implementation yet.
8292
8293         * demos/testpixbuf.c (new_testrgb_window): replace
8294         gtk_drawing_area_size() with gtk_widget_set_usize()
8295
8296         * demos/testpixbuf-drawable.c (main): ditto
8297         
8298         * gtk/testgtk.c: remove use of GtkStatusbarMsg
8299
8300         * gtk/gtktextbuffer.c: docs
8301
8302         * gtk/gtkstock.c: docs
8303
8304         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
8305
8306         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
8307
8308         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
8309         
8310         * gtk/gtkimage.c: add some docs in here
8311         (gtk_image_size_request): change name of
8312         gtk_widget_render_stock_icon
8313         (gtk_image_get_icon_set): don't dup returned string
8314         (gtk_image_get_icon_set): don't dup returned string
8315
8316         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
8317         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
8318         and gtkiconfactory.h functions
8319
8320         * gtk/gtkiconfactory.c: add some docs in here
8321
8322         * gtk/gtkmain.c (gtk_get_default_language): document
8323         (gtk_get_current_event): document
8324         (gtk_get_current_event_state): document
8325         (gtk_get_event_widget): document
8326
8327         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
8328
8329         * gtk/gtkcontainer.c: Add some documentation
8330         (gtk_container_add): give a more explanatory warning on adding an
8331         already-parented widget, this is kind of a FAQ and also a common
8332         typo that's easier to debug with a nice warning 
8333
8334         * gtk/gtkcellrenderertoggle.c
8335         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
8336         adding this, it's useless
8337         (gtk_cell_renderer_toggle_set_active): remove
8338         (gtk_cell_renderer_toggle_get_radio): add
8339
8340         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
8341         the NULL cell renderer, that doesn't make any sense to me. 
8342
8343         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
8344         demo code should never use deprecated features.
8345
8346         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
8347         code should never use deprecated features.
8348
8349         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
8350         gtk_widget_queue_clear_area deprecated
8351
8352         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
8353         deprecated
8354
8355         * gtk/gtklabel.h: mark gtk_label_get() deprecated
8356
8357         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
8358         a GdkImage deprecated, replaced by new consistently-named
8359         functions       
8360
8361         * gtk/gtkmain.h: Mark gtk_exit() deprecated
8362
8363         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
8364
8365         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
8366         deprecated
8367
8368         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
8369         so it won't appear in docs and confuse people.
8370
8371         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
8372
8373         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
8374         macros deprecated. (can't mark the type itself deprecated, since
8375         GtkProgressBar is not deprecated and we need the type decl to use
8376         GtkProgressBar)
8377
8378         * gtk/gtkpixmap.h: Mark deprecated
8379
8380         * gtk/gtkoldeditable.h: Mark deprecated
8381
8382         * gtk/gtklist.h: Mark deprecated
8383
8384         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
8385         for anything anymore.
8386
8387         * gtk/gtkctree.h: Mark deprecated
8388
8389         * gtk/gtkclist.h: Mark deprecated
8390
8391         * gtk/gtkpreview.h: Mark deprecated
8392
8393         * gtk/gtkpacker.h: Mark deprecated
8394
8395         * gtk/gtktipsquery.h: Mark deprecated
8396
8397         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
8398
8399         * gtk/gtkvruler.h: Add comment that it will move out of GTK
8400
8401         * gtk/gtkhruler.h: Add comment that it will move out of GTK
8402
8403         * gtk/gtkruler.h: Add comment that it will move out of GTK
8404
8405         * gtk/gtkgamma.h: Add comment that it will move out of GTK
8406
8407         * gtk/gtkcurve.h: Add comment that it will move out of GTK
8408
8409 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
8410
8411         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
8412         gdk_colormap_sync private since it was never exported
8413         in a header file.
8414
8415         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
8416         colormap->colors[] for StaticGray, StaticColor colormaps.
8417
8418         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
8419         was being used as if it was image->bits_per_pixel.
8420
8421         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
8422         for the image in the GdkImage structure since it isn't
8423         reconstructable, and we need it to handle packed types
8424
8425         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
8426         the assumption that on Win32 image->bits_per_pixel == image->depth,
8427         always.
8428
8429         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
8430
8431         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
8432         warning message if no converter can be found. 
8433
8434 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
8435
8436         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
8437         chars to isupper() / tolower(). (#567)
8438
8439         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
8440         to clear up 64-bit warnings. (#567)
8441
8442 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
8443
8444         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
8445         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
8446
8447         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
8448         since some people set $(libdir) separately. (#1290, David Kaelbling)
8449
8450 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
8451
8452         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
8453         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
8454         MAXPATHLEN, but the code here depends on a fixed value.)
8455         (#4524)
8456
8457 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
8458
8459         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
8460         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
8461
8462 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
8463
8464         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
8465         viewable there is no way that moving the node will cause the 
8466         focus row to become not viewable, so omit check on the visibility
8467         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
8468
8469 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
8470
8471         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
8472         selection before inserting new text.
8473
8474 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
8475
8476         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
8477         Make the sensitivity of the reparented child track that of
8478         the original parent menu item. (#34218, David Hodson)
8479
8480         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
8481         the case where the current item is destroyed properly.
8482
8483         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
8484         some edge cases with child-less menuitems.
8485         
8486 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
8487
8488         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
8489         key pop down window. (#12074, Jon K Hellan)
8490
8491 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
8492
8493         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
8494         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
8495         The solution here isn't perfect - you get an extraneous
8496         emission of "toggle", which could conceivably confuse an app,
8497         but better than the current situation. LXR search seems to
8498         indicate that no apps in GNOME CVS connect to "toggle".
8499
8500 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
8501
8502         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
8503         gtk_public_h_sources to directly here to avoid warning when
8504         building srcdir != builddir. (#9656)
8505
8506 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
8507
8508         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
8509         handlers in gtkrange.c return the proper values (TRUE == handled)
8510         (#10316).
8511
8512         This is just the tip of the iceberg, but gtkrange.c is the
8513         most common place where the propagation is problematical,
8514         and also a place where it is almost certainly safe to change
8515         this in the stable branch.
8516
8517         (You don't want right click popups on a range control or anything...)
8518
8519 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
8520
8521         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
8522         area on focus out, even if a background pixmap isn't set.
8523         (#13941)
8524         
8525 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
8526
8527         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
8528         to deal with setting the shape properly when scrolling arrows are
8529         turned on, but not visible because there is sufficient space.
8530         (#13432)
8531
8532 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
8533
8534         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
8535         items with submenus, destroy the item along with the submenu.
8536         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
8537         properly.
8538
8539         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
8540         later.
8541
8542 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
8543
8544         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
8545         the focus widget sometimes wasn't drawn with the default if there
8546         was no default widget.
8547
8548         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
8549         unreference pixmaps. 
8550
8551         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
8552         for some extra safety.
8553
8554 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
8555
8556         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
8557         the text of a cell to the old pointer value better, by
8558         copying the new text before freeing the old text. Some code
8559         cleanup. (#8079, Karl Nelson)
8560
8561 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
8562
8563         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
8564         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
8565
8566 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
8567
8568         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
8569         item from a menu, check to see if it matches 
8570         menu->old_active_menu_item, and if so, unref and clear
8571         old_active_menu_item (Patch from Pavel Cisler)
8572
8573         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
8574         menu_shell->active_menu_item, if it is the child being
8575         removed. (Patch based on that of Gene Ragan, #50337)
8576
8577 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
8578
8579         * gdk/linux-fb/gdkselection-fb.c: 
8580         * gdk/linux-fb/gdkcolor-fb.c: 
8581         * gdk/linux-fb/gdkdrawable-fb2.c: 
8582         * gdk/linux-fb/gdkfont-fb.c: 
8583         * gdk/linux-fb/gdkim-fb.c: 
8584         * gdk/linux-fb/gdkinput.c: 
8585         * gdk/linux-fb/gdkkeyboard-fb.c: 
8586         * gdk/linux-fb/gdkmain-fb.c: 
8587         * gdk/linux-fb/gdkrender-fb.c: 
8588         A bunch of whitespace cleanup.
8589         
8590 2001-01-30  Havoc Pennington  <hp@pobox.com>
8591
8592         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
8593         #ifdef GTK_ENABLE_BROKEN.
8594
8595         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
8596         GTK_ENABLE_BROKEN just before including the broken headers.
8597         
8598         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
8599         deprecated types registered.
8600
8601         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
8602         we have to test the broken stuff.
8603
8604         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
8605         
8606 2001-01-30  Havoc Pennington  <hp@redhat.com>
8607
8608         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
8609         here where prev pointer was set to the wrong thing
8610
8611         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
8612         (gtk_tree_path_is_descendant): new function
8613
8614         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
8615         cached length
8616         (gtk_list_store_get_iter): don't modify iter if we can't get the
8617         path.
8618
8619         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
8620         
8621         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
8622         GtkTreeDragDest
8623
8624         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
8625         was causing segfault
8626
8627         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
8628         pointer to NULL
8629
8630         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
8631
8632         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
8633         on returning FALSE
8634         (gtk_list_store_iter_children): ditto
8635         (gtk_list_store_iter_nth_child): ditto
8636         (gtk_list_store_iter_nth_child): ditto
8637         (gtk_list_store_iter_parent): ditto
8638
8639         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
8640         on iter->user_data != NULL instead of silently accepting it.
8641         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
8642         we are returning TRUE.
8643         (gtk_tree_store_iter_children): ditto
8644         (gtk_tree_store_iter_nth_child): ditto
8645         (gtk_tree_store_iter_parent): ditto
8646         (gtk_tree_store_insert): remove handling of parent->user_data ==
8647         NULL, replace with parent == NULL       
8648
8649         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
8650         and a comment explaining things
8651
8652         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
8653         interface support to GtkTreeStore.
8654
8655         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
8656         FALSE if no prev, fix
8657
8658         * gtk/gtktreeview.c (set_source_row): use a row reference
8659         (set_dest_row): use a row reference
8660
8661 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
8662
8663         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
8664         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
8665         (gtk_tree_selection_select_iter): The same as above.
8666
8667 2001-01-26  Havoc Pennington  <hp@redhat.com>
8668
8669         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
8670         which holds a handle to a specific row (particular set of values
8671         in the model, i.e. pointer-identity row).
8672
8673         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
8674         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
8675         Still need to use it for the src/dest row saved on the drag context.
8676
8677 2001-01-26  Havoc Pennington  <hp@redhat.com>
8678
8679         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
8680
8681         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
8682         not offset by TREE_VIEW_HEADER_HEIGHT
8683         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
8684         TREE_VIEW_HEADER_HEIGHT
8685
8686         * configure.in (included_loaders): for me, --with-included-loaders
8687         generates the error "the specified loader yes does not exist",
8688         i.e. the arg defaults to "yes", so change test for value ""
8689         to test for value "yes", and include all loaders in that case.
8690
8691         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
8692
8693         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
8694         handle TREE_VIEW_VERTICAL_SEPARATOR
8695         (gtk_tree_view_bin_expose): fix to consider the row offset as
8696         pointing halfway into vertical separator.       
8697         (gtk_tree_view_draw_node_focus_rect): ditto
8698
8699         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
8700         --gtk-debug=updates, which causes gdk_window_set_debug_updates
8701         (TRUE) to be called.
8702
8703         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
8704         debug mode where the invalid region is colored in on invalidate,
8705         so you can see the flicker and know whether your redraw code is 
8706         doing a good job.
8707
8708         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
8709         tree window coordinates (clip rect is in tree window coords)
8710
8711         * gtk/Makefile.am: add gtktreednd.[hc]
8712
8713         * gtk/gtkliststore.c: implement gtktreednd interfaces.
8714
8715         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
8716         drag-and-drop data operations on a model (so we can set up tree
8717         drag-and-drop automatically)
8718
8719         * gtk/testgtk.c: Add a window to change sensitivity in the
8720         GtkLabel test; add a way to change the entry frame in GtkEntry
8721         test
8722
8723         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
8724         (gtk_entry_get_has_frame): new functions to remove the frame
8725         around an entry
8726         (gtk_entry_size_request): shrink requisition if no frame
8727         (gtk_entry_draw_focus): don't draw frame if no frame
8728
8729         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
8730         checks inside a cell renderer
8731         (gtk_default_draw_option): ditto for options
8732
8733         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
8734         children from the alignment, not the button
8735         (gtk_tree_view_column_init): ref/sink the column, to emulate
8736         GObject refcounting.
8737
8738         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
8739         
8740         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
8741         Use theme functions to draw the toggles 
8742
8743         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
8744
8745         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
8746         GdkPangoAttrEmbossed to use in rendering insensitive text
8747
8748         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
8749
8750         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
8751         using new GDK features
8752         
8753 2001-01-24  Alexander Larsson  <alexl@redhat.com>
8754
8755         * gtk/gtkimage.c:
8756         Splitted gtk_image_clear into gtk_image_clear() and
8757         gtk_image_reset(). Call gtk_image_clear() in ::destroy
8758         to avoid leaks.
8759
8760         * gtk/gtklabel.c (set_markup):
8761         Don't leak text.
8762
8763         * gtk/gtktextlayout.c:
8764         Always free display->shaped_objects.
8765
8766         * gtk/testgtk.c (create_clist):
8767         Don't leak custom style.
8768
8769 2001-01-23  Alexander Larsson  <alexl@redhat.com>
8770
8771         * gtk/gtkcolorsel.c (grab_color_at_mouse):
8772         Don't leak image. Simplify using gdk_colormap_query_color().
8773         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
8774
8775         * linux-fb/gdkcolor-fb.c:
8776         Implemented gdk_colormap_query_color.
8777
8778 2001-01-23  Alexander Larsson  <alexl@redhat.com>
8779
8780         * linux-fb/gdkcursor-fb.c:
8781         Don't leak built-in cursors.
8782
8783         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
8784         Don't leak tmp_points.
8785
8786         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
8787         Don't modify desc. Don't leak font if the PangoFont
8788         isn't found.
8789         
8790         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
8791         Free dash_list.
8792
8793         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
8794         Don't leak string.
8795         
8796 2001-01-20  Havoc Pennington  <hp@pobox.com>
8797
8798         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
8799         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
8800         me, matches Pango
8801
8802 2001-01-22  Havoc Pennington  <hp@redhat.com>
8803
8804         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
8805
8806         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
8807
8808         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
8809         Remove, move back to gdk-pixbuf
8810
8811         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
8812         to all the word functions
8813
8814         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
8815         before doing anything on NULL layout or if we don't have the focus
8816
8817         * gtk/testtext.c (fill_example_buffer): "justification"
8818
8819         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
8820         to be called "justification" not "justify"
8821
8822         * demos/gtk-demo/textview.c (create_tags): "justification"
8823         
8824         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
8825
8826 2001-01-22  Alexander Larsson  <alexl@redhat.com>
8827
8828         * gdk/gdkwindow.c (gdk_window_invalidate_region):
8829         Don't leak visible_region. Use visible_region instead of region.
8830         
8831         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
8832         Don't do extra gdk_drawable_ref(). This is not X.
8833         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
8834         gdk_fb_focused_window is ref:ed.
8835         (gdk_fb_window_send_crossing_events): Watch out for destroyed
8836         windows.
8837
8838 2001-01-22  Alexander Larsson  <alexl@redhat.com>
8839
8840         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
8841         Don't leak the PangoFontDescriptor.
8842
8843 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
8844
8845         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
8846         when not realized.
8847         (gtk_tree_view_scroll_to_cell): Make work when not realized.
8848         (gtk_tree_view_realize): add scroll_to support
8849         (gtk_tree_view_finalize): add a finalize method.  Populate.
8850         (gtk_tree_view_insert_column): ref and sink the column.
8851         (gtk_tree_view_append_column): ref and sink the column.
8852         (gtk_tree_view_queue_draw_node): New function to handle redrawing
8853         individual nodes.  Should make the code much more efficient, if
8854         actually used.
8855
8856 2001-01-19  Havoc Pennington  <hp@redhat.com>
8857
8858         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8859         byte_offset variable was being used to mean both "offset into
8860         layout" and "offset into buffer line" which was no longer true
8861         with addition of preedit string; fix
8862
8863 2001-01-19  Havoc Pennington  <hp@redhat.com>
8864
8865         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
8866
8867         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
8868         function
8869
8870         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
8871         implement
8872
8873         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
8874         scroll_to_cell, matches TextView scroll functions better
8875         (gtk_tree_view_tree_to_widget_coords): new function
8876         (gtk_tree_view_widget_to_tree_coords): new function
8877         (gtk_tree_view_get_visible_rect): new function
8878         (gtk_tree_view_get_path_at_pos): accept negative coordinates
8879         (gtk_tree_view_draw_node_focus_rect): new function moved from
8880         draw_focus, also, use width of bin_window as width of the focus
8881         rect
8882         (gtk_tree_view_expand_row): fix bug where it didn't recognize
8883         already-expanded rows
8884         (gtk_tree_view_get_cell_rect): new function
8885         (gtk_tree_view_get_path_at_pos): return the click position
8886         relative to the passed-in cell
8887         (gtk_tree_view_set_expander_column): new function
8888
8889         * configure.in: remove gtk-config-2.0 chmod
8890
8891         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
8892         and properly handle drags with targets we don't understand
8893         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
8894         scrolling anyway
8895         (gtk_text_view_drag_drop): stop scrolling here though, and set the
8896         mark invisible
8897
8898         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
8899         function
8900         (gtk_drag_dest_get_target_list): new function
8901         (gtk_drag_dest_set_target_list): new function
8902         
8903         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
8904
8905         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
8906         related to drag-and-drop
8907
8908 2001-01-19  Alexander Larsson  <alexl@redhat.com>
8909
8910         * gdk/linux-fb/gdkprivate-fb.h:
8911         Define EMULATE_GDKFONT.
8912         Add extra pango_font stuff to GfkFontPrivate.
8913         
8914         * gdk/linux-fb/gdkdrawable-fb2.c:
8915         * gdk/linux-fb/gdkfont-fb.c:
8916         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
8917         emulation using PangoFont.
8918
8919 2001-01-17  Havoc Pennington  <hp@pobox.com>
8920
8921         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
8922         all the non-deprecated set_foo functions. Added missing object
8923         properties, and added g_object_notify() to setters. 
8924         Wrote docs.
8925         
8926 2001-01-18  Tor Lillqvist  <tml@iki.fi>
8927
8928         * gtk/gtkmain.c
8929         * gtk/gtkrc.c: (Win32) Use the new
8930         g_win32_get_package_installation_(sub)directory() functions.
8931
8932         * config.h.win32.in: New file.
8933         
8934         * config.h.win32: Removed.
8935
8936         * configure.in: Output config.h.win32.
8937
8938         * Makefile.am: Add it to EXTRA_DIST.
8939
8940         * gtk/gtk.def: Update.
8941
8942 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
8943
8944         * gtk/gtklabel.c (gtk_label_size_request): Set the
8945         attributes onto the PangoLayout even if they are newly
8946         created from label->pattern.
8947
8948 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
8949
8950         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
8951
8952         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
8953         structures in functions. Fixes bug where gtk_dataset_*
8954         was accidentally still being used in one place, causing
8955         every dest side event to be treated independently.
8956
8957         * gtk/gtkdnd.c: Remove last vestages of handling
8958         ::draw (fixes warning)
8959         
8960         * gtk/gtkentry.[ch]: Add drag and drop support.
8961
8962         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
8963         new function gtk_check_drag_threshhold() for checking
8964         to check if (dx,dy) has exceeded the threshhold for starting
8965         a drag and use it everywhere.
8966
8967 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
8968
8969         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
8970         add -I{includedir}/gtk-2.0.
8971
8972         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
8973         gdk/gdk-pixbuf.h: Doc fixups.
8974         
8975         * gtk/gtkobject.h: Remove trailing , from enum
8976
8977 2001-01-17 Alexander Larsson <alexl@redhat.com> 
8978
8979         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
8980         Doh! Mixed up x and y.
8981
8982         * gdk/linux-fb/gdkglobals-fb.c:
8983         Removed gdk_fb_pointer_grab_window_events,
8984         added _gdk_fb_pointer_grab_owner_events and
8985         _gdk_fb_keyboard_grab_owner_events.
8986
8987         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
8988         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
8989         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
8990         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
8991         Send crossing events after ungrab finished.
8992         (gdk_keyboard_grab): Set ..._owner_events
8993         (type_masks): Move out of function.
8994         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
8995         gdk_fb_keyboard_event_window): New functions, return the
8996         window an event should be targeted at. Handles grabs and
8997         event propagation. Can return NULL.
8998         (gdk_event_make): Remove event_mask checking. Now always
8999         returns an event.
9000                 
9001         * gdk/linux-fb/gdkkeyboard-fb.c:
9002         * gdk/linux-fb/gdkproperty-fb.c:
9003         * gdk/linux-fb/gdkselection-fb.c:
9004         Use new event_window/gdk_event_make() behaviour.
9005         
9006         * gdk/linux-fb/gdkmouse-fb.c:
9007         Use new event_window/gdk_event_make() behaviour.
9008         Only send motion events if in the same window.
9009         If grabbed, use cursor from window if sibling of grabbed
9010         window, and cursor from grabbed window otherwise.
9011
9012         * gdk/linux-fb/gdkprivate-fb.h:
9013         Update gdk_fb_window_send_crossing_events, gdk_event_make
9014         and grab varaible declarations. Add gdk_fb_*_event_window().
9015
9016         * gdk/linux-fb/gdkwindow-fb.c:
9017         Use new event_window/gdk_event_make() behaviour.
9018         Keep correct track of focus window.
9019         (gdk_window_set_events): Set all specific button motion masks
9020         if GDK_BUTTON_MOTION_MASK set.
9021
9022         * gtk/gtkdnd.c (gtk_drag_update):
9023         Free info->last_event if gdk_drag_motion returned FALSE.
9024
9025 2001-01-16  Tor Lillqvist  <tml@iki.fi>
9026
9027         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
9028         Eliminate redraws when input-only windows are shown or
9029         hidden. Thanks to jpe@archaeopteryx.com.
9030
9031 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
9032
9033         * docs/faq/gtk-faq.sgml: FAQ update:
9034           - Update to bugzilla
9035           - Add GTK+ and security/SUID/SGID
9036           - Add DnD question
9037
9038 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
9039
9040         * gdk/linux-fb/gdkdnd-fb.c:
9041         Some cleanups.
9042         
9043 2001-01-15  Havoc Pennington  <hp@pobox.com>
9044
9045         * tests/testtreeview.c: add test stuff for CellRendererToggle
9046
9047         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
9048         accessor
9049
9050         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
9051         only toggle on button press (would do release like GtkButton, but
9052         we'd need implicit grab code for treeview cells)
9053
9054 2001-01-16  Tor Lillqvist  <tml@iki.fi>
9055
9056         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
9057
9058         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
9059         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
9060
9061         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
9062         to g_{locale,filename}_{to,from}_utf8 to match current API.
9063
9064         * gtk/makefile.msc.in (gtk_OBJECTS)
9065         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
9066
9067         * gtk/gtk.def: Update.
9068
9069 2001-01-15  Tor Lillqvist  <tml@iki.fi>
9070
9071         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
9072         implementaion that more closely mimics the events that an X server
9073         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
9074         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
9075         with nested preview widgets, for instance, more responsive when
9076         you move the mouse quickly into them.
9077         (find_window_for_pointer_event): Make it actually compile.
9078         (gdk_event_translate): Set send_event to the value of
9079         InSendMessage (). This doesn't really mean the same as X11's
9080         send_event flag, but is close enough, says jpe@archaeopteryx.com
9081
9082 2001-01-15  Alexander Larsson  <alexl@redhat.com>
9083
9084         * gdk/linux-fb/gdkdnd-fb.c:
9085         Implemented drag and drop.
9086         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
9087         when it tries to free and then copy the same event (info->last_event).
9088         I am not sure about why this happens, but will continue looking.
9089
9090 2001-01-15  Alexander Larsson  <alexl@redhat.com>
9091
9092         * gdk/linux-fb/gdkwindow-fb.c:
9093         Use gdk_window_invalidate_rect instead of
9094         gdk_window_invalidate_rect_clear to minimise flashing.
9095         When hiding windows you need to clear the root window though.
9096
9097 2001-01-15  Alexander Larsson  <alexl@redhat.com>
9098
9099         * gdk/linux-fb/gdkdrawable-fb2.c:
9100         For optization, add an full_shapes argument to gdk_fb_clip_region.
9101         If this is false, only the cliprects of the shapes are used.
9102
9103         * gdk/linux-fb/gdkprivate-fb.h:
9104         Export gdk_fb_window_peek_shape.
9105         Add full_shapes to gdk_fb_clip_region.
9106
9107         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9108         When moving a window, don't clear everything under the it, just the
9109         root window. Makes stuff faster and flash less.
9110         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
9111         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
9112         offset of the shape.
9113         
9114
9115 2001-01-12  Havoc Pennington  <hp@redhat.com>
9116
9117         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
9118         current invalid region, fixes redraw bug while scrolling the 
9119         text widget
9120
9121         * gtk/gtktextview.c, gtk/gtktextview.h:
9122         Rearrange the scrolling/validation/etc. code in a major way, 
9123         so it seems to make sense to me. Probably isn't genuinely that
9124         much better, but...
9125
9126         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
9127         notifies
9128
9129         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
9130
9131 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
9132
9133         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
9134         Hide mouse pointer while rotation. Show it afterwards.
9135
9136 2001-01-12  Alexander Larsson  <alexl@redhat.com>
9137
9138         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
9139         windows in consideration when generating clip region.
9140
9141         * gdk/linux-fb/gdkfb.h:
9142         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
9143
9144         * gdk/linux-fb/gdkprivate-fb.h:
9145         Add shape to GdkWindowFBDatat.
9146         exported gdk_fb_window_get_abs_shape().
9147         removed gdk_fb_draw_lines declaration.
9148
9149         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
9150         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
9151         send focus changes when there is a grabbed window.
9152         (gdk_window_get_pointer): Handle shaped windows.
9153         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
9154         (gdk_fb_window_peek_shape): Returns the shape for a window,
9155         handles GDK_FB_USE_CHILD_SHAPE.
9156         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
9157         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
9158         (gdk_window_shape_combine_mask): Implement.
9159
9160         * gtk/gtkwindow-decorate.c:
9161         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
9162         setting the shape of a window makes the window transparent.
9163
9164 2001-01-11  Havoc Pennington  <hp@redhat.com>
9165
9166         * gtk/gtktreemodelsimple.h: Oops, broke some macros
9167
9168 2001-01-10  Havoc Pennington  <hp@redhat.com>
9169
9170         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
9171         add this function, bug 40251
9172
9173         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
9174         of type macro   
9175
9176 2001-01-11  Alexander Larsson  <alexl@redhat.com>
9177
9178         * acconfig.h:
9179         Added ENABLE_SHADOW_FB
9180
9181         * configure.in:
9182         Added --disable-shadowfb
9183
9184         * gdk/linux-fb/gdkcursor-fb.c:
9185         Update shadowfb when updating cursor
9186
9187         * gdk/linux-fb/gdkdrawable-fb2.c:
9188         Added wrappers for shadowfb that calls  the normal drawable
9189         methods, but calls gdk_shadow_fb_update(bounding box) when
9190         GdkWindows are drawed to.
9191         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
9192         which also returns the bounding box.
9193
9194         * gdk/linux-fb/gdkfb.h:
9195         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
9196
9197         * gdk/linux-fb/gdkgeometry-fb.c:
9198         Update shadowfb when scrolling window.
9199
9200         * gdk/linux-fb/gdkglobals-fb.c:
9201         Add _gdk_fb_screen_angle.
9202         
9203         * gdk/linux-fb/gdkkeyboard-fb.c:
9204         Test code for screen rotation. Shift-F2 in the xlate driver
9205         rotates the screen.
9206
9207         * gdk/linux-fb/gdkmain-fb.c:
9208         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
9209
9210         * gdk/linux-fb/gdkmouse-fb.c:
9211         Use fb_width/height instead of modeinfo.xres/yres.
9212
9213         * gdk/linux-fb/gdkprivate-fb.h:
9214         Added fb_men, fb_width, fb_height & fb_stride. When using
9215         shadow fb these can differ from the framebuffer stuff.
9216         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
9217         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
9218         _gdk_fb_screen_angle. Removed CM, RP.
9219
9220         * gdk/linux-fb/gdkrender-fb.c:
9221         Added code for shadowfb handling and screen rotation using
9222         shadowfb.
9223
9224         * gdk/linux-fb/gdkwindow-fb.c:
9225         Use fb_mem, fb_stride, fb_width, fb_height.
9226         Added recompute_rowstride to reset the rowstride of all windows.
9227         Added gdk_fb_recompute_all() which recomputes rootwindow size,
9228         window abs positions and window rowstrides. Usefull when the
9229         rotation has changed.
9230
9231 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
9232
9233         * docs/faq/gtk-faq.sgml: update to make web site updating easier
9234
9235 2001-01-10  Havoc Pennington  <hp@redhat.com>
9236
9237         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
9238         where sibling == iter
9239         (gtk_tree_store_insert_after): handle sibling == iter
9240         (gtk_tree_store_prepend): remove stamp checks
9241         (gtk_tree_store_insert_before): ditto
9242         (gtk_tree_store_append): ditto
9243         (gtk_tree_store_get_path): ditto
9244         (gtk_tree_store_get_value): ditto
9245         (gtk_tree_store_iter_has_child): ditto
9246         (gtk_tree_store_iter_n_children): ditto
9247         (gtk_tree_store_iter_nth_child): ditto
9248         (gtk_tree_store_insert_after): ditto
9249         (gtk_tree_store_is_ancestor): ditto
9250         (gtk_tree_store_iter_depth): ditto
9251         (gtk_tree_store_insert_before): assert that sibling's parent is
9252         the same as the passed-in parent
9253         (gtk_tree_store_insert_after): assert that sibling's parent is
9254         the same as the passed-in parent
9255
9256         
9257         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
9258         function to get the first iterator in a model
9259         
9260         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
9261         conventionally the "root" in this sense is just NULL afaict.
9262
9263         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
9264         where sibling == iter
9265         (gtk_list_store_insert_after): handle case where sibling == iter
9266
9267         * tests/testtreeview.c (run_automated_tests): fairly lame basic
9268         automated tests for ListStore, TreeStore
9269
9270         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
9271         (gtk_list_store_insert): update tail pointer, and fix it to work
9272         (gtk_list_store_insert_before): update tail pointer, and fix it to work
9273         (gtk_list_store_append): use tail to be faster
9274         (gtk_list_store_prepend): fix it, update tail pointer
9275         (gtk_list_store_insert_after): fix it, update tail pointer
9276
9277         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
9278         the list
9279
9280 2001-01-09  Havoc Pennington  <hp@redhat.com>
9281
9282         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
9283         is NULL due to a pending resize
9284
9285         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
9286         column width to values less than 1
9287
9288         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
9289         width to be between min/max width, and still set the width 
9290         even if autosize is turned on, so the tree view can use this 
9291         function in order to autosize.
9292         (gtk_tree_view_column_init): set initial width to 1 not 0
9293
9294         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
9295         setter function to modify column width, so we get notification
9296         (gtk_tree_view_insert_iter_height): ditto
9297         (gtk_tree_view_calc_size): ditto
9298         (gtk_tree_view_check_dirty): ditto
9299
9300         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
9301         properties to change all the interesting attributes of the tree
9302         view column.
9303         (gtk_tree_view_column_set_header_clickable): rename set_clickable
9304         (gtk_tree_view_column_get_clickable): add
9305         (gtk_tree_view_column_set_cell_renderer): don't unset the current
9306         attributes; assume a cell renderer with equivalent object
9307         properties has been swapped in. Do g_object_notify().
9308         (gtk_tree_view_column_set_visible): g_object_notify
9309         (gtk_tree_view_column_get_sizing): rename from get_col_type
9310         (gtk_tree_view_column_set_sizing): g_object_notify
9311         (gtk_tree_view_column_set_width): add g_object_notify
9312         (gtk_tree_view_column_set_min_width): ditto
9313         (gtk_tree_view_column_set_max_width): ditto
9314         (gtk_tree_view_column_set_title): ditto
9315         (gtk_tree_view_column_set_clickable): ditto
9316         (gtk_tree_view_column_set_widget): ditto
9317         (gtk_tree_view_column_set_justification): ditto
9318
9319 2001-01-09  Havoc Pennington  <hp@redhat.com>
9320
9321         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
9322         there are no rows in the model
9323
9324         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
9325         NULL, then return the start of the list
9326
9327         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
9328         if we can't get any rows from an empty model 
9329
9330         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
9331         extraneous * after function pointer typedef usage
9332
9333         * Makefile.am: don't specify full path to cp and rm
9334
9335         * gtk/gtkcellrenderertextpixbuf.c
9336         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
9337         NULL before dereferencing, fixes a segfault that happened from
9338         time to time
9339
9340         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
9341         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
9342         and reindent the function
9343         (gtk_cell_renderer_pixbuf_get_size): indentation
9344
9345         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
9346         we quit it
9347         (gtk_dialog_add_buttons_valist): add g_return_if_fail
9348         (gtk_dialog_set_default_response): New function, to set default
9349         button
9350         (gtk_dialog_set_response_sensitive): New function, to set 
9351         sensitivity of buttons
9352
9353         * gtk/gtkcellrendererpixbuf.c
9354         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
9355         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
9356
9357         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
9358         handle any G_TYPE_OBJECT subclass, not just the base class, and 
9359         also boxed types.
9360         (_gtk_tree_data_list_value_to_node): ditto
9361
9362         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
9363         --gtk-debug=tree
9364
9365         * gtk/gtkmain.c: add GTK_DEBUG_TREE
9366
9367         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
9368
9369 2001-01-09  Tor Lillqvist  <tml@iki.fi>
9370
9371         * gdk/win32/gdkevents-win32.c: Implement better mouse
9372         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
9373         (find_window_for_pointer_event): New function.
9374         (gdk_event_translate): Use it when handling mouse events.
9375
9376 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
9377
9378         * configure.in:
9379         Added --with-included-loaders option
9380
9381         * gdk-pixbuf/Makefile.am:
9382         * gdk-pixbuf/gdk-pixbuf-io.c:
9383         Add support for including selected gdk-pixbuf loaders only.
9384
9385         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
9386         gtk_window_set_has_frame):
9387         Added inline documentation.
9388
9389         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
9390         * docs/reference/gdk/tmpl/windows.sgml:
9391         Added inline documentation.
9392
9393 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
9394
9395         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
9396         realizing buttons that have already been realized.
9397
9398 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
9399
9400         * tests/testtreeview.c (main): Show menu items before adding to
9401         option menu.
9402
9403         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
9404         around if we kill them.
9405
9406         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
9407         Return if we pass in a NULL model.
9408
9409 2001-01-08  Havoc Pennington  <hp@redhat.com>
9410
9411         * tests/testtreeview.c: hack on this some
9412
9413         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
9414         gtk_tree_store_set_valist, v is for arrays, valist for varargs
9415         list
9416         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
9417
9418         * gtk/gtkliststore.h: Add varargs set() and get() convenience
9419         functions
9420
9421 2001-01-08  Alexander Larsson  <alexl@redhat.com>
9422
9423         * gtk/gtkwindow-decorate.[hc]:
9424         * gtk/Makefile.am:
9425         New files. Contains an implementation of a minimal WM for
9426         linux-fb.
9427
9428         * gtk/gtkwindow.h:
9429         Add the possibility for GtkWindows to specify a frame. This
9430         is used for the window decoration code, but could concievably
9431         be used for X programs too (xmms style windows).
9432         GtkWindow->frame is the toplevel window if the window is framed.
9433         The signal frame_event gets all events that are targeted to
9434         GtkWindow->frame.
9435         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
9436         
9437         * gtk/gtkwindow.c:
9438         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
9439         Call out to gtkwindow-decorate.c for WM support in linx-fb.
9440
9441 2001-01-08  Alexander Larsson  <alexl@redhat.com>
9442
9443         * docs/README.linux-fb:
9444         Correct filename ~/.pangoft2_aliases
9445
9446         * gdk/gdkwindow.h:
9447         Added new function gdk_window_get_decorations.
9448
9449         * gdk/linux-fb/gdkfb.h:
9450         Removed _gdk_window_get_decorations declaration.
9451         Renamed _gdk_window_set_child_handler to
9452         gdk_fb_window_set_child_handler.
9453
9454         * gdk/linux-fb/gdkwindow-fb.c:
9455         Renamed _gdk_window_set_child_handler to
9456         gdk_fb_window_set_child_handler.
9457
9458         * gdk/x11/gdkwindow-x11.c:
9459         New function gdk_window_get_mwm_hints().
9460         Implemented gdk_window_get_decorations.
9461
9462         * docs/reference/gdk/tmpl/windows.sgml:
9463         * docs/reference/gdk/gdk-sections.txt:
9464         Added gdk_window_get_decorations docs.
9465         
9466 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
9467
9468         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
9469         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
9470         gdk_fb_window_send_crossing_events):
9471         Possibly send focus events when the mouse moves from one
9472         window to another.
9473
9474 2001-01-07  Tor Lillqvist  <tml@iki.fi>
9475
9476         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
9477         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
9478         to match current API.
9479
9480         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
9481         environment variable is set, don't call g_error when on a
9482         palettized (PseudoColor) display. Some people want to use GTK+ 
9483         in 256-colour mode even though works only partially.
9484
9485         * gdk/gdk.def
9486         * gtk/gtk.def
9487         * gtk/makefile.mingw.in: Update.
9488
9489 2001-01-05  Havoc Pennington  <hp@redhat.com>
9490
9491         * tests/testtreeview.c: hack on this a bit
9492
9493         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
9494         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
9495
9496         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
9497         was spelled incorrectly
9498         (GTK_IS_TREE_MODEL_SIMPLE): ditto
9499
9500         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
9501         from gtk_tree_view_set_headers_active   
9502
9503         * gtk/gtktexttag.c:
9504         (gtk_text_tag_get_property): handle PROP_DIRECTION
9505         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
9506         properties, bug 40235
9507
9508         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
9509         forward_to_line_end
9510
9511 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
9512
9513         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
9514         modules/input/gtkimcontextxim.c: Adapt to new prototypes
9515         for unicode,locale,filename conversion functions.
9516
9517 2001-01-05  Havoc Pennington  <hp@redhat.com>
9518
9519         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
9520         broken if called on the first position in the buffer.
9521
9522         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
9523         forward_to_delimiters to be called only if we aren't already at
9524         the delimiters.
9525
9526 2001-01-05  Havoc Pennington  <hp@redhat.com>
9527
9528         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
9529
9530 2001-01-05  Alexander Larsson  <alexl@redhat.com>
9531
9532         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
9533         colormap in here. Sync from X port.
9534         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
9535         Sync from X port.
9536         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
9537         This happens now and then, and i don't think it is a bug.
9538         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
9539         != endpoint.
9540         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
9541         GDK_LINE_SOLID.
9542
9543         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
9544         some of the fields filled in at least.
9545
9546         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
9547         miLineArcD is no more, remove it from the function definition.
9548
9549 2001-01-04  Havoc Pennington  <hp@redhat.com>
9550
9551         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
9552         this
9553
9554         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
9555         user_data instead of tree_node
9556
9557         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
9558         TREE_VIEW_COLUMN_SIZE
9559
9560         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
9561         "size" field to "width" finishes bug 40061
9562
9563         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
9564         for bitfields, bug 40268
9565
9566 2001-01-04  Havoc Pennington  <hp@redhat.com>
9567
9568         Rename some stuff:
9569         
9570         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
9571
9572         s/GtkModelSimple/GtkTreeModelSimple/g;
9573         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
9574         s/gtk_model_simple/gtk_tree_model_simple/g;
9575         s/gtkmodelsimple/gtktreemodelsimple/g;
9576
9577         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
9578
9579         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
9580         s/column_set_col_type/column_set_sizing/g;
9581
9582         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
9583         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
9584
9585         s/GtkCellRendererType/GtkCellRendererState/g;
9586         
9587         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
9588         (gtk_cell_renderer_toggle_class_init): change "state" property to
9589         "active", to match GtkToggleButton
9590         (gtk_cell_renderer_toggle_get_active): new function, bug
9591         40269
9592         (gtk_cell_renderer_toggle_set_active): new function
9593         (gtk_cell_renderer_toggle_set_property): route changes to toggle
9594         state through gtk_cell_renderer_set_active
9595
9596 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
9597
9598         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
9599         temporarily until they work again.  Brought up to date with
9600         changes in the model.
9601         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
9602         model.
9603
9604 2001-01-04  Havoc Pennington  <hp@redhat.com>
9605
9606         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
9607         equal to the line length, then position iterator before paragraph 
9608         separators. Fixes crash reported by Mikael Hermansson when
9609         pressing left arrow from the start of a line.   
9610
9611         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
9612         about byte indexes off the end
9613         (iter_set_from_char_offset): add g_error about char offsets
9614         off the end
9615
9616 2001-01-03  Havoc Pennington  <hp@redhat.com>
9617
9618         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
9619
9620         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
9621         of private functions; remove inclusion of private headers.
9622
9623         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
9624         function, so we don't need private functions in gtktextdisplay.c
9625
9626         * gtk/gtktextiterprivate.h: underscore-ification
9627
9628         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
9629         to instead say "only useful to implement widgets"
9630
9631         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
9632         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
9633         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
9634
9635         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
9636         This function was completely broken
9637
9638         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
9639
9640         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
9641
9642         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
9643
9644         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
9645
9646         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
9647
9648         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
9649
9650         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
9651         gtk_paint_layout
9652
9653         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
9654         gtk_paint_layout
9655
9656         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
9657         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
9658         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
9659         which were not implemented.     
9660
9661         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
9662         insert_pixbuf signal. Rename delete_text to delete_range since it
9663         also deletes pixbufs and child anchors. This almost closes bug
9664         40245 (still need to deal with child anchors)
9665
9666         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
9667         insert_pixbuf, change signal names as appropriate, change types of
9668         signals taking marks/tags to have the specific type, not just
9669         G_TYPE_OBJECT
9670         
9671         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
9672         closes bug 40051
9673
9674         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
9675         unnecessary remove_contents() call
9676         (gtk_option_menu_class_init): add a "changed" signal, closes
9677         bug 40039
9678         (gtk_option_menu_update_contents): emit "changed" if the 
9679         active menu item changes
9680
9681         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
9682         cast to GtkObject, reported by Jonas Borgstrom
9683         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
9684         we can't do stuff with side effects in finalize. Instead, spew a
9685         warning if the loader isn't closed.
9686
9687         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
9688         colormap in here, non-X ports probably need to sync to this change
9689
9690         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
9691         assertion that colormap != NULL, you can set the colormap to NULL
9692         if you like.
9693         
9694         * Makefile.am: remove gtk-config-2.0
9695
9696         * configure.in: Use pkg-config to locate GLib. Remove
9697         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
9698         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
9699         Use pkg-config to locate Pango. Output correct Pango libs to
9700         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
9701
9702         * Makefile.am (pkgconfig_DATA): install only target-specific pc
9703         files
9704         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
9705         X11 pc files
9706
9707         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
9708         unref from here
9709
9710 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
9711
9712         * configure.in:
9713         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
9714
9715 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
9716
9717         * gtk/gtktextlayout.c
9718         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
9719         variable when moving back onto a single line.
9720
9721 2001-01-01  Havoc Pennington  <hp@redhat.com>
9722
9723         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
9724
9725         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
9726
9727         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
9728         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
9729
9730 2001-01-01  Havoc Pennington  <hp@redhat.com>
9731
9732         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
9733
9734         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
9735         GtkTextAttributes
9736
9737         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
9738         #40246
9739         (gtk_text_attributes_copy_values): rename from 
9740         gtk_text_attributes_copy
9741         (gtk_text_attributes_copy): a more standard GTK copy function, 
9742         which returns a new object
9743
9744 2001-01-01  Havoc Pennington  <hp@redhat.com>
9745
9746         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
9747         
9748         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
9749         don't fill in tree_view->priv->selection, kind of an unexpected
9750         side effect
9751
9752         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
9753         gtkintl.h
9754         
9755         * gtk/gtkcellrenderer.c: Remove definition of _ and include
9756         gtkintl.h
9757         (gtk_cell_renderer_get_property): remove calls to g_value_init
9758
9759         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
9760         gtkintl.h
9761
9762         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
9763         and include gtkintl.h
9764         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
9765         property names
9766
9767         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
9768         GtkTreeSelection
9769         (_gtk_tree_selection_new_from_with_view): rename, return
9770         GtkTreeSelection
9771         (_gtk_tree_selection_set_tree_view): rename with uscore
9772         (gtk_tree_selection_get_selected): fill in the "model" out param
9773         first, so it gets filled in even if we return at the top of the 
9774         function
9775         (gtk_tree_selection_real_select_all): add a comment and an else{}
9776         to clarify this a bit
9777         (gtk_tree_selection_real_unselect_all): add the same else{}
9778
9779         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
9780         set_tree_view to have underscore prefixes, move them to the
9781         private header, fix return type of new_with_tree_view
9782         (struct _GtkTreeSelection): mark struct
9783         fields private  
9784
9785         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
9786         GtkTreeModelFlags, not a guint
9787         (gtk_tree_path_prev): return gboolean not gint
9788         (gtk_tree_path_up): return gboolean not gint
9789
9790         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
9791         return GtkTreeModelFlags, not a guint
9792
9793         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
9794         that child model is non-null before unrefing it
9795         (g_value_int_compare_func): make this a qsort compare func, not 
9796         a boolean predicate
9797
9798         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
9799         (add -umn to the end), and mark it unimplemented
9800         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
9801         I don't see what it's for - doesn't the model always sort itself?
9802         (gtk_tree_model_sort_set_compare): this had the wrong signature
9803
9804         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
9805         Fix the docs to say that it destructively replaces existing
9806         attributes (previously said that it added attributes).
9807         (gtk_tree_view_column_set_visible): canonicalize bool before
9808         equality testing. Also, check for realization before
9809         hiding/showing the tree_column->window; if this window could exist
9810         before realization, then it's busted and needs fixing, we can't 
9811         create GDK resources pre-realization. Also, remove
9812         superfluous queue_resize(), since set_size() does that for us.
9813         (gtk_tree_view_column_set_col_type): check realization before 
9814         using tree_column->window
9815
9816         * gtk/gtktreedatalist.c: fix filename in copyright notice
9817
9818 2000-12-31  Havoc Pennington  <hp@pobox.com>
9819
9820         * gtk/gtktextview.c: Rearrange all the
9821         scroll-while-dragging-or-selecting code to be different, not
9822         necessarily better. ;-)
9823         (gtk_text_view_scroll_to_mark): Change this
9824         function to take within_margin as a fraction instead of a pixel
9825         value, and to take alignment arguments (indicating where to align 
9826         the mark inside the visible area)
9827         
9828         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
9829         to GtkObject
9830
9831         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
9832         behavior so that offsets past the end of the line are not 
9833         allowed, and an offset equal to the line length moves the iterator
9834         to the next line
9835         (gtk_text_iter_set_line_index): make parallel change
9836         (gtk_text_iter_get_bytes_in_line): add this function
9837         
9838         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
9839         of byte indexes off the end of the line; byte index at the end of
9840         the line now returns FALSE and doesn't fill in the requested
9841         values, byte index past the end of the line is an error.  Also,
9842         don't allow -1 offset anymore, since its meaning is unclear.
9843
9844         This change exposes some bug in visual cursor motion, where we
9845         end up with a huge invalid byte index; needs fixing. Symptom of 
9846         bug is a crash when you hit up arrow.
9847         
9848         (_gtk_text_line_char_locate): match the change to byte_locate
9849
9850         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
9851         from start of line properly. fixes bug reported by Mikael
9852         Hermansson where backspace would delete all text before the
9853         cursor.
9854
9855 2000-12-30  Tor Lillqvist  <tml@iki.fi>
9856
9857         * gdk/win32/gdkwindow-win32.c
9858         (gdk_window_impl_win32_get_visible_region): New function, as in
9859         the X11 backend.
9860         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
9861         instead of duplicating the same code here.
9862
9863         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
9864         GDK_COLORMAP macro.
9865
9866         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
9867         destroy function.
9868         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
9869         access that.
9870
9871         * gtk/gtk.def: Update.
9872
9873         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
9874
9875 2000-12-30  Havoc Pennington  <hp@pobox.com>
9876
9877         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
9878         colormap on input only windows, to avoid special cases all over
9879         the code for these windows.
9880
9881 2000-12-26  Tor Lillqvist  <tml@iki.fi>
9882
9883         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
9884         we are on a palettized display ("PseudoColor" in X11), as the code
9885         for that doesn't work anyway, and never has.
9886
9887 2000-12-22  Alexander Larsson  <alexl@redhat.com>
9888
9889         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
9890         Don't use isprint() for chars > 255.
9891
9892 2000-12-21  Havoc Pennington  <hp@redhat.com>
9893
9894         * tests/testtreeview.c: more work
9895
9896 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9897
9898         * docs/README.linux-fb:
9899         Update the docs to the new pangoft2 way.
9900
9901 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9902
9903         * configure.in:
9904         For linux-fb get the pangoft2 cflags and libs. This needs a recent
9905         pango version.
9906         Remove modules/linux-fb/Makefile.
9907
9908         * gdk/linux-fb/gdkdrawable-fb2.c:
9909         Render glyphs using freetype.
9910
9911         * gdk/linux-fb/gdkfb.h:
9912         Add new fb-specific functions needed for managing windows.
9913
9914         * gdk/linux-fb/gdkmain-fb.c:
9915         Remove gdk_font_init/fini() calls.
9916
9917         * gdk/linux-fb/gdkpango-fb.c:
9918         Remove old implementation. Use pangoft2 instead.
9919
9920         * gdk/linux-fb/gdkprivate-fb.h:
9921         Remove PangoFBFont and related stuff.
9922
9923         * gdk/linux-fb/gdkwindow-fb.c:
9924         Implement drawable->get_visible_region.
9925         Implement support for _gdk_window_set_child_handler () and
9926         _gdk_window_get_decorations().
9927
9928         * modules/Makefile.am:
9929         Remove linux-fb subdir.
9930
9931         * modules/linux-fb/*:
9932         Removed all.
9933         
9934 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
9935
9936         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
9937         calls, as they are no longer needed.
9938
9939         * gtk/gtktreemodelsort.c: Fix up the comparison code.
9940         
9941         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
9942         figure out how to emit a signal on an interface.
9943
9944 2000-12-20  Havoc Pennington  <hp@redhat.com>
9945
9946         * tests: new directory to contain tests, gtk/test* should move
9947         here sometime (with appropriate on-cvs-server hackery)
9948
9949         * tests/testtreeview.c, tests/Makefile.am: a test
9950         
9951         * configure.in (AC_OUTPUT): add tests/Makefile
9952
9953         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
9954         and "invisible_set" which were missing
9955
9956         * gtk/gtkrbtree.h: some cheesy indentation fix
9957         
9958 2000-12-20  Alexander Larsson  <alexl@redhat.com>
9959
9960         * gtk/gtkinvisible.c (gtk_invisible_realize):
9961         Attach the style to the window so that the style it is not
9962         leaked when unrealizing the window.
9963
9964 2000-12-18  Havoc Pennington  <hp@redhat.com>
9965
9966         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
9967         begin/end user action where appropriate
9968         (gtk_text_view_commit_handler): add begin/end user action
9969
9970         * gtk/gtktextbuffer.c: add begin/end user action signals, and
9971         bracket interactive operations with begin/end user action pair.
9972         
9973         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
9974         "interactive" arg from insert_text and delete_text signals.
9975         Add begin_user_action, end_user_action signals
9976         (gtk_text_buffer_begin_user_action): 
9977         (gtk_text_buffer_end_user_action): New functions to delimit 
9978         a user-visible action
9979
9980         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
9981         signals.
9982         
9983 2000-12-18  Havoc Pennington  <hp@redhat.com>
9984
9985         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
9986         was pretty non-working.
9987
9988         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
9989         by passing the length to g_utf8_validate().
9990
9991 2000-12-16  Havoc Pennington  <hp@pobox.com>
9992
9993         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
9994         Port to GObject, can go back in gdk-pixbuf after setting up 
9995         a gdk-pixbuf-marshal.h header over there.
9996
9997         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
9998         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
9999         args
10000         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
10001         set
10002         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
10003         here, do it when we create the buttons later
10004         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
10005         (gtk_tree_view_map): paranoia checks that column->button is shown 
10006         and unmapped
10007         (gtk_tree_view_size_request): only request visible children.
10008         Move header size calculation in here, for cleanliness, and 
10009         to maintain invariants for child widgets if we eventually 
10010         let users set different children inside the buttons
10011         (gtk_tree_view_map_buttons): factor out code to map buttons,
10012         since it was being called several times
10013         (gtk_tree_view_size_allocate_buttons): move_resize the drag
10014         windows instead of just moving them; their height may change 
10015         if we allow random widgets in there, or the theme changes.
10016         (gtk_tree_view_size_allocate): move button size allocation 
10017         above emitting the scroll signals, to ensure a sane state when we
10018         hit user code
10019         (gtk_tree_view_button_release): remove queue_resize after
10020         tree_view_set_size(), set_size() will handle any resize queuing
10021         that's needed
10022         (gtk_tree_view_focus_in): just queue a draw, don't fool with
10023         draw_focus goo
10024         (gtk_tree_view_focus): use gtk_get_current_event() and
10025         gdk_event_get_state()
10026         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
10027         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
10028         semicolon
10029         (gtk_tree_view_create_button): show the button here
10030         (gtk_tree_view_button_clicked): actually emit the clicked signal
10031         on the column
10032         (_gtk_tree_view_set_size): return right away if the size is
10033         unchanged, as a cheesy optimization
10034         (gtk_tree_view_setup_model): rename set_model_realized to 
10035         setup_model to match the flag that indicates whether we've 
10036         called it
10037         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
10038         exist, because set_scroll_adjustment does that and it shouldn't
10039         matter what order you call these in
10040         (gtk_tree_view_get_vadjustment): ditto
10041         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
10042         for paranoia
10043         (gtk_tree_view_set_headers_visible): call
10044         gtk_tree_view_map_buttons() instead of using cut-and-paste code
10045         (gtk_tree_view_append_column): clarify whether the return value
10046         is the count of columns before or after, and do the increment 
10047         separately from the return statement so you can tell from the code.
10048         (gtk_tree_view_remove_column): ditto
10049         (gtk_tree_view_insert_column): ditto
10050         (gtk_tree_view_get_column): remove g_return_if_fail for columns
10051         outside the existing range, the docs say that outside-range
10052         columns are allowed, so we handle them as documented. (Presumably
10053         this allows a nice loop with column != NULL as test.)
10054         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
10055         mean (left/right/center etc.).
10056         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
10057         (gtk_tree_view_expand_row): add docs
10058         (gtk_tree_view_collapse_row): add docs
10059
10060         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
10061         function to emit the clicked signal on a column
10062         
10063         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
10064         state of an event
10065         (gdk_event_get_time): don't treat GDK_SCROLL 
10066         as a button event, remove default case from switch so gcc 
10067         will whine if we don't explicitly handle all event types
10068
10069         * gtk/gtktreeselection.h: added some FIXME 
10070         
10071         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
10072         "columns" to "n_columns" and "column" to "columns" for clarity
10073
10074 2000-12-16  Havoc Pennington  <hp@pobox.com>
10075         
10076         * gtk/gtktextiter.c: General cleanup of the log attr iteration
10077         stuff. This should make e.g. the delete key work again in the
10078         text widget...
10079         (gtk_text_iter_forward_cursor_positions): handle negative count
10080         (gtk_text_iter_backward_cursor_positions): handle negative count
10081         (gtk_text_iter_forward_word_ends): handle negative count
10082         (gtk_text_iter_backward_word_starts): handle negative count
10083
10084         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
10085         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
10086         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
10087         GObject. No doubt will cause breakage.
10088
10089         * demos/gtk-demo/textview.c: remove hacks around
10090         non-GObject-ification of the text objects
10091
10092         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
10093         the text tag
10094         
10095 2000-12-14  Havoc Pennington  <hp@pobox.com>
10096
10097         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
10098         that we have Xrender
10099
10100 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
10101
10102         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
10103         Add two virtualized functions gdk_drawable_get_clip_region - to
10104         get the clip region when drawing.
10105         
10106         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
10107         use invalidate_region.
10108
10109         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
10110         region.
10111
10112         * acconfig.h configure.in: Check for Xft. For now, assume
10113         that if Xft is found, Pango was compiled with Xft support
10114         as well.
10115
10116         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
10117         gdk_colormap_query_color().
10118         
10119         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
10120         with Xft if appropriate.
10121
10122         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
10123         a pangoxft context if we have XFT and the environment
10124         variable GD_USE_XFT is set.
10125         
10126         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
10127         and also possibly an XftDraw structure.
10128
10129         * gtk/gtkfontsel.c: Handle the case where the font from the
10130         style doesn't match any of the fonts a bit better.
10131         
10132         * gtk/testgtk.c: Add tabs between directional segments for
10133         hebrew/arabic test. (Not really necessary, just a little
10134         prettier.)
10135
10136 2000-12-14  Havoc Pennington  <hp@redhat.com>
10137
10138         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
10139         reading a file
10140
10141 2000-12-14  Havoc Pennington  <hp@redhat.com>
10142
10143         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
10144         unused call to get_last_line()
10145
10146         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
10147         here until boxed is working (and maybe after that - we should
10148         really not gratuitously break old code)
10149
10150         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
10151         specific types for font_desc and tabs args, move them to
10152         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
10153         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
10154
10155         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
10156         use GTK_TYPE_POINTER for signal signatures as a hack-around
10157
10158         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
10159         PangoTabArray
10160
10161         * gtk/gtktextlayout.c (line_display_iter_to_index): 
10162         make static
10163         (line_display_index_to_iter): make static
10164
10165         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10166         to marshal a string not a boxed
10167
10168         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
10169
10170         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
10171         since the UTF-8 isn't validated yet
10172
10173         * gtk/gtktextsegment.c (char_segment_check_func): don't require
10174         lines to end in '\n'
10175         
10176         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
10177         forward_to_delimiters, and grapheme boundaries
10178         (gtk_text_view_delete_from_cursor): properly handle non-newline
10179         delimiters, and grapheme boundaries
10180
10181         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
10182         to gtk_text_iter_forward_to_delimiters, and make it work properly
10183         if empty lines end with a character other than '\n'
10184
10185         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
10186         position
10187
10188 2000-12-15  Tor Lillqvist  <tml@iki.fi>
10189
10190         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
10191
10192         * gtk/gtk.def
10193         * gdk/gdk.def: Update.
10194
10195         * gdk/win32/gdkmain-win32.c
10196         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
10197         gdkmain-win32.c here.
10198
10199         * gdk/win32/makefile.mingw.in (all): No need to make
10200         gdk-win32res.o here, the makefile one step up will call us to make
10201         it.
10202
10203         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
10204         gdkkeys-win32.
10205
10206         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
10207
10208         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
10209         call to g_source_add().
10210
10211         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
10212         leak. Thanks to Andreas Kemnade.
10213
10214 2000-12-13  Havoc Pennington  <hp@pobox.com>
10215
10216         * gtk/gtktextbtree.h: Remove double _ in front of some functions
10217
10218         * gtk/gtktext*.[hc]: update accordingly
10219         
10220 2000-12-13  Havoc Pennington  <hp@pobox.com>
10221
10222         * gtk/gtktextbtree.h: Put _ in front of every function in this 
10223         header file
10224
10225         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
10226
10227 2000-12-13  Alex Larsson  <alexl@redhat.com>
10228
10229         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
10230         Add support for ps2 intellimouse.
10231
10232         * gdkkeyboard-fb.c:
10233         Move shift-F1 repaint handling to xlate handler only.
10234         
10235         * docs/README.linux-fb:
10236         Add imps2 to docs.
10237         Document the new refresh keys.
10238         
10239 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
10240
10241         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
10242
10243         * gtk/gtkbox.c: change property types from (u)long to (u)int for
10244         ::position and ::padding.
10245
10246         * gtk/gtkcontainer.c: make ::border_width an INT property.
10247
10248         * gtk/gtkpacker.c: make ::position an INT property.
10249
10250         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
10251         guard against NULL h/v scrollbars, since this is used at construction
10252         time.
10253
10254         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
10255         internal gtk_clist_constructor().
10256
10257         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
10258         gtk_ctree_constructor().
10259
10260         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
10261         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
10262
10263         * docs/reference/Makefile.am: fun stuff, disabled docs generation
10264         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
10265
10266         * gtk/gtkwidget.[hc]:
10267         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
10268         and gtk_widget_get().
10269         (gtk_widget_new): use g_object_new_valist().
10270         (gtk_widget_set): use g_object_set_valist().
10271
10272         * gtk/gtkobject.[hc]:
10273         removed gtk_object_arg_get_info(), gtk_object_getv(),
10274         gtk_object_query_args(), gtk_object_newv(),
10275         gtk_object_class_add_signals(),
10276         gtk_object_class_user_signal_new(),
10277         gtk_object_class_user_signal_newv(),
10278         gtk_object_arg_set(), gtk_object_arg_get(),
10279         gtk_object_args_collect(),
10280         gtk_object_default_construct(),
10281         gtk_object_constructed(),
10282         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
10283         removed nsignals, signals and n_args members from GtkObjectClass.
10284         (gtk_object_new): use g_object_new_valist().
10285         (gtk_object_set): use g_object_set_valist().
10286         (gtk_object_get): use g_object_get_valist().
10287         
10288         * gtk/gtkcompat.h: define gtk_object_default_construct().
10289         
10290         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
10291         g_object_new().
10292
10293         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
10294         fucntions, cleaned up method assignments (make sure your structures
10295         are setup properly before calling out). removed all GTK_CONSTRUCTED
10296         hacks ;)
10297
10298 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
10299
10300         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
10301         off-by-one error in checks. (Dave Lambert)
10302
10303 2000-12-12  Alexander Larsson  <alexl@redhat.com>
10304
10305         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
10306         Don't free gdk_fb_keyboard twice.
10307
10308 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
10309
10310         * gtk/testgtk.c:
10311         (create_tooltips): 
10312         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
10313         use GObject swapped_signal:: properties instead.
10314
10315         * gtk/gtkcellrenderertoggle.c: 
10316         * gtk/gtkcellrenderertextpixbuf.c: 
10317         * gtk/gtkcellrenderertext.c: 
10318         * gtk/gtkcellrendererpixbuf.c: 
10319         * gtk/gtkcellrenderer.c:
10320         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
10321         missing warnings for invalid property ids, install properties
10322         with g_object_class_install_property() now.
10323         
10324         * gtk/gtksignal.c:
10325         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
10326         
10327 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
10328         
10329         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
10330         to determine if a window is the focus widget within
10331         its toplevel.
10332
10333         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
10334         to be boolean.
10335
10336         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
10337         of the case where the container CAN_FOCUS to here instead
10338         of having it in each individual move-the-focus place.
10339
10340         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
10341         focusing to be geometric in a much more obvious sense. Arrowing
10342         around is still non-intuitive because it isn't perfect and
10343         because entries, etc, grab the arrow keys, but it at least
10344         usually will do what you expect now.
10345         
10346         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
10347         file.
10348
10349         * gtk/gtknotebook.c: Change tabs to be a single item in
10350         the focus chain. Make movement of focus on tabs with arrow
10351         keys wrap around.
10352         
10353         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
10354         CHECK_FIND_CHILD macro to give informative error messages
10355         instead of silent returns.
10356
10357         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
10358         flag since we handle GdkReturn on the tabs.
10359
10360         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
10361         windows rather than sending expose events directly.
10362
10363         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
10364         definition for GtkNotebookPage into .c file, since it is private.
10365
10366         * gtk/testgtk.c (create_notebook): Add option for 
10367         testing borderless notebook.
10368
10369         * gtk/testgtk.c (page_switch): Removed egregious poking
10370         around in GTK+ internals.
10371
10372         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
10373
10374         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
10375         properly through gtk_clist_focus. Make the title headers a
10376         single item in the tab-focus chain, and make left-right wrap
10377         around.
10378
10379         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
10380         focus method so that wrapping around works properly.
10381
10382         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
10383         that is handled for the widget now. 
10384
10385 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
10386
10387         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
10388         widgets as TOPLEVEL.
10389
10390         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
10391         TOPLEVEL widgets are containers.
10392
10393         * gtk/gtkinvisible.h: Remove useless include.
10394
10395 2000-12-11  Havoc Pennington  <hp@redhat.com>
10396
10397         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
10398         Handle chopping off \r\n and 0x2029 in addition to \n before
10399         passing to PangoLayout
10400
10401         * gtk/gtkimcontextsimple.c
10402         (gtk_im_context_simple_get_preedit_string): 
10403         return an empty string if no match is pending
10404
10405         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
10406         assertion that the returned preedit string was sane
10407
10408         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
10409         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
10410         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
10411
10412 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
10413
10414         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
10415         Fix up finalizer to chain to its parent.
10416
10417 2000-12-11  Alexander Larsson  <alexl@redhat.com>
10418
10419         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
10420         Clearified the difference between the keyboard types. Wrote a note
10421         about the magic sysrq key to get out of raw mode.
10422
10423 2000-12-09  James Henstridge  <james@daa.com.au>
10424
10425         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
10426         member to hold masks for detecting the start of a protocol packet.
10427         (mouse_devs): add packet start masks for ps2 and ms device types.
10428         Left the mask for fidmour blank, as I have no idea what it should
10429         be.
10430         (handle_mouse_io): skip bytes until we get to the start of a
10431         packet.  My Logitech mouse seems to be passing an extra NULL pad
10432         byte, and GPM does a similar thing here.
10433         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
10434         this is the ms mouse driver.
10435         (gdk_fb_mouse_ms_packet): fix up button handling, which was
10436         completely broken except for button1.  It was checking the wrong
10437         bit in the packet for the status of the right mouse button, and
10438         wrongly assuming right == button2 rather than 3.  I fixed that and
10439         also added support for middle button (button2).
10440
10441 2000-12-08  Havoc Pennington  <hp@redhat.com>
10442
10443         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
10444         that cause a segfault on text insertion
10445
10446         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
10447         warning
10448
10449         * gtk/gtktextiter.c (test_log_attrs): use
10450         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
10451
10452         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
10453         Get log attrs for a line, using a cache stored on the buffer
10454         
10455         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
10456         reported by Jeff Franks
10457
10458 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10459
10460         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
10461         /dev/ttyS0 -> /dev/mouse
10462
10463 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10464
10465         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
10466         Added dummy gdk_fontset_load.
10467
10468 2000-12-08  Alexander Larsson  <alexl@redhat.com>
10469
10470         * docs/README.linux-fb:
10471         * docs/Makefile.am:
10472         Initial GtkFB docs.
10473         
10474         * gdk/linux-fb/Makefile.am:
10475         Define GDK_DATA_PREFIX.
10476
10477         * gdk/linux-fb/gdkmain-fb.c:
10478         Fix typo.
10479         Change default display to /dev/fb0.
10480
10481         * gdk/linux-fb/gdkpango-fb.c:
10482         Add $(prefix)/share/fonts/ to font path.
10483         
10484 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10485
10486         * gdk/linux-fb/gdkkeyboard-fb.c:
10487         New file containing the abstracted keyboard driver. Most code
10488         taken from gdkinput-ps2.c
10489
10490         * gdk/linux-fb/gdkinput-ps2.c:
10491         Removed file.
10492         
10493         * gdk/linux-fb/Makefile.am:
10494         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
10495
10496         * gdk/linux-fb/gdkcolor-fb.c:
10497         display->fb was renamed to display->fb_fd.
10498
10499         * gdk/linux-fb/gdkcursor-fb.c:
10500         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10501
10502         * gdk/linux-fb/gdkinput.c:
10503         Moved gdk_input_init here from gdkinput-ps2.c
10504
10505         * gdk/linux-fb/gdkmain-fb.c:
10506         display->fb was renamed to display->fb_fd.
10507         Now the tty and the console is opened here instead
10508         of in the keyboard driver. Also check GDK_VT to see what
10509         tty to open.
10510         Move gdk_beep () here from gdkinput-ps2.c
10511         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10512
10513         * gdk/linux-fb/gdkmouse-fb.c:
10514         Add header.
10515         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10516         Return correct keyboard modifiers.
10517         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
10518
10519         * gdk/linux-fb/gdkprivate-fb.h:
10520         Add tty and vt info to display.
10521         Add orignal modeinfo storage to display
10522         Update global functions
10523
10524         * gdk/linux-fb/gdkwindow-fb.c:
10525         Added gdk_fb_window_find_focus().
10526         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10527
10528 2000-12-07  Havoc Pennington  <hp@pobox.com>
10529
10530         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
10531         function, noticed by Alex
10532
10533 2000-12-06  Elliot Lee  <sopwith@redhat.com>
10534
10535         * configure.in: Detect freetype properly
10536
10537         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
10538         above.
10539
10540 2000-12-06  Alexander Larsson  <alexl@redhat.com>
10541
10542         * gdk/linux-fb/Makefile.am:
10543         Add gdkmouse-fb.c
10544         
10545         * gdk/linux-fb/gdkmouse-fb.c:
10546         New file. Abstracted the mouse drivers a bit.
10547
10548         * gdk/linux-fb/gdkcursor-fb.c:
10549         The cursor hide/show functions was moved here from gdkinput-ps2.c.
10550
10551         * gdk/linux-fb/gdkinput-ps2.c:
10552         Removed old mouse handling code. Moved cursor handling code
10553         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
10554         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
10555         gdk_mouse_get_info.
10556
10557         * gdk/linux-fb/gdkmain-fb.c:
10558         Pass NULL pointers for x,y in gdk_mouse_get_info call.
10559
10560         * gdk/linux-fb/gdkprivate-fb.h:
10561         Removed public gdk_fb_find_common_ancestor, added and renamed
10562         functions for the new mouse handling code.
10563
10564         * gdk/linux-fb/gdkwindow-fb.c:
10565         Moved gdk_fb_window_send_crossing_events here. added global
10566         variable gdk_fb_window_containing_pointer. made
10567         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
10568         renamed to gdk_mouse_get_info.
10569
10570 2000-12-06  Alexander Larsson  <alexl@redhat.com>
10571
10572         * gdk/linux-fb/gdkevents-fb.c:
10573         Update to match latest gmain/gsource changes.
10574
10575         * gdk/linux-fb/gdkinput-ps2.c:
10576         Bogus gdk_keymap_get_entries_for_keycode implementation so that
10577         it links. Will be implemented later.
10578
10579 2000-12-03  Havoc Pennington  <hp@pobox.com>
10580
10581         * gdk/Makefile.am: add gdkkeys.[hc]
10582
10583         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
10584         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
10585
10586         * acconfig.h, configure.in: add checks and command line options
10587         for XKB
10588
10589         * gdk/x11/gdkkeys-x11.c: Implement the above functions
10590         
10591         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
10592         and group in the key event
10593
10594         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
10595         field with the low-level hardware key code, and a group
10596         field with the keyboard group
10597
10598         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
10599         and declare a couple globals used for keymap handling
10600         
10601         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
10602         hold down Shift-Control and type a hex number to get a Unicode 
10603         character corresponding to the hex number
10604         (gtk_im_context_simple_get_preedit_string): Fix cursor position
10605         (return bytes not chars)
10606
10607 2000-12-05  Elliot Lee  <sopwith@redhat.com>
10608
10609         * gdk/gdkcolor.h: Make GdkColor specify element sizes
10610         to avoid waste on 64-bit platforms.
10611
10612 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
10613
10614         * INSTALL: Fix link to PNG home, remove reference
10615         to fribidi.
10616
10617         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
10618         
10619         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
10620         tested.)
10621
10622         * gtk/gtkcheckmenuitem.c: Permanently turn on
10623         always_show_toggle.
10624
10625         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
10626         be NULL. (Vladimir Klebanov, #26545)
10627
10628         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
10629         some signed/unsigned comparison problems. (#6510,
10630         David Kaelbling)
10631
10632         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
10633         return type to boolean (Oskar Liljeblad, #18648)
10634
10635 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10636
10637         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
10638         Remove bogus colormap setting.
10639
10640 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10641
10642         * gdk/linux-fb/gdkcolor-fb.c:
10643         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
10644
10645         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
10646         Must set colormap.
10647         
10648 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
10649
10650         * docs/tutorial/gtk-tut.sgml: DND updates
10651
10652 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
10653
10654         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10655         Remove old debug g_warning().
10656         (gdk_fb_draw_drawable): The src argument can be either a wrapper
10657         or an implementation, just pass the implementation to draw_drawable_2.
10658         
10659         * gdk/linux-fb/gdkprivate-fb.h:
10660         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
10661
10662         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10663         clear and invalidate area when window is destroyed.
10664         (send_map_events): Remove old commented out code.
10665
10666 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10667
10668         * gdk/linux-fb/gdkpango-fb.c:
10669         Use italic instead of oblique in font aliases.
10670         
10671         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
10672         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
10673         other unsupported functions.
10674
10675 2000-12-04  Havoc Pennington  <hp@redhat.com>
10676
10677         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
10678
10679         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
10680
10681         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
10682
10683         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
10684         hack to avoid infinite loops (synthetic expose event) - 
10685         Owen has more appropriate fixes in a branch he'll check in later.
10686
10687         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
10688         separator, CR, and CRLF as line ends
10689
10690         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
10691         into lines using pango_find_paragraph_boundary(); other bits of
10692         the widget are still going to be broken if the boundary isn't '\n'
10693         though
10694
10695 2000-12-04  Alexander Larsson  <alexl@redhat.com>
10696
10697         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
10698         multiply.
10699
10700         * gdk/linux-fb/gdkpango-fb.c:
10701         Copied some 26.6 scaling macros from pango to clean up the rounding.
10702         (pango_fb_font_get_glyph_info): Correct sign on x value.
10703
10704         * gdk/linux-fb/gdkprivate-fb.h:
10705         Removed unreferenced external functions.
10706
10707         * modules/linux-fb/Makefile.am: Use ` instead of '.
10708
10709         * modules/linux-fb/basic.c:
10710         Remove dead code. In particular the dummy lang engine which broke all
10711         pango layouts in GtkFB. Don't include tables-big.i anymore.
10712
10713         * modules/linux-fb/tables-big.i:
10714         Upgrade to latest version from pango. Left for reference, basic_ranges
10715         moved to basic.c.
10716         
10717 2000-12-04  Havoc Pennington  <hp@redhat.com>
10718
10719         Fix bugs Alex found:
10720         
10721         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
10722         to "draw"
10723
10724         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
10725
10726         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
10727
10728         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
10729         implementation in here, apparently the expose() implementation was
10730         dead code.
10731
10732 2000-12-04  Alexander Larsson  <alexl@redhat.com>
10733
10734         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10735         Return positive descent.
10736
10737 2000-12-02  Havoc Pennington  <hp@pobox.com>
10738
10739         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
10740         method and signal
10741         
10742         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
10743         calls gdk_window_process_updates() to push the exposes through
10744         (gtk_widget_class_init): No more draw signal, no
10745         gtk_widget_real_draw()  
10746         
10747         * gtk/gtkbin.c (gtk_bin_draw): remove
10748
10749         * gtk/gtkbox.c (gtk_box_draw): remove
10750
10751         * gtk/gtkbutton.c (gtk_button_draw): remove
10752
10753         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
10754
10755         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
10756
10757         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
10758
10759         * gtk/gtkclist.c (gtk_clist_draw): remove
10760
10761         * gtk/gtkentry.c (gtk_entry_draw): remove
10762
10763         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
10764
10765         * gtk/gtkfixed.c (gtk_fixed_draw): remove
10766
10767         * gtk/gtkframe.c (gtk_frame_draw): remove
10768
10769         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
10770
10771         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
10772
10773         * gtk/gtklayout.c (gtk_layout_draw): remove
10774
10775         * gtk/gtklist.c (gtk_list_draw): remove
10776
10777         * gtk/gtklistitem.c (gtk_list_item_draw): remove
10778
10779         * gtk/gtkmenu.c (gtk_menu_draw): remove
10780
10781         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
10782
10783         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
10784
10785         * gtk/gtknotebook.c (gtk_notebook_draw): remove
10786
10787         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
10788
10789         * gtk/gtkpacker.c (gtk_packer_draw): remove
10790
10791         * gtk/gtkrange.c (gtk_range_draw): remove
10792
10793         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
10794
10795         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
10796
10797         * gtk/gtktable.c (gtk_table_draw): remove
10798
10799         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
10800
10801         * gtk/gtktext.c (gtk_text_draw): remove
10802
10803         * gtk/gtktextview.c (gtk_text_view_draw): remove
10804
10805         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
10806
10807         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
10808
10809         * gtk/gtktree.c (gtk_tree_draw): remove
10810
10811         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
10812
10813         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
10814
10815         * gtk/gtkviewport.c (gtk_viewport_draw): remove
10816
10817         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
10818
10819         * gtk/gtkvscale.c (gtk_vscale_draw): remove
10820
10821         * gtk/gtkwindow.c (gtk_window_draw): remove
10822
10823 2000-20-01  Anders Carlsson  <andersca@gnu.org>
10824
10825         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
10826         a GtkToggleButton is both insensitive and active, it was being
10827         drawn by the GtkButton draw handler which doesn't check the
10828         state. Now it's calling gtk_toggle_button_paint instead.
10829         
10830 2000-12-01  Havoc Pennington  <hp@redhat.com>
10831
10832         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
10833         dangling pointers to the appearance attributes from the 
10834         line display
10835
10836         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
10837         width/height to mean "full width/height of drawable"
10838
10839         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
10840         click to select word/line
10841         
10842         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
10843         when getting log attrs. Get a slice, so that pixmaps and stuff
10844         are properly handled.
10845
10846         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
10847         paste into the selection (replaces selection now, previously
10848         crashed or added to selection). Reveals longstanding btree bug -
10849         select multiple lines, middle-click on the selection, boom. This
10850         isn't related to my changes though.
10851
10852         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
10853         PangoLogAttrs changes
10854         (gtk_entry_move_backward_word): ditto
10855
10856         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
10857         functions return bool whether the iter moved onto a
10858         dereferenceable position.
10859  
10860         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
10861         functions for motion in terms of display lines.
10862
10863         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
10864         get the buffer a mark is inside
10865         
10866 2000-12-01  Alexander Larsson  <alexl@redhat.com>
10867
10868         * gdk/linux-fb/Makefile.am:
10869         * modules/linux-fb/Makefile.am:
10870         Freetype 2 final uses freetype-config
10871
10872         * gdk/linux-fb/gdkpango-fb.c:
10873         Upgrade to use Freetype 2 final.
10874         More flexible support for font aliases, this also fixes a bug with
10875         GtkFontSelector, as the aliases must be visible in the font/family list,
10876         or GtkFontSelector reads uninitialized memory.
10877
10878 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
10879
10880         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
10881         XGetIMValues to properly terminate variable argument list, and do
10882         NULL return check for ic_values and xim_styles.
10883
10884         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
10885         Restore preedit state after XmbResetIC().
10886         
10887         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
10888         XvaCreateNestedList() should take XvaNestedList, but not
10889         XvaNestedList*.
10890
10891         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
10892         preedit_draw_callback, preedit_caret_callback): Match
10893         "preedit-changed" signal name to "preedit_changed" to be
10894         consistent to the spec.
10895
10896         * gtk/gtkimcontextsimple.c (check_table):
10897         Match "preedit-changed" to "preedit_changed" to be consistent
10898         to the spec.
10899
10900 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
10901
10902         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
10903         gc->clip_region == NULL>
10904
10905 2000-11-30  Tor Lillqvist  <tml@iki.fi>
10906
10907         Changes by Hans Breuer:
10908         
10909         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
10910         Dont't use negative width and height as max_hints. This fixes
10911         Owen's recent testgtk changes for win32.
10912
10913         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
10914         gdk_win32_hdc_release): These are exported and may be called with
10915         other drawable types than our GdkDrawableImplWin32 (?).
10916
10917         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
10918         so always #define USE_BACKING_STORE.
10919
10920         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
10921         of printf for debugging output.
10922
10923         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
10924         
10925         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
10926
10927         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
10928         declaration.
10929
10930         * gtk/gtktexttypes.h: Ditto.
10931
10932         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
10933         (GDK_VoidSymbol) also if in case of arg check failure.
10934
10935         * gtk/gtkimcontextsimple.c
10936         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
10937         position to the pointer, but to the variable it points to.
10938
10939         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
10940
10941         * gtk/gtk.def: Updates.
10942
10943 2000-11-29  Elliot Lee  <sopwith@redhat.com>
10944
10945         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
10946         GTK_TYPE_TREE_MODEL.
10947
10948 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10949
10950         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
10951         Set the size of the font from the description.
10952         (gdk_text_width): Gross hack that calculates the width
10953         of text by text_length * size/2. This is necessary because
10954         GtkLabel does some ugly gtk_string_width call to calculate
10955         an good size.
10956         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
10957
10958 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
10959
10960         * docs/tutorial/gtk-tut.sgml: DND updates
10961
10962 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10963
10964         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
10965         If you pass width or height == 0 to gdk_window_clear_area they
10966         should be calculated from the window size.
10967
10968 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10969
10970         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
10971         a grab, but no grab-cursor, use the cursor from the grabbed
10972         window. (gdk_fb_window_send_crossing_events): Send normal
10973         enter/leave notifications if grab and owner_events == TRUE.
10974
10975 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10976
10977         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10978         Do implicit button grabs, even if the window doesn't
10979         want the event.
10980         (gdk_fb_window_send_crossing_events): If there is a
10981         grab, only the grabbed window gets normal enter/leave
10982         notifications. On ungrab go from grabbed window to current.
10983         Don't send any notification to b when propagating from c -> b.
10984         If setting a grab on window, don't set prev_window.
10985         (handle_mouse_input): Send enter/leave events to the window the
10986         mouse is over, not the grabbed one.
10987         
10988 2000-11-28  Elliot Lee  <sopwith@redhat.com>
10989
10990         * gdk/gdkregion-generic.c: Zap warning.
10991         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
10992         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
10993
10994 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
10995
10996         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10997         The cursor should be hidden if it is part of either the
10998         source or destination region. Not only if it is in both.
10999         (gdk_window_set_transient_for): Silence warnings.
11000
11001 2000-11-28  Alexander Larsson  <alexl@redhat.com>
11002
11003         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
11004         The default mode in X is Pie Arcs, therefore that is
11005         what Gtk+ uses.
11006
11007 2000-11-28  Alexander Larsson  <alexl@redhat.com>
11008
11009         * gdk/linux-fb/gdkinput-ps2.c:
11010         Implement correct EnterNotify/LeaveNotify:
11011         (gdk_fb_window_send_crossing_events): New function that sends
11012         all GdkCrossingEvents from the last mouse-window to the specified
11013         destination.
11014         (gdk_fb_window_visibility_crossing): Removed function.
11015         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
11016         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
11017         instead of gdk_window_get_pointer() for better readability.
11018
11019         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
11020         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
11021
11022         * gdk/linux-fb/gdkprivate-fb.h:
11023         removed gdk_fb_window_visibility_crossing, added
11024         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
11025
11026         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
11027         New function that finds the least common ancestor of two windows.
11028         (gdk_window_show, gdk_window_hide):
11029         Use gdk_fb_window_send_crossing_events.
11030         (gdk_fb_window_move_resize): Send configure events to toplevel
11031         windows. Use gdk_fb_window_send_crossing_events.
11032
11033 2000-11-27  Havoc Pennington  <hp@redhat.com>
11034
11035         * gtk/gtkprivate.h (enum): Remove a trailing comma
11036
11037 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
11038
11039         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
11040         the "changed" callback of the adjustment.  We need to redraw the
11041         spin button's arrows when the adjustment's range changes.
11042         (adjustment_changed_cb): Draw the arrows.
11043         (gtk_spin_button_value_changed): Draw the arrows.
11044
11045 2000-11-23  Alexander Larsson  <alexl@redhat.com>
11046
11047         * gdk/linux-fb/gdkselection-fb.c:
11048         Initial selection implementation.
11049
11050         * gtk/gtkselection.c:
11051         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
11052         requestor in gtk_selection_request.
11053         
11054         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
11055         Added gdk_selection_property atom.
11056
11057         * gdk/linux-fb/gdkprivate-fb.h:
11058         Export _gdk_selection_window_destroyed.
11059         Removed mask_off_x/y from GdkCursorPrivateFB.
11060         Removed hbearing, added top, left to PangoFBGlyphInfo.
11061
11062         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
11063         Call _gdk_selection_window_destroyed
11064         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
11065         the root window has been created.
11066         (static_dx_hack, static_dy_hack, compare_draw_rects,
11067         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
11068         in region. They are already sorted. Instead just traverse them in
11069         reverse if draw_direction < 0.
11070         
11071         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
11072         Double-clicks must be sent after the normal button_press.
11073         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
11074         
11075         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
11076         Pass _gdk_fb_screen_gc instead of NULL.
11077
11078         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
11079         Initialize gdk_selection_property.
11080         (gdk_event_make): Remove unused code.
11081
11082         * gdk/linux-fb/gdkcursor-fb.c:
11083         Make the pixmap for the cursor the same size as the mask. Also remove
11084         the mask_off_x/y fields in GdkCursorPrivateFB and combine
11085         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
11086         Now the whole cursor is visible.
11087
11088         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
11089         Fix bug where xdest+height instead of ydest+height was used
11090         to calculate if the source and dest overlapped. This fixes the
11091         redraw bug when the main window in testgtk was scrolled when
11092         partially covered by a tall window.
11093         Copy rectangles in region in order depending on draw_direction.
11094         Also moved the draw_direction flipping of start_y and end_y into
11095         the gc functions, as this might not be what all of them want.
11096         (gdk_fb_draw_lines): Support dashed lines.
11097         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
11098         so that the text is positioned correctly (was 1 pixel high).
11099
11100         gdk/linux-fb/gdkgc-fb.c:
11101         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
11102         all lines were drawn a pixel to short. Also checked the default of
11103         the rest of the values, and they're the same as X now.
11104
11105         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
11106         Clean up pixel positioning of the glyphs. Just use bgy->top and
11107         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
11108         to all divisions to get correct rounding behaviour.
11109
11110         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
11111         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
11112         Moved start_y/end_y flip into draw_drawable implementations.
11113         Flip also x rendering when draw_direction < 0.
11114         Remove unneccesary multiply with draw_direction.
11115
11116 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
11117
11118         * docs/tutorial/gtk-tut.sgml:
11119           - get rid of gtk_toggle_button_toggled FUD
11120           - start DND section - needs work - based on:
11121                 http://wolfpack.twu.net/docs/gtkdnd/
11122
11123 2000-11-22  Alexander Larsson  <alexl@redhat.com>
11124
11125         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
11126         Correct calculation of font metrics. Now GtkEntrys have sane
11127         size.
11128
11129 2000-11-22  Alexander Larsson  <alexl@redhat.com>
11130
11131         * gdk/gdktypes.h:
11132         Add new type GdkSpan
11133         
11134         * docs/reference/gdk/gdk-sections.txt,
11135         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
11136         gdk/gdkregion.h:
11137         Implement and document gdk_region_spans_intersect_foreach.
11138
11139         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
11140         Add new file gdkrender-fb.c which contains all core
11141         rendering code.
11142         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
11143         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
11144         (optimized rectangle fillers).
11145
11146         * gdk/linux-fb/gdkdrawable-fb2.c:
11147         Move all rendering code to gdkrender-fb.c.
11148         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
11149         Use the new span intersection functions in gdk_fb_fill_spans.
11150         gdk_fb_draw_rectangle() clips filled rectangles and calls
11151         gc->fill_rectangle with the result.
11152         gdk_fb_fill_spans() gets extra argument "sorted".
11153
11154         * gdk/linux-fb/gdkevents-fb.c:
11155         Remove unused includes and defines.
11156         New function gdk_fb_get_time() to get correct time for events.
11157
11158         * gdk/linux-fb/gdkinput-ps2.c:
11159         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
11160         Make sure to set the time of all events.
11161
11162         * gdk/linux-fb/gdkmain-fb.c:
11163         Use gdk_fb_get_time ().
11164
11165         * gdk/linux-fb/gdkprivate-fb.h:
11166         New virtual GC calls: fill_span & fill_rectangle.
11167         Export gdk_fb_get_time().
11168         gdk_fb_fill_spans() gets extra argument "sorted".
11169
11170         * gdk/linux-fb/mi*.c:
11171         Use GdkSpan instead of GdkRectangle.
11172         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
11173         from XFree 4 source)
11174         
11175 2000-11-22    <jrb@redhat.com>
11176
11177         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
11178         reversing the order in an if statement will do.  Doing so managed
11179         to make the treemodelsort half work.  Other half will follow after
11180         I get the insert function fully fixed.
11181
11182 2000-11-21  Elliot Lee  <sopwith@redhat.com>
11183         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
11184         more than 2 bits. Besides, I need to implement an evil hack. :)
11185
11186 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
11187
11188         * docs/tutorial/gtk-tut.sgml: minor corrections
11189
11190 2000-11-20  Jonathan Blandford <jrb@redhat.com>
11191         * gtk/gtktreemodelsort.h: Add convertion functions to let you
11192           convert to and from relative path's and iters.
11193
11194         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
11195           testing sorting functions a bit better.  Currently broken -- will
11196           fix in morning.
11197
11198 2000-11-20  Havoc Pennington  <hp@redhat.com>
11199
11200         * gtk/gtkwidget.c: Documented a bunch of functions in here
11201         (gtk_widget_realize): Warn if you try to realize
11202         a widget with no parent that isn't a toplevel
11203         (gtk_widget_intersect): return a gboolean
11204
11205 2000-11-20  Havoc Pennington  <hp@redhat.com>
11206
11207         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
11208         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
11209         scrolling to be implemented in GDK to finish. Also, right now
11210         we just size_allocate all children on every layout change,
11211         which is pretty lame. Test commented out of testtext.c, 
11212         until it works better.
11213
11214 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
11215
11216         * gdk/linux-fb/gdkdrawable-fb2.c:
11217         Removed unused arguments from gdk_fb_drawable_get_pixel().
11218
11219         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
11220         Renamed fidur specific mouse packet data in MouseDevice to
11221         generic. Used it in ps2 mouse handling code to avoid blocking
11222         reads.
11223
11224 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
11225
11226         * demos/gtk-demo/main.c: Changed to have the list become
11227         non-italic when the demo window is destroyed through an external
11228         event (like a close button).  Doing so found three bugs in the
11229         widget.
11230
11231         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
11232
11233         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
11234         we actually set the cell.
11235
11236         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
11237
11238         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
11239         free a leaked path.  Thanks memprof.
11240
11241 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
11242
11243         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
11244         off-by-one error when destroying allocated segments
11245         on failure. (Elliot)
11246
11247 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
11248
11249         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
11250         memleaks found by Evan Martin.
11251
11252 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
11253
11254         * Released 1.3.2
11255         
11256         * NEWS: Updates for 1.3.2
11257
11258 2000-11-17  Tor Lillqvist  <tml@iki.fi>
11259
11260         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
11261         but in general for window system specific events.
11262
11263         * gtk/gtk.def
11264         * gtk/makefile.mingw.in
11265         * gtk/makefile.msc.in: Update.
11266         
11267         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
11268
11269 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
11270
11271         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
11272         distribute gtk.immodules.
11273
11274         * gtk/Makefile.am (install-data-local): Don't install the
11275         gtk.immodules file created for the uninstalled modules;
11276         instead run gtk-query-immodules after install
11277
11278 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11279
11280         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
11281         -rpath to the right install location.
11282
11283         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
11284         -export-dynamic.
11285
11286         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
11287         properly.
11288
11289 2000-11-15  Havoc Pennington  <hp@pobox.com>
11290
11291         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
11292         patch from Mikael Hermansson to temporarily stop blinking while
11293         the user is using the keyboard to type or navigate. 
11294
11295         Also, when blinking, stay on for longer than we stay off. Also,
11296         return from start_cursor_blink if !cursor_visible, to save
11297         checking that flag all over the place before we call
11298         start_cursor_blink.
11299
11300 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
11301
11302         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
11303         only contain a "fontset" line, which is now ignored.
11304
11305         * gtk/gtkentry.c (gtk_entry_button_release): Make 
11306         double-click-to-select-word work.
11307         
11308 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
11309
11310         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
11311         Don't move back one char when we are actually at the end of the 
11312         paragraph.
11313
11314 2000-11-15  Robert Brady  <robert@suse.co.uk>
11315
11316         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
11317         'o' < 'p'.
11318         
11319         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
11320         bind_textdomain_codeset.
11321
11322         (gtk_init_check): Make the warning about translating default:LTR
11323         sterner.
11324         
11325 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
11326
11327         * **/Makefile.am : remove unecessary rules for win32-specific
11328         config-substituted targets. If you want these rules, use
11329         --enable-maintainer-mode (called automatically by autogen.sh).
11330         Stops a lot of unneccessary make-time warnings.
11331
11332         * gtk/gtktext{layout,display}.c: Factor in total width as
11333         well as screen when figuring alignment for word-wrap as well as
11334         no wrap; this is necessary to handle lines that cannot be wrapped
11335         at all.
11336
11337 2000-11-15  Havoc Pennington  <hp@redhat.com>
11338
11339         * gtk/testtext.c: Implement essential color cycling feature
11340
11341 2000-11-15  Havoc Pennington  <hp@redhat.com>
11342
11343         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
11344         when we invalidate the main window.
11345
11346         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
11347         GtkTextView will now invalidate the side windows for us when text
11348         changes.
11349
11350 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
11351
11352         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
11353         unconditionally, since we may need to update the horizontal
11354         scrollbars even if the height didn't change.
11355
11356         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
11357         the extra attrs, since some of them affect size.
11358
11359         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
11360         x_offset correctly.
11361
11362 2000-11-15  Havoc Pennington  <hp@redhat.com>
11363
11364         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
11365         don't move the first line out into the margin, instead move the
11366         whole paragraph in order to make space for the first line within 
11367         the margin
11368
11369 2000-11-15  Havoc Pennington  <hp@redhat.com>
11370
11371         * gtk/gtktextview.c (changed_handler): offset redraw rect by
11372         xoffset in addition to yoffset, so horizontal scrolling doesn't
11373         break redraws
11374
11375 2000-11-15  Havoc Pennington  <hp@redhat.com>
11376
11377         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
11378         from the cursor
11379         (render_layout_line): fix reversed test that caused weird
11380         underlines to get drawn
11381
11382 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
11383
11384         * gdk/linux-fb/gdkprivate-fb.h:
11385         Fix debug macros.
11386         
11387 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
11388
11389         * gdk/linux-fb/gdkprivate-fb.h:
11390         Added virtual functions set_pixel, get_color,
11391         fill_span and draw_drawable to the GC.
11392         Added global _gdk_fb_screen_gc to use instead of
11393         NULL when drawing to the screen.
11394         Added _gdk_fb_gc_calc_state() prototype.
11395
11396         * gdk/linux-fb/gdkgc-fb.c:
11397         Call _gdk_fb_gc_calc_state() on any gc state change.
11398
11399         * gdk/linux-fb/gdkglobals-fb.c:
11400         Add _gdk_fb_screen_gc
11401                 
11402         * gdk/linux-fb/gdkdrawable-fb2.c:
11403         _gdk_fb_gc_calc_state() calculates best functions
11404         for the GC state and depth.
11405         Moved bpp specialized code to separate functions.
11406         Added optimized 24 bpp AA draw_drawable.
11407
11408         * gdk/linux-fb/gdkevents-fb.c:
11409         Silence gcc warning.
11410
11411         * gdk/linux-fb/gdkimage-fb.c:
11412         Use _gdk_fb_screen_gc
11413
11414         * gdk/linux-fb/gdkwindow-fb.c:
11415         Init and use _gdk_fb_screen_gc
11416
11417         * gdk/linux-fb/mitypes.h:
11418         Remove unused types.
11419
11420 2000-11-14  Havoc Pennington  <hp@pobox.com>
11421
11422         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
11423         to pixels
11424
11425 2000-11-14  Havoc Pennington  <hp@pobox.com>
11426
11427         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
11428
11429         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
11430         unknown char, no real reason we were using a variable. 
11431         Remove gtk_text_unknown_char variable. Fix all the text widget
11432         files accordingly.
11433
11434         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
11435         since the Unicode spec seems to prefer that character for our
11436         purposes.
11437
11438 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
11439
11440         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
11441         value of g_getenv() isn't freeable, so g_strdup it.
11442
11443         * modules/input/inuktitut.c: Inuktitut input method.
11444
11445         * modules/input/Makefile.am: Build this.
11446         
11447 2000-11-14  Elliot Lee  <sopwith@redhat.com>
11448
11449         * gtk/Makefile.am: Install gtk.immodules, needed for operation
11450         of gtk programs.
11451
11452 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
11453
11454         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
11455         reversed > that was causing Home to go to end of previous line.
11456
11457         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
11458         modified-keypresses (leave for bindings.)
11459
11460         * modules/input/Makefile.am: Remove useless -export-dynamic
11461         from module LDFLAGS.
11462
11463 2000-11-14  Havoc Pennington  <hp@redhat.com>
11464
11465         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
11466         higher.
11467
11468         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
11469         account. Also, render rise, underline, background, etc. for
11470         pixbufs as well as text. Also, draw underlines one pixel higher.
11471
11472         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
11473         PangoAttribute for the rise, so it gets drawn properly. Also,
11474         add the GtkTextAppearance attribute for pixbuf/widget segments
11475         as well; we should go ahead and have rise, underline, background,
11476         stipple work for those
11477
11478         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
11479         Pango
11480
11481 2000-11-15  Tor Lillqvist  <tml@iki.fi>
11482
11483         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
11484
11485         * gtk/gtk.def: Update.
11486
11487         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
11488         included.
11489         (gtk_rc_get_im_module_file): Use run-time installation directory
11490         on Win32.
11491
11492         * gdk/win32/rc/gdk.rc: Remove.
11493         * gdk/win32/rc/gdk.rc.in: New file.
11494         * gdk/win32/rc/Makefile.am: New file
11495         * gdk/win32/Makefile.am: Corresponding changes.
11496
11497         * gtk/gtk.rc: Remove.
11498         * gtk/gtk-win32.rc.in: New file.
11499         * gtk/Makefile.am: Corresponding changes.
11500
11501         * configure.in: Corresponding changes.
11502
11503         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
11504         has a built gtkcompat.h. Developers using CVS code on Win32 can
11505         hand-edit it from gtkcompat.h.in.
11506
11507         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
11508         gtkcompat.h from gtkcompat.h.win32.
11509
11510 2000-11-14  Havoc Pennington  <hp@redhat.com>
11511
11512         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
11513         to default to GDK_ACTION_MOVE if the drag is within a single
11514         widget. Defaults to GDK_ACTION_COPY between widgets.
11515
11516 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
11517
11518         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
11519
11520         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
11521
11522         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
11523         srcdir != builddir
11524
11525         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
11526
11527         * configure.in (GTK_VERSION): Up to 1.3.2
11528
11529         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
11530         gtkimcontextxim.h
11531
11532         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
11533         missing doc comment.
11534
11535 2000-11-14  Alexander Larsson  <alexl@redhat.com>
11536
11537         * modules/linux-fb/basic.c:
11538         Use the glib iconv wrappers.
11539
11540 2000-11-13  Havoc Pennington  <hp@pobox.com>
11541
11542         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
11543         still more bugs.
11544
11545         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
11546         scroll the GdkWindows before realization.
11547
11548 2000-11-13  Havoc Pennington  <hp@redhat.com>
11549
11550         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
11551         where GC didn't always get updated properly
11552
11553         * demos/gtk-demo/textview.c (create_tags): Use subattributes
11554         of fonts instead of setting the entire font
11555
11556         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
11557         setting entire font
11558
11559         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
11560
11561         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
11562         a bunch of individually-settable font attributes. You can still 
11563         use the "font" and "font_desc" args, they just set all the font
11564         attributes at once.
11565
11566 2000-11-13 Elliot Lee <sopwith@redhat.com>
11567
11568         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
11569
11570 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
11571
11572         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
11573         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
11574
11575         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
11576         work better.
11577
11578 2000-11-13  Havoc Pennington  <hp@redhat.com>
11579
11580         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
11581         the module file.
11582
11583         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
11584         dest->language
11585
11586         * gtk/testtext.c: Test pixels above/below/inside paragraphs
11587         settings
11588
11589         * gtk/gtktextview.c: Implement object args and setters/getters for
11590         all the aspects of the GtkTextAttributes that are not set from
11591         GtkWidget attributes. This is spacing, justification, margins,
11592         etc.
11593
11594         (gtk_text_view_set_arg)
11595         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
11596         args
11597         (gtk_text_view_class_init): Add args for justify, left_margin,
11598         right_margin, indent, and tabs
11599         
11600
11601         * gtk/gtktextlayout.c (set_para_values): fix to display indent
11602         attribute properly
11603
11604         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
11605         replace with indent attribute
11606
11607         * gtk/gtktextlayout.c (set_para_values): multiply indent by
11608         PANGO_SCALE
11609
11610         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
11611         rearranging code to do that
11612         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
11613         i.e. don't subtract the top_margin first, just to keep
11614         all margin-futzing in one place.
11615
11616         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
11617
11618         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
11619         special case of last line, Pango now handles this itself.
11620         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
11621         Y coordinate
11622         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
11623         (find_display_line_above): wasn't moving the byte index as it
11624         iterated over lines, so always returned byte 0. Also, port to use
11625         PangoLayoutIter.
11626         (find_display_line_below): same problem as
11627         find_display_line_above. Also, port to use PangoLayoutIter.
11628
11629 2000-11-13  Alexander Larsson  <alexl@redhat.com>
11630
11631         * gdk/linux-fb/*.[ch]:
11632         Massive reindent to gtk+ standard. My hands hurt.
11633
11634         * gdk/linux-fb/gdkcolor-fb.c:
11635         Move GdkColorPrivateFB from inherited to windowing_data
11636
11637         * gdk/linux-fb/gdkcursor-fb.c:
11638         _gdk_cursor_new_from_pixmap made static
11639
11640         * gdk/linux-fb/gdkdnd-fb.c:
11641         GdkDragContextPrivate moved to windowing_data
11642
11643         * gdk/linux-fb/gdkdrawable-fb2.c:
11644         Removed endian.h, use glib endianness macros instead
11645         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
11646         and GDK_DRAWABLE_IMPL_FBDATA
11647
11648         * gdk/linux-fb/gdkfont-fb.c:
11649         Add empty gdk_font_load(). Needed for linking of Gtk+.
11650
11651         * gdk/linux-fb/gdkimage-fb.c:
11652         Removed endian.h, use glib endianness macros instead
11653         Moved GdkImagePrivateFB to windowing_data
11654         gdk_image_new_bitmap didn't always allocate enough
11655         memory.
11656
11657         * gdk/linux-fb/gdkinput-ps2.c:
11658         Added semi-working support for MS serial mice.
11659
11660         * gdk/linux-fb/gdkprivate-fb.h:
11661         s/GdkWindowPrivate/GdkWindowObject/
11662         Removed GdkWindowPrivate typedef
11663         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
11664         Removed GDK_DRAWABLE_P
11665         Move GdkColorPrivateFB from inherited to windowing_data
11666         Moved GdkImagePrivateFB to windowing_data
11667
11668         * gdk/linux-fb/gdkvisual-fb.c:
11669         Removed some unused debug code.
11670
11671         * gdk/linux-fb/gdkwindow-fb.c:
11672         Use stock cursors instead of including X headers.
11673         s/GdkWindowPrivate/GdkWindowObject/
11674
11675         * gdk/linux-fb/mitypes.h:
11676         Removed unused types.
11677
11678         * modules/linux-fb/basic.c:
11679         Use the pango fribidi wrappers.
11680
11681 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11682
11683         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
11684         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
11685         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
11686         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
11687         GEqualFunc where applicable.
11688         
11689         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
11690         pango_font_description_equal as changed in pango.
11691         
11692         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
11693
11694         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
11695
11696         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
11697
11698         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
11699
11700         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
11701
11702         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
11703
11704         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
11705         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
11706
11707         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
11708         gtk_rc_styles_compare -> gtk_rc_styles_equal.
11709
11710 2000-11-12  Havoc Pennington  <hp@pobox.com>
11711
11712         * demos/gtk-demo/Makefile.am (democodedir): change demo install
11713         dir to datadir/gtk+-2.0/demo
11714
11715         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
11716         sorts of text widget and Pango font bugs. Urgh.
11717
11718         * demos/gtk-demo/Makefile.am (demos): Add textview.c
11719
11720         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
11721         tree that you should double click to see the demo. Fix 
11722         types of variables to reflect changed return values from 
11723         GtkTreeStore and GtkTreeViewColumn constructors.
11724
11725         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
11726         newly-created buffer to prepare for GObject semantics
11727
11728         * gtk/testtext.c: don't leak the buffer with GObject semantics
11729
11730         * gtk/testtextbuffer.c: ditto
11731         
11732 2000-11-12  Havoc Pennington  <hp@pobox.com>
11733
11734         Rename this testgtk to gtk-demo to avoid confusion, and 
11735         install it so people can use it as a supplement to 
11736         the documentation.
11737         
11738         * demos/gtk-demo: Moved from demos/testgtk
11739
11740         * demos/testgtk: Removed
11741
11742         * configure.in: make Makefile in gtk-demo
11743         
11744         * demos/gtk-demo/Makefile.am: Install sample source to 
11745         datadir/gtk-demo (maybe there's a better place?), and 
11746         rename the binary to gtk-demo
11747         
11748         * demos/gtk-demo/main.c (load_file): Load installed sample
11749         source if source isn't found in pwd.
11750
11751 2000-11-09  Havoc Pennington  <hp@pobox.com>
11752
11753         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
11754         argument to set the char displayed when visibility == FALSE
11755         (gtk_entry_create_layout): If !entry->visible, replace 
11756         all chars with the "invisible char"
11757
11758         * gtk/testgtk.c: Test the invisible_char deal
11759         
11760 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
11761
11762         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
11763         can't get a native font in the right encoding.
11764
11765 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
11766
11767         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
11768         respectively.
11769
11770 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
11771
11772         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
11773         Fix warning when moving between paragraphs.
11774
11775         * gtk/gtkentry.[ch]: Change move => move_cursor, 
11776         delete => delete_from_cursor, insert => insert_at_cursor
11777
11778 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
11779
11780         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
11781
11782         * modules/input/imthai-broken.c: A Thai input method for use if
11783         Thai keys are really generating Latin1 keysyms.
11784
11785         * modules/input/Makefile.am: Build these.
11786
11787 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
11788
11789         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
11790         g_filename_{to,from}_utf8 now takes an extra parameter.
11791
11792         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
11793         strftime into UTF-8.
11794
11795         (column_from_x, gtk_calendar_paint_day_names): Support RTL
11796         calendars.
11797
11798         (gtk_calendar_paint_day_names): Draw day names in the right 
11799         place.
11800         
11801 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
11802
11803         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
11804         problem with using result of g_get_charset() backwards -
11805         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
11806
11807         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
11808         negative min_width/height and max_width/height to
11809         mean "requisition"; this allows setting a window
11810         to be user-resizable in only one direction easily.
11811
11812         * gtk/testgtk.c (create_main_window): Remove hard-coded
11813         usize - set a default size in the vertical direction.
11814
11815 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
11816
11817         * gtk/gtkrange.c: Add some missing casts. Support 
11818         2 and 3 button clicks on the arrows to mean 
11819         "move by pages" and "jump to end". (Like gtkspinbutton)
11820
11821 2000-11-12 Hans Breuer <Hans@Breuer.Org>
11822
11823         * gdk/win32/makefile.msc : reflect build module changes
11824
11825         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
11826         from GdkPixmap*, cast implementation member instead.
11827
11828         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
11829         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
11830         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
11831         more Gdi functions return value checking. 
11832         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
11833         GdkImagePrivateWin32 *.
11834
11835         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
11836         menus useable again. Add #pragma message to keep reminded on this issue.
11837         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
11838         windows. This allows to enable backing store on Win32!
11839
11840         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
11841         in drawable is of impl type. Correct specific type checks appropriate.
11842  
11843         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
11844         GDK_WINDOW_DESTROYED before allocating new resources.
11845
11846         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
11847
11848         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
11849         (gdk_window_foreign_new) initialize parent handle.
11850         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
11851
11852         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
11853         Let the GDI invalidate the window on MoveWindow call to fix scrolling
11854         problems (e.g. main buttons in testgtk). 
11855
11856 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
11857
11858         * gtk/gtkentry.c (gtk_entry_key_press): Call 
11859         gtk_widget_activate for GDK_Return.
11860
11861         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
11862         of preedit cursor position.
11863
11864 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
11865
11866         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
11867         static.
11868
11869 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
11870
11871         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
11872         out support for multiple locales; that simple doesn't
11873         work reliably with current Xlib
11874
11875         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
11876         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
11877         Add support for positioning the cursor within the preedit string.
11878
11879 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
11880
11881         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
11882         at XIM input method module.
11883
11884         * gtk/gtktextview.c: Check for bindings after passing
11885         events to im context filter.
11886
11887 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
11888
11889         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
11890         empty attribute lists properly.
11891
11892 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
11893
11894         * gtk/queryimmodules.c (main): Return non-zero exit
11895         status if errors were encountered querying any
11896         modules.
11897
11898         * modules/input/Makefile.am (moduledir): remove
11899         leftover bin program target.
11900
11901         * docs/make-todo: Fix typo in error message.
11902
11903 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
11904
11905         * configure.in: Add modules/input/Makefile
11906
11907 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
11908
11909         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
11910         don't include gtkthemes.h.
11911
11912         * gtk/testgtk.c gtk/testtext.c: Set environment variables
11913         to point
11914
11915         * gtk/Makefile.am: Add new .c and .h files, build 
11916         gtk-query-immodules and use it to create a gtk.immodules
11917         file for use of test programs.
11918
11919         * gtk/gtkpreview.c: remove extra blank line.
11920
11921 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
11922
11923         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
11924         Add the ability to add extra tables beyond the default
11925         one, and also the ability to have compose sequences 
11926         that are prefixes of other compose sequences. 
11927
11928         * gtk/gtkimcontextsimple.c: Export a preedit string which
11929         consists of possible candidates for keystrokes that have
11930         been entered but not yet committed.
11931
11932         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
11933         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
11934
11935         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
11936         Add a function to add input-method switching menu items
11937         to a menu.
11938
11939         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
11940         when switching input methods.
11941
11942         * gtk/gtkimcontextsimple.[ch]: Change the format of
11943         the compose table to allow compose tables of different
11944         lengths / sequence.
11945
11946 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
11947
11948         * gtk/gtkimmodule.[ch]: Support routines for loading
11949         GtkIMContext implementations dynamically at runtime.
11950
11951         * modules/input/imcyrillic-translit.c: A sample input
11952         method (based on GtkIMContextSimple with an extra table),
11953         which demonstrates preedit strings and the module
11954         system for input modules
11955
11956         * gtk/queryimmodules.c: Program to query the available
11957         input modules and write the results into a file.
11958          
11959         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
11960         extra config options "im_module_file" (cache file for
11961         input method modules), and "im_module_path" - path
11962         to look for modules when generating cache file.
11963
11964         This doesn't scale.
11965
11966 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
11967
11968         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
11969         generic code from gtkthemes into a new abstraction
11970         GtkModule which has the logic for implementing
11971         a loadable module which implements a number of 
11972         GObject types.
11973
11974 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
11975
11976         * gtk/gtkeditable.[ch]: Convert GtkEditable from
11977         a class into an interface  
11978         
11979         * gtk/gtkoldeditable.[ch]: Move the old editable
11980         implementation into here, so legacy widgets can
11981         still rely on the implemenation. GtkOldEditable
11982         exports GtkEditable. Make selection handling
11983         code use new text conversion functions (and
11984         handle UTF-8 as a side-effect). Use GtkClipboard
11985         for CLIPBOARD.
11986
11987         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
11988         Adopt to match above changes.
11989
11990         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
11991         avoid GtkOldEditable implementation. Restructure
11992         to reduce number of places that modify state directly.
11993         Move to GtkBindingSet. Display the preedit string.
11994         Queue recomputation of PangoLayout and scroll position
11995         to improve effiency of doing complex changes naively.
11996         Add a menu with cut/copy/paste and input method selection.
11997
11998 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
11999
12000         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
12001         to set preedit string and attributes; display preedit string by
12002         inserting string and attributes at cursor when creating the
12003         GtkTextLineDisplay.
12004
12005         * gtk/gtktextlayout.c: Move all conversions between byte
12006         positions in PangoLayout and GtkTextIter into new functions
12007         line_display_iter_to_index/index_to_iter that properly
12008         handle the preedit string.
12009
12010         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
12011         it to return const char * (eventually will end up
12012         as GCONST char *, most likely.)
12013
12014         * gtk/gtktextview.[ch]: Handle the preedit string, call
12015         gtk_im_context_reset() as necessary, add a menu to switch
12016         input methods.
12017         
12018         * gtk/gtktextlayout.[ch]: Remove useless
12019         gtk_text_layout_get_log_attrs() function.
12020
12021 2000-11-11  Tor Lillqvist  <tml@iki.fi>
12022
12023         * gdk/gdk.def
12024         * gtk/gtk.def: Update.
12025
12026         * gdk/win32/*.c: Add last argument to g_type_register_static()
12027         calls.
12028
12029         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
12030
12031         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
12032         generated by older wheel mouse drivers. Get the correct y
12033         coordinate from WM_MOUSEWHEEL messages.
12034
12035         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
12036         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
12037         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
12038         Debugging functions.
12039
12040         * gdk/win32/gdkprivate-win32.h: Declare them.
12041
12042         * gdk/win32/gdkinput-win32.h: Add declaration for
12043         gdk_input_window_destroy().
12044
12045         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
12046
12047 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
12048
12049         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
12050         function to help handle keeping things in sync.
12051
12052 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
12053
12054         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
12055         BOXED marshallers.
12056
12057         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
12058         (gtk_list_store_class_init): use the new BOXED marshallers.
12059
12060         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
12061         new_with_values to new_with_types.
12062         (gtk_tree_store_get_column_type): add this.
12063         (gtk_tree_store_class_init): use the new BOXED marshallers.
12064
12065         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
12066         mirror some POINTER marshallers.
12067
12068 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
12069
12070         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
12071         allow more interesting iterators.  Also, made the lifecycle of
12072         iterators more explicit.
12073
12074         * gtk/gtktreemodelsort.[ch]: New model for sorting.
12075
12076         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
12077         types.
12078
12079 2000-11-09  Alexander Larsson  <alexl@redhat.com>
12080
12081         * demos/testgtk/menus.c:
12082         Changes to make the new testgtk compile after
12083         gtk_menu_append was removed.
12084
12085         * gdk/linux-fb/gdkdrawable-fb2.c
12086         (gdk_fb_get_depth, gdk_fb_get_visual,
12087         gdk_drawable_impl_fb_class_init): Implement
12088         these drawable functions. Now GtkImages work again.
12089
12090         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
12091
12092         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
12093         
12094         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
12095         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
12096         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
12097         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
12098
12099 2000-11-08  Havoc Pennington  <hp@pobox.com>
12100
12101         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
12102         visible_set args, don't know where these had gone, I thought they
12103         used to be there
12104
12105         * gtk/testtext.c: Add a menu item to apply invisibility tag;
12106         now we can test the feature and see that it's totally broken.
12107
12108 2000-11-08  Havoc Pennington  <hp@pobox.com>
12109
12110         Make DND copy pixbufs and tags when source and target share a 
12111         tag table.
12112         
12113         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
12114         in-process GTK_TEXT_BUFFER_CONTENTS target
12115         (gtk_text_view_drag_data_received): Paste from
12116         GTK_TEXT_BUFFER_CONTENTS if we receive it.
12117
12118 2000-11-08  Alexander Larsson  <alexl@redhat.com>
12119
12120         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
12121         API changes.
12122
12123         * gtk/gtkmenu.c: Add support for scrolling menus.
12124         Remove gtk_menu_append/prepend/insert, these have been moved to
12125         gtkcompat.h as #defines.
12126
12127         * gtk/gtkcompat.h.in:
12128         Add compatibility #defines for gtk_menu_append/prepend/insert
12129
12130         * gtk/gtkmenu.h: Add data needed for scrolling menus.
12131         GtkMenuPositionFunc gets an extra argument push_in.
12132         gtk_menu_append/prepend/insert removed.
12133         
12134         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
12135         positioning behaviour to fit to scrolling menus.
12136
12137         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
12138         into menuitem->submeny. That is wrong, and broke torn
12139         off submenus of torn off menus, since they were unrealized
12140         when the first menu was unrealized.
12141
12142         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
12143         gtk_menu_shell_select_item() since these need to be overridden in
12144         GtkMenu.
12145
12146         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
12147         positioning behaviour to fit to scrolling menus.
12148         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
12149         the current item so that it is prelighted when the menu pops up.
12150         This is a workaround to the fact that the menu doesn't get the
12151         initial enter event (due to grabs).
12152
12153         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
12154         s/gtk_menu_append/gtk_menu_shell_append/
12155
12156         * gtk/gtknotebook.c:
12157         s/gtk_menu_insert/gtk_menu_shell_insert/
12158
12159         * gtk/testgtk.c (create_menu, create_menus):
12160         Create the first menu with 50 items so that menu scrolling
12161         can be tested.
12162         
12163         
12164         Patch from Jonathan Blandford  <jrb@redhat.com>
12165
12166         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
12167         system to handle size requests.  First, we ask what the size of
12168         the toggle is.  Then, when allocating the size, we allocate the
12169         toggle_size first.  This way we can have multiple menu-item
12170         classes w/o needing a seperate class for each.
12171
12172         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
12173         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
12174
12175         * gtk/gtkcheckmenuitem.c
12176         (gtk_check_menu_item_toggle_size_request): New function to handle
12177         the toggle size-request.
12178
12179 2000-11-07  Havoc Pennington  <hp@redhat.com>
12180
12181         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
12182         Half-ass somewhat fix this function, so that scrolling to the
12183         insertion point works. Pango hacking is in the future to really
12184         fix it.
12185
12186         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
12187         length of data, no longer used.
12188
12189         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
12190         method contents in here, get rid of destroy method
12191         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
12192         that were backward. Remove debug spew.
12193         (cut_or_copy): Make the clipboard work with insert_range to
12194         preserve tags and pixbufs, not just the primary selection.
12195
12196 2000-11-07  Havoc Pennington  <hp@redhat.com>
12197
12198         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
12199         to gtk_text_mark_get_visible
12200
12201         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
12202         bug that was generating an invalid iterator
12203
12204         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
12205         ensure_char_offsets() in front of code placing the iter in an
12206         invalid state.
12207
12208         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
12209         make override_location arg const
12210         (paste): Replace the selection if we paste into the 
12211         current selection
12212
12213         * gtk/gtkselection.h: Remove "GtkSelectioData"
12214         (struct _GtkSelectionData): move the definition here.
12215
12216         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
12217         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
12218
12219         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
12220
12221         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
12222         (gtk_text_buffer_insert_range_interactive): implement
12223         (gtk_text_buffer_get_tags): Remove, replaced by
12224         gtk_text_iter_get_tags()
12225
12226         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
12227         limit parameter, to avoid infinite linear scan.
12228         (gtk_text_iter_backward_search): Add search limit
12229         (gtk_text_iter_forward_find_char): Add search limit
12230         (gtk_text_iter_backward_find_char): Add search limit
12231
12232 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
12233
12234         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
12235         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
12236         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
12237         gdk/linux-fb/gdkwindow-fb.c:
12238         use g_object_new() instead of g_type_create_instance() which
12239         is a private function for fundamental type implementations.
12240
12241         * gdk/linux-fb/gdkinput-ps2.c:
12242         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
12243         instead just store the current modifier state. Add a (somewhat broken)
12244         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
12245         Rename exported function gdk_input_ps2_get_mouseinfo to
12246         gdk_input_get_mouseinfo.
12247
12248         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
12249         gdk/linux-fb/gdkwindow-fb.c:
12250         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
12251         
12252
12253 2000-11-02  Havoc Pennington  <hp@redhat.com>
12254
12255         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
12256         use stock buttons. Should be 100% source compatible, appropriate
12257         filesel fields now point to dialog->vbox and dialog->action_area.
12258         On the bizarre side, dialog->action_area and filesel->action_area
12259         are not the same widget.
12260         (gtk_file_selection_init): Put some padding around the selection
12261         entry, so it isn't touching the GtkDialog separator.    
12262
12263         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
12264         use stock buttons, etc. Should also be source compatible.
12265         Set the dialog default title in _init not _new().
12266         
12267         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
12268         Use stock buttons; don't put a button box inside the existing
12269         dialog button box. Don't bother with push/pop colormap anymore.
12270
12271         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
12272         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
12273         for message dialog, and necessary for the font selection and color
12274         selection with help and apply buttons.
12275         
12276         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
12277         to the created button widget. Set GTK_CAN_DEFAULT on the button.
12278         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
12279         between buttons, put less padding around the action area.
12280         (gtk_dialog_run): Exit on unmap rather than on destroy. 
12281         This will also exit the loop if the widget is hidden.
12282         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
12283         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
12284         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
12285         special-case delete event.
12286
12287         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
12288         formatting
12289         
12290 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
12291
12292         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
12293         button to temporarily disable position recording in the
12294         "saved position" test.
12295
12296 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
12297
12298         * gtk/gtkthemes.c: added compat code that temporarily implements
12299         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
12300         going to be revamped by owen's upcoming GtkModule patches, but
12301         untill then people want gtk to build, right? ;)
12302
12303 2000-11-04  Havoc Pennington  <hp@pobox.com>
12304
12305         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
12306         list
12307
12308         * docs/Changes-2.0.txt: Add note about
12309         gtk_container_get_toplevels()
12310
12311         * gtk/gtktextview.h: formatting
12312         
12313         * gtk/gtktextview.c: don't start descriptions with "Returns",
12314         confuses gtk-doc
12315
12316 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
12317
12318         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
12319         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
12320
12321 2000-11-03  Havoc Pennington  <hp@redhat.com>
12322
12323         * gtk/gtktexttagtable.c: Docs
12324         (gtk_text_tag_table_size): return a signed int
12325
12326         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
12327         (gtk_text_tag_event): make the event_object a GObject
12328
12329         * gtk/gtktextview.c: Write API docs for all functions.
12330
12331         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
12332         for gtk_text_view_get_window_type() called on one of the private
12333         windows.
12334
12335         * gtk/gtktextview.c: Instead of accessing text_view->buffer
12336         directly, call get_buffer() which demand-creates a default
12337         buffer. So gtk_text_view_new() can be used to create a view with a
12338         default buffer in it, if you just want an empty text box users can
12339         put data in. Useful for GUI builders also.
12340
12341 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
12342
12343         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
12344         the charset encodign portion MUST be in lowercase.
12345         * gtk/gtkrc.az: added file for Azeri language
12346
12347 2000-11-03  Havoc Pennington  <hp@redhat.com>
12348
12349         Get widgets working on the btree/buffer side. Display of them 
12350         still doesn't work.
12351         
12352         * gtk/gtktextview.c: start implementing child widget stuff
12353
12354         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
12355
12356         * gtk/gtktextlayout.c: handle embedded widgets
12357
12358         * gtk/gtktextdisplay.c: handle embedded widgets
12359
12360         * gtk/gtktextchild.c: Implement all the child anchor goo
12361
12362         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
12363         function
12364
12365         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
12366         (insert_pixbuf_or_widget_segment): abstract out common portions of 
12367         creating a child anchor or a pixbuf segment.
12368         (gtk_text_btree_create_child_anchor): new function
12369         (gtk_text_btree_unregister_child_anchor): new function
12370
12371         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
12372         allocate_child signal on GtkTextLayout
12373
12374         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
12375         values
12376         (gtk_text_iter_get_child_anchor): new function
12377
12378         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
12379         default handler for the changed signal, which calls
12380         gtk_text_buffer_set_modified(), instead of just always emitting
12381         changed then calling set_modified() manually. I guess this is
12382         maybe more flexible. It seems logical.
12383
12384 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
12385
12386         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
12387         now.
12388
12389         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
12390
12391 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
12392
12393         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
12394         been marked static.
12395
12396 2000-11-02  Havoc Pennington  <hp@redhat.com>
12397
12398         * gtk/testgtk.c (create_labels): had a test backward
12399
12400         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
12401         fields, so the dest GC ends up with the correct clip origin, 
12402         etc. Fixes a bug where colored labels didn't redraw 
12403         properly.
12404
12405 2000-11-02  Alexander Larsson  <alexl@redhat.com>
12406
12407         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
12408         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
12409         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
12410         Add last argument to t_type_register_static call.
12411         
12412         * gdk/linux-fb/gdkdrawable-fb2.c:
12413         Add last argument to t_type_register_static call.
12414         export the get_image drawable virtual function.
12415
12416         * gdk/linux-fb/gdkimage-fb.c:
12417         Add last argument to t_type_register_static call.
12418         rename gtk_image_get to _gdk_fb_get_image and
12419         export it for use by gdkdrawable-fb2.
12420
12421         * gdk/linux-fb/gdkprivate-fb.h:
12422         export _gdk_fb_get_image.
12423
12424         * gdk/linux-fb/gdkselection-fb.c:
12425         Add new api call stubs.
12426
12427         * gtk/Makefile.am:
12428         Missing ( in linux-fb part.
12429
12430         * modules/linux-fb/Makefile.am:
12431         Must link with gdk_pixbuf or get unresolved symbol.
12432
12433 2000-11-01  Havoc Pennington  <hp@pobox.com>
12434
12435         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
12436         GTK_TYPE_TEXT_ITER and BOXED marshallers
12437
12438         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
12439
12440         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
12441         
12442         * gtk/gtk-boxed.defs: add GtkTextIter
12443
12444         * gtk/gtkmarshal.list: Add marshallers for text widget that 
12445         properly use OBJECT and BOXED
12446
12447 2000-11-01  Havoc Pennington  <hp@redhat.com>
12448
12449         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
12450
12451         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
12452         before returning it. 
12453         
12454 2000-11-01  Havoc Pennington  <hp@redhat.com>
12455
12456         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
12457         Clip the rectangle to be rendered to the drawable, since
12458         get_from_drawable() requires a region within the drawable
12459
12460 2000-11-01  Havoc Pennington  <hp@redhat.com>
12461
12462         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
12463         from coordinates.
12464
12465 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
12466
12467         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
12468         it isn't NULL.
12469
12470 2000-11-01  Havoc Pennington  <hp@pobox.com>
12471
12472         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
12473         on a label
12474         (gtk_label_finalize): unref the attr list if any.
12475
12476         * gtk/testgtk.c (create_get_image): close test on second click
12477         (make_message_dialog): close dialog if it exists
12478
12479         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
12480
12481         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
12482         gdk-pixbuf
12483
12484         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
12485         from Pango markup format
12486         (gtk_label_set_markup_with_accel): ditto but with accelerator
12487         parsing
12488
12489         * gtk/gtkimage.c (gtk_image_expose): reformatting.
12490
12491         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
12492         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
12493         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
12494         call gdk_window_get_origin().
12495
12496         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
12497         implement GDK_PIXBUF_ALPHA_FULL
12498         
12499 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
12500
12501         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
12502         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
12503         g_signal_handlers_disconnect_matched to block/unblock and disconnect
12504         multiple handlers respectively, instead of only treating the
12505         first handler found (bug reported by owen).
12506
12507 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
12508
12509         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
12510
12511         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
12512
12513         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
12514         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
12515         gtk/gtktreeviewcolumn.h: Fixed inline docs.
12516
12517         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
12518         widget.  Needs writing someday.
12519
12520         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
12521         the docs.
12522
12523 2000-10-30  Havoc Pennington  <hp@redhat.com>
12524
12525         * gtk/gtktextview.h, gtk/gtktextview.c:
12526         Rename delete_at_cursor delete_from_cursor, and 
12527         move to move_cursor.
12528
12529 2000-10-30  Havoc Pennington  <hp@redhat.com>
12530
12531         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
12532         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
12533         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
12534         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
12535         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
12536         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
12537         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
12538         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
12539         gtktexttypes.h, gtktextview.c, gtktextview.h:
12540
12541         Massive reindentation and reformatting. Arg alignment and comments
12542         still need fixing in various places.
12543
12544 2000-10-30  Havoc Pennington  <hp@redhat.com>
12545
12546         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
12547         to be named insert_at_cursor and delete_at_cursor so C++ can
12548         handle them.
12549
12550 2000-10-28  Tor Lillqvist  <tml@iki.fi>
12551
12552         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
12553         to get a double directory separator in case the home directory
12554         ends with one. This would cause trouble especially on Windows,
12555         where the path will be confused with the syntax for an an UNC
12556         (network share) path \\server\share\path.
12557         (gtk_rc_add_initial_default_files): Ditto.
12558
12559 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
12560
12561         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
12562
12563         * gtk/gtktextview.c: Use correct marshallers.
12564
12565 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
12566
12567         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
12568         use new iter stuff, and added all the appropriate signals et al.
12569
12570         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
12571         code is internal to gtk only.
12572
12573 2000-10-28  Tor Lillqvist  <tml@iki.fi>
12574
12575         * gtk/gtk.def
12576         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
12577         glib-genmarshal etc.
12578
12579 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
12580
12581         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
12582         parallel builds.
12583
12584 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
12585
12586         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
12587
12588 2000-10-27  Robert Brady  <robert@suse.co.uk>
12589
12590         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
12591         en_GB (British), ia (Interlingua).
12592
12593 2000-10-26  Havoc Pennington  <hp@redhat.com>
12594
12595         * gtk/gtktextiter.c (my_strrstr): fix constness warning
12596
12597         Fixed output of:
12598         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
12599         
12600         * gtk/gtktextsegment.c (char_segment_new): rename
12601         (_char_segment_new_from_two_strings): rename
12602         (_toggle_segment_new): rename
12603         
12604         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
12605         (make_clipboard_widget): make it static
12606         (text_get_func): static
12607         (text_clear_func): static
12608
12609         * gtk/gtkcolorsel.c (adjustment_changed): make this function
12610         static
12611         (hex_changed): make it static
12612         (hsv_changed): make it static
12613         (opacity_entry_changed): make it static
12614
12615         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
12616         (toggle_segment_check_func): rename with _gtk
12617
12618         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
12619         (_widget_segment_new): rename
12620         (_widget_segment_add): rename
12621         (_widget_segment_remove): rename
12622         (_widget_segment_ref): rename
12623         (_widget_segment_unref): rename
12624
12625         * gtk/gtktextmark.c (_mark_segment_new): Rename
12626         _gtk_mark_segment_new   
12627
12628 2000-10-26  Havoc Pennington  <hp@redhat.com>
12629
12630         * gtk/gtkmarshal.list: add new marshallers used by the text widget
12631         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
12632         types
12633
12634         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
12635         marshaller types
12636
12637         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
12638         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
12639         license on these files.
12640
12641         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
12642         work.
12643
12644         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
12645         runtime random number different for each tree, instead of 
12646         a constant I made up.
12647
12648 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
12649
12650         * gtk/Makefile.am: buncha cleanups, kludged build sources
12651         dependencies with a Makefile: oldest-source-stamp dependancy
12652         for the moment. automake is really fighting us here, with
12653         intentionally not allowing user-defined rules or dependancies
12654         prior to it's -include $(DEP_FILES) statement. sucks rocks!
12655
12656         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
12657         to public headers. tehy have a comment stating that they are
12658         "semi-public" aren't included by gtk.h and if enums popup there,
12659         they can be /*< skip >*/-ed.
12660
12661         * gtk/gtktextlayout.h: 
12662         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
12663         added LGPL... <SIGH>
12664
12665 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
12666
12667         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
12668         GtkTreeIter.  Added iterators everywhere.
12669
12670         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
12671
12672         * gtk/gtktreeviewselection.c: Changed to use the iterators.
12673
12674         * gtk/gtktreestore.c: Changed to use the iterators.
12675
12676         * gtk/gtkliststore.c: Commented out the code.  Will convert to
12677         iterators tomorrow.
12678
12679         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
12680         iterators tomorrow.
12681
12682         * gtk/treestoretest.c: Changed to use iterators.
12683
12684         * demos/testgtk/main.c: Moved to use the new iterator system.
12685
12686 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
12687
12688         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
12689         localization misbehaviour.
12690
12691         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
12692         a useless type without copy/free.
12693
12694         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
12695         of GTK_TYPE_CTREE_NODE.
12696
12697 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
12698
12699         * gtk/gtksignal.c:
12700         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
12701         applicable.
12702
12703         * gtk/gtk-boxed.defs (GtkSelectionData): specify
12704         gtk_selection_data_copy and gtk_selection_data_free
12705         do GtkSelectionData work as params in signals.
12706
12707 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
12708
12709         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
12710         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
12711         couldn't they at least give it a non-standard name?
12712         
12713         * gtk/gtktextlayout.c: arg! yet another implementation of
12714         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
12715
12716         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
12717         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
12718         home. now i know this _is_ a conspiracy.
12719
12720         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
12721         ::state-changed.
12722
12723         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
12724         (gtk_accel_group_create_add): marshaller signature fixups.
12725
12726         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
12727         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
12728
12729         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
12730         anymore.
12731
12732 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
12733
12734         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
12735         due to the signal system changes, it wouldn't build currently. to
12736         be fixed soon.
12737
12738         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
12739
12740         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
12741         so it needs gtk_marshal_VOID__ENUM() instead of
12742         gtk_marshal_NONE__UINT().
12743
12744         * gdk/gdk*.c: adapted type registration functions.
12745
12746         * gtk/gtkbindings.c:
12747         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
12748         gone.
12749
12750         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
12751
12752         * gtk/gtkobject.c:
12753         (gtk_object_destroy):
12754         (gtk_object_shutdown): fixed recursion guards. basically we have to
12755         catch the case where any of GObject.shutdown() or gtk_object_destroy()
12756         is called during ::destroy, and avoid recursion there.
12757
12758         * gtk/gtktypeutils.c:
12759         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
12760         boxed_copy/boxed_free. this needs a more general solution based on a
12761         publically installed code-generator utility.
12762
12763         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
12764         glib's gobject has support for that now.
12765         define GtkSignalMarshaller in terms of GSignalCMarshaller.
12766
12767 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
12768
12769         * gtk/gtksignal.[hc]:
12770         * gtk/gtkmarshal.[hc]:
12771         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
12772         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
12773         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
12774         care of that.
12775
12776         * *.c: marshaller name fixups.
12777
12778         * gtk/gtkmarshal.list: added a comment briefing the format.
12779
12780 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
12781
12782         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
12783         compatibility macros here now. more specifically, most of
12784         the API is preserved (yes, _most_, nonwithstanding the
12785         following exceptions listed, the API is stil lHUGE ;)
12786         things that got removed completely:
12787         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
12788         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
12789         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
12790         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
12791         gtk_signal_remove_emission_hook().
12792         non-functional functions variants:
12793         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
12794         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
12795         not supported anymore.
12796         (gtk_signal_compat_matched): new internal function to aid
12797         implementation of the compatibility macros, it  provides
12798         functionality to block/unblock/disconnect handlers based
12799         on func/data.
12800
12801         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
12802
12803         * *.c: adaptions to new type registration API signatures.
12804
12805 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
12806
12807         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
12808
12809 2000-10-25  Robert Brady  <robert@suse.co.uk>
12810
12811         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
12812         gdk_property_delete): If window == NULL, assume the root window.
12813         (restoring the behaviour that was in 1.2).
12814         
12815         * gtk/testtext.c (save_buffer): Allow creation of new files when
12816         saving.
12817
12818         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
12819         calls to read().
12820
12821 2000-10-25  Tor Lillqvist  <tml@iki.fi>
12822
12823         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
12824
12825         * gdk/win32/gdkdrawable-win32.c
12826         * gdk/win32/gdkimage-win32.c
12827         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
12828         X11 backend.
12829
12830         * gdk/win32/gdkcc-win32.c
12831         * gdk/win32/gdkcolor-win32.c
12832         * gdk/win32/gdkfont-win32.c
12833         * gdk/win32/gdkinput-win32.c
12834         * gdk/win32/gdkmain-win32.c
12835         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
12836
12837 2000-10-24  Havoc Pennington  <hp@redhat.com>
12838
12839         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
12840         it a static function
12841
12842         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
12843         redraw text when a tag is applied to it.
12844
12845         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
12846         (gtk_text_tag_affects_nonsize_appearance): private functions to
12847         see if a tag requires various kinds of redraw/layout to be queued
12848         up.
12849
12850         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
12851
12852         * gtk/testtext.c (fill_example_buffer): Put the cursor 
12853         at the start of the buffer, so search works by default
12854
12855         * gtk/gtktextiter.c (lines_match): init match_start always
12856
12857         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
12858         function, get iter at a line + a byte index
12859
12860         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
12861         to set byte position within a line
12862         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
12863
12864 2000-10-23  Havoc Pennington  <hp@redhat.com>
12865
12866         * gtk/testtext.c: Re-enable the "find" dialog
12867
12868         * gtk/testgtk.c: Add test for gdk_drawable_get_image
12869         
12870         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
12871         the arguments to gdk_draw_drawable were in the wrong order
12872         (gdk_window_paint_init_bg): This function was ignoring the
12873         init_region, instead of clipping to it, so the entire backing
12874         pixmap was cleared on every begin_paint()
12875         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
12876         was in here again, the loop kept using the same GtkWindowPaint
12877         over and over.
12878         (gdk_window_begin_paint_region): Fix a bug where we had two
12879         x_offset instead of x_offset and y_offset
12880
12881         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
12882         before we get the image.
12883         (gdk_draw_drawable): get the composite before we draw the drawable.
12884         (gdk_drawable_real_get_composite_drawable): default
12885         get_composite_drawable implementation that returns the drawable 
12886         itself
12887
12888         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
12889         get_composite_drawable virtual function
12890
12891         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
12892         list-walking bug
12893
12894         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
12895         make this work if the source drawable is a GdkDrawableImplX11
12896         instead of a public drawable type. This is really broken; the
12897         problem is that GdkDrawable needs a virtual method get_xid(), but
12898         of course that doesn't work in practice. Enter RTTI.
12899
12900         Also, improve mismatched depth message.
12901
12902         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
12903         GdkPixmap
12904
12905         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
12906         install _gdk_x11_get_image as our implementation of get_image
12907         
12908         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
12909         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
12910
12911         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
12912         gdk_drawable_get_image
12913
12914         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
12915
12916         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
12917         get_image
12918
12919         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
12920         trailing semicolon after for loop
12921
12922 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
12923
12924         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
12925         where font_desc for widget's context lagged widget's font_desc by
12926         one step.
12927
12928 2000-10-22  Tor Lillqvist  <tml@iki.fi>
12929
12930         * gdk/win32/gdkgc-win32.c
12931         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
12932
12933         * gtk/makefile.mingw.in
12934         * gtk/gtk.def: Updates.
12935
12936         * gtk/testgtk.c: sleep() is called _sleep in MS's C
12937         library.
12938
12939         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
12940
12941         * gtk/makefile.msc: Remove
12942
12943         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
12944
12945         * gtk/Makefile.am: Add it.
12946
12947         * configure.in: Generate it.
12948
12949         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
12950         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
12951         something even if not implemented, to satisfy picky MSVC.
12952
12953         Patches by Hans Breuer:
12954         
12955         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
12956         SetBkMode() and SetTextAlign() before calling
12957         pango_win32_render().
12958
12959         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
12960         Set hcliprgn to NULL after destroying it.
12961         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
12962
12963         * gdk/win32/gdkgeometry-win32.c
12964         (_gdk_windowing_window_queue_antiexpose): More effective
12965         implementation.
12966
12967         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
12968         depth as default, not the visual's.
12969
12970         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
12971         against empty title.
12972
12973         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
12974         IMAGE_PRIVATE_DATA.
12975
12976         * gdk/win32/gdkimage-win32.c: Use it.
12977
12978 2000-10-22  Robert Brady  <robert@suse.co.uk>
12979
12980         * configure.in: Check for bind_textdomain_codeset
12981
12982         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
12983         present, make use of it.
12984
12985         Add a translatable string "default:LTR" which, if translated
12986         to "default:RTL", will cause the default direction to be
12987         Right-to-Left.
12988
12989         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
12990         direction if marked as flippable.
12991
12992         * gtk/gtkhscale.c: Mark widget as flippable.
12993         
12994 2000-10-04  Havoc Pennington  <hp@redhat.com>
12995
12996         * gtk/testgtk.c (create_buttons): create some stock buttons
12997         with the default accel group
12998         (create_image): test some new GtkImage features
12999         (make_message_dialog): test GtkMessageDialog
13000         (create_modal_window): fix someone's bizzarro indentation
13001
13002         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
13003         GTK_WIN_POS_CENTER_ON_PARENT. 
13004         Add "destroy with parent" setting, which means the window goes
13005         away with its transient parent.
13006         (gtk_window_get_default_accel_group): get the default accel group
13007         for the window.
13008         (gtk_window_set_destroy_with_parent): set/unset destroy with
13009         parent flag
13010         (gtk_window_read_rcfiles): invalidate icon set caches
13011         after reloading rcfiles 
13012
13013         * gtk/gtkenums.h (GtkWindowPosition): add
13014         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
13015         on its parent window when the dialog is mapped for the first time.
13016
13017         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
13018         a simple message dialog class
13019         
13020         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
13021         handler to emit response signal, and maybe later it would
13022         honor a hide_on_delete flag - though that isn't there yet.
13023         Set border width on the vbox to 2, so we get some padding.      
13024         Use a button box for the action area.
13025         (gtk_dialog_key_press): synthesize a delete event if Esc
13026         is pressed and the GtkWidget key press handler didn't 
13027         handle the escape key.
13028         (gtk_dialog_new_with_buttons): new function creates a dialog
13029         with some default buttons in it.
13030         (gtk_dialog_add_action_widget): add an activatable widget
13031         as a button in the dialog - you can also add a non-activatable
13032         widget by accessing the action area directly.
13033         (gtk_dialog_add_button): add a simple button - stock ID or 
13034         label - to the action area
13035         (gtk_dialog_response): emit response signal
13036         (gtk_dialog_run): block waiting for the dialog, return 
13037         the response. Override normal delete_event behavior, so that 
13038         delete_event does nothing inside gtk_dialog_run().
13039
13040         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
13041         emitted when an action widget is clicked or the dialog gets
13042         delete_event
13043
13044         * gtk/gtk.h: add gtkmessagedialog.h
13045
13046         * gtk/Makefile.am: add gtkmessagedialog.[hc]
13047
13048 2000-10-18  Havoc Pennington  <hp@redhat.com>
13049
13050         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
13051         where any number of empty lines would get skipped
13052
13053         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
13054         edge.
13055
13056         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
13057         warning about invalid iterators (explain more thoroughly)
13058         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
13059
13060         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
13061         big
13062
13063         * demos/*.c: Add error handling
13064
13065         * gtk/gtktextbuffer.c: don't modify const iterators
13066
13067         * gtk/gdk-pixbuf-loader.c: Add full error handling here
13068
13069         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
13070         on file load
13071
13072         * gtk/gtkiconfactory.c: Update to reflect addition of error
13073         handling to gdk-pixbuf loaders
13074
13075 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
13076
13077         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
13078         move to new modularized testgtk.
13079
13080 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
13081
13082         * gtk/gtktreeview.c: Draw the arrows correctly.
13083
13084         * gtk/gtktreemodel.c: Added user docs.
13085
13086         * gtk/gtk.h: remove gtktreedatalist.h.
13087
13088         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
13089         parent when generating my type.
13090
13091         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
13092         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
13093
13094 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
13095
13096         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
13097         GtkTreeModel from object to interface.
13098
13099 2000-10-16  Havoc Pennington  <hp@redhat.com>
13100
13101         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
13102         compilation
13103
13104 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
13105
13106         * gtk/gtktreeselection.c: Add API documentation to all public
13107         functions.
13108
13109         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
13110         functions.
13111
13112 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
13113
13114         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
13115         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
13116         docs to all public functions.
13117
13118         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
13119         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
13120         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
13121         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
13122         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
13123         issue.
13124
13125 2000-10-14  Robert Brady  <robert@suse.co.uk>
13126
13127         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
13128
13129 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
13130
13131         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
13132         values other then G_TYPE_STRING.
13133         * gtk/gtktreeselection.c: Minor commenting updates.
13134         * gtk/gtktreeview.c: Format updates.
13135
13136 2000-10-09  Tor Lillqvist  <tml@iki.fi>
13137
13138         * README.win32: Update.
13139
13140         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
13141         lines that had been deleted by mistake (?).
13142
13143         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
13144         also the case fg==white and bg==black (but still not randomly
13145         coloured cursors). Thanks to Wolfgang Sourdeau.
13146
13147         * gdk/win32/*.c: Silence gcc -Wall.
13148
13149         * gtk/gtk.def: Add missing entry points.
13150
13151         Fixes by Hans Breuer:
13152
13153         * gdk/makefile.msc
13154         * gdk/win32/makefile.msc: Update.
13155
13156         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
13157         some MSVC thing, presumably), cause breakpoint on failures. Add
13158         GDK_NOR case. Call g_log_set_always_fatal.
13159
13160         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
13161         should be pased by reference.
13162         
13163         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
13164         
13165         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
13166
13167         * gdk/win32/gdkevents-win32.c
13168         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
13169
13170         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
13171         implementation object.
13172
13173         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
13174         not just windows.
13175         
13176         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
13177         Use the wrapper object.
13178         
13179 2000-10-06  Havoc Pennington  <hp@redhat.com>
13180
13181         * Makefile.am (SRC_SUBDIRS): contrib subdir
13182
13183         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
13184         so it can be used in Xlib version
13185
13186         * demos/testpixbuf.c (update_timeout): error checking from 1.0
13187         tree
13188
13189         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
13190         change from 1.0 tree that returns first frame of animation
13191         if the loaded file is an animation.
13192
13193         * contrib: add new directory to hold stuff that comes with GTK+
13194         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
13195         
13196         * configure.in: add contrib/*
13197
13198 2000-10-05  Havoc Pennington  <hp@redhat.com>
13199
13200         * demos/testpixbuf-save.c: add pixbuf save test
13201
13202         * demos/Makefile.am: add testpixbuf-save.c
13203
13204 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
13205
13206         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
13207         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
13208         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
13209         * gtk/gtktreeselection.[ch]: Replaced
13210         "node_selected"/"node_unselected" signal with "selection_changed"
13211         signal.
13212
13213 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
13214
13215         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
13216         tree widget.
13217
13218 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
13219
13220         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
13221         drawing.
13222
13223 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
13224
13225         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
13226         Move list pointer forwards before removing item from
13227         list. (Crash reported by Salmaso Raffaele)
13228
13229         * gdk/gdkwindow.h: Remove spurious trailing ,
13230
13231         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
13232         dependencies on uninstalled libraries, sorry folks.
13233
13234 2000-10-04  Havoc Pennington  <hp@redhat.com>
13235
13236         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
13237         gtk/gtkiconfactory.c: Fix copyrights    
13238
13239         * demos/testpixbuf.c: add inline pixbuf test
13240         
13241 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
13242
13243         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
13244         Add gdk_window_iconify.
13245
13246         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
13247         (gdk_window_set_geometry_hints): Add win_gravity
13248         to geometry structure.
13249
13250         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
13251         Implement _NET_WM_PING.
13252
13253         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
13254         Set _NET_WM_PID on the client leader.
13255
13256         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
13257         Handle UTF-8 better.
13258
13259         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
13260         UTF-8 better, set _NET_WM_NAME as well. Only set
13261         icon name if it hasn't previously been explicitely 
13262         set.
13263
13264 2000-10-03  Havoc Pennington  <hp@redhat.com>
13265
13266         * gtk/testtextbuffer.c: clean up trailing whitespace,
13267         add extensive tests for tag toggle iteration.
13268         
13269         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
13270         distance
13271
13272         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13273         optimize case where the tag root is on level 1
13274         (gtk_text_line_previous_could_contain_tag): attempt to implement
13275         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
13276         functionality
13277
13278         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
13279         Implement this, though not very efficiently.
13280
13281         * gtk/gtktextiterprivate.h: reformat
13282
13283         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
13284         iterator
13285
13286         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
13287         this to properly revalidate the iterators.
13288
13289         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
13290         properly at the end of the line (and therefore on empty lines)
13291
13292         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
13293         maybe we should return a value...
13294
13295 2000-10-03  Tor Lillqvist  <tml@iki.fi>
13296
13297         * config.h.win32: Guard definition of alloca(). glib.h now handles
13298         that.
13299
13300         * gdk/gdk.def
13301         * gtk/gtk.def: Add new entry points.
13302
13303         Changes just to make GTK+ build without errors on Win32. No hope
13304         of it working in its current state, though...:
13305         
13306         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
13307         some functions from the X11 backend, just to make GTK+ build.
13308
13309         * gdk/makefile.mingw.in
13310         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
13311         number. Add new object files.
13312
13313         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
13314         GetMessageTime to get timestamp (where on X11 uses
13315         gdk_x11_get_server_time()).
13316
13317 2000-10-02  Havoc Pennington  <hp@pobox.com>
13318
13319         * gtk/gtktextview.c: text_window_* weren't static and should have
13320         been.
13321         Start work on child widgets; not yet complete, syncing to 
13322         office computer.
13323
13324         * gtk/gtktextchild.h: change this to contain a public interface,
13325         starting work on child interfaces.
13326         * gtk/gtktextchildprivate.h: move private interfaces here
13327
13328         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
13329
13330         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
13331         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
13332         gtk/gtktextmark.c: copyright notices
13333
13334         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
13335         internal functions      
13336
13337         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
13338         internal function
13339
13340         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
13341         Reformatting    
13342
13343 2000-09-30  Havoc Pennington  <hp@pobox.com>
13344
13345         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
13346         NULL start/end pointers
13347
13348         * gtk/gtktextbuffer.c: Write some docs
13349         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
13350         NULL, so you can just check whether there's a selection.        
13351
13352         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
13353         cleanup_line or segments_changed ourselves, it gets done 
13354         in unlink_segment
13355
13356         * gtk/gtktextmark.h:
13357         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
13358         
13359         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
13360
13361         * gtk/gtktextmark.c: delete some more old Tk cruft
13362
13363         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
13364         mark before removing it, so we can emit MARK_DELETED with a valid
13365         pointer.
13366         (gtk_text_buffer_mark_set): hold ref across signal emission
13367
13368         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
13369         whining about attempts to delete special marks
13370
13371         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
13372         underscore, since it's internal.
13373
13374         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
13375         now implemented in terms of iterators in gtktextiter.h
13376
13377         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
13378         New function, destructively sets contents of buffer. Also 
13379         a convenient way to clear the buffer by setting text to ""
13380
13381         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
13382         multiline string literal
13383
13384         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
13385         text changes.
13386
13387         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
13388         is not dereferenceable
13389         (gtk_text_iter_forward_lines): fix return value
13390
13391 2000-09-29  Havoc Pennington  <hp@redhat.com>
13392
13393         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
13394
13395         * gtk/gtktextview.c: Implement drag thresholding; change functions 
13396         that set border window size to have nicer name
13397         (gtk_text_view_mark_set_handler):  Fix this to have the 
13398         right signature.
13399
13400         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
13401
13402         * gtk/testtext.c: Update with API changes, put line numbers on 
13403         both sides.
13404         
13405         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
13406         with this
13407
13408         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
13409         pixbuf; delete a big block of #if 0 Tk code
13410
13411         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
13412         insert_pixmap with insert_pixbuf
13413
13414 2000-09-29  Martin Baulig  <baulig@suse.de>
13415
13416         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
13417         confusion with the GdkPixbuf of the GNOME 1.x platform.
13418
13419 2000-09-29  Havoc Pennington  <hp@pobox.com>
13420
13421         * gtk/gtktextview.c: Implement the side windows.
13422
13423         * gtk/testtext.c: Implement simple line numbering in the 
13424         left side window; seems to make scrolling sloooow. Oops.
13425         Also, cursor blink is for some reason causing redraws
13426         of the line numbers. Should investigate...
13427
13428 2000-09-28  Havoc Pennington  <hp@redhat.com>
13429
13430         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
13431         scrolling child windows, and draw focus rectangle properly.
13432         
13433         (gtk_text_view_buffer_to_window_coords):
13434         Coordinate transformation to deal with all these freaking windows
13435         and offsets
13436         (gtk_text_view_window_to_buffer_coords): transform the other way
13437
13438         * gtk/testtext.c (create_buffer): Update to match Pango API change
13439
13440         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
13441         anonymous tags
13442         (foreach_unref): don't emit remove signal from finalize, just
13443         set tag's parent to NULL
13444
13445 2000-09-26  Havoc Pennington  <hp@redhat.com>
13446
13447         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
13448         Fix some warnings       
13449
13450 2000-09-26  Havoc Pennington  <hp@redhat.com>
13451
13452         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
13453         headers into the private header list
13454
13455         * Makefile.am (pkgconfig_DATA): install pkg-config files
13456
13457         * configure.in: add pkg-config files
13458
13459         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
13460
13461         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
13462         outstanding icon caches on theme change.
13463
13464         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
13465         important types:
13466
13467         (GtkIconSource): Specification for creating a pixbuf 
13468         appropriate for a direction/state/size triplet from 
13469         a source pixbuf or filename
13470
13471         (GtkIconSet): List of GtkIconSource objects that are used to
13472         create the "same" icon (e.g. an OK button icon), and cache for
13473         rendered icons
13474
13475         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
13476         up the icon set for a given stock ID.  GTK maintains a stack of
13477         GtkIconFactory to search, and applications or libraries can add
13478         additional icon factories on top of the stack
13479         
13480         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
13481         the set of GtkIconSource specified for a given stock ID into 
13482         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
13483         RcStyle, under the specified stock ID.
13484
13485         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
13486         render_icon used to derive a GdkPixbuf from a GtkIconSource.
13487         This allows people to theme how prelight, insensitive, etc. are
13488         done.
13489
13490         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
13491         icon factories for a style, and return the resulting 
13492         icon set if any.
13493
13494         (gtk_style_render_icon): Render an icon using the render_icon 
13495         method in the GtkStyleClass.
13496
13497         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
13498         Use the style for a given widget to look up a stock ID, get the
13499         icon set, and render an icon using the render_icon method 
13500         of the style
13501
13502         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
13503         (contains information about a stock item), the built-in stock item
13504         IDs, and functions to add/lookup stock items.
13505
13506         * gtk/stock-icons/*: Stock icons that come with GTK
13507
13508         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
13509         a button based on a GtkStockItem
13510         (gtk_button_new_accel): Takes a uline string and accel group, and
13511         installs the accelerator.
13512
13513         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
13514         image-display widget.
13515
13516 2000-09-25  Havoc Pennington  <hp@redhat.com>
13517
13518         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
13519
13520         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
13521         Fix a bug when removing node data, we didn't properly 
13522         re-splice the linked list after removing the data.
13523
13524         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
13525         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
13526
13527         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
13528
13529         * gtk/gtktextlayout.c (set_para_values): Set tab array 
13530         for the layout from the GtkTextTag.
13531
13532         * gtk/gtktexttypes.h: delete tab and search cruft, 
13533         remove g_convert() in favor of GLib version
13534
13535         * gtk/gtktexttypes.c: remove tab implementation from here,
13536         move to Pango
13537
13538         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
13539         tab stuff using new PangoTabArray from Pango
13540
13541         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
13542         unused border_width stuff
13543
13544 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
13545
13546         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
13547         glib) and now useless utf_to_latin1() latin1_to_utf()
13548
13549         * gtk/gtktextview.[ch]: Change ::move_insert and
13550         ::delete_text action signals to ::move and ::delete;
13551         create the signals with the right enumeration type,
13552         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
13553         C-v bindings, change Home, End to move to beginning/end
13554         of line, Add C-Home C-End to move to beginning/end
13555         of buffer. Change ::cut_text to ::cut_clipboard, etc;
13556         combine ::scroll_text into ::move; use new GtkSelectionData
13557         functions to simplify DND text handling.
13558         
13559         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
13560         deletion enumerations here, rename enumeration values to 
13561         be consistently plural.
13562
13563         * gtk/gtktextbuffer.c: Use new clipboard interfaces
13564         for cut/copy/paste and primary selection.
13565
13566         * gtk/gtktextbuffer.[ch]: Remove excess time and
13567         'interactive' arguments from cut/copy/paste;
13568         rename cut to cut_clipboard, etc; remove
13569         gtk_text_buffer_get_clipboard_contents().
13570
13571         * gtk/gtktextlayout.[ch]: Add 
13572         gtk_text_layout_move_iter_to_line_end() to move the iter to 
13573         line ends.
13574
13575         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
13576         Functions to set or get a UTF-8 string on the selection
13577         data.
13578
13579         * gtk/gtkclipboard.[ch]: New, simplified selection handling
13580         interfaces.
13581
13582         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
13583         created widgets - one of these is useless if we don't.
13584
13585         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
13586         a public function clear all targets registered for the
13587         widget.
13588
13589         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
13590         Never call gtk_widget_realize() - that was just asking
13591         for bizarre side-effects.
13592
13593         * gtk/gtkselection.c (gtk_selection_owner_set): Call
13594         gdk_selection_owner_set even if the widget is the
13595         same so that we reliably update the timestamp on
13596         the server.
13597
13598         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
13599         gdk_x11_get_server_time() function.
13600         
13601         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
13602         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
13603         Add some tricky filtering on serial numbers for
13604         selection clear events to fix up long-standard
13605         race condition FIXME's in gtkselection.c.
13606
13607         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
13608         routines to convert from utf8 to compound text or
13609         STRING and from a text property to UTF-8.
13610
13611         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
13612         a convenience function gdk_get_current_event_time().
13613
13614         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
13615         and free selection_data->data properly
13616
13617 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
13618
13619         * gtk/gtkthemes.c: Remove some unecessary includes.
13620
13621 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
13622
13623         * gtk/gtktextdisplay.c
13624         * gtk/gtktextlayout.c
13625         * gtk/gtktexttag.c
13626         * gtk/gtktexttag.h
13627         * gtk/testtext.c: Change the overstrike property to strikethrough,
13628         to closer match pango.
13629
13630 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
13631
13632         * gtk/gtktextview.c: Fix up visibility so that focus,
13633         cursor_visible and blink interact properly.  Reenable cursor blink
13634         which had been roughly disabled. Make blink and focus
13635         properly per-view.
13636
13637         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
13638         Add a flag for whether to display insertion cursor and
13639         a function to set the flag.
13640
13641         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
13642         get_line_y() to get_line_yrange(), to be a bit more generally
13643         useful.
13644
13645 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
13646
13647         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
13648           do stop_navigating_submenu, to clear last timeout properly.
13649           Also in gtk_menu_motion_notify move ignore_enter above
13650           the conditional to make it always happen as suggested by Owen
13651
13652 2000-09-07  Tor Lillqvist  <tml@iki.fi>
13653
13654         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
13655
13656         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
13657         w32api headers.
13658
13659         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
13660         declarations.
13661
13662         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
13663         (gdk_win32_get_colormap): A line had been deleted by mistake.
13664
13665         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
13666         (gdk_event_translate): Handle more virtual keycodes to be able to
13667         generate GDK events for Control-comma, Control-period, etc.
13668
13669         * gtk/gtk.def: Add some missing entry points.
13670
13671 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
13672
13673         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
13674         Doc comment fixing. (Mostly non-matching parameter names.)
13675
13676         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
13677         comments a little to avoid looking like a doc comment.
13678
13679         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
13680         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
13681         conversions be changed to GError?)
13682
13683         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
13684         Move private #defines into .c file.
13685
13686         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
13687         order of argument addition, remove duplicates.
13688
13689         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
13690         parent class is FrameClass, not BinClass.
13691
13692         * gtk/gtk.h: Add gtkinvisible, which was missing.
13693         (It's occasionalyl useful for client apps, if seldom.)
13694
13695         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
13696         #define.
13697
13698 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
13699
13700         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
13701         coordinates when creating window, instead of GDK-space
13702         coordinates. (Avoid BadValue on too large windows.)
13703
13704 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13705
13706         * configure.in (use_mmx_asm): Remove conftest* after use along the
13707         lines of AC_TRY_COMPILE.        
13708         
13709         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
13710         of g_dirname, which is deprecated.
13711         (gtk_rc_parse_any): Removed calls to
13712         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
13713
13714         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
13715         Removed calls to g_hash_table_{freeze,thaw}, as they are
13716         deprecated now.
13717
13718         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
13719         instead of g_basename.
13720         
13721 2000-09-04 Elliot Lee <sopwith@redhat.com>
13722         
13723         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
13724         ANSI warning.
13725
13726 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
13727
13728         * gtk/gtkwidget.h:  Add some documenting comments about 
13729           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
13730           just as owen said on irc.
13731
13732         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
13733           set HAS_DEFAULT.  Only set it if there isn't another window
13734           holding it (a focus window which RECEIVES_DEFAULT) and only unset
13735           it if the widget is not the focused window with RECEIVES_DEFAULT.
13736           This fixes weird double default bugs in dialogs which has things
13737           call gtk_window_set_default at times.
13738
13739 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
13740
13741         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
13742         Nils Barth and David Santiago to improve submenu
13743         navigation. The patch does this by creating a triangular
13744         region from the point where the pointer leaves the
13745         menu to the submenu.  While the pointer is in
13746         that region and a timeout has not expired, events 
13747         that would cause the active submenu to change are
13748         ignored.
13749
13750 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
13751
13752         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
13753         moving a toplevel window immediately after sizing it would
13754         result in it being sized back to the old size since 
13755         impl->width, impl->height aren't updated until we hear
13756         back from the server. There is still a (longstanding) bug
13757         here that gdk_window_get_size() will give the wrong size
13758         until we do hear back.
13759
13760 2000-08-31  Havoc Pennington  <hp@redhat.com>
13761
13762         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
13763         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
13764         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
13765         Rename GtkTextStyleValues to GtkTextAttributes
13766
13767 2000-08-31  Havoc Pennington  <hp@pobox.com>
13768
13769         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
13770         for rapid testing whether an iterator is the end iterator
13771         (gtk_text_btree_new): init end line cache
13772         (gtk_text_line_is_last): use fast cached line to 
13773         see if we're the last line.
13774         (get_last_line): use cached line here too, should 
13775         speed up some random unrelated code.
13776         
13777 2000-08-30  Havoc Pennington  <hp@pobox.com>
13778
13779         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
13780         signals.
13781
13782         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
13783         delete_text signals. This allows the signals to be used for
13784         implementing undo.
13785
13786         * gtk/gtktextbuffer.c: Change signal handler signatures; 
13787         provide "interactive" argument when emitting insert_text or
13788         delete_text signal.
13789         
13790 2000-08-30  Havoc Pennington  <hp@pobox.com>
13791
13792         * gtk/gtktextbuffer.c: Docs
13793
13794 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
13795
13796         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
13797         from switch statements, since Tor removed the enumeration
13798         value.
13799         
13800         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13801         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
13802
13803 2000-08-29 Elliot Lee <sopwith@redhat.com>
13804         * */*.h: Use G_GNUC_CONST.
13805
13806 2000-08-27  Havoc Pennington  <hp@pobox.com>
13807
13808         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
13809         minor indentation fixes, inserted some FIXME about stuff I
13810         realized was broken while documenting it.
13811         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
13812         GTK convention  
13813
13814 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
13815
13816         * gtk/testgtk.c (create_styles): Fix double free of
13817         font desc.
13818
13819 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13820
13821         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
13822         
13823         * gtk/testgtk.c (create_styles): Add a test for modifying
13824         the style through gtk_widget_modify_*.
13825
13826         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
13827         a function to get the current modifier style.
13828
13829         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
13830         of the passed in GtkRcStyle instead of ref'ing it.
13831
13832         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
13833
13834 2000-08-20  Tor Lillqvist  <tml@iki.fi>
13835
13836         * gdk/gdkimage.h
13837         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
13838         shared memory image+pixmap GdkImage type, or
13839         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
13840         I am dropping that.
13841
13842         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
13843         actually call gtk_init_abi_check(), passing also
13844         sizeof(GtkWindow). Ditto for gtk_init_check(). 
13845
13846         * gtk/gtk.def
13847         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
13848         New functions, used to check that the GTK+-using code has been
13849         compiled using the correct compiler and switches. In particular,
13850         with gcc one has to use the -fnative-struct switch as GTK+ is
13851         compiled with that.
13852
13853 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
13854
13855         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
13856         ->prev fields when merging lists. (Found simultaneously
13857         by Pawel Salek and Jakub Jelinek)
13858
13859 2000-08-12  Tor Lillqvist  <tml@iki.fi>
13860
13861         * gdk/gdk.def
13862         * gtk/gtk.def: Add missing entries.
13863
13864         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
13865         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
13866
13867         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
13868         function. Dummy implementation at this point.
13869
13870         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
13871         rules. Undefine GTK_COMPILATION when compiling the test programs.
13872         
13873         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
13874
13875 2000-08-11  Tor Lillqvist  <tml@iki.fi>
13876
13877         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
13878         to convert back and forth from UTF-8 and the "system" (or "current
13879         locale") charset when necessary. Indentation/spacing cleanup.
13880
13881 2000-08-10  Havoc Pennington  <hp@redhat.com>
13882
13883         * Makefile.am (snapshot): Change the format of the snapshot
13884         version to match glib
13885
13886         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
13887         from EXTRA_DIST since it doesn't seem to exist
13888
13889 2000-08-10  Tor Lillqvist  <tml@iki.fi>
13890
13891         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
13892         version of the directory name (not the UTF-8 one) when building
13893         the path name to stat().
13894
13895 2000-08-03  Elliot Lee  <sopwith@redhat.com>
13896
13897         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
13898         PANGO_ATTR_SHAPE set.
13899
13900 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
13901
13902         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
13903         Peter Osterlund to simplify the code while keeping the
13904         functionality the same.
13905
13906 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
13907
13908         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
13909         is_viewable() test further inside the function, since removing the 
13910         window from the redraw list without clearing ->update_area
13911         was also very broken.
13912
13913 2000-08-02  Tor Lillqvist  <tml@iki.fi>
13914
13915         * configure.in: Check for <unistd.h>.
13916
13917 2000-08-01  Martin Baulig  <baulig@suse.de>
13918
13919         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
13920         to display the message that this is a development version of GTK+.
13921
13922 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
13923
13924         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
13925         was depending on widget->allocation instead of the width of text_area,
13926         which was incorrect for subclasses like GtkSpinButton.
13927
13928         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
13929         with width == 1 tests that should be width == -1.
13930
13931 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
13932
13933         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
13934         (broken, Elliot, every single window blank on X) custom code with call
13935         to gdk_window_is_viewable() which a) prevents code duplicate and
13936         b) works. 
13937
13938 2000-07-31  Elliot Lee  <sopwith@redhat.com>
13939
13940         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
13941         to get the GDK_PARENT_ROOT() macro to work.
13942         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
13943         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
13944         of, windows that aren't shown.
13945         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
13946         pointer grab stuff.
13947
13948 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
13949
13950         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
13951           s/gtk_main_iteration/g_main_iteration/
13952
13953           Did this already in change:
13954                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13955           don't know how it got reverted.
13956
13957 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
13958
13959         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
13960         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
13961
13962         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
13963         not gdk_pixbuf.
13964
13965 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
13966
13967         * configure.in,po/{sp,sr}.po: Added Serbian files
13968
13969 2000-07-30  Tor Lillqvist  <tml@iki.fi>
13970
13971         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
13972
13973         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
13974         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
13975         GIOChannel implementation.
13976
13977         * gdk/win32/gdkinput.c
13978         * gdk/win32/gdkpango-win32.c: Update license name here, too.
13979
13980         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
13981         definition to match prototype.
13982
13983         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
13984
13985 2000-07-27  Elliot Lee  <sopwith@redhat.com>
13986
13987         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
13988         function, to allow handling image formats that cannot be detected
13989         by looking at content alone.
13990
13991 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
13992
13993         * docs/tutorial/*.gif *.jpg *.eps
13994           Update these to the same look-n-feel.
13995           Why does including images in DocBook suck so badly?
13996
13997 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
13998
13999         * gtk/gtktable.c: applied patch from Phil Thompson
14000         <phil@river-bank.demon.co.uk> that enables space settings for
14001         the last row/columns as well.
14002
14003 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
14004
14005         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
14006         updates the license headers to the GNU Lesser General Public License,
14007         as well as updating the copyright year to 2000.
14008
14009 2000-07-26  Robert Brady  <rwb197@zepler.org>
14010
14011         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
14012           and po/Makefile, was installing and looking for them under gtk20
14013           and gtk2 respectively.
14014
14015 2000-07-25  Havoc Pennington  <hp@redhat.com>
14016
14017         * gtk/testtext.c: Comment out some stuff that depends on the rest
14018         of my patches.
14019
14020 2000-07-25  Havoc Pennington  <hp@redhat.com>
14021
14022         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
14023         buffer
14024
14025 2000-07-25  Havoc Pennington  <hp@redhat.com>
14026
14027         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
14028         widget changes.
14029
14030         * gtk/gtktextview.h: To be consistent with usage of "line"
14031         throughout the API to mean "newline-terminated thingy", change
14032         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
14033         to MOVEMENT_LINE.
14034
14035         (GtkTextView): Add flags for default editability, and whether to
14036         show the cursor. Add functions to get/set that. Add 
14037
14038         (gtk_text_view_get_iter_location): new function
14039
14040         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
14041         gtktextlayout.h
14042         (g_convert): Add g_convert temporarily, will go in glib in a bit
14043         
14044         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
14045         GtkTextTagTableForeach instead of brokenly using GHFunc.
14046         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
14047
14048         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
14049         moved to public header.
14050
14051         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
14052         "invisible", since "elide" was a bad name.
14053         (gtk_text_tag_get_priority): Added
14054
14055         (GtkTextStyleValues): put this in public header, along with
14056         functions to use it.
14057
14058         * gtk/gtktextmarkprivate.h: Include more headers, since we no
14059         longer include gtktextbtree.h.
14060
14061         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
14062         gtk_text_mark_deleted
14063
14064         * gtk/gtktextlayout.h: Don't include the "really private" headers,
14065         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
14066         to make this possible. Now we only need to install
14067         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
14068         (However the Makefile.am isn't changed yet because of the
14069         logistics of merging gtk-hp-patches piecemeal)
14070
14071         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
14072         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
14073         gtk_text_iter_get_line is now used in the public API for a
14074         different purpose.
14075
14076         * gtk/gtktextiter.h: Clean up function names to be more
14077         consistent. Always call char offset "offset" and byte index
14078         "index". A "line" is always a line number. 
14079
14080         (gtk_text_iter_is_last): new function, more efficient than 
14081         the existing way to check
14082         (gtk_text_iter_is_first): new function, also more efficient
14083
14084         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
14085
14086         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
14087         gtk_text_iter_forward_char, etc.
14088
14089         (gtk_text_iter_forward_to_tag_toggle): Renamed from
14090         forward_find_tag_toggle, since this isn't a linear search
14091
14092         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
14093
14094         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
14095         New functions, search for a buffer substring.
14096
14097         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
14098         interactive and default editable (since we need to store that info
14099         until we receive the selection data).
14100
14101         Remove all the _at_char and at_line etc. versions of functions;
14102         only have iterator versions.
14103
14104         Add _interactive() versions of functions, that consider the
14105         editability of text. (FIXME add interactive flag to the 
14106         insert/delete signals per Darin's suggestion)
14107
14108         (gtk_text_buffer_get_tag_table): new function, demand-creates the
14109         tag table if necessary
14110
14111         Remove declaration of gtk_text_buffer_get_iter_from_string
14112
14113         (_gtk_text_buffer_get_btree): private/internal function, added.
14114         
14115
14116         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
14117         (gtk_text_line_is_last): new function
14118
14119 2000-07-25  Havoc Pennington  <hp@redhat.com>
14120
14121         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
14122         using GtkProgressBar. See Changes-2.0.txt for details.
14123
14124         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
14125         "pulse_step" which are the equivalent of
14126         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
14127         Implement new API.
14128         
14129         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
14130         (use_text_format) to mark whether text set on the progress bar is
14131         a format string. Deprecate entire GtkProgress interface.
14132
14133         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
14134         (gtk_progress_build_string): make this a no-op if use_text_format
14135         is FALSE
14136
14137         * docs/Changes-2.0.txt: Describe progress bar changes.
14138
14139 2000-07-25  Tor Lillqvist  <tml@iki.fi>
14140
14141         * Makefile.am: Include the build directory.
14142
14143         * configure.in: Generate build/Makefile, build/win32/Makefile,
14144         gdk/, gdk/win32/, and gtk/makefile.mingw.
14145
14146         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
14147         Add GETTEXT_PACKAGE.
14148         
14149         * gdk/gdk.def
14150         * gtk/gtk.def: Updates.
14151
14152         * gdk/gdkfont.h
14153         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
14154         need them any longer.
14155
14156         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
14157
14158         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
14159         PANGOWIN32_LIBS and gdk_pixbuf.
14160
14161         * gdk/win32: Compiles, but no doubt doesn't work at all.
14162
14163         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
14164
14165         * gdk/win32/gdkinput.c: New file, temporarily.
14166         
14167         * gdk/win32/gdkinput-win32.h: New file
14168
14169         * gdk/win32/gdkinputprivate.h: Remove.
14170
14171         * gdk/win32/gdkpango-win32.c: New file.
14172
14173         * gtk/makefile.mingw.in: New file
14174
14175         * gtk/makefile.cygwin: Removed
14176         
14177         * gtk/Makefile.am: Update accordingly.
14178
14179         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
14180         made externally visible.
14181
14182         * gtk/gtkmain.c: Use it.
14183         
14184         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
14185         is enough.
14186
14187         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
14188
14189 2000-07-24 Elliot Lee <sopwith@redhat.com>
14190         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
14191         individual backends already.
14192         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
14193         again. Yes, there really is a good reason for this, if you are using the gdkregion
14194         internals, and if you're not, why do you care?
14195         * gdk/gdkwindow.c: Fix inverted condition
14196         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
14197         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
14198         * gtk/gtkrange.c: Redraw trough when moving.
14199         * gtk/gtktypeutils.c: Fix warning by adding const cast.
14200         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
14201
14202 2000-07-23  Tor Lillqvist  <tml@iki.fi>
14203
14204         * configure.in: Check for mkstemp and sigsetjmp. Output
14205         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
14206
14207         More work on GDK for Win32. Still in an intermediate state.
14208
14209         * gdk/makefile.cygwin
14210         * gdk/win32/makefile.cygwin: Removed.
14211         
14212         * gdk/makefile.mingw.in
14213         * gdk/win32/makefile.mingw.in: New files.
14214
14215         * gdk/Makefile.am
14216         * gdk/win32/Makefile.am: Generate and distribute them.
14217
14218         * gdk/win32/gdkwindow-win32.h
14219         * gdk/win32/gdkdrawable-win32.h
14220         * gdk/win32/gdkpixmap-win32.h: New files.
14221
14222         * gdk/win32/gdkcolor-win32.c
14223         * gdk/win32/gdkcursor-win32.c
14224         * gdk/win32/gdkdrawable-win32.c
14225         * gdk/win32/gdkgc-win32.c
14226         * gdk/win32/gdkimage-win32.c
14227         * gdk/win32/gdkprivate-win32.h
14228         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
14229         Rename fields and variables called xcursor, xid, etc (these names
14230         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
14231
14232 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
14233
14234         * gtk/gtkentry.[ch]: Fix some problems with vertical
14235         alignment.
14236
14237         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
14238         char/byte confusion.
14239
14240 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
14241
14242         * gtk/gtktextview.c (changed_handler): Fix bug where
14243         redraw wasn't being done properly when height of
14244         dirty region changed.
14245
14246         * demos/Makefile.am: Remove various references to
14247         -lgmodule
14248
14249 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
14250
14251         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
14252         PangoAttrShape to reserve space for pixmaps, add 
14253         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
14254         in the display functions.
14255         
14256         * gtk/testgtk.c (create_layout): Set some more exotic
14257         scrolled window options
14258
14259         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
14260         Add function to set the shadow type of a window, to allow
14261         putting a shadow around widgets such as GtkLayout or GnomeCanvas
14262         which don't draw their own frame.
14263
14264 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
14265
14266         * docs/tutorial/package-db-tutorial.sh: New file for
14267           packaging DocBook format tutorial
14268
14269 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
14270
14271         * docs/tutorial/gtk-tut.sgml: Minor updates
14272
14273         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
14274
14275 2000-07-19  Tor Lillqvist  <tml@iki.fi>
14276
14277         * gtk/gtksignal.c: Fix C++ comment.
14278
14279         * gtk/gtkimmulticontext.c
14280         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
14281         don't return value from void functions.
14282
14283         * gtk/gtk.def: Add gtk_rc_style_unref.
14284
14285 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
14286
14287         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
14288         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
14289         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
14290         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
14291         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
14292         gtk/gtktypeutils.h: Include files outside of the extern "C"
14293         block. Makes some C++ compiler happy. Reported by Denis Vakatov
14294         <vakatov@peony.nlm.nih.gov>.
14295
14296 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
14297
14298         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
14299           Completes first pass. Hurrah!
14300
14301 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
14302
14303         * docs/tutorial/gtk-tut.sgml: More clean ups.
14304
14305 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
14306
14307         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
14308         paint the background of the text area which was accidentally
14309         removed at some point.
14310
14311         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
14312           
14313          - Move most of the functionality from the theme vtable
14314            into GtkRcStyleClass and GtkStyleClass. The moved
14315            vtable functions were changed a bit in the move to
14316            work better in their new home.
14317
14318          - Get rid of the engine and engine_data fields from
14319            GtkRcStyle and GtkStyle; instead the theme
14320            engine derives theme-specific subclasses of GtkRcStyle
14321            and GtkStyle
14322
14323          - Add extra dlsym() found entry point to themes,
14324            theme_create_rc_style().
14325
14326         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
14327         in gtk_style_real_copy.
14328
14329         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
14330         to register a type associated with an engine. (The engine
14331         won't be unloaded as there is an instance of the type.)
14332
14333
14334 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
14335
14336         * docs/tutorial/gtk-tut.sgml: Clean ups.
14337
14338 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
14339
14340         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
14341           of cleaning up to do.
14342
14343 2000-07-15  Tor Lillqvist  <tml@iki.fi>
14344
14345         * gdk/testgdk.c: New file, quick hack to test backends for
14346         pixel-by-pixel correctness of the most simple graphic operations.
14347
14348 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
14349
14350         * Really release 1.3.1
14351         
14352         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
14353         include structure.
14354
14355 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
14356
14357         * Released 1.3.1
14358
14359 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
14360
14361         * gtk/gtktextlayout.c: use FALSE for size_only most
14362         of the time when calling gtk_text_layout_get_line_display()
14363         to avoid causing double reshapes when a redraw follows
14364         immediately after.
14365
14366 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
14367
14368         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
14369         appropriate region and gdk_window_process_updates() so trough
14370         updating doesn't lag behind the window being scrolled.
14371
14372         * gdk/gdkgc.c: Make parent_class pointer static.
14373          
14374 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
14375
14376         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
14377         include <string.h>.
14378          
14379         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
14380         cut-and-paste error in computing memory offset for 4 channels.
14381
14382 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
14383
14384         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
14385         gtk_rc_append_default_pixmap_path(), since it wasn't
14386         adding an interesting path and we don't have a meaningful
14387         default for this value.
14388
14389 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
14390
14391         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
14392         gtk-config to gtk-config-2.0 move gtk_.m4 to
14393         gtk-2.0.m4
14394
14395         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
14396         gdk/Makefile.am demos/Makefile.am: Change 
14397         library names to libgtk-1.3.la, etc, so that we
14398         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
14399
14400         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
14401         gdk/Makefile.am gdk/x11/Makfile.am
14402         Move include files into /usr/include/gtk-2.0, 
14403         /usr/lib/gtk-2.0/include/
14404          
14405         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
14406         gtk/gtkintl.h: Change package for gettext from 
14407         gtk+ to gtk20. Put hack in autogen.sh to modify
14408         po/Makefile.in.in after gettextize to make this
14409         possible.
14410
14411         * gtk+.spec: Some updates, not tested.
14412
14413         * gdk-pixbuf/Makefile.am: Move loaders into
14414         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
14415
14416         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
14417         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
14418         to THEMENAME/gtk-2.0/. Move engine directory  to
14419         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
14420         
14421 2000-07-12  Tor Lillqvist  <tml@iki.fi>
14422
14423         Win32 changes, still doesn't build though.
14424
14425         * gdk/makefile.cygwin
14426         * gdk/win32/makefile.cygwin
14427         * gtk/makefile.cygwin: Updates.
14428
14429         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
14430         default values for fg and bg pixel as X11 does (0 and 1), not
14431         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
14432         Use 0 for pen width by default (treated as 1 anyway later, but for
14433         apps that might check the value in the GdkGC).
14434         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
14435         interface to gdk_gc_predraw and _postdraw.
14436
14437         * gdk/win32/gdkwin32.h
14438         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
14439
14440         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
14441         extraneous semicolon.
14442
14443         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
14444
14445         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
14446         not the Win32 bitspixel value.
14447
14448         * gdk/win32/gdkcc-win32.c:
14449         * gdk/win32/gdkcolor-win32.c 
14450         * gdk/win32/gdkprivate-win32.h
14451         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
14452         GDK object structure.
14453
14454 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
14455
14456         * docs/tutorial/gtk_tut_12.es.sgml (name): 
14457         * docs/tutorial/gtk_tut_it.sgml (name): 
14458         * docs/tutorial/gtk_tut_fr.sgml (name): 
14459         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
14460         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
14461
14462 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
14463
14464         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
14465           small changes.
14466
14467 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
14468
14469         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
14470         a bug here, never been here and never fixed anything ;(
14471         (don't segfault if tree->root_tree is NULL, which happens prior
14472         to widget realization, but puke instead).
14473
14474 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
14475
14476         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
14477         add the necessary tokens.
14478
14479         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
14480         (gtk_rc_style_to_style): copy thicknesses.
14481         (gtk_rc_init_style): apply thicknesses.
14482         (gtk_rc_parse_style): parse xthickness and ythickness.
14483
14484         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
14485
14486         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
14487         (gdk_window_new): 
14488         (_gdk_windowing_window_init): 
14489         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
14490         (gdk_pixmap_create_from_data): 
14491         (gdk_bitmap_create_from_data): 
14492         (gdk_pixmap_new): 
14493         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
14494         (gdk_image_new): 
14495         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
14496         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
14497         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
14498         (gdk_colormap_get_system): 
14499         (gdk_colormap_new): 
14500         * gdk/gdkwindow.c (gdk_window_init): 
14501         * gtk/gtkstyle.c (gtk_style_new):
14502         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
14503         * gdk/gdkpixmap.c (gdk_pixmap_init): 
14504         * gtk/gtkrc.c (gtk_rc_style_new):
14505         use g_object_new() instead of g_type_create_instance() which
14506         is a private function for fundamental type implementations.
14507
14508 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
14509
14510         * configure.in: Add check for db2html
14511
14512 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
14513
14514         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
14515         hack to set glib_debug_objects based on gtk_debug_flags.
14516
14517 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
14518
14519         * INSTALL.in: Update the Prerequisites section.
14520
14521         * Makefile.am demos/Makefile.am docs/Makefile.am
14522         docs/tutorial/Makefile.am gdk/x11/Makefile.am
14523         gdk/linux-fb/Makefile.am: Dist fixes
14524
14525 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
14526
14527         * NEWS: 10,000 foot view of 1.3.1 changes.
14528
14529 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
14530
14531         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
14532         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
14533         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
14534         gdk/x11/gdkmain-x11.c: 
14535
14536         Patch from George Lebl to add a GdkGrabStatus enumeration to use
14537         as a return value of gdk_*_grab(). Previously, we just
14538         returned the X11 values directly.
14539
14540 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
14541
14542         * gdk/x11/Makefile.am: Patch from George Lebl to 
14543         install all the headers in the right place.
14544
14545 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
14546
14547         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
14548           initial conversion to DocBook.
14549
14550 2000-07-04  Tor Lillqvist  <tml@iki.fi>
14551
14552         * README.win32: Improve a bit.
14553
14554         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
14555         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
14556         Alt+0nnn on the numpad (used to enter characters by numeric code
14557         from current DOS or ANSI codepage) working correctly, as in other
14558         Windows apps.
14559
14560         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
14561         same argument validity tests as in X11 version.
14562         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
14563
14564         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
14565         definitions in case missing from headers.
14566
14567         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
14568         destroy the window-specific cursor.
14569         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
14570         calling GetModuleHandle(NULL).
14571         (gdk_window_set_cursor): Reworked to always copy the passed cursor
14572         with CopyCursor before setting it as the window-specific
14573         cursor. It is OK for the caller to destroy the GdkCursor (and thus
14574         also its Windows cursor) after calling this function. Destroy any
14575         previous window-specific cursor.
14576
14577 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
14578
14579         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
14580         font charset is iso8859-1, not iso-8859-1.
14581
14582 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
14583
14584         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
14585         Use g_get_charset() instead of g_get_codeset().
14586
14587         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
14588         Comment out some strdup'ing functions to keep timj
14589         happy until we finish fighting this out.
14590
14591 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
14592
14593         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
14594         <= width or height.
14595
14596         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
14597         from 1.2 for parent/child states.
14598
14599         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
14600         of typos.
14601
14602         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
14603         event structures, replace with a generic axes field. Replace 
14604         deviceid/sourec with GdkDevice *device.
14605
14606         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
14607         to extract particular axis use value from event. (Also
14608         can be used for normal X/Y.)
14609
14610         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
14611         allow for arbitrary number of axes, namespace everything
14612         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
14613         everywhere.
14614
14615         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
14616         Get rid of the gdk_input_vtable setup if favor of simply
14617         defining the functions in gdkinput-none/gxi/xfree.c in
14618         a similar fashion to the way that the port structure is 
14619         done.
14620
14621         * gtk/gtkdnd.c: Fix fields of synthesized button press event
14622         for new event structures. 
14623
14624         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
14625         new device interfaces.
14626
14627 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
14628
14629         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
14630         set the initial text.
14631
14632         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
14633         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
14634         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
14635         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
14636
14637         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
14638         pango_layout_set_font_description to simplify.
14639
14640 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
14641
14642         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
14643         pango_layout_set_font_description to simplify.
14644
14645 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
14646
14647         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
14648         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
14649         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
14650
14651         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
14652         PANGO_PIXELS() macro.
14653
14654 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
14655
14656         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
14657         that returns a PangoContext owned by the widget and updated to
14658         match future changes in the widget. Also, make 
14659         gtk_widget_create_pango_layout() use this context. If we ever
14660         add a ::changed signal to PangoContext, this will make things
14661         much more convenient. 
14662
14663         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
14664         in the appropriate places instead of destroying the layouts and
14665         creating new ones.
14666
14667         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
14668         in a few strategic places.
14669
14670 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
14671
14672         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
14673         gtk_widget_size_request() on reparented child, if one. Otherwise,
14674         queue_resize() on the child never results in it getting size-requested
14675         at all.
14676
14677         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
14678         in option menus, so that (with luck) people won't copy it into
14679         their apps in the future.
14680
14681         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
14682         to gtk_option_menu_calc_size. This isn't perfect, but should fix
14683         a lot of problems with changing the size of the menu's menu
14684         items after adding it to the option menu.
14685
14686         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
14687
14688         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
14689         the text direction for a widget changes.
14690
14691         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
14692         ::direction_changed to get rid of various hacks.
14693
14694 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
14695
14696         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
14697         name.
14698
14699 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
14700
14701         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
14702         flag to the structure. Do not call XFreePixmap on pixmaps created
14703         by gdk_pixmap_foreign_new().
14704
14705 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
14706
14707         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
14708         value using GdkRGB functionality given GdkColormap and GdkColor.
14709         (name not final, waiting for inspiration.)
14710         
14711         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
14712         set the foreground/background of a GC using the GC's colormap
14713         and GdkRGB. (name not final, waiting for inspiration.)
14714
14715         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
14716         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
14717
14718         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
14719         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
14720         purely a function of the corresponding colormap. Make
14721         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
14722
14723         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
14724         gdk_pixbuf_*create_from_xpm_* in terms of
14725         gdk_pixbuf_new_from_xpm_data(), move into platform independent
14726         code.
14727
14728         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
14729         advantage of the new draw_rgb_32_image_dithalign.
14730
14731         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
14732
14733         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
14734         on each created GC.
14735
14736         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
14737
14738         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
14739         which we initialize from the drawable when the GC is created,
14740         if the drawable has a colormap.
14741
14742         * gdk/x11/gdkgc-x11.c: include string.h for memset.
14743
14744         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
14745
14746         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
14747
14748 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
14749
14750         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
14751         actually returning expose events, make sure to set
14752         the count field properly.
14753
14754         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
14755         accidentally reintroced bug which always cleared
14756         the graphics_exposures value. 
14757
14758 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
14759
14760         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
14761
14762 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
14763
14764         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
14765
14766 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
14767
14768         * docs/faq/gtk-faq.sgml: Start of Section 6.
14769
14770 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
14771
14772         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
14773         
14774         (Fixes problem with drawing childless frames. Pointed out
14775         by and a first patch from Anders)
14776         
14777         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
14778         compute a child_allocation, even if we don't have a child.
14779
14780         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
14781         Always chain to the parent's impl, even if we don't have a child.
14782
14783 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14784
14785         * gdk/gdkrgb.c: If possible, create only a single shm segment and
14786         use multiple parts of it instead of creating a bunch of separate
14787         segments, since the maximum number of segments per system is not
14788         large. (This might be worth backporting to GTK+-1.2.x if we make a
14789         new release )
14790
14791         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
14792         structure in preparation for per-colormap GdkRGB.
14793
14794         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
14795         to False when we get EINVAL from shmget so that the caller of
14796         gdk_image_new can retry with a smaller segment size.
14797
14798 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
14799
14800         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
14801
14802 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
14803
14804         * configure.in: make the current version number 1.3.1 (binary age 0,
14805         interface age 0).
14806         
14807         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
14808         gtkcompat.h is all we want.
14809
14810         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
14811         GLib primitive types. fixed g_type_register_fundamental() argument
14812         ordering.
14813
14814         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
14815         compiles.
14816
14817         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
14818         object code cleanup, comment trigraph fixes, etc...
14819
14820 2000-06-23  Havoc Pennington  <hp@redhat.com>
14821
14822         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
14823         instead of making up a bogus name for first_para_mark
14824
14825         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
14826         0 as a context ID
14827
14828 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
14829
14830         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
14831
14832 2000-06-21  Havoc Pennington  <hp@pobox.com>
14833
14834         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
14835         we didn't check window->bg_pixmap != GDK_NO_BG.
14836
14837         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
14838         gdk-pixbuf
14839
14840 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
14841
14842         * docs/faq/gtk-faq.sgm: Move file to here.
14843           TODO: Update Makfile.am 
14844
14845 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
14846
14847         * docs/gtk-faq.sgm: Add Section 2
14848
14849 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
14850
14851         * docs/gtk-faq.sgm: New file. Start of DocBook
14852           version of the FAQ.
14853
14854 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
14855
14856         * configure.in (GDK_PIXBUF_MAJOR): Define version
14857         numbers for GDK_PIXBUF_*, as they get substituted
14858         into a header file. Need to consider versioning
14859         for gdk-pixbuf more carefully later.
14860
14861 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
14862
14863         Work with srcdir != builddir.   
14864         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
14865         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
14866         * demos/testpixbuf.c: Likewise.
14867         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
14868         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
14869         <gdk/x11/gdkx.h>.
14870         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
14871         "gdk-pixbuf.h".
14872         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
14873
14874 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
14875
14876         * TODO.xml: Change 1.4 version numbers to 2.0.
14877
14878 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
14879
14880         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
14881         fixups to GTK+ standard.
14882
14883 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
14884
14885         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
14886         gdk-pixbuf.
14887
14888         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
14889         fixups for GObject.
14890
14891         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
14892         gdk-pixbuf with GDK dependencies moved into GDK.
14893         
14894         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
14895         move gdk-pixbuf-loader here until GObject has signals.
14896
14897         * demos/: New directory of demos. Move demos from
14898         gdk-pixbuf here.
14899
14900         * demos/pixbuf-init.c: Small bit of code to check for
14901         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
14902         set GDK_PIXBUF_MODULEDIR appropriately.
14903
14904         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
14905         define which no longer makes sense.
14906
14907 2000-06-21  Havoc Pennington  <hp@redhat.com>
14908
14909         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
14910         gtk_get_default_language
14911
14912         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
14913         new function to get the default language
14914
14915         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
14916         s/gtk_text_view_style_values/gtk_text_style_values/
14917
14918         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
14919         Add a "language" field to tags.
14920
14921         (gtk_text_tag_set_arg): Fix bug in setting
14922         "bg_full_height_set" tag.
14923
14924 2000-06-21  Havoc Pennington  <hp@redhat.com>
14925
14926         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
14927         in the interfaces
14928
14929         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
14930         stuff instead when possible.
14931
14932         * gtk/gtktexttypes.h: Delete some unused constants
14933
14934         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
14935         testtextbuffer.c: use glib instead of custom unicode routines
14936
14937 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
14938
14939         * docs/es/: Removed mistakenly added generated sgml
14940
14941         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
14942         Remove outdated info files.
14943
14944         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
14945         Moved tutorial files into subdir
14946
14947         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
14948         subdir.
14949
14950         * docs/man/gtk_button.pod: Remove. (contents will be
14951         integrated into gtk-reference button page.)
14952
14953         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
14954         docs/faq/Makefile.am: Adjust for new organization
14955
14956 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
14957
14958         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
14959         not $(MKINSTALLDIRS)
14960
14961 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
14962
14963         * gtk/testgtk.c (create_text): Finish the job Elliot started
14964         of removing font setting test for text widget. (Since text widget
14965         and GdkFont are not deprecated, and cause portability problems.)
14966
14967 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
14968
14969         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
14970         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
14971         Remove use of libunicode in favor of new GLib functions.
14972
14973         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
14974         nano-x, framebuffer. The X11 include is just a hack until we get
14975         the necessary functions in gdkcolor.h, so there is no reason to
14976         add other includes of platforms.
14977
14978         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
14979         window bigger than the screen change.
14980
14981         * gtk/testgtk.c: Revert some random changes from Elliot
14982         that had no particular point and were causing testgtkrc
14983         not to function correctly.
14984         
14985         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
14986         because GdkSegment and GdkRegionBox have the same fields,
14987         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
14988         results in clearer code.
14989
14990         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
14991         gdk_input_translate_coordinates): Fix missed GdkObjectification
14992
14993 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14994
14995         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
14996         * gtk/gtk{plug,socket}.h: Missed commits from previous.
14997
14998 2000-06-20  Havoc Pennington  <hp@redhat.com>
14999
15000         * modules/linux-fb/Makefile.am: Make this compile
15001         without framebuffer enabled
15002
15003         * gdk/linux-fb/Makefile.am: Add conditional to not build
15004         framebuffer unless specified in configure
15005
15006         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
15007         the size of the target instead of source if -1 was passed for
15008         width/height
15009
15010         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
15011         width/height confusion.
15012
15013 2000-06-19  Havoc Pennington  <hp@redhat.com>
15014
15015         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
15016         GDK_DRAWABLE_XID. In the future, we probably want to make it
15017         faster with G_DISABLE_CHECKS turned on.
15018
15019 2000-06-14  Havoc Pennington  <hp@redhat.com>
15020
15021         * gdk/Makefile.am: add gdkpixmap.c
15022
15023         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
15024         s/gdk_image_init/_gdk_windowing_image_init
15025
15026         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
15027         ref/unref
15028
15029         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
15030
15031         * gdk/gdkcompat.h: remove GdkWindowType compat, since
15032         GdkWindowType is now non-deprecated; 
15033         change gdk_window_get_type() compat to be
15034         gdk_window_get_window_type().
15035
15036         * gdk/gdkdnd.h: make GdkDragContext a GObject.
15037
15038         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
15039         virtual GObject. Make all functions call into the vtable.
15040         Move gdk_image_put() guts in here. Remove GdkDrawableType
15041         and gdk_drawable_get_type(), these are now GdkWindow-specific.
15042         draw_image, get_depth, get_size, set_colormap, get_colormap,
15043         get_visual added to the vtable.
15044         
15045         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
15046         GObject. Virtualize everything. 
15047         (gdk_gc_new_with_values): remove check for destroyed window,
15048         because now GdkWindow::create_gc will check this.
15049         (gdk_gc_set_values): New function to set GC values, this 
15050         was already implemented but wasn't in the header
15051
15052         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
15053
15054         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
15055         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
15056         remove _gdk_window_class; add _gdk_window_impl_get_type() and
15057         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
15058         _gdk_windowing_window_init, rename gdk_image_init to
15059         _gdk_windowing_image_init.
15060         
15061         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
15062         (gdk_draw_layout): Remove check for destroyed window, 
15063         because all the drawable methods already check it.
15064         
15065         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
15066         Add gdkpixmap.c which contains implementation of GdkDrawable
15067         virtual table (by chaining to a platform-specific implementation
15068         object).
15069         
15070         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
15071         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
15072         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
15073         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
15074         GdkColormapPrivate. 
15075
15076         * gdk/gdktypes.h: #include <glib-object.h>
15077
15078         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
15079         Move most functionality to platform-specific implementation
15080         object. GdkWindow itself now handles the backing store, then
15081         chains to the platform-specific implementation.
15082         (gdk_window_get_window_type): return GdkWindowType of the window.
15083         (gdk_window_peek_children): New routine, returns the children of 
15084         a GdkWindow
15085         (gdk_window_get_children): Was in X11-specific code and did 
15086         XQueryTree. Changed to simply return a copy of window->children; 
15087         so it can go in cross-platform code.
15088         
15089         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
15090
15091         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
15092         GdkColormap; just changed to use the new private data instead
15093         of casting to GdkColormapPrivate.
15094
15095         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
15096         gdk_cursor_new().
15097
15098         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
15099         (private data member in the GObject). 
15100         (xdnd_manager_source_filter): Function had broken 
15101         error handling, fix it (use gdk_error_trap_push).
15102
15103         * gdk/x11/gdkdrawable-x11.c: This file now implements
15104         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
15105         base class is purely for the convenience of the X port,
15106         and not part of the interface to cross-platform GDK.
15107
15108         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
15109         
15110         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
15111         specific to X, and returned by the create_gc virtual method
15112         of GdkDrawableImplX11. 
15113         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
15114         rather than gchar, this was also changed in the GdkGC vtable.
15115         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
15116         mask is 0, return immediately, instead of checking every flag.
15117         This is faster, and keeps us from segfaulting if values is NULL
15118         and the mask contains some nonzero flags.
15119
15120         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
15121         GdkWindow.
15122
15123         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
15124         GdkWindowPrivate is gone.
15125
15126         * gdk/x11/gdkim-x11.c: rename things that got renamed.
15127
15128         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
15129         remove the image_put stuff that got transferred to GdkDrawable.
15130         
15131         * gdk/x11/gdkinput.c: renamings
15132
15133         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
15134
15135         * gdk/x11/gdkpixmap-x11.c: GObject conversion
15136
15137         * gdk/x11/gdkprivate-x11.h: indentation fixes
15138
15139         * gdk/x11/gdkproperty-x11.c: renamings
15140
15141         * gdk/x11/gdkselection-x11.c: renamings
15142
15143         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
15144         implements the platform-specific "impl" object.
15145         Moved gdk_window_get_children to gdk/gdkwindow.c
15146
15147         * gdk/x11/gdkx.h: Remove all the private structs and private datas
15148         that no longer exist. Add declaration of GdkGCX11 object here.
15149         Fix all the macros to still work. 
15150
15151         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
15152         GdkDragContext from the boxed types since they are now GObjects.
15153
15154         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
15155         moved xthickness/ythickness into the instance. GtkStyleClass
15156         functions are now in the standard vtable for GtkStyle, so you have
15157         to create a GObject subclass to write a theme engine.
15158         (gtk_style_copy): fixed a leaked PangoFontDescription
15159         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
15160         can be the standard GObject function.
15161         
15162         * Throughout GTK:
15163         s/style->klass->[xy]thickness/style->[xy]thickness
15164         s/pango_layout_unref/g_object_unref/
15165
15166         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
15167         
15168         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
15169         accessing GDK internals.
15170
15171         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
15172         accessing GDK internals.
15173
15174 2000-06-18  Elliot Lee  <sopwith@redhat.com>
15175
15176         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
15177
15178         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
15179         problem by calculating event position relative to the trough
15180         rather than the slider.
15181         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
15182
15183         * gdk/gdkgc.h: Add GDK_NOR.
15184
15185         * configure.in, Makefile.am: Add modules top level dir
15186         * configure.in: Only use pangox library if building x11 target.
15187         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
15188
15189 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
15190
15191         * gtk/gtkcolorsel.c: Change private class member to be named
15192         private_data throughout the file.
15193
15194         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
15195         private_data to avoid clashing with keyword.
15196
15197 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
15198
15199         * gdk/gdkdnd.h: Add comment to remove warning.
15200
15201 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
15202
15203         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
15204         Byelorussian language; changed the Makefile and file names 
15205         to reflect that.
15206
15207 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
15208
15209         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
15210         rather than gdk_window_hide; this makes things work
15211         correctly if the window is programmatically hidden while
15212         iconified.
15213
15214 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
15215
15216         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
15217         cut and paste typo where wrong pixmap was being
15218         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
15219
15220 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
15221
15222         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
15223         Add helper function to compute format / bytes 
15224         relationship. Use in a couple places to fix up
15225         errors which assume 8 * format.
15226
15227         * gtk/gtkselection.c (gtk_selection_request): Use 32
15228         rather than 8 * sizeof (GdkAtom), to work correctly
15229         on Alpha.
15230
15231 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
15232
15233         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
15234         libgtk.la
15235         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
15236         versions
15237
15238         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
15239         checking macros return NULL since the function has a return value.
15240
15241 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
15242
15243         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
15244         GTK+ from building at all.
15245
15246         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
15247
15248 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
15249
15250         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
15251         gtk/Makefile.am: make it possible to configure gtk for different
15252         targets on the same platform. The library name is now 
15253         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
15254         flag. Only the x11 target compiles right now.
15255         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
15256         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
15257         * gdk/nanox/gdk*generic*: delete generic region code.
15258         * gdk/linux-fb/gdk*generic*: delete generic region code.
15259         * README.nanox: update information.
15260         
15261 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
15262
15263         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
15264         prepend not append. (Pointed out by Brett Hall.)
15265
15266 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
15267
15268         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
15269
15270 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
15271
15272         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
15273         need this later, and this makes sure that the atexit for
15274         glib gets called after that for GDK, so atexits are
15275         properly ordered for object leak checking.
15276
15277         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
15278
15279         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
15280         pango_x_shutdown_display()
15281
15282         * gtk/simple.c (main): Close window on destroy.
15283
15284 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
15285
15286         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
15287         to treat initial creation different from setting with 
15288         regards to the graphics-exposures parameter, so add a parameter
15289         indicating whether this is initial or not.
15290
15291 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
15292
15293         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
15294         to sort of work by adding an extra return_exposes arg
15295         to gdk_event_translate() - it might be better to simply
15296         deprecate the function altogether and force people to rewrite
15297         without it. gdk_window_scroll() handles most of it, and where
15298         gdk_window_scroll() doesn't work, simply redrawing more does.
15299
15300         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
15301         assertion.
15302
15303         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
15304
15305         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
15306         bunch of pretty much useless /* Print debugging info */ comments 
15307         which had drifted away from the code they were commenting.
15308
15309 2000-06-02  Havoc Pennington  <hp@pobox.com>
15310
15311         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
15312         is in working order.
15313         
15314         * gtk/testtext.c: Change to reflect anonymous mark API
15315
15316         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
15317
15318         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
15319         field, which was unused.
15320
15321         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
15322         saves some typing.
15323
15324         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
15325
15326         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
15327         flag on the insertion point and selection bound
15328
15329         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
15330         make mark-manipulation functions take a GtkTextMark* instead of a
15331         mark name.
15332         
15333         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
15334         GtkTextMarkBody; will be used to detect attempts to delete
15335         the permanent marks (insert and selection bound)
15336
15337         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
15338
15339 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
15340
15341         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
15342         flag to on.
15343
15344         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
15345         Honor DOUBLE_BUFFRED_FLAG
15346
15347         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
15348         function to set the DOUBLE_BUFFERED flag.
15349
15350         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
15351         or not exposes done on the widget should be double-buffered.
15352
15353         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
15354         to be what would be expected. (Fixes problem with a
15355         g_return_if_fail() validating a TextDirection enumeration)
15356
15357 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
15358
15359         * gtk/gtkwidget.c: Remove all references to 
15360         offscreen flag which was no longer used.
15361
15362         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
15363
15364         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
15365         for non-null label_widget->parent.
15366
15367         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
15368         which no longer was used.
15369
15370         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
15371
15372         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
15373         for null arguments.
15374
15375         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
15376         check for destroyed windows.
15377
15378 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
15379
15380         * gtk/gtkimmulticontext.c: Add a finalize method and unref
15381         the slave context there.
15382
15383         * gtk/gtkinvisible.[ch]: Make reference counting behavior
15384         identical to GtkWindow.
15385
15386 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
15387
15388         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
15389         pangox to here, so we can write them independent of rendering
15390         system, using GDK primitives.
15391
15392         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
15393         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
15394         since we have a rendering-system independent implementation in
15395         terms of draw_glyphs().
15396         
15397         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
15398         function to render a single line.
15399
15400         * gdk/x11/gdkpango.c: Move the guts of this file mostly
15401         into ../gdkpango.c, which simplifies things, since we
15402         don't have to deal with raw X gc's.
15403
15404 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
15405
15406         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
15407         get the logical attributes for a given GtkTextLine.
15408
15409 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
15410
15411         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
15412         g_locale_get_codeset() to g_get_codeset() change.
15413
15414 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
15415
15416         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
15417         descriptions.
15418
15419         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
15420         the entry.
15421
15422         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
15423         redoing (vastly simplifying) for Pango. Still needs quite
15424         a bit of work. (Size selection is currently poor. List of 
15425         predefined sizes is not a good idea, since all of these
15426         sizes won't necessarily be distinct.)
15427
15428 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
15429
15430         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
15431         CODESET results for LANG=C.
15432
15433 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
15434
15435         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
15436         which takes a stringized pango font description;
15437         ignore the older 'font' and 'fontset' declarations.
15438
15439         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
15440         field with a GdkFont derived via gdk_font_from_description(),
15441         for compatibility. (Should we just remove it entirely?
15442         Probably too much compatibility breakage, but people
15443         should be migrating to the new Pango stuff as quickly
15444         as possible.)
15445
15446 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
15447
15448         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
15449
15450 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
15451
15452         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
15453         redoing; there are some bugs in size allocation right
15454         now, the semi-existant distinction between header / day
15455         fonts was removed, but, with Pango, could actually
15456         be made functional in a nice way.
15457         
15458         * gtk/testcalender: Move calender from examples into this
15459         directory as a test program. (We really need to restrcture
15460         testgtk into a whole directory full of tests for every
15461         widget or functionality group, separated into multiple .c
15462         files.)
15463
15464 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
15465
15466         * gtk/testgtk.c (file_exists): Fix stupid typo that
15467         was keeping RC file from being loaded.
15468
15469         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
15470         RC file font code.
15471
15472 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
15473
15474         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
15475         Add function to load a GdkFont from a PangoFontDescription.
15476
15477 2000-05-29  Tor Lillqvist  <tml@iki.fi>
15478
15479         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
15480         variable should be of type GdkEventPrivate.
15481
15482 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
15483
15484         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
15485         to have any widget for the label, use a GtkLabel widget
15486         to display the text. (Based partially on a patch from
15487         Anders Carlson.)
15488
15489         (Quite a bit of code reorganization - strip 90% of the
15490         guts out of gtkaspectframe and add a single virtual
15491         func to GtkFrameClass - compute_child_allocation.)
15492
15493 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
15494
15495         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
15496         (Removed clist->row_center_offset field because caching
15497         it wasn't saving time or code, added private function
15498         _gtk_clist_create_cell_layout()).
15499
15500 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
15501
15502         * gtk/gtkaccellabel.c: Pangoized.
15503
15504         * gtk/[hv]ruler.c: Pangoized
15505
15506 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
15507
15508         * gtk/gtkfilesel.c (gtk_file_selection_init):
15509         Use gtk_clist_set_column_auto_resize() to remove need
15510         need for manual column width computations.
15511
15512 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
15513
15514         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
15515         ensuring Pango correctness, and considerably simplifying the
15516         code.
15517         
15518         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
15519
15520         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
15521         getting of numbers of lines.
15522
15523         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
15524         to the actual requested width of the lable, not to the wrap
15525         width we set.
15526
15527         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
15528
15529         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
15530           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
15531
15532         * gtk/gtktextview.c: Fix structure inheritance.
15533
15534         * gtk/gtkprogressbar.c: Pangoize.
15535
15536 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
15537
15538         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
15539         in a function.
15540
15541         * gtk/gtktextlayout.c (find_display_line_above): Fixed
15542         bug with computing line tops.
15543
15544         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
15545
15546 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15547
15548         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
15549         and y_offset coordinates to do what we need now. (The offset between
15550         buffer and layout coordinates has been reintroduced, but is a 
15551         bit different than before.)
15552
15553         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
15554         handle the adjustments ourselves, and scroll as necessary using
15555         the new gdk_window_scroll().
15556         
15557         The advantage of this is that when we are incrementally revalidating,
15558         we are essentially rearranging things around the visible portion
15559         of the screen. With the old setup, the visible portion of the
15560         screen was moved around in the layout, so scrolling and redrawing
15561         to track that caused jumping of the display. Since we now
15562         control the scrolling ourselves, we can suppress this and
15563         only redraw when things actually change.
15564
15565 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
15566
15567         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
15568         the region not just redisplay it after-all, since we store the
15569         cursors in the LineDisplay. (Ugly interactions here between
15570         GtkLayout and GtkTextBTree here.)
15571         
15572         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
15573
15574 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15575
15576         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
15577         Added function to scroll contents of a window while keeping the
15578         window constant. Works by XCopyArea or guffaw-scrolling depending
15579         on the details of how the window is set up. (guffaw-scrolling
15580         still needs to be filled in.)
15581
15582 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
15583
15584         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
15585         move the debugging that was tied to a global variable
15586         to that.
15587
15588         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
15589
15590         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
15591         validated flag, in line data instead of setting height/width to
15592         -1. This allows us to perform operations with partially invalid
15593         buffer (using the old size for invalid lines) and thus to do
15594         incremental vaidation. Keep height/width aggregates up to date
15595         when deleting text and rebalancing the tree.
15596
15597         * gtk/gtktextbtree.[ch]: Add functions validate a line
15598         (gtk_text_btree_validate_line), and to validate up
15599         to a number of pixels (gtk_text_btree_validate).
15600
15601         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
15602         that indicates that something is changed and a revalidation
15603         pass is needed. Change ::need_repaint to ::changed, and
15604         make it take old and new yranges instead of a rectangle.
15605
15606         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
15607         the line_data_destroy() function from 
15608         gtk_text_btree_add_view() to a virtual function in 
15609         GtkTextLayout
15610
15611         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
15612         since we are handling partial repaints in a different fashion
15613         now.
15614
15615         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
15616         of the selection instead of queueing a repaint on the
15617         entire widget.
15618
15619         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
15620         get_selection_bounds() down to btree, make the function
15621         in buffer a wrapper around the btree function.
15622
15623         * gtk/gtktextlayout.[ch]: Add functions to check if the
15624         layout is valid and to recompute either a range of pixels
15625         aroudn a line or a certain total number of pixels.
15626
15627         * gtk/gtktextlayout.[ch]: Cache a single line display;
15628         now that we only redraw the needed portions, the hit rate
15629         for this cache is quite high.
15630         
15631         * gtk/gtktextview.[ch]: Keep track of the first paragraph
15632         on the screen so that when re-laying-out the buffer, we can
15633         keep the same place. This requires connecting to ::value_changed
15634         on the adjustments
15635
15636         * gtk/gtktextview.[ch]: Add idle functions to revalidate
15637         the buffer after we receive an ::invalidated signal.
15638         
15639 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
15640
15641         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
15642         to max of allocation and layout size, not just to the
15643         layout size.
15644
15645         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
15646         Invalidate window so it gets redrawn properly.
15647
15648         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
15649         to mean the entire window.
15650
15651         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
15652         into public header.
15653
15654 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
15655
15656         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
15657         to get the name of a mark.
15658
15659         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
15660         to find the paragraph from a y position.
15661
15662 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
15663
15664         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
15665         nodes have width/height >= 0, not > 0.
15666
15667 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
15668
15669         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
15670         Add a size_only flag, so when we only need the size, we don't create
15671         useless appearance attributes.
15672
15673         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
15674         duplicate setting of font description.
15675
15676         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
15677
15678 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15679
15680         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15681         EXTRA_DIST. It does not work well when the file that
15682         everything depends on is not in the tarball.
15683
15684 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15685
15686         * gtk/testgtk.c: Some hacks and fixes so that it basically
15687         works when not sitting in the GTK+ build tree.
15688
15689 2000-05-03  Havoc Pennington  <hp@redhat.com>
15690
15691         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
15692         Properly determine the ordering of the tag root and the current
15693         line within the tree. Previous algorithm only worked if the tag
15694         root's immediate parent was the common root of both the current
15695         line and the tag root.
15696
15697 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
15698
15699         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
15700         alignment.
15701
15702         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
15703         the widget text directional dynamically.
15704
15705         * gtk/gtktextview.[ch]: Added functions to get and set default
15706         wrap mode.
15707
15708 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
15709
15710         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
15711         in cursor location computation.
15712
15713 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
15714
15715         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
15716         vadjusment values properly when layout gets smaller.
15717
15718         * gtk/gtktextview.c (need_repaint_handler): Areas being
15719         passed in are far completely inaccurate, and sometimes
15720         too small, so, for now, just queue a redraw on the
15721         whole visible region.
15722
15723 2000-04-25  Havoc Pennington  <hp@redhat.com>
15724
15725         * gtk/gtktextbtree.c (summary_destroy): new function to 
15726         destroy tag summary nodes
15727         (gtk_text_line_next_could_contain_tag): this function was 
15728         totally broken if the line passed in wasn't below the tag
15729         root. Fix it.
15730         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
15731         "wildcard" case, we have to do a linear scan. Blah.
15732         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
15733         we have to do the linear scan
15734         (tag_removed_cb): When a tag is removed from the tag table, 
15735         remove the GtkTextTagInfo node from the btree.
15736         (gtk_text_btree_spew): Implement the spew function, for 
15737         our debugging pleasure.
15738
15739 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
15740
15741         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
15742         a problem with referring to the wrong buffer.
15743
15744         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
15745
15746         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
15747         font description to gtk_style_new() - otherwise things
15748         don't work without a .gtkrc file.
15749
15750         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
15751         tags table if we create it ourself, too.
15752
15753         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
15754         it was conflicting with XKB modifiers.
15755
15756         * gtk/gtktextview.[ch]: Add simple support for 
15757         GtkIMContext.
15758
15759 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
15760
15761         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
15762         with deletion from last commit.
15763
15764 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
15765
15766         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
15767         in the context from the current locale.
15768         
15769         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
15770         context, not hardcoded value.
15771
15772         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
15773         not logical.
15774
15775 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15776
15777         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
15778         attributes - that doesn't handle partial-glyph selection
15779         properly. Instead use new pango_layout_line_get_x_ranges()
15780         functionality to draw the selection.
15781
15782         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
15783         now properly handles out-of-range coordinates.
15784
15785         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
15786
15787         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
15788         public.
15789
15790         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
15791         for paragraphs opposite to the base direction of the widget.
15792
15793         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
15794
15795         * gtk/gtktextlayout.c: Don't split segments on marks, since that
15796         causes Arabic words to reshape as you cursor through.
15797
15798         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
15799         cursor position when moving vertically with the arrow keys and
15800         scrolling with page-up/page-down. (Arrow keys save only the X,
15801         scrolling saves both X and Y.)
15802
15803         This means you can line-up / line-down or page-up / page-down
15804         without losing your place, and also that moving vertically
15805         with the cursor keys keeps the same X position, not the same
15806         character count:
15807
15808         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
15809         arrow keys move by display lines, not paragraphs.
15810
15811 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15812
15813         * gtk/gtklayout.c: Make sure that the bin window is at least
15814         as big as the allocation. (Should we also make sure that the
15815         bin window is big enough to completely cover widget->window?)
15816
15817         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
15818         function to get the onscreen rectangle.
15819
15820         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
15821         for offsets in window coordinates.
15822
15823 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
15824
15825         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
15826         confusion.
15827
15828         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
15829         from the widget direction.
15830
15831         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
15832         Add a "direction" attribute.
15833
15834         * gtk/gtktextview.c: global s/tkxt/text_view/.
15835
15836         * gtk/testtext.c: Added long block of text in Arabic, to test out
15837         the direction attributes. (Some problems with the shaping system
15838         for arabic become obvious - like the fact the cursor splits words
15839         into unjoined pieces.)
15840
15841 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
15842
15843         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
15844
15845         * gtk/gtktextlayout.c: Fix up alignment.
15846
15847         * gtk/testtext.c: Add some tests for centering, wrapping.
15848
15849 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
15850
15851         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15852         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
15853         If we wrote GTK+-specific layout-render function this could just replace
15854         the draw_layout() operation in the vtable.
15855
15856         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
15857         pango_layout_get_cursor_pos() and use that function.
15858
15859         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
15860         is a non-static symbol.
15861
15862         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
15863         with gtk_text_btree_find_line_by_y()
15864
15865         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
15866         renderer that handles GtkTextAppearance attributes.
15867
15868         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
15869
15870           - Move the values in the style that don't affect geometry into a
15871             GtkTextAppearance structure.
15872           - Change underline to take a PangoUnderline and "font" a string
15873             representation of a font description
15874           - Add a "font_desc" attribute which takes a FontDescription structure.
15875
15876         * gtk/gtktextlayout.[ch]:
15877
15878           - Get rid of the display-line list per each line. Instead, we
15879             generate, on demand, a GtkTextLineDisplay structure which]
15880             contains a PangoLayout * and other necesary information
15881             (offsets, cursor locations) for displaying a paragraph.
15882           - Get rid of the code to wrap lines, create display chunks,
15883             etc. Instead, we just go through a paragraph and convert
15884             it into the necessary inputs to a PangoLayout.
15885           - Implement a new attribute type, GtkTextAttrAppearance. This
15886             holds a GtkTextAppearance, and is used to pass colors, 
15887             stipple, etc, through from the layout to the display without
15888             having to use lots and lots of individual attributes.
15889           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
15890             in terms of PangoLayout functions.
15891         
15892         * gtk/gtktextview.c: 
15893          
15894           - Handle passing the necessary PangoContext to the layout
15895           - Some fixups in painting to deal with the automatic backing store
15896             and offsetting of GTK+-1.4
15897           - Add a style_set handler so that the default style reacts
15898             properly to theme changes.
15899         
15900         * gtk/gtktext?*.[ch]: Random code-style fixes.
15901
15902         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
15903
15904 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
15905
15906         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
15907         in original form preparatory to Pango-ization and gdkimcontext-ization.
15908
15909 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
15910
15911         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
15912         so that we can derive from gtkimcontext in language bindings properly.
15913
15914 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
15915
15916         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
15917         Add a compose table including (almost) all the compose combinations
15918         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
15919         data in the XIM implementation.
15920
15921         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
15922         Moved functions to convert keyvalues from and to unicode here from
15923         the win32 port and made them public.
15924
15925 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15926
15927         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
15928
15929 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
15930
15931         * gtk/gtkimcontext.[ch]: Base class for new input context system
15932
15933         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
15934         the real input context implementation to be loaded from modules
15935         and switched on the fly.
15936
15937         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
15938         context that just does direct keysymbol => unicode translation.
15939
15940         * gtk/gtkentry.[ch]: Start switching editing over to using
15941         GtkInputContext. (No handling of preedit yet.)
15942
15943 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
15944
15945         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
15946         many substitutions. (klass should not be subsituted.)
15947
15948 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
15949
15950         * configure.in: Add checks for Pango
15951
15952         * configure.in docs/Makefile.am: Add test for sgml2html
15953         and allow 'make dist' without building html, but print out
15954         warnings in that case. (For making snapshots)
15955
15956         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
15957         Add Pango libraries and C flags
15958
15959         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15960         Add function (gdk_draw_layout) to draw a pango layout.
15961
15962         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
15963         for getting Pango contexts for GDK.
15964
15965         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
15966
15967         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
15968         editing.
15969
15970         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
15971         keysym => unicode translations. More languages can be added
15972         here, but real input-method support is needed.
15973
15974         * docs/Changes-1.4.txt: Added note about entry behavior.
15975         
15976         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
15977         to set the reading direction for a widget and the global direction.
15978         Add test which allows toggling the global direction. Two private
15979         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
15980
15981         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
15982           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
15983
15984         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
15985
15986         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
15987         underlining now handled by Pango.
15988
15989         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
15990         to RCStyle and Style. (Having both this and the old font name and GdkFont 
15991         is temporary.)
15992
15993         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
15994         convenience functions for creating contexts and layouts for widgets.
15995
15996         * gtk/testgtk.c: Enhance label tests with multilingual labels.
15997
15998 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
15999
16000         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
16001         titles to be active, even if they aren't visible.
16002         (gtk_clist_column_titles_passive):  Ditto.
16003
16004 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
16005
16006         * gtkmenu.c:
16007         * gtkmenu.h:
16008         * gtktypeutils.h: Spelling/grammar fixes in comments.
16009
16010 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
16011
16012         * gdk/nanox/*.h: add missing header files.
16013
16014 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
16015
16016         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
16017         send_event to TRUE.
16018         (gtk_drawing_area_size): queue a resize.
16019
16020 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
16021
16022         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
16023         the handlers, also invalidate them. bug nailed down by Karl Nelson
16024         <kenelson@ece.ucdavis.edu>.
16025
16026 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
16027
16028         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
16029         "(nil)" foundries, patch from Grigorios Magklis.
16030
16031         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
16032         on non-available fonts, based on a patch by Grigorios Magklis
16033         <maglis@cs.rochester.edu>.
16034
16035 2000-05-18  Elliot Lee  <sopwith@redhat.com>
16036
16037         * gdk/x11/gdkregion-generic.c: If a region does not have any
16038         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
16039         instead of GDK_OVERLAP_RECTANGLE_IN.
16040
16041 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
16042
16043         * gtk/gtklayout.c (gtk_layout_map): Remove references to
16044         OFFSCREEN, as it is no longer necessary.
16045
16046 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
16047
16048         * gtk/gtkcolorsel.c: Patch from David Santiago
16049         <mrcooger@cyberverse.com> to change things so that the 
16050         indicator of the active palette entry is done independently,
16051         not via the focus, since it should always be visible.
16052
16053 2000-05-17  Tor Lillqvist  <tml@iki.fi>
16054
16055         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
16056         refcount leaks as in the X11 backend.
16057
16058         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
16059         cosmetics.
16060
16061         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
16062         backend. Add _gdk_windowing_window_destroy().
16063
16064         * gtk/gtkcolorsel.c: Include correct backend-specific header.
16065         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
16066         either, but these probably do exist on nanox?)
16067         
16068         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
16069         which isn't necessarily defined by <math.h>.
16070
16071         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
16072         ancestry past GtkObject.
16073
16074         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
16075         from DLL on Win32.
16076
16077         * gtk/gtk.def: Update corresponding to recent changes.
16078
16079         * gtk/makefile.{cygwin,msc}: Updates.
16080
16081 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
16082
16083         * docs/Changes-1.4.txt: A bit of editing.
16084
16085         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
16086         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
16087         to clear the update area for the window, and clear it
16088         when hiding a window.
16089
16090         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
16091         if window destroyed.
16092
16093         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
16094
16095         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
16096         gdk_window_destroy() to the generic code, since there was a lot of 
16097         window-system-independent logic it in. Add a function:
16098         
16099          _gdk_window_destroy() 
16100
16101         to the internal API to destroy a window without unreferencing it.
16102         Add a function:
16103
16104          _gdk_windowing_window_destroy()
16105
16106         That does the windowing-system-dependent part of destroying 
16107         the window.
16108
16109 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
16110
16111         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
16112
16113 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
16114
16115         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
16116         Make gtk_widget_shape_combine_mask() keep a reference count on
16117         the pixmap since it keeps it around.
16118
16119 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
16120
16121         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
16122         leak.
16123
16124         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
16125         leak with event filters.
16126
16127 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
16128
16129         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
16130         signal handlers with the right data arguments. (Fixes
16131         some warnings when a widget was repeatedly set as a drag
16132         destination.)
16133
16134         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
16135         window so we can avoid avoid setting the DND properties on the
16136         toplevel window repeatedly.
16137
16138 2000-05-13  Tor Lillqvist  <tml@iki.fi>
16139
16140         * gdk/win32/gdkwin32.h: Define more message types missing from
16141         mingw headers.
16142
16143         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
16144         call gdk_window_destroy_notify(). It was never called. This
16145         probably meant that the GdkWindow was never freed. Thanks Owen for
16146         noticing (!).
16147
16148         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
16149         window as destroyed before calling DestroyWindow(). DestroyWindow()
16150         causes a call to the window procedure (gdk_WindowProc), which
16151         calls gdk_event_translate(), which calls
16152         gdk_window_destroy_notify(), which gets confused unless the window
16153         is set as destroyed.
16154
16155         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
16156         this function to indicate it's win32 only. Put inside #ifdef
16157         G_ENABLE_DEBUG.
16158
16159         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
16160         debugging function. (gdk_event_translate:) Add a default branch
16161         that uses the above function to print debug messages with all
16162         Windows messages symbolically.
16163
16164         * gdk/win32/gdkprivate-win32.h: Declare it, and
16165         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
16166
16167 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
16168
16169         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
16170         public header file.
16171
16172 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
16173
16174         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
16175
16176         * gtk/gtktext.c: made the adjustments no-construct args, simply
16177         provide default adjustments.
16178         (gtk_text_destroy): release adjustments.
16179
16180         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
16181         adjustment argument non-construct.
16182
16183         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
16184         instead of in finalize.
16185         (gtk_progress_get_text_from_value): 
16186         (gtk_progress_get_current_text): 
16187         (gtk_progress_set_value): 
16188         (gtk_progress_get_percentage_from_value): 
16189         (gtk_progress_get_current_percentage): 
16190         (gtk_progress_set_percentage): 
16191         (gtk_progress_configure): ensure an adjustment is present.
16192
16193 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
16194
16195         * gtk/gtkcolorsel.[hc]:
16196         * gtk/gtkcolorseldialog.[hc]:
16197         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
16198         their parent implementation, use bit fields for boolean values, don't
16199         create unused widgets, usage of glib types, braces go on their own
16200         lines, function argument alignment, #include directives etc. etc. etc..
16201
16202         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
16203
16204 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
16205
16206         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
16207
16208         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
16209         of NULL.
16210
16211         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
16212         to freed data.
16213         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
16214
16215         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
16216         to NULL when the toplevel is getting destroyed.
16217         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
16218         (gtk_menu_destroy): 
16219         (gtk_menu_init): store the information of whether we have to
16220         readd the initial child ref_count during destruction in a new
16221         GtkMenu field needs_destruction_ref_count.
16222
16223         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
16224         here, those reading: learn from my mistake! ;)
16225         in order for set_?adjustment to support a default adjustemnt if
16226         invoked with an adjustment pointer of NULL, the code read (pseudo):
16227         if (v->adjustment) unref (v->adjustment);
16228         if (!adjustment) adjustment = adjustment_new ();
16229         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
16230         now imagine the first unref to actually free the old adjustment and
16231         adjustment_new() creating a new adjustment from the very same memory
16232         portion. here, the latter comparision will unintendedly fail, and
16233         all hell breaks loose.
16234         (gtk_viewport_set_hadjustment):
16235         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
16236         after unreferencing it.
16237
16238         * gtk/gtkcontainer.[hc]: removed toplevel registration
16239         functions: gtk_container_register_toplevel(),
16240         gtk_container_unregister_toplevel() and
16241         gtk_container_get_toplevels() which had wrong semantics
16242         anyways: it didn't reference and copy the list.
16243
16244         * gtk/gtkwindow.c: we take over the container toplevel registration
16245         bussiness now. windows are registered across multiple destructions,
16246         untill they are finalized. the initial implicit reference count
16247         users are holding on windows is removed with the first destruction
16248         though.
16249         (gtk_window_init): ref & sink and set has_user_ref_count, got
16250         rid of gtk_container_register_toplevel() call. add window to
16251         toplevel_list.
16252         (gtk_window_destroy): unref the window if has_user_ref_count
16253         is still set, got rid of call to
16254         gtk_container_unregister_toplevel().
16255         (gtk_window_finalize): remove window from toplevel list.
16256         (gtk_window_list_toplevels): new function to return a newly
16257         created list with referenced toplevels.
16258         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
16259
16260         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
16261         adjustment a non-construct arg.
16262         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
16263         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
16264         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
16265
16266         * gtk/gtkrange.c: added some realized checks.
16267         (gtk_range_destroy): get rid of the h/v adjustments in the
16268         destroy handler instead of finalize. remove timer.
16269         (gtk_range_get_adjustment): demand create adjustment.
16270
16271         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
16272         we simply create them on demand now and get rid of them in
16273         the destroy handler.
16274         (gtk_viewport_destroy): get rid of the h/v adjustments in the
16275         destroy handler instead of finalize.
16276         (gtk_viewport_get_hadjustment): 
16277         (gtk_viewport_get_vadjustment): 
16278         (gtk_viewport_size_allocate): demand create h/v adjustment
16279         if required.
16280
16281         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
16282         gtk_widget_real_destroy () functionality.
16283         (gtk_widget_real_destroy): reinitialize with a new style, instead
16284         of setting widget->style to NULL.
16285
16286 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
16287
16288         * gtk/gtkcalendar.c:
16289         * gtk/gtkbutton.c: ported _get_type() implementation over to
16290         GType, either to preserve memchunks allocation facilities,
16291         or because Gtk+ 1.0 GtkTypeInfo was still being used.
16292
16293         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
16294         over. prepare for ::destroy to be emitted multiple times.
16295         removed reference tracer magic. chain into GObjectClass.shutdown()
16296         to emit ::destroy signal.
16297
16298         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
16299         fundamental.
16300
16301         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
16302         cludge.
16303
16304         * gtk/gtksocket.c:
16305         * gtk/gtkplug.c:
16306         * gtk/gtklayout.c:
16307         * gtk/gtklabel.c:
16308         * gtk/gtkargcollector.c:
16309         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
16310         not being a fundamental anymore, and to work with the new
16311         type system (nuked fundamental type varargs clutter).
16312
16313         * gtk/*.c: install finalize handlers in the GObjectClass
16314         part of the class structure.
16315         changed direct GTK_OBJECT()->klass accesses to
16316         GTK_*_GET_CLASS().
16317         changed direct object_class->type accesses to GTK_CLASS_TYPE().
16318
16319         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
16320         GType. made most of the GTK_*() type macros and Gtk* typedefs
16321         simple wrappers around macros and types provided by GType.
16322         most notably, a significant portion of the old API vanished:
16323         GTK_TYPE_MAKE(),
16324         GTK_TYPE_SEQNO(),
16325         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
16326         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
16327         GTK_TYPE_ARGS,
16328         GTK_TYPE_CALLBACK,
16329         GTK_TYPE_C_CALLBACK,
16330         GTK_TYPE_FOREIGN,
16331         GtkTypeQuery,
16332         gtk_type_query(),
16333         gtk_type_set_varargs_type(),
16334         gtk_type_get_varargs_type(),
16335         gtk_type_check_object_cast(),
16336         gtk_type_check_class_cast(),
16337         gtk_type_describe_tree(),
16338         gtk_type_describe_heritage(),
16339         gtk_type_free(),
16340         gtk_type_children_types(),
16341         gtk_type_set_chunk_alloc(),
16342         gtk_type_register_enum(),
16343         gtk_type_register_flags(),
16344         gtk_type_parent_class().
16345         replacements, where available are described in ../docs/Changes-1.4.txt.
16346         implemented compatibility functions for the remaining API.
16347
16348         * configure.in: depend on glib 1.3.1, use gobject module.
16349
16350 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
16351
16352         * TODO.xml: Various updates to current status.
16353
16354 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
16355
16356         * gtk.m4: Print out version when test succeeds.
16357
16358 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
16359
16360         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
16361         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
16362         
16363         (Original triangle color selector from Simon Budig
16364         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
16365         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
16366         Santiago <mrcooger@cyberverse.com>)
16367
16368         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
16369         out into a separate widget.
16370
16371         * gtk/testgtk.c: Add some checkbuttons for toggling palette
16372         and opacity controls.
16373
16374 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
16375
16376         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
16377         snuck in prematurely.
16378
16379 2000-05-07  Tor Lillqvist  <tml@iki.fi>
16380
16381         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
16382         had deleted a ! operator by mistake, which caused
16383         GDK_SELECTION_CLEAR events never to be generated, which caused
16384         only the first copy to the clipboard from an gtkeditable to
16385         actually cause a copy to the Windows clipboard.
16386
16387 2000-05-06  Tor Lillqvist  <tml@iki.fi>
16388
16389         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
16390         compilation, too. Current mingw gcc distributions include the
16391         necessary headers. Also the necessary IIDs are now in mingw
16392         headers/libraries, and own definitions unnecessary.
16393
16394         More hacking on OLE2 DND, still doesn't work though, and thus
16395         ifdeffed out.
16396
16397         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
16398         here, too.
16399
16400 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
16401
16402         * gdk/nanox/*: nano-X port work in progress.
16403         * gdk/simple.c: simple test for Gdk.
16404         * README.nanox: notes about the port: read this first!
16405         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
16406         with nano-X.
16407
16408 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
16409
16410         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
16411         gdk_window_clear() into common code, implement in terms of
16412         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
16413         not redirected to the backing rectangle.
16414
16415 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
16416
16417         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
16418         EXTRA_DIST. It does not work well when the file that
16419         everything depends on is not in the tarball.
16420
16421 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
16422
16423         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
16424         with recursion where process_updates() is called from
16425         an expose handler. (GtkTextView is highly broken in
16426         doing this, but it should work, so it is a nice test
16427         case.)
16428
16429 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
16430
16431         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
16432         handle the case where updates are queued during processing of
16433         updates.
16434
16435 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
16436
16437         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
16438         window is on gdk_display - use that instead of segfaulting.
16439
16440 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
16441
16442         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
16443         broken and require an empty arg, give it to them.
16444
16445 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
16446
16447         * gtk/gtklabel.h: indentation fixes.
16448
16449 2000-05-02  Tor Lillqvist  <tml@iki.fi>
16450
16451         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
16452         draw too narrow or too low arcs, they seem to fail, at least with
16453         some display drivers.
16454
16455         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
16456
16457         Large changes to the Win32 backend, partially made necessary by
16458         the changes to the backend-independent internal
16459         structures. Attempts to implement similar backing store stuff as
16460         on X11. The current (CVS) version of the Win32 backend is *not* as
16461         stable as it was before the no-flicker branch was merged. A
16462         zipfile with that version is available from
16463         http://www.gimp.org/win32/. That should be use by "production"
16464         code until this CVS version is usable. (But note, the Win32
16465         backend has never been claimed to be "production quality".)
16466
16467         * README.win32: Add the above comment about versions.
16468
16469         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
16470
16471         * gdk/gdk.def: Update.
16472
16473         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
16474         presumably be replaced by some more better mechanism as 1.4 gets
16475         closer to release shape.
16476
16477         * gdk/makefile.{cygwin,msc}: Update.
16478
16479         * gdk/win32/*.c: Correct inclusions of the backend-specific and
16480         internal headers. Change code according to changes in these. Use
16481         gdk_drawable_*, not gdk_window_* where necessary.
16482
16483         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
16484         our old DND.
16485
16486         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
16487         to interpret single characters as UTF-8. Thanks to Hans Breuer.
16488         Use correct function name in warning messages.
16489
16490         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
16491         GSourceFuncs gdk_event_prepare and gdk_event_check.
16492         (gdk_event_get_graphics_expose): Do implement, use
16493         PeekMessage. Thanks to Hans Breuer.
16494         (event_mask_string): Debugging function to print an GdkEventMask.
16495         (gdk_pointer_grab): Use it.
16496
16497         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
16498         (old) book I used claimed was Hangul actually is CJK Unified
16499         Ideographs Extension A. Also, Hangul Syllables were missing.
16500         Improve logging.
16501
16502         * gdk/win32/gdkgc-win32.c: Largish changes.
16503
16504         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
16505         g_win32_getlocale() from GLib, and not setlocale() to get current
16506         locale name.
16507
16508         * gdk/win32/gdkprivate-win32.h
16509         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
16510         gdkwin32.h, similarily as in the X11 backend.
16511
16512         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
16513         assignment was used instead of equals in if test. Thanks to Hans
16514         Breuer.
16515
16516         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
16517         the X11 version.
16518
16519         * gdk/win32/makefile.{cygwin,msc}
16520         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
16521         path to the Win32 headers that works also with the mingw compiler.
16522
16523         * gtk/gtkstyle.c: Include <string.h>.
16524
16525 2000-04-26  Havoc Pennington  <hp@redhat.com>
16526
16527         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
16528         replacing the broken gtk_label_get ()
16529
16530 2000-04-15  Havoc Pennington  <hp@pobox.com>
16531
16532         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
16533         this keeps scanner scripts from getting confused.
16534
16535         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
16536         data, rather than void
16537
16538 2000-04-15  Tor Lillqvist  <tml@iki.fi>
16539
16540         * gtk/gtkclist.c (gtk_clist_motion)
16541         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
16542         with is_hint FALSE, get x and y from the event. They used to be
16543         used uninitialised. The Win32 backend never sends motion events
16544         marked as hints. This for instance fixes the annoying file and
16545         font selector behaviour in the Win32 version.
16546
16547 2000-04-14  Tor Lillqvist  <tml@iki.fi>
16548
16549         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
16550         gtk_private_n_signals variables, they are used by some software,
16551         sigh.
16552
16553         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
16554         installation directory from the Registry, where the installer
16555         should have put it.
16556
16557 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
16558
16559         * gdk/x11/Makefile.am: Fix problem with installation directory for
16560         gdkx.h
16561
16562         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
16563         <mrcooger@cyberverse.com> so that when selecting menus with the
16564         mouse, the first item will not be selected, but when selecting
16565         with an accelerator, or navigating left-right on a menubar with
16566         the menus popped up, the first item will be selected.
16567
16568 2000-04-05  Dan Damian  <dand@dnttm.ro>
16569
16570         * configure.in: Added "ro" to ALL_LINGUAS.
16571
16572 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
16573
16574         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
16575         indentation.
16576
16577         * Makefile.am (EXTRA_DIST): Fix typo.
16578
16579         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
16580         to catch gdkconfig.h
16581
16582         * gtk/gtkitemfactory.c: Added FIXME.
16583
16584 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
16585
16586         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
16587         s/return_if_fail/return_val_if_fail/g and add a return value.
16588
16589 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
16590
16591         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
16592         merge slipup.
16593
16594         * gdk/gdkinput.h: Fix missing line from merge.
16595
16596 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
16597
16598         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
16599         instead of gdkprivate.h.
16600
16601 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
16602
16603         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
16604         parent class to correctly be GtkDialogClass.
16605
16606 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
16607
16608         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
16609         toplevel windows and their immediate children by their parents,
16610         since the size of toplevel windows is out of our immediate
16611         control and we don't get any real benefit from trying to track
16612         this size for clipping.
16613
16614         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
16615         for input_only windows.
16616
16617         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
16618         to fix some hacks and make sure that we don't try to set the
16619         background of input only windows.
16620
16621 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
16622
16623         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
16624         the _really_ internal stuff, and leave gdkprivate.h for the fake private
16625         stuff that we've traditionally exposed.
16626
16627         * gdk/**.c: Use gdkinternals.h where appropriate.
16628
16629         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
16630         not include gdkprivate-x11.h, move all stuff of conceivable public
16631         interest into gdkx.h; keep all really private stuff in
16632         uninstalled header gdkprivate-x11.h.
16633
16634         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
16635         image->image_put on windows through a new function _gdk_window_draw_image()
16636         to allow us to do backing store for images. (Sort of ugly)
16637
16638         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
16639         contexts locally so that we can offset them properly when drawing 
16640         onto backing pixmaps.
16641
16642         * gdk/gdkinput.h: Reindented
16643
16644         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
16645         pixmap or color for the window, so we can properly initialize
16646         our double-buffer pixmaps, and also so that we temporarily set
16647         a background of None while scrolling.
16648
16649         * gdk/gdkregion.h: Revise region boolean operators to have an
16650         interface that is actually convenient - switch from creating new
16651         regions on every op, to "methods" that modify existing regions
16652         (A = A OP B). 3 argument forms which allow dest == src, would also
16653         be possible, but the current interfaces seem to map nicely
16654         onto what needs to be done. (There is quite a lot of region
16655         code in GDK now.)
16656
16657         * gdk/gdkregion.h: Add constructor from rectangle and a copy
16658         operator.
16659
16660         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
16661         gdkpoly-generic.h: Copy region code from Xlib, switch it over
16662         to 32 bit coordinates, modify it to be mostly GTK+ style
16663         and to have interfaces that match gdkregion.h.
16664
16665         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
16666         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
16667         create a backing pixmap and redirect all drawing to
16668         that backing pixmap until a matching gdk_window_end_paint().
16669
16670         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
16671         Create a special drawable class for GtkWindow's that 
16672         redirects the drawing to the backing pixmap as necessary
16673         and then calls the real operations in _gdk_windowing_window_class.
16674
16675         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
16676         Store invalid region for each window. Generate expose events for invalid
16677         region in an idle. This replaces both the expose compression
16678         and the redrawing queuing in GTK+. It is both more efficient and
16679         simpler than either one individually and far more so then the
16680         combination.
16681
16682         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
16683         Emulate 32 bit coordinates for windows with 16 bit coordinates
16684         by offsetting drawing, guffaw scrolling techniques and
16685         mapping/unmapping child windows as necessary.
16686
16687         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
16688         where, when invalid regions are processed, the region is stored,
16689         and if expose events come in that are detectably duplicate
16690         the processed exposes (by comparison of event serial numbers),
16691         the stored region is subtracted out of those exposes.
16692
16693         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
16694         regions newly exposed when scrolling or resizing windows.
16695         This, combined with forcing processesing of queued invalidated
16696         regions, gives nice flicker-free scrolling.
16697
16698         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
16699         invalidated regions after every scroll.
16700
16701         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
16702         emulation in GDK. Its, for all practical purposes just a
16703         GtkViewport/GtkFixed hybrid now.
16704
16705         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
16706         (16-bit) structures as necessary instead of just casting.
16707
16708         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
16709         in terms of the structures from gdkregion-generic.c, using appropriate
16710         offsets from GDK to X11 coordinates. Cache clip mask and
16711         origin and ts origin locally and only flush to the server
16712         when drawing, to avoid constantly setting and resetting these
16713         values when offsetting GC's for scrolling and backing pixmaps.
16714
16715         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
16716
16717         * gtk/gtkcontainer.c: Call process_all_updates at end
16718         of resizing to reduce flicker. (Avoids having redraw
16719         lag arbitrarily behind resize under some circumstances)
16720
16721         * gtk/gtkentry.c: Remove old backing store code, and simply take
16722         advantage of the new backing store capabilities of GDK.
16723
16724         * gtk/gtkmain.c: Simple implementation of widget backing
16725         store - simply push a paint while handling each expose.
16726         (Should really be configurable widget for widget.)
16727         
16728         * gtk/gtkwidget.c: Remove all the old complicated redraw
16729         code, and simply invalidate the GDK windows from
16730         gdk_window_queue_clear(), etc. (Sigh, so much carefully
16731         debugged complexity ... gone to the winds.)
16732
16733         Remove all the code for suppressing expose events while
16734         resizes are pending; this isn't needed since the invalid
16735         areas won't be processed until after the resizes are
16736         processed, since they are in a lower priority idle.
16737
16738 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
16739
16740         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
16741         and height of dest rectangle for non-intersecting rectangles.
16742
16743 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
16744
16745         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
16746         for GdkRectangle.
16747
16748 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
16749
16750         * gdk/gdk{events,image,private,types,window}.h
16751          gdk/x11/gdkinputprivate.h: Change all coordinates
16752          from int16 to int. Also, Change width and height from
16753          unsigned to signed to avoid all the stupid C 
16754          signedness bugs.
16755
16756 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
16757
16758         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
16759         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
16760         Add some more detailed checking.
16761
16762         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
16763         New function to retrieve the depth of a drawable.
16764
16765         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
16766         field, reorder fields to save memory. 
16767
16768 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
16769
16770         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
16771         of the background image instead of scaling the background down to
16772         a line.
16773
16774         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
16775         which temporarily set slider to wrong size.
16776
16777         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
16778         queue_clear().
16779
16780 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
16781
16782 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
16783
16784         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
16785
16786 2000-03-17  Tor Lillqvist  <tml@iki.fi>
16787
16788         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
16789         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
16790
16791         * gdk/win32/gdkfont-win32.c
16792         * gdk/win32/gdkproperty-win32.c
16793         * gdk/win32/gdkselection-win32.c
16794         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
16795         now declared such.
16796
16797 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
16798
16799         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
16800
16801 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
16802
16803         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
16804         is called without trapping X errors.
16805
16806 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
16807
16808         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
16809         way into the fontset lists.
16810
16811 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
16812
16813         * gtk/gtkthemes.h: add extern "C" scope.
16814
16815 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
16816
16817         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
16818         to make appends to the list constant. (gtk-guy-990901-0.patch)
16819
16820 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
16821
16822         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
16823         for the typename hash table.
16824
16825 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
16826
16827         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
16828         to make sure we never divide by zero. 
16829         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
16830
16831 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
16832
16833         * gtk/gtkfontsel.c: Apply patch from
16834         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
16835         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
16836
16837         Also, some cleanups in atom handling.
16838
16839 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
16840
16841         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16842         not GtkWidget.
16843
16844 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
16845
16846         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
16847         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
16848         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
16849         more guint wrap-around bugs before going to bed.
16850
16851 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
16852
16853         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
16854         guint wrap arounds in allocation.width.
16855
16856         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
16857         process untill we fit the allocation given.
16858
16859 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
16860
16861         * gtk/gtkwidget.c:
16862         (gtk_widget_unrealize): guard widget access with ref/unref
16863         around signal emission.
16864         (gtk_widget_hide): same here, but also check its destroyed
16865         state before queueing a resize.
16866
16867 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
16868
16869         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
16870         of gtk_default_insensitive_bg as insensitive base color.
16871
16872         * gtk/gtktext.c (gtk_text_style_set): set the background color according
16873         to the widget's state.
16874         (gtk_text_realize): same here.
16875         (gtk_text_state_changed): same here.
16876         (draw_bg_rect): compare background color against base[] from
16877         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
16878
16879 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
16880
16881         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
16882         grabs are active, unless a delete event is send to the toplevel
16883         of the currently grab holding widget.
16884
16885 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
16886
16887         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
16888         debugging g_print's.
16889
16890 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
16891
16892         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
16893         ever make the scrolled-window requisition ever depend on the 
16894         visibility state of the scrollbars for the AUTOMATIC policy. 
16895         This breaks the GTK+ requisition model, and causes loops.
16896
16897 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
16898
16899         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
16900         the default font to avoid problems with XFree86-4.0 where the
16901         default charset is iso10646-1, not iso8859-1.
16902
16903 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
16904
16905         * acinclude.m4
16906         * config.guess
16907         * config.sub
16908         * ltconfig
16909         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
16910
16911         * gtk/Makefile.am: minor cosmetic consistency tweak
16912
16913 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
16914
16915         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
16916         the activate_time to 0, so that we handle a quick
16917         press/release press/release properly and don't suppress
16918         the second release. (Red Hat bug #7545)
16919
16920 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
16921
16922         * gtk/gtkctree.c (row_delete):
16923         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
16924         bugs with destruction notifier, *always* update internal
16925         structures *before* calling user code.
16926
16927 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
16928
16929         A few more fixes for bug #5487, #2051, #2677.
16930         * gtk/gtkclist.c : 
16931         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
16932         not GDK_BUTTON_PRESS.
16933         (resync_selection): resync only if selection_mode is
16934         GTK_SELECTION_EXTENDED
16935         * gtk/gtkctree.c (resync_selection): same here
16936
16937 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
16938
16939         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
16940         gdk_drag_get_selection() and gtk_menu_detach().
16941
16942         [ From Jeroen Ruigrok/Asmodai ]
16943
16944 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
16945
16946         * gtk/gtknotebook.c (gtk_notebook_size_request): 
16947         page->tab_label can be NULL.
16948
16949 2000-01-25  Havoc Pennington  <hp@pobox.com>
16950         
16951         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
16952         arg is boolean
16953
16954         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
16955
16956         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
16957
16958         * gdk/gdkproperty.c (gdk_property_get): return boolean
16959
16960         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
16961
16962         * gdk/gdkim.c (gdk_im_ready): return boolean
16963
16964         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
16965
16966         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
16967         glib clash, should fix glib)
16968
16969         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
16970         (gdk_get_show_events): return gboolean, and canonicalize 
16971         to TRUE/FALSE
16972
16973         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
16974         colormap is private
16975         (gdk_colors_alloc): gboolean whether to be contiguous
16976         (gdk_color_equal): return gboolean since we are a predicate
16977         and not a qsort() (this looks semi-wrong due to glib breakage,
16978         IMO glib should be fixed)
16979         
16980         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
16981         (gdk_get_use_xshm): return gboolean
16982         (gdk_pointer_is_grabbed): return gboolean
16983
16984         * gdk/gdk.h: Change prototypes to match all the above changes,
16985         and re-run egtk-format-protos as required.
16986
16987 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
16988
16989         * gtk/gtkctree.c (resync_selection): 
16990         * gtk/gtkclist.c (resync_selection):
16991
16992         Return immediately if clist->drag_pos < 0. This is a workaround
16993         for the corrupt state that the clist gets into when a
16994         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
16995
16996         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
16997         
16998         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
16999         variable from recent commit.
17000
17001 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
17002
17003         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
17004
17005 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
17006
17007         * gtk/Makefile.am: prefix all autogenerated source that get build in
17008         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
17009         in builddir. since we subsequently cd into srcdir for autogeneration,
17010         the paths have to be stripped from the target file names, thusly we
17011         use $(@F) as target names now.
17012         put a comment about configure.in's --disable-rebuilds option,
17013         which can be used for non-writable source directories, for development
17014         setups though, srcdir has to be *writable*.
17015
17016 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
17017
17018         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
17019           Finish the job of allowing event to be NULL.
17020           (Fixes bug #4283, reported by Chris Blizzard)
17021
17022         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
17023           things so that the cursor appears on screen, properly
17024           take into account INNER_BORDER.
17025           (Fixes bug #4754, reported by Antonio Campos)
17026
17027 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
17028
17029         * gtk/gtknotebook.c (gtk_notebook_map): Don't
17030           show the tab_label unless it itself is visible.
17031
17032           gtk/gtknotebook.c (gtk_notebook_size_request):
17033           Do a better job of making sure that the visibility
17034           of the tab label corresponds to whether it should
17035           be mapped or not.
17036
17037 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
17038
17039         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
17040           Use the requisition, not the allocation, since the
17041           allocation has not necessarily been computed yet.
17042           (Pointed out by Eugene Osintsev)
17043
17044 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
17045
17046         * gtk/gtkstyle.c (gtk_style_new): Dont' set
17047           style/base[GTK_STATE_INSENSITIVE] both to
17048           gtk_default_insensitive_bg!
17049           (Bug #2187, reported by Jonathan Blandford)
17050
17051         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
17052           Add Alt_L, Alt_R to list of invalid accelerators.
17053           (Bug #3736, reported by Vlad Harchev)
17054
17055 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
17056
17057         * gtk/gtkfilesel.c (open_ref_dir): Fix several
17058         bugs which occured after an attempt to open 
17059         invalid home directory left cmpl_state->reference_dir == NULL.
17060
17061          - completion on files in home directory didn't work
17062          - completion on an empty string caused  segfault
17063
17064          (Bug #3678, reported by Steve Ratcliffe)
17065
17066         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
17067         cut and paste error that was causing scales to
17068         be incorrectly positioned.
17069         (Bug #2956,
17070          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
17071
17072 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
17073
17074         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
17075         when checking for dcgettext, if we've found we needed
17076         it for dgettext.
17077 +
17078 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
17079
17080         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17081         queue_clear on NO_WINDOW widgets during a reparent,
17082         since at that point the window and widget heirarchies
17083         are out of sync. This stops crashing in some cases
17084         (the scrolled window reparent test, for instance), and
17085         _probably_ won't cause drawing errors.
17086
17087         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
17088         test do what it was supposed to do and be robust against
17089         window closings, etc. (Bug #2443)
17090
17091 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
17092
17093         * gtk/gtkentry.c: Fix return values on mouse events.
17094         (Bug #2686, Sky <seb_sky@yahoo.com>)
17095
17096         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
17097         (pointed out by George Lebl)
17098
17099         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
17100         (From Ettore Perazzoli  <ettore@helixcode.com>)
17101  
17102 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
17103
17104         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
17105         clicks between rows or outside calender area correctly.
17106         (Patch from Damon Chaplin)
17107
17108         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
17109         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
17110           Call destroy function when overwriting existing data. 
17111           (Pointed out by Damon Chaplin)
17112
17113 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
17114
17115         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
17116           which was causing problems on various systems with Xmu.
17117           This hasn't been needed for a very long time.
17118           (Fixes #1185 3167)
17119
17120 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
17121
17122         * gdk/gdki18n.h: Include <ctype.h> when defining
17123           gdk_isw* in terms of is* as a fallback.
17124           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
17125
17126 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
17127
17128         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
17129           realize the widget when it is size allocated!
17130           (old, old bug)
17131
17132         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
17133           Removed unused call to gdk_window_get_size() that
17134           showed up when the above was fixed.
17135
17136 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
17137
17138         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
17139           fix up widget->window when the widget is a
17140           NO_WINDOW container widget.
17141
17142 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
17143
17144         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
17145           to account for the fact that feof() does _not_ 
17146           return TRUE on errors, and thus avoid infinite loops
17147           when trying to use gdk_pixmap_create_from_xpm()
17148           on unreadable values.
17149
17150 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
17151
17152         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
17153
17154 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
17155
17156         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
17157           gdk_gc_set_dashes to take gint8 instead of gchar to
17158           make it clearer that it is _not_ a NULL terminated string.
17159
17160         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
17161           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
17162           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
17163           arguments.
17164
17165 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
17166
17167         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
17168         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
17169         background size relative to our allocation, guard against small
17170         allocations, we may have not yet been size allocated.
17171
17172 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
17173
17174         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
17175         not just version == 3. We implement all 3 + most of 4 - 
17176         (we don't support matching text/plain;charset=iso-8859-1
17177         to a dest that expects text/plain). We'll still advertise
17178         3 to be safe, but any client implementing version >= 3
17179         must interoperate with 3.
17180         
17181 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
17182
17183         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
17184         background and gc members, add a warning in gtk_tooltips_set_color()
17185         indicating that this function is deprecated.
17186
17187 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
17188
17189         * docs/gtkfaq.sgml: FAQ Update:
17190           - Minor cleanups (Emmanuel, me)
17191           - New questions:
17192                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
17193                 How can I retrieve the text from a GtkMenuItem? (timj)
17194                 How do I validate/limit/filter the input to a GtkEntry? (me)
17195                 Memory does not seem to be released when I free the list
17196                         nodes I've allocated (timj)
17197
17198 2000-03-07  Tor Lillqvist  <tml@iki.fi>
17199
17200         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
17201         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
17202         for which it is no use to call GetLastError onWin9x.
17203         (gdk_other_api_failed) New function, for general error
17204         reporting without calling GetLastError.
17205         (gdk_win32_api_failed) OTOH, this function always calls
17206         GetLastError. (gdk_win32_last_error_string) Remove this function,
17207         GLib has the equivalent now.
17208
17209         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
17210         call them with function name, file name and line number in the
17211         arguments.
17212
17213         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
17214         functions.
17215         
17216         * gtk/gtk.def: Add some missing entry points.
17217
17218         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
17219         gtk_paned_set_gutter_size, which don't exist any longer, as void.
17220         
17221         Fixes by Hans Breuer:
17222
17223         * gdk/makefile.msc: Update for debugging.
17224
17225         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
17226         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
17227         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
17228         in the dash_list.
17229
17230         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
17231         the x11 backend.
17232
17233         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
17234
17235         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
17236
17237 2000-03-04  Tor Lillqvist  <tml@iki.fi>
17238
17239         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
17240         just pixel value of background colour.
17241
17242         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
17243         containing code snippet previously duplicated in a couple of
17244         places.
17245         
17246         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
17247         gdk_colormap_color.
17248
17249         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
17250         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
17251         events for autorepeated Shift, Control and Alt keys. Use
17252         gdk_colormap_color.
17253
17254         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
17255         pointer is inside the window the cursor of which we are setting,
17256         call SetCursor immediately.
17257
17258         * gdk/win32/makefile.cygwin
17259         * gtk/makefile.cygwin: If we don't have the build number stamp
17260         file, use zero.
17261
17262         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
17263         gtk_paned_set_gutter_size as empty.
17264
17265         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
17266         
17267 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
17268
17269         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
17270           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
17271           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
17272           docs/gtk_tut.sgml docs/gtk.texi TODO:
17273
17274           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
17275
17276 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
17277
17278         * gtk/gtkcalendar.c: Implement num_marked_dates,
17279           and don't emit mutiple day_selected signals on
17280           month_prev.
17281
17282 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
17283
17284         * docs/make-todo (lineno): let title and logo be configurable so
17285         that GNOME can use this script too.
17286
17287         * TODO.xml: added logourl and a title
17288
17289 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
17290
17291         * TODO.xml: Added some UI items, and an explanatory
17292         comment at the top of the file.
17293
17294 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
17295
17296         * TODO.xml: some updates, added abunch of new entries.
17297         a note for those fiddeling with this file, when done
17298         with it, invoke:
17299         $ ./docs/make-todo TODO.xml >/dev/null
17300         and correct output errors before comitting changes.
17301
17302 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
17303
17304         * TODO.xml: Added XML-structured TODO file.
17305         * docs/make-todo: python script to turn TODO.xml into
17306           pretty XML output. 
17307
17308 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
17309
17310         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
17311         the function to let it draw the seven dots, instead of the old,
17312         much maligned, method.
17313         (draw_dot): New function to draw a dot.
17314
17315         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
17316         to draw the handle inside the border width as opposed to outside.
17317         Use paint function instead of gdk_draw_point.
17318
17319         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
17320         to draw the handle inside the border width as opposed to outside.
17321         Use paint function instead of gdk_draw_point.
17322
17323         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
17324         Change indenting to be more GTK like.
17325
17326 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
17327
17328         * docs/gtk_tut.sgml: New section on GtkCalendar
17329         * examples/calendar: Update example code
17330
17331 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
17332
17333         * docs/gtkfaq.sgml: FAQ Update
17334
17335 2000-02-19  Anders Carlsson  <andersca@gnu.org>
17336
17337         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
17338         to prevent the scroll event to be propagated upwards.
17339
17340 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
17341
17342         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
17343         OwnerGrabButtonMask from button entries for
17344         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
17345
17346         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
17347         to the event mask (which will result in button/press release
17348         being added to the event mask on Unix) so scrolling works
17349         for layouts in scroll windows.
17350
17351         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
17352
17353         Patch from Anders Carlsson  <andersca@gnu.org> to add
17354         a scroll event.
17355
17356         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
17357         scrolling to the "Test Scrolling" part of testgtk.
17358  
17359         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
17360  
17361         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
17362         it against GDK_SCROLL.
17363  
17364         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
17365         way of mouse wheel scrolling.
17366  
17367         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
17368  
17369         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
17370  
17371         * gtk/gtkmain.c: Removed previous mouse wheel hack.
17372  
17373         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
17374         gdk_event_mask_table.
17375  
17376         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
17377         GdkEventScroll handler.
17378  
17379         * gdk/gdkevents.h: Added GdkEventScroll structure.
17380  
17381 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
17382
17383         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
17384         and Anders Carlsson to change the Paned widgets so that they
17385         can be dragged from anywhere along the length. Also change
17386         the way that this is drawn to make this apparent.
17387
17388         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
17389         from George Lebl to check that option_menu->menu is present
17390         before getting history.
17391
17392 2000-02-14  Tor Lillqvist  <tml@iki.fi>
17393
17394         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
17395         before the assertion for non-NULL segment list.
17396
17397         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
17398         Seems that pattern brushes *must* be 8x8 pixels! At least on my
17399         machine, but it might be display driver dependent. Sigh, so make
17400         sure the stipple is that size. Does Windows suck or what?
17401
17402         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
17403         places.
17404
17405 2000-02-13  Havoc Pennington  <hp@pobox.com>
17406
17407         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
17408         refcount to 1
17409         (gdk_cursor_new): init refcount to 1
17410
17411         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
17412
17413 2000-02-13  Tor Lillqvist  <tml@iki.fi>
17414
17415         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
17416         so that we don't have to do unnecessary settings to the HDC.
17417
17418         * gdk/win32/gdkdrawable-win32.c
17419         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
17420         gdk_gc_predraw.
17421
17422         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
17423         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
17424         GDI paths, call WidenPath to get the outline of the stroken path,
17425         and then fill the outline (with the brush that was built from the
17426         stipple).
17427
17428         * gdk/win32/gdkgc-win32.c: Factor out common code from
17429         _gdk_win32_gc_new and gdk_win32_gc_set_values into
17430         gdk_win32_gc_values_to_win32values. Use correct colour for
17431         SetBkColor() (Until now the code actually used a random colour in
17432         the call to SetBkColor()... but that didn't show up as not many
17433         GDI APIs use the background colour. Pattern (opaque stippled)
17434         brushes do.)
17435
17436         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
17437         gdk_win32_api_failed): New functions for error logging.
17438
17439         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
17440         WIN32_API_FAILED to call them, passing function or file name and
17441         line number.
17442
17443         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
17444
17445         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
17446         GdkColor for foreground and background in GdkGCWin32Data.
17447
17448         * gdk/makefile.cygwin: Link in the resource object separately.
17449
17450         * gdk/win32/rc/gdk.rc
17451         * gtk/gtk.rc (New file)
17452         * gdk/win32/makefile.cygwin
17453         * gtk/makefile.cygwin: Update build number in DLLs automatically,
17454         as in GLib.
17455
17456 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
17457
17458         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
17459         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
17460         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
17461         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
17462         parameters given and cursor->ref_count. coding style fixups.
17463
17464         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
17465         not GtkWidget.
17466         
17467         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
17468         fix up widget macros and add _GET_CLASS() variant.
17469         
17470         * gtk/*.c: some GtkType fixups.
17471
17472 2000-02-09  Tor Lillqvist  <tml@iki.fi>
17473
17474         * gdk/win32/gdkproperty-win32.c
17475         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
17476         were reversed.
17477
17478 2000-02-04  Tor Lillqvist  <tml@iki.fi>
17479
17480         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
17481         g_filename_to_utf8 to convert the font names Windows gives us from
17482         whatever is the default codepage to UTF-8.
17483         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
17484         in the other direction.
17485
17486         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
17487         error in debugging output.
17488
17489 2000-02-02  Tor Lillqvist  <tml@iki.fi>
17490
17491         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
17492         and height parameters to gdk_window_clear_area(). Not minus one.
17493
17494 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
17495
17496         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
17497         checks if the widget passed to gtk_drag_get_data() was not the
17498         dest widget.
17499
17500 2000-02-01  Tor Lillqvist  <tml@iki.fi>
17501
17502         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
17503         g_filename_from_utf8 functions (which were added a moment ago to
17504         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
17505         size buffers.
17506
17507         gtk_file_selection_get_filename returns the filename in the C
17508         runtime encoding. It calls g_filename_from_utf8, but copies the
17509         returned string to a static buffer, which is returned. I think
17510         this is better than returning the result from g_filename_from_utf8
17511         directly, which would mean all apps that use it would have to free
17512         the return value. Or should this function care about this issue at
17513         all? Maybe a new function with clearly defined semantics.
17514
17515         * gtk/gtkfilesel.h: Add comment about
17516         gtk_file_selection_get_filename returning the filename in the C
17517         runtime's encoding.
17518
17519         * README.win32
17520         * gdk/gdk.def
17521         * gdk/makefile.{cygwin,msc}
17522         * gtk/gtk.def: Updates.
17523
17524         * gdk/gdkcursor-win32.c: Initialise refcount.
17525
17526 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
17527
17528         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
17529
17530 2000-01-30  Havoc Pennington  <hp@pobox.com>
17531
17532         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
17533         destroy
17534
17535         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
17536
17537         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
17538         implemented in platform-specific code
17539
17540         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
17541
17542         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
17543         underscore in front
17544
17545         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
17546         put an underscore in front
17547
17548         * gdk/gdkcursor.c: new file, implements
17549         gdk_cursor_ref/gdk_cursor_unref
17550
17551         * gdk/gdkcursor.h: Refcount GdkCursor
17552
17553         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
17554
17555 2000-01-29  Tor Lillqvist  <tml@iki.fi>
17556
17557         * gdk/gdkwindow.h
17558         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
17559
17560 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
17561
17562         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
17563         structures to properly inherit from GtkWidget not GtkBin.
17564
17565 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
17566
17567         * gtk+.spec.in: Added lib/gtk+/include/* to %files
17568         (bug #5178 - Peter Wainright)
17569         
17570         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
17571         so that it will be installed.
17572         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
17573
17574 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
17575
17576         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
17577         for the GtkStyleClass vtable const.
17578
17579         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
17580         take a const string argument like GtkTranslateFunc. This will
17581         require changes in use code.
17582
17583 2000-01-19  Tor Lillqvist  <tml@iki.fi>
17584
17585         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
17586         semantics (to mimic the X11 backend, which just calls XClearArea)
17587         is to check for zero width (and height), and in that case use the
17588         window's width minus x (height minus y). This fixes for instance
17589         some redraw problems with gtkclist, which were easily noticeable
17590         in the gtk file selection widget.
17591
17592         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
17593         windows.
17594
17595 2000-01-13  Tor Lillqvist  <tml@iki.fi>
17596
17597         * configure.in
17598         * gdk/Makefile.am
17599         * gdk/x11/Makefile.am
17600         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
17601         (bug #5177).
17602         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
17603         out later.
17604
17605 2000-01-09  Tor Lillqvist  <tml@iki.fi>
17606
17607         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
17608         WM_MOVE for iconified or invisible windows. This fixes various
17609         problems when minimising windows. Thanks to Bernd Herd.
17610
17611 2000-01-05  Tor Lillqvist  <tml@iki.fi>
17612
17613         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
17614         backend's draw_lines method, not draw_points.
17615
17616 2000-01-02  Tor Lillqvist  <tml@iki.fi>
17617
17618         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
17619         before Owen's reorganisation: Don't have queued_events and
17620         queued_tail statics in this file, but use gdk_queued_events and
17621         gdk_queued_tail. This makes exposure event compression work again.
17622
17623         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
17624         seem to be needed?
17625
17626 1999-12-30  Tor Lillqvist  <tml@iki.fi>
17627
17628         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
17629         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
17630         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
17631         doesn't do anything.
17632
17633         * gdk/gdk.def: Add gdk_xid_table_insert.
17634
17635         * gdk/win32/gdkprivate-win32.h
17636         * gdk/win32/gdkevents-win32.c
17637         * gdk/win32/gdkinput-win32.c
17638         
17639         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
17640         extension_events field in the GdkWindowWin32Data struct. Use only
17641         the extension_events field in GdkWindowPrivate. Previously one was
17642         set, and the other one tested, which broke tablet
17643         functionality. Thanks to Keishi Suenaga for pointing this out.
17644
17645 1999-12-18  Tor Lillqvist  <tml@iki.fi>
17646
17647         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
17648         When handling a single character (text length == 1), don't handle
17649         it as if it was UTF-8.
17650
17651 1999-12-11  Tor Lillqvist  <tml@iki.fi>
17652
17653         * Makefile.am: Distribute README.win32.
17654         
17655         * gdk/Makefile.am
17656         * gdk/win32/Makefile.am: Distribute Win32 files.
17657
17658         * gdk/makefile.msc: New file.
17659
17660         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
17661         after label).
17662
17663         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
17664         gdk_error_code as GDKVAR, as they are referred outside GDK.
17665
17666         * gdk/win32/makefile.msc: Update.
17667
17668         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
17669         tweaks. Check only if at least one of those Unicode subrange bits
17670         we care for is set. If no code page bits are set, guess (wildly)
17671         based on the charset.
17672
17673         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
17674
17675         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
17676         non-NULL.
17677
17678         * gtk/gtkdnd.c
17679         * gtk/gtklayout.c
17680         * gtk/gtkplug.c
17681         * gtk/gtkselection.c
17682         * gtk/gtksocket.c
17683         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
17684         appropriate. There must be a cleaner way to handle this?
17685
17686         * gtk/gtkrc.c: Must include windows.h on Win32.
17687
17688         * gtk/testgtk.c: No need to include gdkx.h.
17689
17690         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
17691
17692 1999-12-07  Tor Lillqvist  <tml@iki.fi>
17693
17694         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
17695         the rbearing is set to the same as the width, but this should be
17696         fixed.
17697
17698 1999-12-06  Tor Lillqvist  <tml@iki.fi>
17699
17700         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
17701         function. If Windows doesn't tell us what Unicode subranges a font
17702         covers, guesstimate based on the codepages it covers. This will
17703         hopefully help those Windows versions or fonts that don't give us
17704         any useful Unicode subrange information with GetTextCharsetInfo.
17705         Call this function in gdk_font_load_internal.
17706
17707         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
17708         minor changes.
17709
17710 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
17711
17712         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
17713         New function, long needed.
17714
17715 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
17716
17717         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
17718         only_if_exists argument of gdk_atom_intern to
17719         bool.
17720
17721 1999-11-25  Tor Lillqvist  <tml@iki.fi>
17722
17723         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
17724         Fix two copy&paste errors.
17725
17726         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
17727         win32 has changed.
17728
17729         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
17730         GdkWin32SingleFont struct.
17731
17732         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
17733         subranges of loaded fonts. Clear font signature first, in case
17734         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
17735         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
17736
17737         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
17738         Unoffset clip region.
17739
17740 1999-11-23  Tor Lillqvist  <tml@iki.fi>
17741
17742         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
17743         event->any.window before calling filter functions.
17744
17745 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
17746
17747         * gtk/gtkgamma.h: Adapt cast macros to standard.
17748
17749 [ Merges from 1.2 ]
17750
17751 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
17752
17753         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
17754         If translation does not include a '/', use entire
17755         translation instead of crashing.
17756
17757 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
17758
17759         * docs/gtk_tut.sgml:
17760         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
17761
17762 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
17763
17764         * gtk/gtkselection.c (gtk_target_list_remove): Use
17765         g_list_remove_link, not g_list_remove.
17766
17767         [ From Geert Bevin <gbevin@thunderstorms.org> ]
17768         
17769 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
17770
17771         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
17772         statement upon unselection (how the heck did that slip in?).
17773
17774 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
17775
17776         * gtk/gtktext.c (gtk_text_freeze): 
17777         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
17778         in frozen state (and aparently crashes). patch provided by Anders
17779         Melchiorsen <and@kampsax.dtu.dk>.
17780
17781 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
17782
17783         * fix insensitive default/focus widget activation,
17784         reported by Matt Goodall <mgg@isotek.co.uk>.
17785
17786         * gtk/gtkwindow.c (gtk_window_key_press_event): 
17787         (gtk_window_activate_default):
17788         (gtk_window_activate_focus):
17789         return handled=FALSE for actiavtion of insensitive default
17790         widgets. return handled=TRUE for activation of insensitive
17791         focus widgets. don't activate in either case.
17792
17793 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
17794
17795         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
17796         and $glib_cflags to match library order and in the
17797         theory that an old version of GLib is more likely to
17798         be in the include directory for X then vice-versa.
17799         (Bug #2776)
17800
17801 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17802
17803         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
17804         to determine the locale for fontsets, not LC_MESSAGES;
17805         the user may want English messages with a handling
17806         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
17807         will still be broken) (Bug #2891)
17808
17809 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
17810
17811         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
17812
17813 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
17814
17815         * gtk/gtkrc.ko: Changed the Korean default fontset.
17816
17817 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
17818
17819         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
17820         where when scrolling to the left or top double exposes
17821         were done, causing major slowdowns.
17822
17823 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
17824
17825         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
17826         names to lowercase and alphanumeric, before looking
17827         them up.
17828
17829         * gtk/Makefile.am: Install codeset variant gtkrc files
17830         with normalized names.
17831
17832 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
17833
17834         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
17835         popup menus when the menu is already visible, but its parent
17836         is still hidden, (happens after tornoff window got hidden).
17837
17838 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
17839
17840         * gtk/Makefile.am (install-data-local): Fix
17841         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
17842         deleted, causing error messages on install.
17843
17844 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
17845
17846         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
17847         the handle as well, since we now sometimes ignore
17848         exposes on the handle while resizing.
17849
17850 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
17851
17852         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
17853         extra g_free introduced in one of the last one or two 
17854         commits.
17855
17856 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
17857
17858         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
17859         consistent, put each style that a gtkrc.* file creates
17860         in a unique namespace, remove old files before installing.
17861
17862 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
17863
17864         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
17865         gtk_rc_init is called multiple times. (Yes, people who
17866         do that have bugs in their code.)
17867
17868 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
17869
17870         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
17871         Remove it since it's generated by the Makefile anyway
17872
17873 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
17874
17875         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
17876         device->info.axes for core pointer.
17877
17878 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
17879
17880         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
17881         idle_id, to deal with obsolete, broken C libraries.
17882
17883 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
17884
17885         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
17886         allocation->x/y twice!
17887
17888         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
17889         consistent with gtk_vscale_pos_trough().
17890
17891 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
17892
17893         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
17894         be queueing a resize on a toplevel container between
17895         the time we show it and when we map it. So, we need
17896         to test GTK_WIDGET_VISIBLE() for toplevels, and only
17897         use GTK_WIDGET_DRAWABLE() for child windows.
17898
17899 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
17900
17901         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
17902         (fixes bug #2144)
17903
17904 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
17905
17906         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
17907         container DRAWABLE (instead of VISIBLE), so we don't queue
17908         resizes on non-toplevel containers.
17909
17910 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
17911
17912         * gtk/gtkselection.[ch]: Make the data argument
17913         const guchar *.
17914
17915 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
17916
17917         * gtk/gtkwindow.c: Try to behave sensibly if 
17918         the focus widget is the window itself. (Should
17919         we allow this at all?)
17920
17921 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17922
17923         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
17924         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
17925         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
17926         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
17927         in prototypes and implementations consistent (Tomas Ogren).
17928
17929         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
17930         before the widget is unparented (reported by damon).
17931
17932         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
17933         since we provide unsigned data anyways.
17934
17935 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
17936
17937         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
17938         the call to gtk_tooltips_layout_text() until later.
17939
17940         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
17941         Call gtk_widget_ensure_style() before using the style.
17942
17943 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
17944
17945         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
17946         for old widgets that don't propagate draws to all
17947         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
17948
17949 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
17950
17951         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
17952         for a redraw but just the widget that requested the resize.
17953
17954 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
17955
17956         * gtk/gtkcontainer.c: added new widget level method
17957         gtk_container_set_reallocate_redraws() and a GtkContainer flag
17958         reallocate_redraws : 1 to reflect the setting, exported this through
17959         the argument system as a boolean ::reallocate_redraws.
17960
17961         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
17962         on the widget because the allocation changes, do so as well for
17963         widget->parent if the parent has reallocate_redraws set to TRUE.
17964         with that containers requesting reallocation redraws get automatically
17965         redrawn if their children changed allocation (this unfortunately
17966         affects also other children that didn't change allocation, but we
17967         cannot work around that before 1.3).
17968
17969 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17970
17971         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
17972         _and_ height are >0 (not _or_).
17973
17974         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
17975         instead of gtk_container_queue_resize(), which is a core gtk internal
17976         function (must have been on crack when i queued that).
17977
17978         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
17979         we can check more reliably if we want to discard expose events.
17980         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
17981         flag.
17982         
17983         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
17984         we simply trust these events. for deciding whether to discard exposes,
17985         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
17986         
17987 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
17988
17989         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17990         queues of areas that are completely off screen.
17991
17992         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
17993         logic for handleboxes.
17994
17995         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
17996         check on width/height.
17997
17998 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
17999
18000         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
18001         we are fine with using $@ the way we do (if we actually encounter
18002         brokeness with $@ in VPATH builds because of additional path prefixes,
18003         we need to use $(@F) actually).
18004
18005 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
18006
18007         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
18008         short lived bugs, that would allow language bindings to do surgeries
18009         to our guts.
18010
18011 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
18012
18013         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
18014         where comparison was being done against an uninitialized
18015         value causing intermittant results depending on
18016         compiler flags. Also make it clearer that we aren't
18017         ever initializing the child as 0x0 (though this will
18018         be caught in gtk_widget_size_allocate())
18019
18020 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
18021
18022         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
18023         gtk_window_unset_transient_for() call after we do checks
18024         involving the old transient parent.
18025         [ From Lance Capser <lmc@cyberhighway.net> ]
18026
18027 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
18028
18029         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
18030         an empty file.
18031
18032 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
18033
18034         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
18035         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
18036
18037 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
18038
18039         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
18040         `$@' is valid only in the build dir, not after we've done 
18041         `cd $srcdir'.  Also use `test -f' instead of less portable
18042         `test -e'.
18043
18044 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
18045
18046         * gtk/gtktext.c (correct_cache_insert): Rewrite
18047          for simplicity, and hopefully correctness.
18048          (Fixes bug #1322, which was a segfault when
18049           on some insertions with the properties around
18050           the insertion set up just wrong.)
18051
18052         * gtk/gtktext.c (gtk_text_adjustment): When we receive
18053          a "changed" signal, clamp the new value to the adjustment
18054          bounds to avoid segfaulting if someone tries to change
18055          the adjustment to a bogus value. (Bug #1795)
18056
18057 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18058
18059         * gtk/gtkmain.c: Ignore unexpected destroy notifies
18060         for children, for toplevel windows handle them
18061         like delete_event.
18062
18063         * gtk/gtkplug.c: Add an unrealize handler so that
18064         we unref plug->socket_window when we are done
18065         with it.
18066
18067 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
18068
18069         * gtk/gtktext.c (clear_area): Fix stupid signedness
18070          problem that was causing background to sometimes
18071          be misaligned.
18072
18073 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
18074
18075         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
18076         
18077         * gtk/gtkmenu.c (gtk_menu_position): Make
18078          sure we never position menus with negative x, y,
18079          since gtk_widget_set_uposition() can't handle that.
18080
18081         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
18082          Modify the positioning code a bit so that we always
18083          put the top-left corner onscreen. (This is for
18084          UI reasons, gtk_menu_position() now takes care of
18085          gtk_widet_set_uposition() brokeness.)
18086
18087 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
18088
18089         * gtk/Makefile.am: fixed up things for -jx, x > 1.
18090
18091 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
18092
18093         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
18094           RC style that is passed in. The lack of the ref
18095           before was a bug. If people worked around this
18096           bug, this will introduce a slight memory leak
18097           in their code. The code should typically look like:
18098
18099             rc_style = gtk_rc_style_new ();
18100             [...]
18101             gtk_widget_modify_style (widget, rc_style);
18102             gtk_rc_style_unref (rc_style);
18103
18104         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
18105           the style if it was already set.
18106
18107         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
18108           style if it was set before.
18109
18110 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18111
18112         * gtk/testgtk.c (main): Add a check to see if we
18113           are being run from the correct directory and
18114           to quit nicely if we are not.
18115
18116         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
18117           static.
18118
18119 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
18120
18121         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
18122
18123         * gtk/gtkwindow.c:
18124         queue resizes unconditionally (gtk_widget_queue_resize will figure
18125         what to do if the window is not realized).
18126         (gtk_window_move_resize): only recenter the window
18127         for GTK_WIN_POS_CENTER_ALWAYS.
18128         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
18129         the same way as GTK_WIN_POS_CENTER.
18130
18131 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
18132
18133         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
18134         with (!(info->last_flags & GDK_HINT_POS)) instead of
18135         (!info->last_flags & GDK_HINT_POS).
18136
18137         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
18138         new_height unconditionally, because we use these values even if
18139         !default_size_changed && !hints_changed.
18140         comented the (default_size_changed || hints_changed) case with
18141         respect to resize rejects from the window manager.
18142
18143         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
18144         in the zvt condition hack, since this includes the window hints, set
18145         the hints after the handling_resize case.
18146
18147         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
18148         window is initially shown with to the geometry.
18149
18150 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
18151
18152         * gtk/gtkwindow.c (gtk_window_move_resize):
18153         s/size_changed/default_size_changed/g so i know what's
18154         really going on (frying brain on smaller flame now).
18155
18156 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
18157
18158         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
18159         we have size_changed upon handling_resize. this is a gross
18160         workaround for the broken zvt widget and should be removed in
18161         1.3 again (search for FIXME).
18162         Owen provided an accurate comment for this:
18163
18164         /* We could be here for two reasons
18165          *  1) We coincidentally got a resize while handling
18166          *     another resize.
18167          *  2) Our computation of size_changed was completely
18168          *     screwed up, probably because one of our children
18169          *     is broken. It's probably a zvt widget.
18170          *
18171          * For 1), we could just go ahead and ask for the
18172          * new size right now, but doing that for 2)
18173          * might well be fighting the user (and can even
18174          * trigger a loop). Since we really don't want to
18175          * do that, we requeue a resize in hopes that
18176          * by the time it gets handled, the child has seen
18177          * the light and is willing to go along with the
18178          * new size. (this happens for the zvt widget, since
18179          * the size_allocate() above will have stored the
18180          * requisition corresponding to the new size in the
18181          * zvt widget)
18182          *
18183          * This doesn't buy us anything for 1), but it shouldn't
18184          * hurt us too badly, since it is what would have
18185          * happened if we had gotten the configure event before
18186          * the new size had been set.
18187          */
18188
18189 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
18190
18191         * gtk/gtkrc.c: deal properly with the fact that RC
18192           style lists may include rc styles more than once.
18193
18194         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
18195           unused static function.
18196
18197         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
18198           stack of directories of RC files currently being
18199           parsed and implicitely add them to pixmap path.
18200           
18201           This fixes a bug where the directory would get
18202           appended then overwritten by pixmap_path declarations.
18203
18204           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
18205
18206         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
18207           theme's exit function. (Patch from Peter Wainwright,
18208           bug #1454)
18209
18210         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
18211           Add a destroy() handler to take care of removing
18212           group for menu item. (Fixes bug #1197)
18213
18214         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
18215           in warning message.
18216
18217 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
18218
18219         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
18220         roundtrip to figure window's width and height, since we know that
18221         anyways from widget->allocation.
18222
18223 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
18224
18225         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
18226           the hints after we request the new size.
18227
18228 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
18229
18230         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
18231           GTK_WIDGET_REALIZED() assertion - we can compute the
18232           hints before we are realized.
18233
18234         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
18235           hint changing so that we have a value of hints_changed
18236           when we decide whether to constrain the window size.
18237
18238         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
18239
18240         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
18241         change back to G_MAXINT.
18242
18243 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
18244
18245         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
18246         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
18247         contain uncluttered values.
18248         (gtk_window_compute_hints): simply assert that window is realized
18249         and that geometry_info is valid, since we rely on this anyways.
18250         (gtk_window_constrain_size): major cleanups to the code.
18251         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
18252         for the base size, instead of the minimums. use 32767 as max width
18253         and height (like in gtkwindow.c) instead of G_MAXINT.
18254
18255 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
18256
18257         * cleaned up the GtkContainer.need_resize flag handling mess, we
18258         only need to force resize requests when we were prematurely
18259         realized, or our widget tree was modified when we were temporarily
18260         hidden. handling these cases directly upon showing the window (i.e.
18261         while the GdkWindow is still unmapped) avoids the need to wait for
18262         a configure event response and therefore makes the GUI more snappier
18263         and avoids blank windows during the roundtrip.
18264
18265         * gtk/gtkwidget.c:
18266         (gtk_widget_hide): 
18267         (gtk_widget_show): don't queue resizes on toplevels, they know how
18268         to deal with matters.
18269
18270         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
18271         flag directly for not visible resize containers and spare us unecessary
18272         signal emissions.
18273
18274         * gtk/gtkwindow.c:
18275         (gtk_window_realize): if we need to enforce premature size allocation,
18276         queue a container resize so we are correctly resized later on.
18277         (gtk_window_init):
18278         (gtk_window_size_request):
18279         don't freak around with the ->need_resize flag,
18280         gtk_container_queue_resize() will care about that.
18281         (gtk_window_show):
18282         handle initial resizing issues here, we can handle matters better in
18283         this place, especially since we know that our GdkWindow is still
18284         unmapped.
18285         (gtk_window_move_resize):
18286         don't care about ->need_resize at all.
18287         handle size changes properly that occoured while we waited for a
18288         configure event.
18289
18290 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
18291
18292         * gtk/gtkwidget.c (gtk_widget_set_uposition):
18293         * gtk/gtkwindow.[hc] (gtk_window_reposition):
18294         Move the hint setting code from gtk_widget_set_uposition
18295         to here; set the hints so that we respect any previously
18296         set geometry hints.
18297
18298         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
18299         change the window hints here or move the window here,
18300         let that happen in gtk_window_move_resize().
18301
18302 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
18303
18304         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
18305         to already queued resizes (and therefore redraws) on a widget, check
18306         its anchestry as well.
18307
18308         * gtk/gtkcontainer.c:
18309         (gtk_container_queue_resize): clear resize widgets for resize
18310         containers before aborting prematurely. this is especially important
18311         for toplevels which may need imemdiate processing or their resize
18312         handler to be queued.
18313         (gtk_container_dequeue_resize_handler): added new internal function for
18314         gtkwindow.c.
18315
18316         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
18317         configure event, take possible changes in window position into account
18318         as well.
18319         if we request a new window size, queue up a resize handler that will
18320         last until the configure event response arrives.
18321         combined the ->need_resize case (initial show) with the general size
18322         (hints) changed case and added even more comments.
18323         if !auto_shrink, only revert to the old allocation if the new size
18324         is smaller than the current allocation.
18325
18326 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
18327
18328         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
18329                            gtk_window_set_geometry_hints
18330                            gtk_window_set_default_size):
18331         When hints are set, queue a resize so that the hints will
18332         be eventually reset on the toplevel.
18333
18334         * gtk/gtkwindow.c (gtk_window_show): Use
18335         gtk_window_compute_default_size(). Clear the need_resize flag
18336         on the initail map so that we don't unnecessarily trigger the
18337         resize code.
18338
18339         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
18340         into separate functions. Compare the hints we are setting
18341         with what we set last time so that we can accurately
18342         tell when we need to reset the hints.
18343
18344         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
18345         function to figure out the size from requisition
18346         and default_size.
18347
18348         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
18349         from fvwm to constrain a size to the geometry hints.
18350
18351         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
18352         to compare two sets of geometry hints.
18353
18354         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
18355         from gtk_window_set_hints(), just compute the hints,
18356         don't set them.
18357
18358         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
18359         code from gtk_window_move_resize() to separate function,
18360         rationalize a bit.
18361
18362 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
18363
18364         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
18365         structure into a new private structure.
18366
18367         * gtkrc.c: Split GtkRcStyle into public/private.
18368         In the private part, add a list of pointers to the
18369         RcStyle lists this RcStyle participates in.
18370
18371         * gtkrc.c: When a RcStyle is free, remove all
18372         lists referencing it from the 
18373         realized_style_ht hash, and free those lists.
18374         
18375         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
18376         gtk_rc_init(), since that adds the default styles
18377         to the list of parsed RC files again.
18378
18379         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
18380         
18381 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
18382
18383         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
18384         checks that ensure that a widget's allocation is at least 1 in width
18385         and height. (GNOME note: this doesn't affect old panel code anymore,
18386         because GtkSocket will request width and height of at least 1 since
18387         Fri Jul 23).
18388
18389         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
18390         allocated yet (happens if the user realizes the window prematurely),
18391         size request and allocate it.
18392         (gtk_window_size_allocate): guard against guint underflows.
18393
18394 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
18395
18396         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
18397         in gtk_built_sources, so gtk.defs gets built prior to all other
18398         sources.
18399
18400 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18401
18402         * gtk/Makefile.am:
18403         invoke indent on gtkmarshal.*. 
18404         rewrote source generation rules, use COPYING as oldest source tag for
18405         a piggyback rule to generate all sources from (don't touch it ;).
18406         major cleanups, strip spaces on build rules for GNU Make.
18407
18408         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
18409         source and target files from commandline arguments. don't invoke indent.
18410
18411 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
18412
18413         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
18414         notebook after switch to avoid drawing problems.
18415         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
18416         
18417         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
18418         show them instead. 
18419         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
18420
18421 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
18422
18423         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
18424         notebook after switch to avoid drawing problems.
18425         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
18426         
18427         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
18428         show them instead. 
18429         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
18430
18431 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
18432
18433         * gtk/gtkwindow.c:
18434         we use window->need_resize from configure_event now, to indicate that
18435         the gtkwindow should keep its allocation (e.g. because the user resized
18436         the window through window manager handles). resize_count is now reliably
18437         used to figure whether we got the allocation we requested from the
18438         window manager.
18439         configure events get queued as resizes now, the real stuff (size
18440         computation and allocation) now only goes on in gtk_window_move_resize().
18441         GtkWindow's requisition now contains its *real* requisition (like all
18442         other widgets), *not* taking usize into account.
18443         geometry_info->last_{width|height} is now updated from set_hints() only
18444         so it always contains the last hints we set for the window manager.
18445         made some event handlers return TRUE instead of FALSE.
18446         the overall code should be much more straight forward now, and the
18447         significant code portions are accompanied by comments now.
18448         (gtk_window_set_hints):
18449         removed requisition argument and made it
18450         fetch the requisition through gtk_widget_get_child_requisition.
18451         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
18452         does that now.
18453         (gtk_window_show):
18454         ensure that the widget is realized before calling 
18455         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
18456         ensure that we got properly size requested and allocated before
18457         realization.
18458         (gtk_window_configure_event):
18459         ignore plain window moves, or reallocate the widget tree through the
18460         resize queue otherwise.
18461         (gtk_window_move_resize):
18462         mostly rewrote this function to figure window manager hints more
18463         reliably, coalesce window moves and resizes to reduce configure events
18464         and do actuall size allocations.
18465
18466 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18467
18468         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
18469         that have a resize pending, because a redraw is already queued for them.
18470
18471         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
18472         hack to clear resize_widgets.
18473
18474         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
18475         for resize containers prior to size allocation. (this is also a bit
18476         ugly, but avoids side effects for stopped emissions and is thus more
18477         reliable).
18478         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
18479
18480         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
18481         function from gtk_tooltips_expose, as we connect to ::expose_event
18482         *and* ::draw now.
18483
18484 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18485
18486         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
18487         checks.
18488         (gtk_target_list_unref): Likewise.
18489
18490         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
18491
18492 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
18493
18494         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
18495         guard against division by zero. (Fixes bug #1339)
18496
18497 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
18498
18499         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
18500         Prevent the trivial leak of information of allowing
18501         word motion when the entry is not visible.
18502
18503 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
18504
18505         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
18506         modality to error dialog as well as confirmation dialogs.
18507         (Bug #1803, reported by Rosanna Wing Sze Yuen)
18508
18509 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18510
18511         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
18512         tree->view_lines.
18513         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
18514
18515         * gtk/Makefile.am (install-data-local): Solaris apparently
18516         has various troubles with ln -f; use rm first instead.
18517         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
18518
18519 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
18520
18521         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
18522         use `cp' followed by `rm' (the `rm' was already there).
18523
18524 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18525         
18526         * configure.in: Fix autoconf warnings about cross compilation by
18527         trying to provide sane defaults for AC_TRY_RUN.
18528         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
18529         put them into $(srcdir) when generated. Also add a dependency of
18530         gtksignal.h on gtkmarshal.h for -j builds. 
18531         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
18532
18533 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
18534
18535         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
18536         GDK_THREADS_{LEAVE,ENTER} pair.
18537         (From Paul Fisher <pnfisher@redhat.com>)
18538
18539 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
18540
18541         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
18542         width and height are always >0 (owen).
18543
18544 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
18545
18546         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
18547         change that assured that a widget's allocated with and height are
18548         always >1, since this breaks *buggy* panel code. unfortunately this
18549         back-breaks the gimp's color selector.
18550
18551         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
18552         allocation is always >0 in width and height, before sending the
18553         configure event; this is a *gross* hack to get the gimp back to work.
18554         
18555         * marked both cases with TODO-1.3
18556
18557 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
18558
18559         * gtk/gtktext.c: Don't display wrap indicators when
18560         text is not editable and word wrap is on.
18561
18562 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
18563
18564         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
18565         option menus here as they are not derived from menu shell, assure that
18566         the option menu has a menu we can add items to.
18567
18568 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
18569
18570         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
18571         width/height to (gint) before calculations and check against < 0 to
18572         avoid guint wraparounds.
18573
18574 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
18575
18576         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
18577         width and height is never zero. sanity check both dimensions against
18578         32767 and issue a warning if the allocation is greater than that.
18579
18580 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
18581
18582         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
18583         to g_main_pending() as well.
18584
18585 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
18586
18587         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
18588         call to g_main_iteration() - since that will regrab
18589         GTK+ lock to process events.
18590
18591 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
18592
18593         * gtk/gtkwindow.c
18594         - Regularize with the rest of GTK+ by making widget->requisition
18595           not reflect the set_usize()
18596         - Always recompute geometry hints, then check if they
18597           changed before sending them to the X server. The
18598           previous checks for changes would fail in a number
18599           of circumstances. 
18600
18601 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
18602
18603         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
18604
18605 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
18606
18607         * gtk/gtkdnd.c:
18608         - Code cleanups
18609         - Instantaneously update on modifier key presses
18610         - Allow cancellation of the drag with Escape.
18611
18612 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
18613
18614         * gtk/testgtk.c (create_handle_box): Set the policy
18615         to auto_shrink - otherwise the appearance is rather
18616         strange when flipping between horizontal and vertical.
18617
18618 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
18619
18620         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
18621         (gtk_window_set_default_size): don't change a value if it's < 0.
18622         queue a resize.
18623
18624 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
18625
18626         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
18627
18628 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
18629
18630         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
18631         add an extra "/" when concating "/" + filename.
18632         (From Matt Grossman <mattg@oz.net>)
18633
18634 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
18635
18636         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
18637         for fg_gc if we set it for drawing pixmap.
18638
18639 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
18640
18641         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
18642         
18643         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
18644         already set, call old engine's destroy function and
18645         unref the old engine.
18646
18647 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
18648
18649         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
18650
18651 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
18652
18653         * gtk/gtkaccelgroup.h: mark certain functions as internal.
18654
18655 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
18656
18657         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
18658         expand behaviour changed.
18659
18660         * gtk/gtklabel.c (gtk_label_set_pattern):
18661         (gtk_label_set_justify):
18662         (gtk_label_set_line_wrap):
18663         don't bother invoking queue_clear, the reallocation does
18664         that for us, always free_words so the upcoming resize will
18665         relayout the label's contents.
18666
18667 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
18668
18669         * applied argument implementation patches from Elena Devdariani
18670         <elena@cogent.ca>.
18671
18672         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
18673         ::space_style, ::relief
18674         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
18675         * gtk/gtkpreview.c: ::expand
18676         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
18677         * gtk/gtknotebook.c: ::homogeneous
18678         * gtk/gtklabel.c: ::wrap
18679         * gtk/gtklist.c: ::selection_mode
18680         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
18681         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
18682         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
18683         * gtk/gtkclist.c: ::sort_type
18684         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
18685         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
18686
18687 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
18688
18689         * gtk/gtkstyle.c: Removed ill-thought-out part of last
18690         comment.
18691
18692 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
18693
18694         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
18695         counting right when we have to attach a new style
18696         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
18697
18698         * gtk/gtkstyle.c: Documented the refcounting
18699         peculularities of gtk_style_attach.
18700
18701 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
18702
18703         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
18704         window types.
18705
18706         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
18707         of GTK_TOPLEVEL for creating the window.
18708
18709 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
18710
18711         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
18712         the last argument (reported by Per Winkvist).
18713         
18714 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
18715
18716         Fixes for invisible XOR lines (Frank Loemker
18717         <floemker@TechFak.Uni-Bielefeld.DE>)
18718         
18719         * gtk/gtkclist.c (gtk_clist_realize): Always use
18720         a non-zero pixel for GDK_XOR.
18721
18722         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
18723         Use GDK_INVERT instead of GDK_XOR.
18724
18725 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
18726
18727         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
18728         signals if h/voffsets differ from adjustment values.
18729         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
18730
18731 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
18732
18733         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
18734         ::selection-done emissions up to the topmost menu shell.
18735
18736 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
18737
18738         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
18739         the user data on the window before destroying it.
18740
18741         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
18742         unrealize handler to take care of destroying 
18743         notebook->panel properly. 
18744         (Bug #1198 - Morten Welinder <terra@diku.dk>)
18745
18746         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
18747         of g_new and g_realloc to stop memory leak. (Actually,
18748         we could just use g_realloc(), but I'm not 100% sure
18749         that is portable).
18750         (Bug #1196 - Morten Welinder <terra@diku.dk>)
18751
18752 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18753
18754         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
18755
18756         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18757         for fontsets.
18758
18759         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
18760         with bin/button confusion.
18761
18762 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
18763
18764         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
18765         and show how preselection of radio items is done.
18766
18767 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
18768
18769         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
18770         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
18771         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
18772         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
18773         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
18774         * gtk/gtktable.c (gtk_table_attach): 
18775         * gtk/gtklist.c (gtk_list_insert_items): 
18776         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
18777         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
18778         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
18779         * gtk/gtkbin.c (gtk_bin_add): 
18780         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
18781         * gtk/gtkfixed.c (gtk_fixed_put): 
18782         * gtk/gtklayout.c (gtk_layout_put):
18783         general fixups to container_add logic. always realize child if
18784         child->parent is realized, only map the child and queue a resize
18785         if child and child->parent are both visible.
18786
18787 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
18788
18789         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
18790         instead of gtk_container_foreach to walk and unrealize children, so
18791         composite children get also unrealized.
18792         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
18793         (gtk_widget_map): assert that the widget is visible (basic constrain).
18794         (gtk_widget_real_map): assert that the widget is realized (basic
18795         constrain).
18796
18797 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
18798
18799         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
18800
18801 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
18802
18803         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
18804         file for iso-8859-2 locales.
18805
18806         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
18807
18808 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
18809
18810         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
18811          (Pointed out by andy@rz.uni-karlsruhe.de and others).
18812          Remove some suspicious and useless lines. 
18813
18814 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
18815
18816         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
18817         width,height = 0, 0 to mean - here to edge of window,
18818         instead of -1, -1, since the former is all we support.
18819
18820 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
18821
18822         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
18823         when removing from quit_functions list.
18824
18825 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
18826
18827         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
18828
18829 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
18830
18831         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
18832          When redrawing characters on non-visible entry, use appropriate
18833          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
18834
18835 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
18836
18837         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
18838         from drag coordinates.
18839         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
18840         use drag_dest_cell.
18841
18842         * gtk/gtktree (drag_dest_cell)
18843         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
18844         (Bug #1129)
18845
18846 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
18847
18848         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
18849         translate_* fields.
18850         (gtk_item_factory_finalize): invoke translate_notify independant from
18851         translate_data.
18852         (gtk_item_factory_set_translate_func): likewise.
18853         (gtk_item_factory_destroy): only remove ifactory pointer from those
18854         widgets that belong to us (stupid me).
18855
18856 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
18857
18858         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
18859         rc_style list when lookup succeeeds.
18860
18861 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
18862
18863         * gtk/gtkctree.c (resync_selection): 
18864         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
18865         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
18866         bug.
18867
18868 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
18869
18870         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
18871         Add some missing GDK_THREADS_ENTER()/LEAVE around
18872         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
18873
18874 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
18875
18876         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
18877         rather than emit_by_name.
18878
18879         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
18880         on the widget across multiple signal emissions.
18881         (gtk_editable_delete_text): same here.
18882         (gtk_editable_class_init): set widget_class->activate_signal after
18883         editable_signals[ACTIVATE] has been created.
18884
18885 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
18886
18887         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
18888         position here prematurely -- we might not have the
18889         right ->min_position and ->max_position yet.
18890
18891 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18892
18893         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
18894         Add error traps so if the other end of the connection
18895         dies, we survive.
18896
18897         * gtk/gtkselection.c (gtk_selection_notify): Clean
18898         up properly when selection property retrieval fails.
18899         
18900         * gtk/gtkselection.c (gtk_selection_request): Correctly
18901         reject SelectionRequest notifies where the handler
18902         returns no data.
18903
18904 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18905
18906         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
18907         when we've previously highlighted.
18908
18909         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
18910         emit two "drag_leave" signals for Motif drops.
18911
18912         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
18913         back the correct status messages when dropping from
18914         Motif onto a proxy window that is rejecting the
18915         drop.
18916
18917 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
18918
18919         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
18920         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
18921         to compare two argument values. added gtk_arg_to_valueloc() to set a
18922         variable from an arg through its location (pointer).
18923
18924         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
18925         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
18926         as gfloat*, uchars are collected as guchar*, ints are collected as
18927         gint*, etc...
18928
18929 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
18930
18931         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
18932         Include <string.h> instead of <strings.h>.
18933
18934         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
18935         (actually, a lot more duplicate includes occur if
18936          you trace through the sequence of #include's)
18937         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
18938         
18939 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18940
18941         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18942         gtk-a-higuti-990322-[0-3]
18943
18944         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18945         that was causing -DX_LOCALE not to work.
18946
18947         * gtk/gtkrc.c (gtk_rc_init):
18948         X_LOCALE will never have LC_MESSAGES defined
18949
18950 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
18951
18952         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
18953         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
18954
18955         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
18956         left/right as well (gtk-michael-980726-0.patch.gz).
18957
18958         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
18959         for pointer values, use gchar instead of char. fixed uline allocation
18960         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
18961         chunks instead of G_ALLOC_ONLY.
18962         (gtk_label_size_request): always alter requisition as passed and leave
18963         widget->requisition alone.
18964         (gtk_label_set_text): allow NULL strings.
18965         (gtk_label_new): likewise.
18966
18967 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
18968
18969         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
18970
18971 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
18972
18973         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
18974         *and* mapped (i.e. drawable).
18975         (gtk_bin_expose): only send exposes to drawable children.
18976
18977         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
18978         (gtk_box_expose): only send exposes to drawable children.
18979
18980         * gtk/gtkhscale.c (gtk_hscale_draw): 
18981         * gtk/gtkvscale.c (gtk_vscale_draw):
18982         hm, this is an ugly one. we first compute the size of our trough area
18983         here (window relative) and then check intersection with the draw_area
18984         which is parent relative because we're a NO_WINDOW widget, so we need
18985         to offset the trough area by allocation.x and allocation.y before the
18986         check. (this must not be done for the background area though, since
18987         that's already computed parent relative).
18988
18989 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
18990
18991         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
18992         unrealize title buttons.
18993
18994 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
18995
18996         * gtk/gtkclist.c (gtk_clist_column_title_passive)
18997         (gtk_clist_column_title_active): 
18998         only connect/disconnect to GtkWidgetClass::event to block mouse events.
18999
19000         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
19001         zero initialize event, removed superfluous gdk_window_get_pointer call
19002
19003         * gtk/gtklist.c (gtk_list_vertical_timeout)
19004         (gtk_list_horizontal_timeout): removed superfluous
19005         gdk_window_get_pointer call
19006
19007 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19008
19009         * plugging problems reported by "Bruce Mitchener, Jr."
19010         <bruce@puremagic.com> due to a purify session.
19011
19012         * gtk/gtkstyle.c:
19013         (gtk_style_ref): 
19014         (gtk_style_unref): assert ref_count to be > 0.
19015
19016         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
19017         the requisition.
19018         (gtk_clist_set_shift): likewise.
19019
19020         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
19021         adjustments.
19022
19023         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
19024         event before sending it and set send_event to TRUE (which needs to
19025         be done for *all* synthesized events).
19026         (gtk_list_vertical_timeout): likewise.
19027
19028         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
19029         leaks.
19030
19031         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
19032         to TRUE when synthesizing events.
19033
19034 [ *** end of merges from 1.2 *** ]      
19035         
19036 1999-11-21  Tor Lillqvist  <tml@iki.fi>
19037
19038         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
19039         (or copied from gdkconfig.h.win32 on Win32, sigh).
19040
19041         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
19042
19043         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
19044
19045         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
19046
19047         * gdk/gdkconfig.h.win32: New file.
19048
19049         * gdk/win32/makefile.cygwin: Build just a static archive here.
19050
19051         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
19052         for the DLL from the static archive built above.
19053
19054         * gdk/gdk.def: Moved here from the win32 subdirectory.
19055
19056         * gdk/win32/*: Adapt for the changed private struct organisation.
19057
19058         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
19059
19060 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
19061
19062         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
19063         for wheel mice (buttons 4 and 5).
19064
19065 1999-11-18  Tor Lillqvist  <tml@iki.fi>
19066
19067         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
19068         drawables use just the pixel field in the foreground and
19069         background GdkColor of the GdkGC.
19070
19071         gdk_gc_set_{fore,back}ground() are called in the GIMP with
19072         GdkColors containing uninitialized (red,green,blue) fields, and
19073         just the pixel field filled in, and furthermore in the
19074         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
19075         It thus turns out that we really don't need to have the full
19076         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
19077         it later to have just the pixel values.
19078
19079 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
19080
19081         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
19082
19083 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
19084
19085         * docs/gtkfaq.sgml: threads example from Erik Mouw.
19086         New question on GtkLabel background colors.
19087
19088         * docs/gtk_tut.sgml:
19089           - Correct the example code callback
19090             function definitions.
19091           - Update the gtkdial example code, from Frans van Schaik.
19092           - Update setselection.c to current API.
19093
19094         * examples/Makefile examples/*/*.c: Update to code
19095         listed in tutorial.
19096
19097 1999-11-10  Tor Lillqvist  <tml@iki.fi>
19098
19099         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
19100         subrange table (from the "Developing International Software for
19101         WIndows 95 and Windows NT" book) was missing the Hangul syllable
19102         block... Get the loaded font's charset correctly.
19103
19104         (Note that this, and the other *-win32.c files, still really are
19105         the old ones, the win32 subdirectory is not ready for compilation
19106         yet after the reorg.)
19107
19108 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
19109
19110         * gtk/gtkclist.c: Fix off-by-one bug in parameter
19111         check.
19112
19113 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
19114
19115         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
19116         on results of XQueryDeviceState().
19117
19118 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
19119
19120         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
19121         we need to accesss only ->children. We need an accessor
19122         for the children.
19123
19124         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
19125         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
19126         to get rid of gdkx.h include.
19127         
19128         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
19129         and random references to 'None'.
19130
19131         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
19132         Get rid of unused #include <gdk/gdkx.h>
19133
19134         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
19135         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
19136         gdkconfig.h.
19137
19138 1999-11-08  Tor Lillqvist  <tml@iki.fi>
19139
19140         * gdk/win32/gdkdraw.c
19141         * gdk/win32/gdkfont.c
19142         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
19143         following yesterday's changes. (Unrelated to Owen's reorg.)
19144
19145 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
19146
19147         * gdk/x11/gdkinput-gxi.c: Add missing include,
19148           fix GdkWindowPrivate => GdkDrawablePrivate.
19149
19150         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
19151
19152         * gdk/x11/Makefile.am (xinput_sources): Add missing
19153         backslash to fix building with --with-xinput=none
19154
19155 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
19156
19157         Move all X specific code into the x11/ directory.
19158         Aside from shuffling things around, did the following:
19159
19160        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
19161          gdk_arg_context_* - a simple argument parsing system
19162          in the style of popt.
19163
19164        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
19165          gdk/x11/gdkprivate-x11.h:
19166          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
19167          add ->klass and ->klass_data fields. The klass_data
19168          field points to an auxilliary structure that is
19169          windowing system dependent.
19170
19171        * gdk/gdkfont.c: Make most of the measurement functions
19172          simply wrappers around gdk_text_extents().
19173
19174        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
19175          _gdk_font_strlen() function that hides the weird
19176          behavior in gtk+-1.[02] where a string is interpreted
19177          differently for 8-bit and 16-bit fonts.
19178
19179        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
19180          to store common code for synthesizing double/triple
19181          press events.
19182         
19183        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
19184          Make all the function that modify an existing GC
19185          simply wrappers around gdk_gc_set_values().
19186          
19187        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
19188          for throwing out later.
19189
19190        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
19191          GdkImagePrivate and GdkColormapPrivate to have a
19192          windowing system dependent part (GdkFontPrivateX etc.)
19193          that "derives" from the system-independent part.
19194
19195        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
19196          Got rid of the included-source-files for XInput in
19197          favor of automake conditionals. (Which didn't exist
19198          when XInput support was originally added.)
19199
19200        * gdk/gdkrgb.c: Remove the visual id from the debugging
19201          statements since that is X11 specific; print out
19202          type/depth info instead.
19203          
19204
19205 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
19206
19207         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
19208         loading duplicates of hashed fonts.
19209
19210         * gdk/gdk.c (gdk_keysym_convert_case): rename
19211         gdk_XConvertCase to gdk_keysym_convert_case, allow
19212         results to be NULL in the GTK+ style.
19213
19214         * gdk/gdkcompat.h: Started compatibility header
19215         for renames.
19216
19217 1999-11-07  Tor Lillqvist  <tml@iki.fi>
19218
19219         * gdk/win32/gdkprivate.h: New font private structures, related to
19220         fontsets.
19221
19222         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
19223         gdk_font_list_free(). On X11, will just be wrappers to
19224         XListFonts() and XFreeFontNames(). On Win32, the code previously
19225         in gtkfontsel.c is now here.
19226
19227         New function gdk_font_xlfd_create(). On X11 will get the FONT
19228         property of the font (for GDK_FONT_FONTs), or call
19229         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
19230         builds a XLFD style name from the font information in the LOGFONT
19231         struct(s).
19232
19233         New function gdk_font_xlfd_free(), which correspondingly frees the
19234         string returned by gdk_font_xlfd_create().
19235
19236         Implement fontsets on Win32. Add a function that iterates over a
19237         wide char string and calls a callback function for each substring
19238         of wide chars from the same Unicode subrange (and thus probably
19239         available in the same real font).
19240
19241         Improve the XLFD emulation a bit.
19242
19243         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
19244
19245         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
19246         Beta3, WM_IME_CHAR messages don't seem to contain the composed
19247         multi-byte char as with the Active IMM on Win9x. Oh well, handle
19248         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
19249         ImmGetCompositionStringW() to get the composed Unicode chars.
19250
19251         * gdk/win32/gdkgc.c
19252         * gdk/win32/gdkdraw.c: Changes needed because of the font private
19253         struct changes.
19254
19255         * gdk/win32/gdk.def: Add the new functions.
19256
19257 1999-11-04  Tor Lillqvist  <tml@iki.fi>
19258
19259         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
19260         get the Platform SDK to get <dimm.h>.
19261
19262         * gdk/win32/gdkevents.c: More event handling fixes and
19263         simplification. Never generate motion events with is_hint true. We
19264         used to do that on bogus grounds earlier. Windows sends
19265         WM_MOUSEMOVE messages on button events even if the mouse hasn't
19266         moved, ignore these.
19267
19268         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
19269
19270         * gdk/win32/gdkglobals.c
19271         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
19272         the TrackMouseEvent function, and use it.
19273
19274         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
19275         char before calling WideCharToMultiByte in order to get a string
19276         for the window title.
19277
19278         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
19279
19280         * gdk/win32/gdk.def: Remove obsolete functions.
19281
19282         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
19283         /nodefaultlib and /defaultlib switches.
19284
19285         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
19286
19287 1999-10-31  Tor Lillqvist  <tml@iki.fi>
19288
19289         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
19290         EuroSign).
19291
19292         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
19293         same type as GdkWChar, especially on Win32.
19294
19295         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
19296
19297         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
19298         before passing to Windows GDI for drawing etc. Convert to the
19299         system default codepage before passing to Windows as window
19300         titles.
19301
19302         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
19303         support changing input locale on the fly.
19304
19305         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
19306         on-the-fly changes. Convert incoming characters from the current
19307         codepage to Unicode (and then to a UTF-8 multi-byte string) based
19308         on the current input language. Use keysym<->Unicode mapping tables
19309         and functions borrowed from xterm sources.
19310
19311         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
19312         editions of Win9x, use the ActiveX-based Active IMM (Input Method
19313         Manager) if available. IMEs and the Active IMM are available under
19314         the disguise of Chinese, Korean and Japanese support for IE and
19315         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
19316         support is present in all editions (as long as you install it).
19317
19318         Call DispatchMessage from gdk_events_queue() (and thus
19319         gdk_WindowProc()), instead of duplicating the code in
19320         gdk_WindowProc().
19321
19322         Reworked the grab handling and propagation code, factored out
19323         duplicated code snippets into separate functions. Other cleanups,
19324         too.
19325
19326         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
19327         the <dimm.h> header describing the Active IMM.
19328
19329         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
19330         just do the same as for "single" fonts.
19331
19332         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
19333         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
19334         the new keysyms from gdkkeysyms.h.
19335
19336         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
19337         fontset, so that gtkentry uses wide characters.
19338
19339         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
19340         GTk+'s system directory "gtk+", not "gtk".
19341
19342 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
19343
19344         * docs/gtkfaq.sgml: FAQ update
19345
19346 1999-10-21  Tor Lillqvist  <tml@iki.fi>
19347
19348         * gdk/win32/gdkprivate.h: Add more font private data.
19349
19350         * gdk/win32/gdkfont.c
19351         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
19352         fonts and strings. Now works much better. You still have to
19353         have a correct font selected, though. No fontset emulation yet.
19354
19355 1999-10-19  Tor Lillqvist  <tml@iki.fi>
19356
19357         * gtk/maketypes.awk: Use G_OS_WIN32.
19358
19359         * gtk/gtk.def: Add some missing entry points. Also some non-public
19360         ones, but PyGTK porter claims to need them.
19361
19362         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
19363         built-in type generation.
19364
19365 1999-10-14  Tor Lillqvist  <tml@iki.fi>
19366
19367         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
19368         GDK_FONT_FONT fonts (which is all we have for now, we don't
19369         emulate fontsets). The X11 version uses plain XDrawString in that
19370         case, too. The string passed to gdk_draw_text_wc seems to be in
19371         fact (at least, when used by gtkentry and gtktext) either in a
19372         single-byte charset, or a DBCS. Not Unicode.
19373
19374         This fixes the problem in gtkfontsel, where even if you had
19375         selected a font with a non-Latin1 charset (windows-greek, for
19376         instance), the preview still used Latin-1 glyphs.
19377
19378         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
19379         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
19380         (gdk_font_load): Recognize the demibold etc weights, even if we
19381         don't have the corresponding constants in the headers.
19382         (gdk_font_hash_insert): Use same hash mechanism as in the X11
19383         version. Should save font resources a bit, when we don't have
19384         multiple HFONTs for the same font.
19385
19386         * gdk/win32/gdkprivate.h: Add the names field as in the X11
19387         version.
19388
19389 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
19390
19391         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
19392         X values
19393
19394 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
19395
19396         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
19397         layout support (as mentioned on
19398         http://www.jcinteractive.com/gnome-ui/software/widgets/)
19399
19400 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
19401
19402         * gtk/fnmatch.c
19403         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
19404
19405 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
19406
19407         * configure.in (ALL_LINGUAS): Added Galician (gl)
19408
19409 1999-10-05  Tor Lillqvist  <tml@iki.fi>
19410
19411         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
19412
19413         * gdk/win32/gdkcompat.c: New file, actually provide an
19414         implementation for the deprecated functions. (Just temporarily.)
19415
19416         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
19417
19418         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
19419
19420         * gdk/win32/gdk.def gtk/gtk.def: Updates.
19421
19422 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
19423
19424         * configure.in: Added "uk" to ALL_LINGUAS.
19425         
19426 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
19427
19428         * configure.in: correct checking for BeOS check
19429
19430         * gdk/gdktypes.h
19431         * gtk/fnmatch.c
19432         * gtk/gtkfilesel.c
19433         * gtk/gtkitemfactory.c
19434         * gtk/gtkmain.[ch]
19435         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
19436
19437 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19438
19439         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
19440         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
19441         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
19442         by Bulgarian). 
19443
19444 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
19445
19446         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
19447         Fix a reference to window_private->destroyed.   
19448
19449         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
19450         (ugly) setting of an internal GdkWindow member to use
19451         a _slightly_ cleaner macro.
19452
19453         * gdk/gdkprivate.h: Split GdkWindowPrivate into
19454         GdkDrawablePrivate and GdkWindowPrivate.
19455         Add extra macros for accessing GDK_DRAWABLE_ components.
19456
19457         * *.[ch]: Massive adjustments for the above, use the
19458         new macros in a lot of places.
19459
19460 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
19461
19462         * gdk/gdktypes.h: Make GdkDrawable the base type,
19463         not GdkWindow.
19464
19465 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
19466
19467         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
19468
19469 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
19470
19471         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
19472
19473 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
19474
19475         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
19476         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
19477
19478         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
19479
19480         * docs/gtk-config.1: Now autogenerated.
19481         * docs/Changes-1.4.txt: started
19482         
19483 1999-10-03  Tor Lillqvist  <tml@iki.fi>
19484
19485         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
19486         to #ifdef also here.
19487
19488         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
19489         Owen did to the X11 backend.
19490
19491         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
19492         ScrollWindowEx when blitting inside a window, it can't be correct
19493         in the general case.
19494
19495         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
19496         WM_GETMINMAXINFO is easier.
19497
19498         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
19499         depth equal to the bitspixel value, not the visual's depth.
19500
19501         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
19502         to 24 even if the bitspixel value is 32.
19503
19504         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
19505         need to check for depth==32 when bpp==32, depth will always be 24.
19506
19507 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
19508
19509         * docs/Changes-1.4.txt: Started
19510         
19511         * gtk/Makefile.am (gdk_headers): Include all the new headers.
19512
19513         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
19514         
19515         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
19516         into C file.
19517         
19518         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
19519         header to gdkinputprivate.h.
19520
19521         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
19522         unused since before 1.2.
19523
19524 1999-09-30  Tor Lillqvist  <tml@iki.fi>
19525
19526         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
19527         expand possible hex escapes in the font family (put there by
19528         logfont_to_xlfd if the font name isn't a legal XLFD font family,
19529         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
19530         On Win32, add hex escapes here, too.
19531
19532 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
19533
19534         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
19535         to #ifdef GDK_WINDOWING_X11.
19536
19537 [ Merges from gtk-1-2 ]
19538
19539 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
19540
19541         * configure.in: fixed "GNU Make" check to pass with new make version
19542         3.77.95.
19543
19544 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
19545
19546         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
19547         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
19548         AM_PATH_GTK() macros don't get confused by the -pre1.
19549
19550 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19551
19552         * configure.in (REBUILD): Change check for perl5
19553           to check explicitely for v >= 5.002. (5.001
19554           does not work with our scripts.)
19555
19556 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
19557
19558         * configure.in: evaluate $PERL for the perl version check. added
19559         --disable-rebuilds to give the user an option to completely disable
19560         any source autogeneration rules.
19561
19562 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
19563
19564         * configure.in: evaluate $ac_make when checking for GNU Make.
19565
19566 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19567
19568         * docs/Makefile.am: added generation.txt.
19569
19570         * Makefile.am: require automake 1.4, build README from README.in and
19571         INSTALL from INSTALL.in in dist-hook.
19572         
19573         * README.in:
19574         * INSTALL.in: new files to autogenerate README and INSTALL from.
19575
19576         * configure.in: figure whether we have GNU Make
19577
19578         * docs/generation.txt: minor additions/corrections.
19579
19580 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19581
19582         * docs/gtkfaq.sgml: FAQ Update
19583
19584 July 30, 1999 Elliot Lee <sopwith@redhat.com>
19585         
19586         * configure.in: Fix autoconf warnings about cross compilation by
19587         trying to provide sane defaults for AC_TRY_RUN.
19588
19589 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
19590
19591         * ltconfig
19592         * ltmain.sh: upgrade to libtool 1.3.3
19593
19594 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
19595
19596         * INSTALL: Indicate that the --with-glib= configure
19597         time flag is unsupported.
19598
19599 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
19600
19601         * docs/generation.txt: Added a file that gives
19602         documenation about the autogeneration process for
19603         various autogenerated files.
19604         
19605 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
19606
19607         * configure.in (LIBS): Look for libgmodule in the
19608         right location.
19609
19610 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
19611
19612         * docs/gtk_tut.sgml: Removed references to
19613         code examples in my directory on gtk.org as
19614         they should all be in the tutorial now.
19615
19616         * docs/gtk_tut.sgml: Added sources for dial-test
19617         and scribble-xinput programs that were previously
19618         missing.
19619
19620 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
19621
19622         * TODO: Added entry about menu keyboard navigation, removed
19623         some finished items.
19624
19625 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
19626
19627         * acinclude.m4: Standardize on func_dgettext
19628         not func_gettext, so that the checks for dgettext
19629         actually are paid attention to.
19630
19631 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
19632
19633         * configure.in (LIBS): Add $INTLLIBS into $LIBS
19634         directly, rather than repeating the checks for
19635         gettext.
19636
19637         * INSTALL: Added information about gettext and
19638         NLS support.
19639
19640         * acinclude.m4 (LIBM): Check for dgettext, not
19641         just gettext. This should hopefully fix things wrt
19642         systems with old versions of GNU gettext installed.
19643
19644 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
19645
19646         * configure.in (LIBS): Look for libgmodule in the
19647         right location.
19648
19649 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19650
19651         * autogen.sh: add --enable-maintainer-mode
19652
19653         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
19654
19655 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
19656
19657         * docs/gtk-config.1.in:
19658           docs/Makefile.am:
19659           configure.in: gtk-config is now generated.
19660
19661         * docs/gtk-config.1: Removed, now generated.
19662
19663 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
19664
19665         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
19666         handle CreateNotify itself, still put out a debuging message for
19667         --gdk-debug=events. made the ReparentNotify debugging message more
19668         verbose.
19669         wrap xcoords translation for ConfigureEvents into an error trap,
19670         a destroy event may already be pending, and in that case, the
19671         actuall coordinate values are not at all critical.
19672
19673 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
19674
19675         * gdk/gdkcc.c: Stop leaking the color_hash all over
19676         the place. Simplify and improve the logic.
19677
19678 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
19679
19680         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
19681         for prototypes and function implementations consistent (reported
19682         by Tomas Ogren).
19683
19684 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
19685
19686         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
19687         send_event set in debugging output.
19688         (gdk_compress_exposures): default initialize the event so we don't
19689         operate on bogus values (namely send_event).
19690
19691 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19692
19693         * gdk/gdkwindow.c: When we receive an unexpected
19694         destroy notify on one of our windows, don't just
19695         warn about it, also mark our windows as destroyed.
19696
19697 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
19698
19699         * gdk/gdkfont.c (gdk_font_hash_insert): Add
19700           name => font and name => fontset hashes. The 
19701           name => fontset hash is a _big_ win since we
19702           weren't previously caching fontsets at all and loading
19703           fontsets is expensive. The name => font hash
19704           is less of a win, but it does save us from doing
19705           repeated XQueryFont calls on the same font.
19706
19707         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
19708           list so we can remove font/fontset from hash.
19709
19710 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19711
19712         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
19713           and slightly confusing test. [ XInternAtom (,,TRUE)
19714           will never return None ].
19715
19716 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
19717
19718         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
19719           gdk/gdkwindow.c (gdk_window_set_hints):
19720
19721         Don't omit setting the properties if flags == 0 -
19722         there may be an existing set of properties there
19723         already. (Very old bug. Would it be better to
19724         delete the property instead?)
19725
19726         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
19727           spelling error in comment.
19728
19729 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
19730
19731         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
19732           to avoid stomping over gdk_error_warnings.
19733
19734         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
19735           as (bits_per_pixel + 7) / 8. This gives the same
19736           result as before for multiples of 8, but actually
19737           a "reasonable" value for 1bit or 4bit displays.
19738
19739 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19740
19741         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
19742         GNU Make.
19743
19744 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19745
19746         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
19747         discarding configure events.
19748
19749 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
19750
19751         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
19752         refcount is greater than zero.
19753
19754         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
19755
19756         * gdk/gdkfont.c (gdk_font_unref): Likewise.
19757
19758         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
19759
19760         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
19761
19762 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
19763
19764         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
19765         that format 32 => sizeof(item) == 4. It really is
19766         sizeof(long).
19767
19768 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
19769
19770         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
19771         core dump at all on X IO errors, only core dump
19772         if --enable-debug for X errors.
19773
19774 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
19775
19776         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
19777         unknown window:" message. disabled ConfigureNotify discarding code,
19778         because it led to events being processed out of order.
19779
19780 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
19781
19782         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
19783
19784         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
19785         we export this function, supress error warnings and don't reset the
19786         error code in the first half of this function.
19787
19788         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
19789         code (instead of just -1) so gdk_error_trap_pop() reveals something
19790         actually informative about the error that happened.
19791
19792         * gdk/*.c:
19793         don't rely on gdk_error_code being -1 if an error occoured, but just
19794         gdk_error_code != 0.
19795
19796 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
19797
19798         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
19799         pointer *before* invoking the filter function, so we at least don't
19800         crash if a filter is removed that is currently executed. window filters
19801         *really* need to be made truely reentrant at some point.
19802
19803 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
19804
19805         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
19806         PropertyNotify debug messages.
19807
19808 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
19809         
19810         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
19811         
19812         * gdk/gdkim.c: Fix cut-and-paste errors for 
19813         x/y and PreeditAttributes/StatusAttributes.
19814
19815 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19816
19817         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
19818         G_MAXINT to 2^16 to alleviate overflow problems in
19819         various window managers.
19820
19821 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
19822
19823         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
19824         for fontsets.
19825
19826 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
19827
19828         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
19829         Initialize size_hints.x and size_hints.y because kwm
19830         brokenly pays attention to them.
19831         (Bug #1181 -  Lars Heete <hel@admin.de>)
19832
19833 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
19834
19835         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
19836         return value of gdk_list_visuals(). 
19837         (Bug #1193 - Morten Welinder <terra@diku.dk>)
19838
19839 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
19840
19841         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
19842         XSetIMValues to (void *) when comparing to NULL, to workaround
19843         the problem of some compilers barfing since older X headers don't
19844         have the prototype for it.
19845
19846 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
19847
19848         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
19849         for pseudocolor where colormap->colors was double
19850         allocated.
19851
19852         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
19853         color value in the hash table with the pixel filled
19854         in so when we do later hash table lookups, the color
19855         value is correct.
19856         
19857 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
19858
19859         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
19860         making the call
19861
19862 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
19863
19864         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
19865         pointed out by Morten Welinder <terra@diku.dk>.
19866
19867 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19868
19869         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19870           default filter from the list
19871
19872 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19873
19874         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19875           default filter from the list
19876
19877 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
19878
19879         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
19880
19881         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
19882         g_strdup_printf instead of calcing the length separately
19883
19884 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
19885
19886         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
19887         that we don't do in many other places. (Fixing duplicate 
19888         #include of config.h)
19889
19890         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
19891         Otherwise, #ifndef XINPUT_NONE check in the latter
19892         doesn't work. (Bug #546)
19893
19894 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
19895
19896         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
19897         "None" case insensitive.
19898
19899 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19900
19901         * gdk/gdkselection.c: 
19902         Add error traps so if the other end of the connection
19903         dies, we survive.
19904
19905 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19906
19907         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
19908         dest_xid field into two fields - one for the window
19909         to send in messages, one to indicate the last looked
19910         up window for caching purposes. This is needed, so
19911         that Leave messages get the correct window.
19912
19913 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
19914
19915         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
19916         Fix warning created by people mucking around
19917         with the gsource API.
19918
19919         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
19920         Change mapping between GIOCondition and GdkInputCondition
19921         to match the way the Linux kernel does it. This should
19922         fix problems where closed pipes were no longer signalling
19923         GDK_INPUT_READ on systems with a native poll().
19924
19925 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
19926
19927         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
19928         explicitly for the string "None" - it is in the XPM
19929         spec and some servers treat unknown colors in odd ways
19930         (like asking the user!)
19931
19932 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19933
19934         * gdk/gdkevents.c: made "->" into a "." of previous change so
19935         it compiles
19936
19937 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
19938
19939         * gdk/gdkevents.c (gdk_compress_exposures): Set the
19940         window field of the event structure before calling
19941         user filters.
19942
19943 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19944
19945         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
19946         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
19947
19948 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
19949
19950         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
19951         intermediate text property - prevents major memory
19952         leak when gdk_use_mb.
19953         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
19954
19955 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19956
19957         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19958         gtk-a-higuti-990322-[0-3]
19959
19960         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
19961         sizeof(wchar_t) != sizeof (GdkWChar)
19962
19963         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19964         that was causing -DX_LOCALE not to work.
19965
19966         * gtk/gtkrc.c (gtk_rc_init):
19967         X_LOCALE will never have LC_MESSAGES defined
19968
19969         * gdk/gdk.c (gdk_init_check):
19970         Remove --xim-preedit and --xim-status from argv properly.
19971
19972         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
19973         that the client window is present on the X server
19974         before we pass it to the input method.
19975
19976 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19977
19978         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
19979         if --display is specified on the command line, than
19980         the drag window will not be created on that display.
19981         
19982 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
19983
19984         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
19985         lookups with only_if_exists == TRUE were inserting
19986         bogus values into the atom cache.
19987
19988 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19989
19990         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
19991         then reset it to NULL.
19992
19993         * gdk/gdkcolor.c:
19994         (gdk_colors_free): 
19995         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
19996         key for g_hash_table_remove() in both functions, this prevents us
19997         from accessing possibly uninitialized portions of a GdkColor structure
19998         where we are only interested in its pixel value.
19999
20000 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20001
20002         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20003         font hash table, if we have a GdkFontPrivate entry for this font
20004         already, simply increment its reference count, provided by Olaf Dietsche
20005         <olaf.dietsche+list.gtk@netcologne.de>.
20006
20007 1999-09-21  Tor Lillqvist  <tml@iki.fi>
20008
20009         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
20010         just to be sure.
20011
20012         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
20013         unused variables, leftovers from the X11 version.
20014
20015         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
20016
20017         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
20018         downcase fields on X11.
20019
20020 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
20021         
20022         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
20023         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
20024
20025 1999-09-17  Tor Lillqvist  <tml@iki.fi>
20026
20027         * gdk/win32/gdk.def: Add gdk_threads_mutex.
20028
20029         * gtk/makefile.msc: Correct path to libintl.
20030
20031         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
20032         use of gint vs. int, and gint vs. gboolean in headers and
20033         definitions. Use GtkType for the *_get_type functions. Note that
20034         these changes preserve binary compatibility.
20035
20036         * gdk/gdk.c
20037         * gdk/win32/gdk.c
20038         * gdk/gdk.h: Fix inconsistencies: gint vs int.
20039
20040         * gtk/gtkmain.c
20041         * gtk/gtkclist.c
20042         * gtk/gtkmenufactory.c
20043         * gtk/gtknotebook.c
20044         * gtk/gtkwidget.c: Fix inconsistencies, also gint
20045         vs. gboolean.
20046
20047         * gtk/gtkcolorsel.[ch]
20048         * gtk/gtkcombo.[ch]
20049         * gtk/gtkdrawingarea.[ch]
20050         * gtk/gtkgamma.[ch]
20051         * gtk/gtkhandlebox.[ch]
20052         * gtk/gtkhpaned.[ch]
20053         * gtk/gtkhruler.[ch]
20054         * gtk/gtkplug.[ch]
20055         * gtk/gtkpreview.[ch]
20056         * gtk/gtkruler.[ch]
20057         * gtk/gtksocket.[ch]
20058         * gtk/gtkstatusbar.[ch]
20059         * gtk/gtktoolbar.[ch]
20060         * gtk/gtkvbbox.[ch]
20061         * gtk/gtkvpaned.[ch]
20062         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
20063         functions.
20064
20065         * gtk/gtkgamma.h: Fix bug, missing () in call of
20066         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
20067
20068 1999-09-14  Tor Lillqvist  <tml@iki.fi>
20069
20070         * gdk/gdkcolor.c (gdk_colormap_new)
20071         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
20072         colormap->colors was allocated twice.
20073
20074         * gdk/win32/gdk.c: Remove some unused stuff.
20075
20076         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
20077         colormap.
20078
20079         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
20080         * gtk/gtklabel.h (gtk_label_get_type)
20081         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
20082         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
20083         in a couple of places, not guint.
20084
20085 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
20086
20087         * configure.in,po/et.po: added Estonian language file
20088
20089 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
20090
20091         * configure.in,po/da.po: added Danish file
20092
20093 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
20094
20095         * docs/gtkfaq.sgml: Minor FAQ Update
20096
20097 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
20098
20099         * docs/gtkfaq.sgml: FAQ update
20100
20101 1999-08-27  Tor Lillqvist  <tml@iki.fi>
20102
20103         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
20104         way to get window contents continually refreshed while resizing. I
20105         didn't like the effects myself, so it's not on by default.
20106
20107         * gdk/win32/gdkprivate.h: New flag variable
20108         gdk_event_func_from_window_proc, FALSE by default.
20109
20110         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
20111         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
20112         are passed --gdk-event-func-from-window-proc.
20113
20114         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
20115         and we have am event_func, call it instead of enqueing the event.
20116
20117 1999-08-23  Tor Lillqvist  <tml@iki.fi>
20118
20119         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
20120         Kelley: Set expose_count in GdkEventExposes correctly.
20121
20122         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
20123         MULTIPLE_WINDOW_CLASSES).
20124
20125         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
20126         for bug in NT, apparently NT *does* draw the end pixel, too, in
20127         LineTo with a one-pixel pen, so we don't have to do it ourselves.
20128
20129 1999-08-21  Tor Lillqvist  <tml@iki.fi>
20130
20131         Improvements by Hans Breuer: 
20132
20133         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
20134
20135         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
20136         CS_?REDRAW flags as they cause lots of (late) redraws when "show
20137         window contents while dragging" is turned on. Allocate at least
20138         one unique class for every GdkWindowType. If support for single
20139         window-specific icons is ever needed (eg. Dialog specific), every
20140         such window should get its own class.
20141
20142 1999-08-19  Tor Lillqvist  <tml@iki.fi>
20143
20144         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
20145         error that caused crashes.
20146
20147 1999-08-17  Tor Lillqvist  <tml@iki.fi>
20148
20149         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
20150         window, use ScrollWindowEx, and call UpdateWindow. This prevents
20151         bugs when for instance part of the window was outside the
20152         display. Thanks to Philippe Colantoni for finding and fixing this.
20153
20154 1999-08-16  Tor Lillqvist  <tml@iki.fi>
20155
20156         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
20157         endpoint calculations which were totally wrong. (A little RTFMing
20158         helps a lot ;-)
20159
20160         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
20161         from a separate directory, not from gettext, because of licensing
20162         issues (we want to use the LGPL version).
20163
20164         * README.win32: Mention the intl from glibc vs from gettext issue.
20165
20166 1999-08-13  Tor Lillqvist  <tml@iki.fi>
20167
20168         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
20169         in the key event handling: Now AltGr chars work again. Also,
20170         now Alt-digits are passed up as well as Control-digits.
20171         Pass keypad plus and minus as normal plus and minus.
20172
20173 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
20174
20175         * docs/gtkfaq.sgml: FAQ Update
20176
20177 1999-07-25  Tor Lillqvist  <tml@iki.fi>
20178
20179         * README.win32
20180         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
20181         the Wintab SDK.
20182
20183         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
20184         OK, but getting closer. Guard against bogus tilt data from Wacom
20185         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
20186         enable easier building without Wintab.
20187
20188         * gdk/win32/gdkinput.h
20189         * gdk/win32/gdkevents.c 
20190         * gdk/win32/gdkwindow.c: Minor changes related related to above.
20191         
20192         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
20193         code. As we have just one visual on Win32, no sense to have it in a
20194         table, and no need for the hash table.
20195
20196         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
20197         better on white background.
20198
20199 1999-07-21  Tor Lillqvist  <tml@iki.fi>
20200
20201         * README.win32: Update gcc build instructions. Mention gettext is
20202         GPL.
20203
20204         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
20205         supported cursor size with GetSystemMetrics.
20206
20207         * gdk/win32/gdkfont.c
20208         * gtk/gtkfontsel.c: Guard against some font weight and charset
20209         symbols being undefined (in mingw32 headers).
20210
20211         * gdk/win32/makefile.cygwin
20212         * gtk/makefile.cygwin
20213         * gtk/gtkthemes.c: No longer need to have differently named
20214         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
20215
20216 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
20217
20218         * docs/gtkfaq.sgml: Long awaited FAQ update.
20219
20220 1999-07-15  Tor Lillqvist  <tml@iki.fi>
20221
20222         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
20223         it. Obscure bit manipulation needed.
20224
20225         * gdk/win32/gdkevents.c: Logging.
20226         
20227         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
20228         style (file name include compiler name) for theme engines.
20229
20230 1999-07-13  Tor Lillqvist  <tml@iki.fi>
20231
20232         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
20233
20234         * gdk/win32/gdkevents.c: Fix long-standing bug in key
20235         events. The key.string wasn't zero-terminated, still we strdup'ed
20236         it in gdk_event_copy(). Synthesize crossing events for button
20237         events before possible propagation.
20238
20239         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
20240
20241         * gdk/win32/makefile.cygwin
20242         * gtk/makefile.cygwin: Use new DLL naming style for the
20243         GCC-compiled ones.
20244
20245         * gdk/win32/makefile.msc
20246         * gtk/makefile.msc: Cosmetics mostly.
20247
20248         * gtk/gtk.def: Add missing entry points.
20249
20250         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
20251
20252 1999-07-09  Tor Lillqvist  <tml@iki.fi>
20253
20254         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
20255         or height is zero. Don't print a warning if Pie or Arc fails, they
20256         always fail (?) for very narrow ellipses.
20257
20258         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
20259         the part or the destination window corresponding to source area
20260         outside of the source drawable's boundary.
20261
20262         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
20263         anything if less than two points.
20264
20265         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
20266         return NULL. Gtk cut-and-paste inside a single program works
20267         better this way. (It always gets the clipboard contents from
20268         Windows, not from its own copy, which is cleared anyway. I can't
20269         say I fully understand what happens... Emulating the X selection
20270         and property stuff is a bit of a mess.)
20271
20272         * gdk/win32/gdkevents.c
20273         * gdk/win32/gdkproperty.c: A bit more verbose logging.
20274
20275         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
20276         that never got deleted). Revamp gdk_region_shrink.
20277
20278         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
20279         after use.
20280
20281         * gtk/gtk.def: Add some missing entry points.
20282
20283         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
20284         component.
20285
20286 1999-07-04  Tor Lillqvist  <tml@iki.fi>
20287
20288         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
20289         Control-digits specially.
20290
20291 1999-07-03  Tor Lillqvist  <tml@iki.fi>
20292
20293         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
20294
20295 1999-06-28  Tor Lillqvist  <tml@iki.fi>
20296
20297         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
20298         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
20299         finding this.)
20300
20301 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
20302
20303         * gtk+.spec.in: Corrected some typos in files section.
20304         
20305 1999-06-15  Tor Lillqvist  <tml@iki.fi>
20306
20307         * README.win32: Mention using GNU gettext.
20308         * config.h.win32: Enable NLS stuff.
20309         * gtk/makefile.msc: Use GNU gettext.
20310         * gdk/win32/gdkdnd.c: Minor header reorg.
20311         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
20312         cosmetics.
20313         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
20314         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
20315
20316 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
20317
20318         * acinclude.m4
20319         * config.guess
20320         * config.status
20321         * ltconfig
20322         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
20323
20324 1999-05-30  Tor Lillqvist  <tml@iki.fi>
20325
20326         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
20327         SafeAdjustWindowRectEx. Don't override all calls to
20328         AdjustWindowRectEx by it, but use it only in two places: When
20329         creating a new top-level window and when moving a top-level
20330         window.
20331
20332         Use screen coordinate rectangle, not client rectangle, in
20333         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
20334         when we try to place a window so that the decoration (mainly,
20335         title bar) isn't visible.
20336
20337         These changes fix the bug that showed up for instance as the
20338         GIMP's saved top-level windows moving right and down (by an amount
20339         equal to the window decoration) for each session. This bug showed
20340         up also in testgtk's "Saved Position".
20341
20342         gdk_window_resize also redone a bit.
20343
20344 1999-05-25  Tor Lillqvist  <tml@iki.fi>
20345
20346         * gtk/testgtkrc: Add (commented out) Windows-style theme
20347         include line.
20348
20349         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
20350
20351 1999-05-18  Tor Lillqvist  <tml@iki.fi>
20352
20353         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
20354         gdkx.h to a gdk subdirectory, so that applications can include
20355         these with <gdk/*.h> without trouble.
20356
20357         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
20358         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
20359         have their bitmap destroyed.
20360
20361         * gdk/win32/gdk.def: Add gdk_root_parent.
20362
20363 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
20364
20365         * configure.in
20366           gtk-config.in
20367           ltconfig
20368           ltmain.sh     
20369           gtk/Makefile.am: changes to compile nicely (with xlib) 
20370           on BeOS
20371
20372 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
20373
20374         * acinclude.m4
20375         * config.guess
20376         * config.sub
20377         * ltconfig
20378         * ltmain.sh: upgrade to libtool 1.3
20379
20380 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
20381
20382         * gtk/gtkclist.c:
20383         * gtk/gtkctree.c: merges from gtk-1-2
20384
20385 1999-04-25  Tor Lillqvist  <tml@iki.fi>
20386
20387         Support added for building using a GNU toolchain on Win32,
20388         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
20389
20390         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
20391         * config.h.win32: Changes for gcc.
20392         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
20393         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
20394         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
20395         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
20396         Protect shl stuff unavaiilable with mingw32 headers.
20397         * gdk/win32/gdkevents.c: Fix typo.
20398         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
20399         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
20400         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
20401         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
20402         the mingw32 headers.
20403         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
20404         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
20405         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
20406         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
20407         Test for NATIVE_WIN32, not _MSC_VER.
20408         * gtk/gtkmain.c: No use warning about developer version on Win32,
20409         there aren't any non-developer versions anyhow.
20410         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
20411         * gtk/makefile.msc: Use pthread from another directory. Minor other
20412         changes. 
20413
20414 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20415
20416         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20417           default filter from the list
20418
20419 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
20420
20421         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
20422          when gtk_widget_grab_default() is called for a widget that
20423          is not within a GtkWindow.
20424
20425 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
20426
20427         * docs/gtk_tut.sgml, examples/clist.c: use a
20428           scrolled window in the clist example. Minor
20429           tutorial fixes.
20430
20431 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
20432
20433         * docs/gtk_tut.sgml: Style check from David King
20434           <dking@youvegotmail.net>
20435
20436 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
20437
20438         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
20439         compile with unknown value of GDK_WINDOWING
20440
20441 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
20442
20443         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
20444         after the rule is fired.
20445         (install-exec-local): Install gdkconfig.h only if the contents are
20446         different from the currently installed gdkconfig.h.
20447
20448 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
20449
20450         * gdk/Makefile.am (configexecincludedir): Rename from 
20451         configincludedir so that gdkconfig.h will be installed 
20452         as part of `make install-exec'. 
20453
20454 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
20455
20456         * acinclude.m4
20457         * config.guess
20458         * config.sub
20459         * ltconfig
20460         * ltmain.sh: upgrade to libtool 1.2f
20461
20462         * autogen.sh: libtool is not required to autogen gtk+
20463
20464         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
20465         needed)
20466
20467 1999-03-18  Tor Lillqvist  <tml@iki.fi>
20468
20469         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
20470         declaring gdk variables exported/imported from the DLL. New image
20471         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
20472         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
20473         GDK_DRAG_PROTO_OLE2.
20474
20475         * gdk/gdk.h: Merge in Win32 version: Two new functions,
20476         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
20477         declared only for the Win32 version, but could be in the X11
20478         version as well. (Needed for a Xlib-less gdk_imlib.)
20479         gdk_color_hash should have only one parameter. Declare
20480         gdk_threads_mutex with GDKVAR.
20481         
20482         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
20483         just one parameter.
20484
20485         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
20486         per pixel, not bits.
20487
20488         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
20489         Fetch bpp (which means bits-per-pixel here) from another place on
20490         Win32. Accept also depth==32 (which we might get on Win32) with
20491         bpp==32.
20492
20493         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
20494         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
20495         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
20496         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
20497         in the backend-dependent directory, not in the common gdk
20498         directory.
20499
20500         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
20501         headers.
20502
20503 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
20504
20505         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
20506         want to use the Gtk+ devel version (which is true, and yes - even i am
20507         currently working with the 1.2.x branch). so everyone reading this, you
20508         probably want to issue
20509         cvs checkout -r glib-1-2 glib
20510         and
20511         cvs checkout -r gtk-1-2 gtk+
20512         as your next two comands.
20513
20514 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
20515
20516         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
20517         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
20518
20519         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
20520         file. strongly deprecated the GTK_HAVE_* macros, we provide
20521         GTK_CHECK_VERSION() for people that need to check for certain
20522         Gtk+ versions.
20523
20524         * gtk/gtkcompat.h: removed this from CVS.
20525         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
20526         idea right from the start, it just didn't seem like that back then.
20527
20528 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
20529
20530         * merges from gtk-1-2:
20531
20532 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
20533
20534         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
20535         item factory class has been created.
20536         (gtk_item_factory_parse_rc): likewise.
20537
20538         * gtk/gtkmenu.c:
20539         keep proper references for old_active_menu_item.
20540         (gtk_menu_reparent): unset the usize of the new parent,
20541         so the menu can sanely be size requested and we don't get nasty screen
20542         artefacts upon next reparentation.
20543         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
20544         enter notify. only synthesize enter notifies if the pointer really is
20545         inside the event window.
20546         (gtk_menu_popdown): use gtk_menu_shell_deselect().
20547         (gtk_menu_popup): move the background setting stuff into
20548         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
20549
20550         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
20551         gtk_menu_shell_select_item() to select the new item.
20552         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
20553         do the right thing for deselection as well.
20554
20555 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
20556
20557         * gtk/gtkwidget.[hc]:
20558         (gtk_widget_accelerators_locked): return whether a widget's accelerators
20559         are locked.
20560
20561         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
20562         existing accelerators if the widget's accelerators are locked.
20563
20564 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
20565
20566         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
20567
20568         * gtk/gtkmenu.c: truely forward key press and key release events to
20569         the menu widget from the toplevel or tearoff window. we can't simply
20570         connect to that, we need to stop further processing of the events as
20571         well.
20572
20573 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
20574
20575         * gtk/gtkmenu.c:
20576         (gtk_menu_key_press): pass event->keyval, event->state to
20577         gtk_accelerator_valid, instead of event->keyval twice.
20578         refuse to install single letter accelerators for menus that use
20579         single letter shortcuts.
20580
20581         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
20582         gtk_menu_ensure_uline_accel_group().
20583
20584         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
20585         which will always return an uline accel group, made
20586         gtk_menu_get_uline_accel_group() return NULL if the group isn't
20587         yet created.
20588
20589 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
20590
20591         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
20592
20593         * gtk/gtkclist.c (gtk_clist_column_title_passive):
20594         Leave button sensitive, trap  button_press, button_release,
20595         motion_notify, enter_notify and leave_notify events instead.
20596         (gtk_clist_column_title_active): disconnect event handler.
20597         (gtk_clist_drag_data_get): fixed memory leak. Reported by
20598         Guillaume Laurent <glaurent@worldnet.fr>
20599
20600 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
20601
20602         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
20603         width/height mixups.
20604
20605         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
20606         if needed.
20607
20608 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
20609
20610         * gtk/testgtk.c (create_item_factory): unref the item factory after
20611         window's destruction.
20612
20613         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
20614         count on the menu shell around the menu item's activation, since the
20615         signal emission may cause menu shell destruction.
20616
20617         * gtk/gtkitemfactory.c:
20618         the previous code leaked one accel group per menu. we use
20619         gtk_menu_get_uline_accel_group() now to fix that, and with that
20620         also create the underline accelerator group of the menus only if
20621         required (i.e. an underline accelerator has been specified).
20622         (gtk_item_factory_construct):
20623         (gtk_item_factory_create_item): removed code that would create an
20624         extra accel group for the menu (and leak references).
20625         (gtk_item_factory_create_item): adapted the underline accelerator
20626         installation code to properly feature gtk_menu_get_uline_accel_group().
20627
20628         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
20629         menu->accel_group, this may return NULL if the accelerator group
20630         hasn't been set yet.
20631         added gtk_menu_get_uline_accel_group() to retrive the underline
20632         accelerator group of the menu, this will be created on demand
20633         and proper care is taken about its reference count.
20634
20635         * gtk/gtkitemfactory.h:
20636         * gtk/gtkitemfactory.c:
20637         dumped the approach of keeping a widgets by action list on the
20638         factory since the factory<->widget destroy negotiation didn't work
20639         and would be hard to get going at all. instead we keep a list of
20640         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
20641         persistant throughout a program's life time).
20642         also, i removed the static const gchar *key_* variables, and made
20643         them inline strings (they weren't actually used anyways).
20644         (gtk_item_factory_add_item): update ifactory->items.
20645         (gtk_item_factory_destroy): destroy ifactory->items (and remove
20646         the item factory pointer from the remaining ifactory widgets).
20647         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
20648         list to find the widget.
20649         (gtk_item_factory_get_item): new function that works around
20650         gtk_item_factory_get_widget() limitations, this function will only
20651         return menu items, even for <Branch> entries.
20652
20653 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20654
20655         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20656         font hash table, if we have a GdkFontPrivate entry for this font
20657         already, simply increment its reference count, provided by Olaf Dietsche
20658         <olaf.dietsche+list.gtk@netcologne.de>.
20659
20660         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
20661         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
20662
20663 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
20664
20665         * gtk/gtkcontainer.c:
20666         (gtk_container_add_with_args):
20667         (gtk_container_addv):
20668         (gtk_container_add): before adding a child to a conatiner, make sure
20669         it is (default) constructed, this is neccessary because under certain
20670         circumstances the child will get relized and mapped immediatedly, in
20671         which case it has to be constructed already.
20672
20673 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
20674
20675         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
20676         values > 1 as TRUE also.
20677
20678 1999-03-16  Tor Lillqvist  <tml@iki.fi>
20679
20680         * README.win32: New file.
20681                 
20682         * configure.in: Check for lstat.
20683
20684         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
20685         completeness.
20686
20687         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
20688
20689         * gtk/gtk.def: Removed CRs.
20690
20691         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
20692         ..\gdk\win32).
20693
20694         * gdk/win32/makefile.msc: Correct upwards relative paths.
20695         
20696 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
20697
20698         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
20699           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
20700           it was connecting a void function to expose_event and the int
20701           returning function to the draw signal
20702
20703 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
20704
20705         * configure.in:
20706         Use correct path to libgmodule.la when ref'ing uninstalled copy
20707         of glib.  (Already in stable branch, Bug #417)
20708
20709 1999-03-15  Tor Lillqvist  <tml@iki.fi>
20710
20711         Win32 merge and general portability stuff:
20712                 
20713         * acconfig.h,configure.in: Check for <sys/time.h>.
20714
20715         * gdk/win32: New directory (actually, been there for a while).
20716         
20717         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
20718         NATIVE_WIN32, and use these. Always case fold on Win32. No
20719         backslashed escapes on native Win32.
20720
20721         * gtk/{gtk.def,makefile.msc}: New files.
20722
20723         * gtk/Makefile.am: Add above new files.
20724         
20725         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
20726         instead of <strings.h>.
20727
20728         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
20729         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
20730         <unistd.h> appropriately.
20731
20732         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
20733         Use ABS() (from <glib.h>) instead of abs().
20734         
20735         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
20736         of gtk (and thus glib) headers, so that WIN32 will be
20737         defined. With MS C, include <direct.h> for mkdir prototype.
20738
20739         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
20740         some casts, needed by MS C.
20741
20742         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
20743         implemented).
20744
20745         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
20746         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
20747         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
20748
20749         * gtk/gtkmain.h: Mark variables for export/import on Win32.
20750                 
20751         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
20752         the event is not a hint, or its window is not the slider. Needed
20753         on Win32, at least.
20754
20755         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
20756         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
20757         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
20758         a subdirectory of the Windows directory as gtk system
20759         configuration directory.
20760
20761         * gtk/gtkselection.c: No chunks on Win32.
20762
20763         * gtk/gtksocket.c: Not implemented on Win32.
20764
20765         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
20766
20767         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
20768
20769         * gtk/maketypes.awk: Declare variables with a macro that expands to
20770         necessary export/import magic in the case of Win32.
20771                 
20772         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
20773
20774 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
20775
20776         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
20777         since those were meant only for gdki18n.h.  
20778         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
20779         for widechar tests.
20780         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
20781
20782 1999-03-13  Tor Lillqvist  <tml@iki.fi>
20783
20784         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
20785         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
20786
20787         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
20788         installed) to CFLAGS.
20789
20790         * gdk/Makefile.am: Add rules for gdkconfig.h.
20791
20792         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
20793         APIs.
20794
20795         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
20796         gdkx.h anyway when compiling for X11.
20797         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
20798         general): Merge in Win32 version.
20799         
20800         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
20801         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
20802         expansion (if we don't have HAVE_PWD_H), allow for drive
20803         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
20804         included code from Craig Setera's port to Win32 (the one that uses
20805         X11, and the cygwin dll), even if it probably will be abandoned.
20806
20807         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
20808         the user entered one herself.  This way one can complete *.h and
20809         don't get matches on any .help files, for instance.
20810         
20811 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20812
20813         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20814         font hash table, if we have a GdkFontPrivate entry for this font
20815         already, simply increment its reference count, provided by Olaf Dietsche
20816         <olaf.dietsche+list.gtk@netcologne.de>.
20817
20818         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
20819         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
20820
20821 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
20822
20823         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
20824         the number of calls to gdk_draw_point() (and thus to X) by
20825         clipping the points by hand.
20826
20827         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
20828         the clip parameter.
20829         (gtk_handle_box_paint): Only paint the handle if the expose area
20830         intersects it.
20831
20832 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
20833
20834         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
20835
20836 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
20837
20838         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
20839         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
20840
20841 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
20842
20843         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
20844          textmode (O_TEXT) for OS/2 version.
20845
20846 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
20847
20848         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
20849         GtkSpinButton, "input" and "output", to make the output more flexible.
20850         The user has to provide a mapping between adjustment->value and the
20851         output string (and vice versa, if the spin button is editable). 
20852         See testgtk for examples.
20853
20854 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
20855
20856         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
20857         new one.
20858         
20859         * configure.in: set gtk+ version to 1.3.0.