]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
impl 'text' (gtk_entry_class_init): add the 'text' prop.
[~andy/gtk] / ChangeLog.pre-2-0
1 2001-10-18  Michael Meeks  <michael@ximian.com>
2
3         * gtk/gtkentry.c (gtk_entry_set_property),
4         (gtk_entry_get_property): impl 'text'
5         (gtk_entry_class_init): add the 'text' prop.
6         (gtk_entry_insert_text): notify 'text' changed.
7         (gtk_entry_delete_text): ditto.
8
9 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
10
11         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
12         Documentation updates.
13
14 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
15
16         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
17         in truncating length of text to MAX_SIZE. (Found by 
18         Padraig O'Briain, #62055)
19
20 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
21
22         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
23         MNEMONIC_ACTIVATE; signal was changed a long time
24         ago.
25
26         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
27         Fix wrong return statement. (Reported by HideToshi
28         Tajima and others.)
29
30         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
31         left over select_all vfunc.
32
33 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
34
35         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
36         a utility function to translate coordinates relative to
37         one widget's allocation to coordinates relative to another
38         widget's allocation.
39
40         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
41         that:
42          - only accepts external focus if there is no active
43            member of the group or the button is active.
44          - makes arrow keys move the active button as well
45            as the focus
46          - make tab tab out directly.
47         This makes a radio button group act as a single focus location.
48         (#53577).
49         
50         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
51         it was only a small optimization that didn't matter and made
52         things more complicated.
53
54         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
55         sorter for FOCUS_TAB as we did for the other focus directions,
56         sort by center of widgets, not upper-left corner. (Shouldn't
57         matter in general.)
58
59         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
60         from the different types of focusing: encapsulate sorting the
61         widgets for the focus direction into one routine
62         (gtk_container_focus_sort()) and then share the work of moving the
63         focus between the different focus directions.
64
65         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
66         work correctly with focus chains containing non-immediate
67         children. Sorting was being done using allocation coordinates for
68         each widget in the focus chain, and if there were intermediate
69         window-widgets, these allocations would not be in the same
70         coordinate system.
71
72 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
73
74         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
75         mnemonic_activate function to option menu.
76
77 2001-10-15  Murray Cumming <murrayc@usa.net>
78
79         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
80           Corrected the type names used in some calls to g_signal_new().
81         
82 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
83
84         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
85         specs, use g_pattern_spec_equal() instead of direct field accesses.
86         upon compressing two equal paths of the same type, the resulting
87         priority has to be the maximum.
88         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
89         GtkPathPriorityType enum and make it a macro.
90
91 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
92
93         * gtk/gtkwidget.c: Fix some doc comments.
94
95 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
96
97         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
98         on empty models.
99
100 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
101
102         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
103         Remove stale gdk backend includes.
104  
105 2001-10-10  Michael Meeks  <michael@ximian.com>
106
107         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
108         and value_in_list properties.
109         (gtk_combo_set_value_in_list): notify change.
110         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
111
112 2001-10-11  James Henstridge  <james@daa.com.au>
113
114         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
115         that gtk+ can be built with automake 1.5 while not breaking
116         things for automake 1.4.
117
118 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
119
120         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
121         (#60606)
122
123         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
124         to disable calling setlocale (LC_ALL, "").
125
126         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
127         docs that this function is not typically useful.
128
129         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
130         Automatically initialize GDK for the current locale
131         on gdk_init(). Don't reset locale to C when
132         XSupportsLocale() fails.
133
134         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
135         useless checks for UTF-8 locale breakage that mattered
136         only for X.
137
138         * examples/calendar/calendar.c
139         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
140         gtk_set_locale().
141
142         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
143         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
144
145 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
146
147         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
148
149         Fixes bug #61904
150
151 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
152
153         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
154         new function, #61923
155         (gtk_tree_selection_path_is_selected): Ditto
156
157 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
158
159         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
160         not a GtkObject.  Thanks andersca.
161
162         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
163
164 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
165
166         * gtk/gtktreeviewcolumn.c
167         (gtk_tree_view_model_sort_column_changed): fix broken code.
168
169 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
170
171         * gtk/gtkselection.c: s/succesfully/successfully/g
172
173 2001-10-08  Havoc Pennington  <hp@pobox.com>
174
175         * demos/gtk-demo/stock_browser.c: remove unused enum
176
177         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
178         pass the current selection state of the node in to the user
179         selection func
180
181 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
182
183         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
184         non-existent function gdk_x11_cursor_get_xid 
185         by gdk_x11_cursor_get_xcursor.
186
187 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
188
189         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
190         warning.
191
192         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
193         unref nodes, #okay61676
194
195         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
196         to the property; no need to clear the other columns.  Also, we go
197         to 'unsorted' if the model supports it.
198
199 2001-10-05  Sven Neumann  <sven@gimp.org>
200
201         * demos/testpixbuf-save.c
202         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
203         feature.
204
205 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
206
207         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
208         destroy the search dialog
209
210         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
211         added check to prevent creation of a search dialog if there's
212         already one around
213
214         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
215         it instead of "search-dialog" (when getting/setting the search dialog
216         widget).
217
218 2001-10-05  Jakub Steiner <jimmac@ximian.com>
219
220         * gtk/stock-icons/stock_broken_image.png: broken images icon
221
222 2001-10-04  Havoc Pennington  <hp@pobox.com>
223
224         Fix #56586
225         
226         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
227         accelerator setting here...
228
229         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
230         because we try to use it when a menu bar hasn't necessarily been 
231         initialized.
232
233 2001-10-03  Havoc Pennington  <hp@redhat.com>
234
235         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
236         it previously verified incorrect behavior
237
238         Fixes for #61565
239         
240         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
241         off the end
242         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
243         the end
244         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
245         the end
246         (gtk_text_iter_forward_lines): if on the last line, move to end of
247         it
248
249         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
250         don't return a line off the end
251
252 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
253
254         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
255         functions to do_insert_text and do_delete_text, add signals
256         insert_text, delete_text and changed
257
258         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
259         and changed. Updates to match new situation.
260
261         * gtk/gtkspinbutton.c: updates to match new situation
262
263         * gtk/gtkoldeditable.h: remove signals changed, insert_text
264         and delete_text
265
266         * gtk/gtkoldeditable.c: updates to match new situation
267
268         * gtk/gtktext.c: updates to match new situation
269
270         Fixes bug #59803
271
272 2001-10-03  Havoc Pennington  <hp@redhat.com>
273
274         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
275         position
276
277         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
278         changes
279
280         * tests/testtextbuffer.c (logical_motion_tests): updates
281
282 2001-10-03  jacob berkman  <jacob@ximian.com>
283
284         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
285         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
286         * gtk/gtksettings.c (apply_queued_setting): 
287         * gtk/gtkmain.c (gtk_init_check): 
288         * gtk/gtkcontainer.c (gtk_container_child_get_property):
289         s/retrive/retrieve/
290
291 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
292
293         * gtk/gtktreemodelsort.[ch]: preparation for surgery
294         * tests/testtreesort.c: ditto
295
296 2001-10-02  Havoc Pennington  <hp@redhat.com>
297
298         Throughout: assorted docs
299         
300         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
301         gdk_window_set_geometry_hints() should be used instead.
302
303         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
304         document them
305
306         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
307         seem to exist in any .c files
308
309         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
310         g_return_if_fail (pixel < colormap->size).
311
312 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
313
314         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
315         NULL for @target_list to mean, use
316         gtk_drag_dest_get_target_list (widget).
317
318         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
319         drop could hang when calling gtk_drag_finish with 
320         success == FALSE and del == TRUE.
321
322         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
323         drops without a matching target found would propagate
324         to the parent widget rather than being rejected.
325
326         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
327         Use text_view->dnd_mark instead of mark name to be
328         consistent with the rest of the code.
329
330         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
331         pendantically correct for a drop-only-in-some-places
332         widget. (Check whether you can insert in drag_drop,
333         not just in drag_motion ... matters in theory, and
334         for Motif drag and drop in practice.)
335
336         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
337         Damian Ivereigh to not allow drops on non-editable
338         entries. (#61124)
339
340         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
341         text to be moved from a non-editable entry.
342         
343 2001-10-03  James Henstridge  <james@daa.com.au>
344
345         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
346         s/width/fixed_width/ in order to get things to compile.
347
348 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
349
350         * gtk/gtkcelleditable.c: docs
351
352         * gtk/gtktreemodel.h: more docs.
353
354 2001-10-02  Havoc Pennington  <hp@redhat.com>
355
356         * gdk/x11/gdkwindow-x11.c: docs
357
358         * tests/testtextbuffer.c (logical_motion_tests): add sentence
359         boundary tests
360
361 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
362
363         * demos/gtk-demo/Makefile.am: add editable_cells.c,
364         list_store.c and tree_store.c
365
366         * demos/gtk-demo/appwindow.c: remove tearoff item from
367         File menu, put menubar and toolbar in handle boxes.
368
369         * demos/gtk-demo/genincude.pl: various changes to support trees
370
371         * demos/gtk-demo/main.c: various changes to support trees
372
373         * demos/gtk-demo/stock_browser.c: changed name of demo
374         to Stock Item and Icon Browser, so geninclude.pl doesn't see
375         it as child
376
377         * demos/gtk-demo/editable_cells.c: new file/demo
378         * demos/gtk-demo/list_store.c: new file/demo
379         * demos/gtk-demo/tree_store.c: new file/demo
380
381 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
382
383         * gtk/gtkrc.c gtk/gtksettings.c: 
384         g_string_printfa => g_string_append_printf.
385
386 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
387
388         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
389         and destroy handler.
390
391         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
392
393         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
394         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
395         Singh <yosh@gimp.org>.
396
397 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
398
399         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
400         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
401
402         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
403
404 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
405
406         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
407         scroll_to_cell delayed code to happen in size_allocate.
408
409         * gtk/gtkstyle.c (gtk_default_draw_expander): change
410         prelight/normal arrow drawing.
411
412         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
413
414         * gtk/gtktreestore.c: refactor.
415
416 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
417
418         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
419         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
420         centers the child in relation to the to indicator height.
421
422 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
423
424         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
425         correct
426
427 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
428
429         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
430         property code using g_param_spec_int and changed from
431         g_value_get_enum to g_value_get_int instead. Probably a better way
432         to fix the problem :-)
433
434 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
435
436     * gtk/gtkcellrenderertext.c changed "weight" property type from 
437       g_param_spec_int to g_param_spec_enum.
438
439 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
440
441         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
442         fix: s/Wether/Whether/ in reorderable property description
443
444 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
445
446         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
447         start editing when you select with a keyboard.
448
449         (gtk_tree_view_button_press_event): much more graceful now.
450
451         * gtk/gtkstyle.c: Draw togglebutton better.
452
453 2001-09-26  Havoc Pennington  <hp@redhat.com>
454
455         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
456         of passing non-stock label in to gtk_dialog_new_with_buttons
457
458         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
459         debugging updates
460
461         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
462         are private
463
464         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
465         exist, fall back to mnemonic label, not plain label, bug #61184
466         
467 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
468
469         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
470         stupid and emitting the signal every time.
471
472         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
473
474 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
475
476        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
477
478        * contrib/gdk-pixbuf-xlib/Makefile.am: install
479        gdk-pixbuf-xlib-2.0.pc.
480
481 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
482
483         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
484         problem where menmonic wasn't removed properly when
485         setting a label when there already is a label.
486         Also, handle setting the tab label back to the same
487         value. (#61160, #61161)
488
489         * gtk/gtkentry.c (paste_received): Patch from 
490         Damian Ivereigh to replace selection if there is 
491         one. (#61121)
492
493 2001-09-25  Darin Adler  <darin@bentspoon.com>
494
495         * tests/.cvsignore: Ignore new test program.
496
497 2001-09-25  Havoc Pennington  <hp@redhat.com>
498
499         * gtk/gtktextview.c: fix for #50317
500         
501 2001-09-25  Havoc Pennington  <hp@redhat.com>
502
503         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
504         gtk_text_iter_can_insert
505         
506         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
507
508         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
509          (gtk_text_iter_can_insert): new function to fix #60282, should
510         also fix msw's "can paste into empty buffer" bug.
511
512         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
513         "event object,"  #59091
514
515         * gtk/gtktextbtree.c: indentation fixes
516
517         * gtk/gtktextiter.c (find_by_log_attrs): fixes
518
519 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
520
521         * configure.in: Version 1.3.9, interface age 0, binary age 0.
522
523         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
524
525         * NEWS: Updates.
526
527 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
528
529         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
530         function for drawing cursors between gtkentry/gtklabel/gtktextview.
531         Should this be public? It has a bit of an odd interface, but
532         custom editing widgets probably should be using it.
533         Function will draw with wider width for taller cursors, and
534         draws a little indicator arrow to indicate directoin for split 
535         cursors.
536
537         * gtk/gtktextview.c: Add a "cursor_color" property.
538
539         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
540         gtk_text_layout_draw().
541
542         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
543         _gtk_draw_insertion_cursor().
544
545 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
546
547         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
548         the behavior where you could turn family_set (etc) back on
549         and get back the values you had before.
550
551         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
552         g_string_ascii_up() rather than looping through the
553         string ourself.
554
555 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
556
557         * gtk/gtktreeviewcolumn.c
558         (gtk_tree_view_column_set_cell_renderer): Removed
559         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
560
561         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
562         Patch from Detlef Reichl
563
564 2001-09-25  Havoc Pennington  <hp@redhat.com>
565
566         * tests/testtextbuffer.c (line_separator_tests): Add tests for
567         line separators, addresses bug #57428
568
569 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
570
571         * gtk/gtkentry.c: Make a GtkCellEditable
572         (get_widget_window_size): Change to let it honor size_allocate
573         when a CellEditable.
574
575         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
576         editable changes.
577         (gtk_tree_view_set_cursor): Now you can set the cursor
578         horizontally, as well as start editing.
579
580         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
581         code to look more like the other check buttons.
582
583         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
584         Change the way we calculate cell size.
585
586         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
587
588         * demos/gtk-demo/sizegroup.c: Add mnemonics.
589
590         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
591         Fix logic.
592
593         * gtk/gtkcellrenderertext.c: Change to be editable.
594
595         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
596
597         * test/testtreesort.c: Fix misspelling
598
599         * test/testreecolumns.c: Add mnemonics.
600
601         * test/testreeedit.c: New test program.
602
603 2001-09-25  Havoc Pennington  <hp@pobox.com>
604
605         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
606         etc. docs about how these are not going to do what you want for 
607         the X/win32 ports. Futile attempt to avoid a FAQ...
608
609 2001-09-24  James Henstridge  <james@daa.com.au>
610
611         * gtk/gtkmarshal.list (VOID): add marshal function types.
612
613         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
614         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
615         GTK_TYPE_POINTER.
616         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
617         with no-op copy/free functions.
618
619         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
620         GtkCTreeNode get_type function.
621
622 2001-09-24  Havoc Pennington  <hp@redhat.com>
623
624         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
625         gtktextlayout.c:
626         Get rid of the newline-that-could-not-be-deleted; buffers may 
627         now be zero-length. Much easier to fix than expected, once 
628         I figured out the right way to do it. However, there are 
629         various subtle bugs introduced by this that will have to get 
630         sorted out. Please use bugzilla.
631
632 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
633
634         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
635         response back from the window manager if our size hasn't changed 
636         since we won't get a response back from the window manager;
637         there was code in there to do this, but it was in the wrong
638         place so if the hints change and the size didn't we'd expect
639         a response.
640
641         Also, optimize the position-only-changed case by running
642         the resize queue immediately, and clean up some comments
643         for the changes.
644
645 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
646
647         * gtk/gtknotebook.h: Add a compat macro that got lost.
648
649         * gtk/gtktreestore.c: Doc fixes.
650
651         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
652         leak for windows that receive events after being destroyed.
653         (#60863, Joshua N. Pritikin)
654
655         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
656         rather than gtk_container_queue_resize().
657
658         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
659         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
660         gtk_container_child_composite_name. (#60217.)
661
662 2001-09-22  Hans Breuer  <hans@breuer.org>
663
664         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
665
666 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
667
668         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
669         weight value should be an int
670
671 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
672
673         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
674         to gtk_menu_scroll_item_visible(). Only call
675         gtk_menu_scroll_item_visible() if the menu widget has been
676         realized. Fixes bug #55310.
677
678 2001-09-21  Havoc Pennington  <hp@redhat.com>
679
680         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
681         key press to IM context if cursor isn't in an editable location;
682         bug #58425, patch from Hidetoshi Tajima
683
684 2001-09-21  Havoc Pennington  <hp@redhat.com>
685
686         Bug #60862
687         
688         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
689         (_gtk_text_btree_unref): fix up mark memory management
690
691         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
692
693 2001-09-20  Havoc Pennington  <hp@redhat.com>
694
695         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
696         try to handle alignment here, because it's done by PangoLayout
697         after we set the layout width. Fix from Dov.
698
699 2001-09-21  Hans Breuer  <hans@breuer.org>
700
701         * gdk/gdk.def :
702         * gtk/gtk.def : updated externals
703
704         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
705         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
706         Also handle that Win32 pathes cann't be hard-coded      
707
708         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
709         module, themes etc directory calculations
710
711         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
712         >16 bit right. The size limit within Win9x appears _not_ to be 32767
713         but slightly smaller ...
714
715         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
716         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
717
718         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
719
720         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
721         handling. I'm not sure if it is better now, but at least not worse
722
723         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
724
725         * gdk/win32/gdkwin32.h : reflect recent API restrictions
726
727 2001-09-21  Matt Wilson  <msw@redhat.com>
728
729         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
730         radio_menu_item->group to NULL after removing it from the list, as
731         it is no longer in the group. (#60869)
732
733         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
734
735 2001-09-20  Havoc Pennington  <hp@pobox.com>
736
737         * configure.in (PANGO_REQUIRED_VERSION)
738         (ATK_REQUIRED_VERSION): add variables and checks for specific 
739         versions of dependencies. Previously we didn't verify the 
740         Pango or ATk versions.
741
742 2001-09-09  Havoc Pennington  <hp@pobox.com>
743
744         * gtk/gtktextiter.c: fool with indentation
745         (gtk_text_iter_in_range): add g_return_if_fail
746
747 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
748
749         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
750         ref count on new tag to be 1.  Update doc.  (#60836)
751
752 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
753
754         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
755         call to gdk_image_new_bitmap(). (#59094, reported by
756         by Sven Neumann)
757
758 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
759
760         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
761         day, as well as the current month and year.
762         (#59047, reported by Vitaly Tishkov)
763
764 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
765
766         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
767         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
768         
769 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
770
771         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
772
773         (build_option_menu): add func argument, connect ::changed
774         signal to option menu instead of connecting the ::activate
775         signal to the menu items,
776
777         (toplevel): get rid of RADIOMENUTOGGLED macro,
778
779         (list_toggle_sel_mode), (clist_toggle_sel_mode),
780         (ctree_toggle_line_style), (ctree_toggle_expander_style),
781         (ctree_toggle_justify), (ctree_toggle_sel_mode),
782         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
783         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
784
785         (notebook_type_changed): merged standard_notebook(),
786         notabs_notebook(), scrollable_notebook() and borderless_notebook()
787         into notebook_type_changed()
788
789         (create_list), (create_ctree), (create_notebook),
790         (create_progress_bar): changed OptionMenuItem arrays into
791         gchar * arrays. Removed "Extended" item where used.
792
793         Fixes bug #59885
794
795 2001-09-20  Sven Neumann  <sven@gimp.org>
796
797         * configure.in
798         * gdk/Makefile.am
799         * gtk/Makefile.am
800         * gtk/gtkselection.c
801         * gtk/gtktreeview.c
802         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
803
804 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
805
806         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
807         a missing pango_layout_iter_free ().
808
809 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
810
811         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
812         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
813
814         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
815         the function definition so we don't accidentally rely on
816         the compat #define from gtk_radio_menu_item_group.
817         (#60782, Jeff Franks)
818
819 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
820
821         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
822         incorrect values for top, right and bottom due to cut-and-paste
823         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
824
825 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
826
827         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
828         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
829         window, not just on the client leader. (#58463)
830
831 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
832
833         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
834
835         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
836         non-public _gtk_menu_item_set_placement.
837
838         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
839
840 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
841
842         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
843           gdk/linux-fb/gdkcolor-fb.c:
844         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
845         (#59723)
846
847 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
848
849         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
850         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
851         #59723)
852
853 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
854
855         Patch from Frank Belew #59037 for Solaris compilation.
856
857         * gtk/maketypes.awk: Change syntax slightly for a call
858         to sub(), apparently making awk on Solaris happier.
859
860         * gtk/gtktreeview.c: Remove C++ comments.
861
862 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
863
864         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
865         to handle '99% of the time. (#60473, reported by Christian Rose)
866
867         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
868         which no longer exists. (#60379, reported by Vitaly Tishkov)
869
870 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
871
872         * Released 1.3.8.
873
874         * gdk/Makefile.am: kill EXTRA_DIST clearing.
875         
876 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
877
878         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
879         as its broken in automake 1.4, add explicit object rule to
880         generate this.
881         
882         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
883         get rid of uneccessary stamps, group stuff more logically, and build
884         sources due to object rules. fix srcdir!=builddir.
885
886 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
887
888         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
889         incorrect parameter to compute_double_length
890         (#58680, patch from Matthias Clasen)
891
892         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
893
894         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
895
896         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
897         for GDK_RELEASE_MASK to avoid warnings with Forte.
898
899         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
900         break; statements.
901
902 2001-09-18  Alex Larsson  <alexl@redhat.com>
903
904         * gtk/gtkcheckbutton.c:
905         * gtk/gtkradiobutton.c:
906         Don't draw with GTK_STATE_ACTIVE.
907
908         * gtk/gtkclist.c:
909         * gtk/gtkctree.c:
910         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
911
912         * gtk/gtktextdisplay.c:
913         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
914         unfocused with base_gc [GTK_STATE_ACTIVE].
915         
916         * gtk/gtkentry.c:
917         Add select all menu-item.
918         Default cursor color is red.
919         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
920         unfocused with base_gc [GTK_STATE_ACTIVE].
921
922         * gtk/gtklabel.[ch]:
923         Add keynav + menu to selectable lables.
924         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
925         unfocused with base_gc [GTK_STATE_ACTIVE].
926
927         * gtk/gtkfilesel.c:
928         Add drag and drop support.
929
930         * gtk/gtkstyle.c:
931         (This was checked in earlier)
932         New default values for text/base SELECTED and ACTIVE
933         
934 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
935
936         * configure.in: up version to 1.3.8, interface age 0,
937         binary age 0, depend on glib 1.3.8.
938
939         * NEWS: 1.3.8 updates.
940
941 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
942
943         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
944         the editing code
945
946         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
947         reason to call it beyond emiting the two signals.
948
949         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
950         to GtkEntry.
951
952 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
953
954         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
955           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
956         PangoFontDescription.
957
958         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
959         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
960         structure.
961   
962         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
963
964         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
965         direct access to style->font. Deprecate gtk_style_ref/unref.
966   
967         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
968         Remove gtk_style_ref/unref with g_object_ref/unref.
969   
970         * gtk/gtkcalendar.c: Remove leftover macros accessing
971         style->font.
972   
973         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
974         variable.
975   
976         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
977         style->font.
978
979 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
980
981         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
982         "can_activate" properties in favor of
983         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
984         and GTK_CELL_RENDERER_MODE_EDITABLE
985
986 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
987
988         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
989         editable widgets.  This function is private, and should only be
990         used by GtkTreeView.
991
992 2001-09-18  Matt Wilson  <msw@redhat.com>
993
994         * docs/Makefile.am (EXTRA_DIST): don't use += before =
995
996         * docs/faq/Makefile.am (EXTRA_DIST): likewise
997
998         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
999         
1000         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
1001         (EXTRA_HEADERS): likewise
1002
1003         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
1004         (EXTRA_HEADERS): likewise
1005         (EXTRA_DIST): likewise
1006         (CLEANFILES): likewise
1007
1008         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
1009
1010         * tests/Makefile.am (EXTRA_DIST): likewise
1011         
1012         * Makefile.am (install-data-local): changed to use
1013         install-data-hook, which runs after install-pkgconfigDATA, so that
1014         the pkgconfigdir will have been created and populated first.
1015
1016 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
1017
1018         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
1019         be the last big GtkTreeView API change.
1020
1021         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
1022         replace with "activate" and "start_editing".  Also, added a
1023         "can_activate" and "can_edit" property.
1024
1025         * gtk/gtktreeviewcolumn.c: modify to use above.
1026
1027 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
1028
1029         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
1030
1031 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
1032
1033         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
1034         icon instead of one with ugly white background.
1035
1036 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
1037
1038         * demos/gtk-demo/stock_browser.c (id_to_macro): make
1039         the uppercasing work. (#59550)
1040
1041 2001-09-14  Jakub Steiner <jimmac@ximian.com>
1042
1043         * gtk/stock-icons/dialog_error.png:
1044         * gtk/stock-icons/dialog_question.png: more road signs
1045
1046 2001-09-13  Jakub Steiner <jimmac@ximian.com>
1047
1048         * gtk/stock-icons/dialog_question.png:
1049         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
1050           like a road sign.
1051
1052 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
1053
1054         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
1055         signals to make them more clear.  Also, change ::range_changed to
1056         ::row_changed.
1057         * gtk/gtktreemodel.c: Adjust to interface change
1058         * gtk/gtktreemodel.h: ditto
1059         * gtk/gtktreemodelsort.c: ditto
1060         * gtk/gtktreestore.c: ditto
1061         * gtk/gtkliststore.c: ditto
1062         * gtk/gtktreeview.c: ditto
1063         * tests/testtreecolumns.c: ditto
1064         * gtk/gtkmarshal.list: Actually remove a marshaller!
1065
1066 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
1067
1068         * gtk/gtktextview.c
1069         Add support for Ctrl+Up/Down arrow to move cursor to beginning
1070         of previous/next paragraph. If within a paragraph cursor moves to
1071         beginning of that paragraph.
1072
1073 2001-09-12  Jakub Steiner <jimmac@ximian.com>
1074
1075         * gtk/stock-icons/dialog_question.png: replacing the shaky
1076           question mark with a sans-serif one.
1077         * gtk/stock-icons/stock_top.png, stock_bottom.png,
1078      stock_first.png, stock_last.png: using the new style arrows
1079         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
1080      colors.
1081         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
1082      color.
1083         * gtk/stock-icons/stock_zoom*: anti-aliased
1084         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
1085      '-' with a '_', removed the wrong files
1086
1087 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
1088  
1089         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
1090  
1091         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
1092         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
1093         than in gtk-2.0/major.minor.micro/<type>/. This
1094         works better for a search path for modules.
1095  
1096         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
1097         gtk_binary_version variable holding major.minor.(micro-binary_age).
1098  
1099         * modules/input/Makefile.am (moduledir): Fix installation
1100         directory to match change in lookup location.
1101  
1102         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
1103         suffixes. Needs to be handled in g_module_build_path().
1104
1105         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
1106         appropriate.
1107  
1108 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
1109
1110         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
1111         causing RC properties not to work.
1112
1113 2001-09-11  Jakub Steiner <jimmac@ximian.com>
1114
1115         * gtk/stock-icons/dialog-error.png: less drastic
1116         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
1117           "STOP" is international enough.
1118         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
1119         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
1120
1121 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
1122
1123         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
1124         (add|remove)_selection_clipboard symmetric. (bug #59836)
1125
1126         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
1127         Avoid SEGV for empty tree. (bug #60243)
1128
1129 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
1130
1131         * tests/testgtk.c (create_idle_test): slight fix for
1132         g_object_set() not usable for nesting anymore.
1133
1134         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
1135         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
1136         properties, supply ::shadow_type properties instead as most
1137         other widgets do.
1138
1139 2001-09-10  Alex Larsson  <alexl@redhat.com>
1140
1141         * demos/gtk-demo/stock_browser.c:
1142         * gdk/gdkcolor.c:
1143         * gdk/gdkfont.c:
1144         * gdk/gdkcursor.c:
1145         * gdk/gdkevents.c:
1146         * gdk/gdkrectangle.c:
1147         * gtk/gtktypeutils.c:
1148         Update to use the new g_boxed_type_register_static API.
1149
1150 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
1151
1152         * gtk/gtktreestore.c:
1153         Fix looping in gtk_tree_store_init() waiting for zero random int.
1154
1155 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
1156
1157         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
1158         behaviour which havoc broke. they have to default to 1.0 for
1159         expand behaviour.
1160
1161         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
1162
1163 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
1164
1165         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
1166         Amend previous change to avoid runtime error in g_param_spec_ref()
1167
1168 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
1169
1170         * gtk/gtkrc.c (insert_rc_property): Fix blank line
1171         in the wrong place.
1172
1173 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
1174
1175         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
1176         do a lookup immediately after creating style->property_cache,
1177         since bsearch crashes on zero length for Solaris.
1178         (Found by Padraig O'Briain.)
1179
1180 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
1181
1182         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
1183         Really return NULL if not set.
1184         (gtk_widget_init): Remove unused varaible.
1185         
1186 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
1187
1188         * configure.in:
1189         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
1190         in cvs.
1191
1192 2001-09-08  Havoc Pennington  <hp@pobox.com>
1193
1194         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
1195         people might want to use
1196
1197 2001-09-08  Havoc Pennington  <hp@pobox.com>
1198
1199         * gtk/gtkalignment.c (gtk_alignment_class_init): default
1200         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
1201
1202         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
1203
1204         * gtk/gtktextiter.c: fix docs
1205         (gtk_text_iter_spew): get rid of this
1206
1207         * gtk/gtklayout.c: docs
1208
1209         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
1210         to center image and label together, instead of having image on
1211         left and label centered, patch/suggestion from Jacob
1212
1213         * gtk/gtkdialog.c: docs
1214
1215 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
1216
1217         * gtk/gtkliststore.c: Write documentation
1218         * gtk/gtktreestore.c: Write documentation
1219
1220 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
1221
1222         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
1223         with GArray and bsearch(), to remove dependency on a still
1224         evolving interface that we want to keep private to glib/gobject. 
1225
1226 2001-09-08  Havoc Pennington  <hp@pobox.com>
1227
1228         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
1229         docs fixes
1230
1231         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
1232
1233         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
1234
1235         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
1236
1237         * gtk/gtkscrolledwindow.h: docs fixes
1238
1239         * gtk/gtkimage.c (gtk_image_new): docs fixes
1240
1241 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
1242
1243         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
1244         false alarm  constness warning with a cast.
1245
1246         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
1247         for the inside-gdk case.
1248
1249 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
1250
1251         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
1252         remove g_print.
1253
1254         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
1255         change models, #59899
1256
1257 2001-09-07  Havoc Pennington  <hp@pobox.com>
1258
1259         * gtk/gtkmain.c: move some docs inline
1260
1261 2001-09-07  Havoc Pennington  <hp@pobox.com>
1262
1263         * gtk/gtk.h: tsk tsk, jrb broke the build
1264
1265 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
1266
1267         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
1268         Removed 'fill' attribute.  It was silly b/c that was a property of
1269         the cell renderer, anyway.
1270         (gtk_tree_view_column_render): Actually render the packed
1271         renderers.
1272         * doc/tree-column-sizing.txt: initial devel documentation.
1273         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
1274         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
1275
1276         * tests/testtreefocus.c: fix up to reflect above changes.
1277         * tests/testtreeview.c: ditto
1278         * demos/gtk-demo/stock_browser.c: ditto
1279
1280 2001-09-07  Alex Larsson  <alexl@redhat.com>
1281
1282         * gdk/linux-fb/gdkcolor-fb.c:
1283         Removed unused function.
1284         
1285         * gdk/linux-fb/gdkdrawable-fb2.c
1286         * gdk/linux-fb/gdkfont-fb.c:
1287         Use PangoLanguage functions.
1288
1289         * gdk/linux-fb/gdkinput.c:
1290         * gdk/linux-fb/gdkselection-fb.c:
1291         Fix const warnings.
1292         
1293         * gdk/linux-fb/gdkwindow-fb.c:
1294         Fix warning. Implement gdk_window_set_icon_list() and
1295         gdk_window_get_frame_extents(). (No icon support yet though.)
1296
1297         * gtk/gtkwindow.c (gtk_window_get_position):
1298         If window->frame is set get the extents of it instead.
1299         
1300 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
1301
1302         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
1303         Make the default default colormap the GdkRGB colormap,
1304         not the system colormap.
1305
1306         * gtk/gtkinvisible.c (gtk_invisible_init) 
1307           gtk/gtkwindow.c (gtk_window_init): Set the current
1308         colormap, as returned by _gtk_widget_peek_colormap()
1309         on the widget.
1310
1311         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
1312         to GTK+. Make it return %NULL instead of the default
1313         colormap if no colormap has explicitely been pushed.
1314
1315         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
1316         colormaps on ancestral widgets before defaulting the
1317         the system default colormap.
1318
1319         * docs/Changes-2.0.txt: explain colormap changes.
1320
1321 2001-09-07  Havoc Pennington  <hp@redhat.com>
1322
1323         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
1324         #57424
1325
1326 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
1327
1328         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
1329         make gdk_set_use_xshm a noop. Remove --no-xshm command line
1330         option. If we aren't autodetecting properly, we need
1331         to fix the problem, or at least make it an environment
1332         variable setting, to avoid problems with propagating
1333         to embedded children, plugins, etc.
1334
1335         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
1336
1337         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
1338         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
1339         New function to render a pixmap and mask for a particular colormap.
1340
1341         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
1342         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
1343         of internal implementation of the same.
1344
1345 2001-09-07  Havoc Pennington  <hp@redhat.com>
1346
1347         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
1348         debug code that seems to have caused a breakpoint in valid cases
1349         
1350         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
1351         pointer on the first view when adding the second view, fixes
1352         crash when closing gtk-demo text test with active selection
1353
1354         * gtk/gtktextbuffer.c
1355         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
1356         clipboards in the list of clipboards - probably fixes #59836
1357
1358 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
1359
1360       Make gdkx.h the only installed header from gdk/x11.
1361       All structures in gdk/x11 are opaque.
1362
1363         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
1364         Don't install gdk{drawable,pixmap,window}-x11.h.
1365
1366         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
1367         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
1368         GdkVisualClass into C files.
1369
1370         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
1371
1372         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
1373         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
1374         Add public functions to replace previously exported direct
1375         structure access.
1376         gdk_x11_colormap_get_{xdisplay,xcolormap} 
1377         gdk_x11_cursor_get_{xdisplay,xcursor},
1378         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
1379         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
1380         gdk_x11_gc_get_{xdisplay,ximage}
1381         
1382         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
1383         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
1384
1385       Fix a number of variables and functions that were exported
1386       "accidentally" from GDK.
1387
1388         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
1389         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
1390         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
1391         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
1392         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
1393         gdk_event_queue_find_first, gdk_event_queue_remove_link,
1394         gdk_event_queue_append, gdk_event_button_generate,
1395         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
1396
1397         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
1398            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
1399         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
1400         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
1401         gdk_use_xshm, gdk_input_ignore_core.
1402
1403         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
1404         #defines to namespace functions into the private _gdk_ 
1405         namespace.
1406
1407         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
1408         to replace gdk_parent_root exported variable. Adjust and
1409         deprecate GDK_ROOT_PARENT().
1410
1411         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
1412         GDK_ROOT_PARENT usage, remove includes of port-specific
1413         headers.
1414
1415         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
1416         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
1417         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
1418
1419         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
1420         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
1421         gdk_wm_delete_window functions, gdk_wm_take_focus, 
1422         use gdk_atom_intern() instead.
1423
1424         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
1425           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
1426           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
1427           gtk/gtkselection.c 
1428         Unexport gdk_selection_property, just use 
1429         gdk_atom_intern ("GDK_SELECTION").
1430
1431         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
1432         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
1433         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
1434         GdkVisualprivate, gdk_x11_gc_flush.
1435
1436       Make a number of public exports of variables into functions
1437       to increase encapsulation.
1438
1439         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
1440         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
1441         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
1442
1443         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
1444         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
1445         gdk_error_warnings.
1446
1447         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
1448           docs/Changes-2.0.txt: 
1449         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
1450         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
1451         Add gdk_x11_get_default_xdisplay().
1452
1453         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
1454         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
1455         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
1456         Don't export gdk_progclass, move --class command line
1457         option and handling to common portion of GDK.
1458
1459       Miscellaneous fixes:
1460
1461         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
1462         g_return_val_if_fail that should have been g_return_if_fail.
1463
1464         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
1465         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
1466
1467         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
1468         X11 dependency.
1469
1470         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
1471         Remove unused gdk_key_repeat_disable/restore.
1472
1473         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
1474         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
1475         Remove unused gdk_null_window_warnings variable.
1476
1477         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
1478         it can be retrieved from the repository; it is too far
1479         from functional to be worth having people check out;
1480         it would be easier to start from scratch, I suspect.
1481
1482         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
1483
1484         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
1485         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
1486         Fix some accidentally global variables and unused global variables.
1487
1488         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
1489         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
1490         Fix some accidentally global variables and unused global variables.
1491
1492       Add some space for future expansion to multihead.
1493
1494         * gdk/gdkdrawable.h: Add four reserved function pointers
1495         for future expansion of GdkDrawableClass.
1496
1497         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
1498         where we can put a GdkScreen * later.
1499
1500 2001-09-07  Havoc Pennington  <hp@redhat.com>
1501
1502         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
1503         adjustments after validating destination yrange; fixes #53918
1504         (This may cause other issues, but I hope it won't)
1505         
1506 2001-09-05  Havoc Pennington  <hp@redhat.com>
1507
1508         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
1509         line into start line, update the character counts in parent nodes; 
1510         caused a bug when end and start line had different parent nodes.
1511
1512 2001-08-30  Havoc Pennington  <hp@redhat.com>
1513         
1514         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
1515         assertion that tag is in a table
1516
1517 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
1518
1519         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
1520         g_strcasecmp on NULL strings. (#59058)
1521
1522 2001-09-06  Alex Larsson  <alexl@redhat.com>
1523
1524         * gtk/gtkbin.c:
1525         * gtk/gtkfontsel.c:
1526         * gtk/gtkspinbutton.c:
1527         * gtk/gtktipsquery.c:
1528         Use GtkType/GType instead of uint.
1529
1530 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
1531
1532         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
1533         sort column.
1534
1535         * gtk/gtktreestore.c (gtk_list_store_init): ditto
1536
1537         * gtk/gtktreesortable.c: add docs.
1538
1539 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
1540
1541         * Version 1.3.7
1542
1543         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
1544         docs for gtk-config
1545
1546         * modules/input/Makefile.am (install-data-local): Don't
1547         run gtk-query-immodules if DESTDIR is set.
1548
1549         * NEWS: Various additions.
1550
1551 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
1552
1553         * NEWS: updates for 1.3.7 release.
1554
1555 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
1556
1557         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
1558         handle default sort feature
1559
1560         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
1561         new function to handle default sort.
1562         (gtk_tree_sortable_has_default_sort_func): check if default sort
1563         is set.
1564
1565         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
1566         handle default sort feature
1567
1568 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
1569
1570         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
1571         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
1572         #59731
1573
1574 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1575
1576         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
1577         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
1578         time, #59727
1579
1580         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
1581         correctly.
1582
1583 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
1584
1585         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
1586         so that we don't eternally update the keymap after we
1587         get a change notification.
1588
1589         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
1590         incorrect cast.
1591
1592 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
1593
1594         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
1595         it working. It mostly works now, although there're still a few issues
1596         to be worked out.
1597
1598         * tests/testtreesort.c (main): changes to have a better test
1599         application for the GtkTreeModelSort.
1600
1601 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
1602
1603         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
1604         fix for bug #59222.
1605
1606         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
1607         gpointer search_data argument to function definition and
1608         prototype, to match GtkTreeViewSearchEqualFunc typedef.
1609
1610 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
1611
1612         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
1613         per jrb's request.
1614
1615 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
1616
1617         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
1618
1619         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
1620
1621 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1622
1623         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
1624         Instead of always mirroring the selection to a single PRIMARY
1625         selection, allow it to be mirrored to any number of clipboards.
1626
1627         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
1628         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
1629
1630         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
1631         GtkClipboard argument, and for paste_clipboard, the
1632         @override_location argument from @paste_primary.
1633
1634         * gtk/gtktextview.c: Adapt to above change.
1635         
1636 2001-08-30  Havoc Pennington  <hp@redhat.com>
1637
1638         * gtk/gtktextview.c (invalidated_handler): put validate idle at
1639         resize - 2 just for flexibility
1640
1641 2001-08-30  Havoc Pennington  <hp@redhat.com>
1642
1643         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
1644         object from the empty-child-anchor case by drawing a little box.
1645         
1646         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
1647         if the child anchor has no anchored widgets - fixes #59328.
1648
1649         Also, remove bizarre deletion of preedit string that seems to have
1650         gotten in here somehow.
1651
1652 2001-08-30  Havoc Pennington  <hp@redhat.com>
1653
1654         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
1655         to #58420 from Hidetoshi Tajima and Matthias Clasen
1656
1657 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
1658
1659         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1660         change color when the GtkTreeView loses focus.
1661
1662         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
1663         ditto.
1664         
1665         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
1666
1667 2001-08-28  Havoc Pennington  <hp@pobox.com>
1668
1669         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
1670
1671 2001-08-28  Havoc Pennington  <hp@pobox.com>
1672
1673         * demos/gtk-demo/main.c (setup_default_icon): add default icon
1674
1675         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
1676         warning fix
1677         (gtk_radio_button_new_with_label): warning fix
1678
1679         * gtk/gtkdnd.c: used some random GtkImage private structs, 
1680         update to reflect GtkImage changes
1681
1682         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
1683         whether the hint is supported, just always set the icon. A task
1684         list might want to use it even if the WM doesn't, and the WM may
1685         change over time. Also, XDeleteProperty() if list == NULL.
1686
1687         * gtk/gtkwindow.c (gtk_window_set_icon_list)
1688         (gtk_window_get_icon_list)
1689         (gtk_window_set_icon)
1690         (gtk_window_get_icon)
1691         (gtk_window_set_default_icon_list)
1692         (gtk_window_get_default_icon_list):
1693         new functions
1694
1695         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
1696
1697         * gtk/gtkimage.c: Implement property support, bug #59408
1698
1699         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
1700         on reparent-without-removing-first a bit more helpful.
1701         Let's just destroy this FAQ.
1702
1703 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
1704
1705         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
1706         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
1707
1708 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
1709
1710         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
1711         of use_text_format to the end of the function. (#56447)
1712
1713 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
1714
1715         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
1716         only in response to an area_prepared signal.
1717
1718 2001-08-28  Alex Larsson  <alexl@redhat.com>
1719
1720         * gtk/gtkwidget.c (gtk_widget_class_init):
1721         Make unrealize GTK_RUN_LAST.
1722
1723 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
1724
1725         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
1726         with_label and with_mnemonic should create radio buttons, not
1727         check buttons
1728
1729 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
1730
1731         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
1732         * tests/treestoretest.c (make_window): ditto
1733         * demos/gtk-demo/main.c (create_tree): ditto
1734         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
1735
1736 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
1737
1738         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
1739         GTK selection types rather than GtkTreeSelectionMode.
1740
1741         * docs/Changes-2.0: Add comment about selection change.
1742
1743 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
1744
1745         * gtk/gtkenums.h (GtkSelectionMode): deprecate
1746         GTK_SELECTION_EXTENDED.
1747
1748         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
1749         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
1750
1751         * gtk/gtkctree.c: ditto
1752
1753         * gtk/gtklist.c: ditto
1754
1755         * gtk/gtktree.c: ditto
1756
1757 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
1758
1759         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
1760         of typos in compat macros. (#59624, Skip Montaro)
1761
1762 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
1763
1764         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
1765         macro.
1766
1767          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
1768  
1769         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
1770         interface to be a standard setter from gtk_menu_item_right_justify.
1771         (gtk_menu_item_get_right_justified): a getter to go with the setter
1772
1773         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
1774         gtk_menu_item_right_justify.
1775
1776         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
1777         gtk_menu_item_set_right_justified.
1778  
1779 2001-08-27  Jens Finke <jens@gnome.org>
1780
1781         * gtk+.spec.in: Updated to match gpp requirements, reworked the
1782         files section to make it work with 1.3.x releases.
1783
1784 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
1785
1786         * gtk/gtkbutton.[ch]:
1787         Add properties for labels, mnemonics and stock items.
1788         Added C accessor functions for the properties.
1789         Removed deprecated button->child.
1790
1791         * gtk/gtkradiobutton.c:
1792         * gtk/gtktogglebutton.c:
1793         Update to use the functions in GtkButton.
1794
1795         * gtk/gtkcheckbutton.c:
1796         Update to use the functions in GtkButton.
1797         Changed size allocation of child. Now only gets as much
1798         space as it requests.
1799
1800         * gtk/gtkclist.c:
1801         Don't use GtkButton->child
1802
1803         * gtk/gtklabel.c:
1804         Fixed typo in docs
1805         
1806 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
1807
1808         * tests/testgtk.c:
1809         * tests/Makefile.am:
1810         Ressurect the properties test.
1811         I don't care if it is inferior, I just want to test my property code.
1812
1813 2001-08-25  Chema Celorio  <chema@celorio.com>
1814
1815         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
1816         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
1817         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
1818
1819 2001-08-24  Havoc Pennington  <hp@pobox.com>
1820
1821         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
1822         these are already in gtkmenu.h, and the copies
1823         here were broken.
1824
1825         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
1826
1827         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
1828         special-case bitmaps to allow no colormap
1829         (bitmap1): implement no-colormap bitmap-getting
1830         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
1831         alpha
1832         (rgb8): indentation
1833         (rgb1a, rgb1): change the way we read the data out of the image, 
1834         old way didn't seem to work quite right.
1835
1836         I'm pretty sure a lot of the rgbconvert code is still broken.
1837         
1838         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
1839         above position constraint (I really intended to do this before,
1840         don't know what's up with that)
1841         (gtk_XParseGeometry): shut up gcc
1842
1843         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
1844         and "0" should have been. remove the attempted 4-bytes-at-once
1845         optimization, it was totally broken.
1846
1847 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
1848
1849         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
1850         on push to buttons (based on patch from Soeren Sandmann, #54720)
1851
1852           - Add child_displacement_x/y style properties to control how far the
1853             child moves when the button is depressed.
1854
1855           - Add non-exported function _gtk_button_set_depressed to clean
1856             up the handling of the in/out shadow and separate it frmo
1857             widget->state.
1858
1859           - Lots of code cleanup and simplification of state handling
1860             for GtkButton/GtkToggleButton.
1861  
1862         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
1863         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
1864
1865 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
1866
1867         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
1868         and make gtk_image_new() take no arguments. The compiler will
1869         catch it, and it is vastly more useful than having
1870         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
1871
1872         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
1873         to add tearoff-title property (#51319, Lee Mallabone)
1874
1875 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
1876
1877         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
1878         gtk_menu_item_configure(). (#58925)
1879
1880 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
1881
1882         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
1883         "use_align" to give people the option to just make a cell visible.
1884
1885         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
1886         we were scrolling past the end of the tree.
1887
1888         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
1889         rename gtk_tree_view_column_pack_start_cell_renderer to
1890         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
1891
1892 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
1893
1894         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
1895         a stray g_object_ref() left over from gtk_object_ref/sink.
1896         (Pointed out by Josh Pritikin.)
1897
1898 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
1899
1900         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
1901         to gtk_container_get_children. Added deprecated compatibility
1902         macro. (Suggested by Vitaly Tishkov, #59051)
1903
1904         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
1905         calls.
1906
1907 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
1908
1909         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
1910         gtk_menu_bar_append/prepend/insert, forgot to do this
1911         when we deprecated gtk_menu_append/prepend/insert.
1912
1913         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
1914         compat macros.
1915
1916         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
1917         renamed by compat macro.
1918
1919         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
1920         gtk_font_selection_dialog_get_font(). (Suggested by
1921         Vitaly Tishkov, #59383)
1922
1923 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
1924
1925         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
1926         Rename from gtk_text_tag_table_size(). (#59366)
1927
1928 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
1929
1930         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
1931         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
1932         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
1933         (#59173).
1934
1935 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
1936
1937         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
1938         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
1939         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
1940
1941 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
1942
1943         [ Patch from Sebastian Wilhelmi, 52790 ]
1944
1945         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
1946
1947         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
1948         Move compatibility macros from g[dt]kcompat.h to within 
1949         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
1950
1951         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
1952
1953         * demos/Makefile.am demos/gtk-demo/Makefile.am 
1954           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
1955           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
1956
1957         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
1958                  testpixbuf.c}: Fix usages of deprecated functions.
1959
1960 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
1961
1962         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
1963         when changing models.
1964
1965 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
1966
1967         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
1968         We check the current event for modifiers rather than try to trap
1969         all presses.
1970
1971 2001-08-22  Anders Carlsson  <andersca@gnu.org>
1972
1973         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
1974         It's LIST_STORE, not LISTSTORE.
1975
1976 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
1977
1978         * gtk/gtk.h: Remove commented out gtkpacker reference.
1979
1980 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1981
1982         * configure.in (all_loaders): Add tga loader, 
1983         patch by Nicola Girardi. (#56067)
1984
1985 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
1986
1987         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
1988         a little.  More needs to be done tomorrow.
1989
1990 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
1991
1992         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
1993
1994 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
1995
1996         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
1997         reported by Kristian Rietveld <kristian@planet.nl> to handle row
1998         == NULL.
1999         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
2000         <kristian@planet.nl> to change destroy order.
2001
2002 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
2003
2004         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
2005         correct marshaller.
2006
2007 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
2008
2009         * gtk/gtkliststore.c: Fix up warnings, #58928.
2010
2011         * gtk/gtktreeselection.h: Change signal prototype, #58647
2012
2013         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
2014         #59221.
2015
2016         * gtk/gtkstyle.c: Actually prelight arrow, #50981
2017         
2018 2001-08-18  Hans Breuer  <hans@breuer.org>
2019
2020         * gdk/gdk.def : updated externals
2021
2022         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
2023         is required to get (at least) visible in entry fields. Some selections
2024         are really handled now - even on win32 - but copying via middle
2025         mouse button into a different app needs to wait ... 
2026
2027         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
2028         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
2029
2030         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
2031         handling. I'm not sure if it is better now, but at least not worse
2032
2033         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
2034         with SetWindowPos () which allows more fine-tuning backing-store wise
2035
2036         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
2037         Also changed move/resize to be more like the X version.
2038
2039         * gtk/gtk.def : updated externals
2040
2041 2001-08-19  Sven Neumann  <sven@gimp.org>
2042
2043         * gtk/gtktooltips.c
2044         * tests/testtreesort.c
2045         * tests/treestoretest.c: inserted some casts to get rid of compiler
2046         warnings.
2047
2048 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
2049
2050         * gtk/gtktreeviewcolumn.c
2051         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
2052
2053         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
2054         (_gtk_tree_view_find_node): If *node is NULL,
2055         *tree should be NULL too.
2056
2057         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
2058         column/renderers.
2059         * tests/testtreecolumns.c: ditto
2060         * tests/testtreefocus.c: ditto
2061         * tests/testtreesort.c: ditto
2062         * tests/testtreeview.c: ditto
2063         * tests/treestoretest.c: ditto
2064
2065 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
2066
2067         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
2068         signals; is_expander/is_expanded.
2069
2070         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
2071         pixbufs.
2072
2073         * gtk/gtktreeview.c: set above properties.
2074
2075 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
2076
2077         * gtk/gtkwidget.h: Really remove set_default_style().
2078
2079         * docs/Changes-2.0.txt: added a note about
2080         gtk_widget_push/pop/set_default_style.
2081
2082 2001-08-18  Havoc Pennington  <hp@pobox.com>
2083
2084         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
2085         hints_changed in addition to the other cases.
2086         (gtk_window_move_resize): include last position from configure
2087         notify in debug spew
2088
2089 2001-08-18  James Henstridge  <james@daa.com.au>
2090
2091         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
2092         second argument to the weak ref notify, cleaning up some uglyness.
2093         (gtk_accel_group_attach): remove and add the weak notifier when
2094         changing the accel groups slist.
2095         (gtk_accel_group_detach): same here.
2096
2097 2001-08-17  Darin Adler  <darin@bentspoon.com>
2098
2099         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
2100         missing parameters to utf8 functions to make it compile.
2101
2102 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
2103
2104         * gtk/gtktreeprivate.h:
2105         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
2106         (gtk_tree_view_init), (gtk_tree_view_set_property),
2107         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
2108         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
2109         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
2110         (gtk_tree_view_set_destroy_count_func),
2111         (gtk_tree_view_set_enable_search),
2112         (gtk_tree_view_get_enable_search),
2113         (gtk_tree_view_get_search_column),
2114         (gtk_tree_view_set_search_column),
2115         (gtk_tree_view_get_search_equal_func),
2116         (gtk_tree_view_set_search_equal_func),
2117         (gtk_tree_view_search_dialog_destroy),
2118         (gtk_tree_view_search_position_func),
2119         (gtk_tree_view_interactive_search),
2120         (gtk_tree_view_search_delete_event),
2121         (gtk_tree_view_search_button_press_event),
2122         (gtk_tree_view_search_key_press_event),
2123         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
2124         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
2125         * gtk/gtktreeview.h:
2126         Add heavily modified patch from Kristian Rietveld to handle
2127         interactive searching.
2128
2129 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
2130
2131         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
2132         string parameter.
2133
2134         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
2135         GtkMenuShell::selection_done, now that we have it, instead of 
2136         ::deactivate so we're not tearing the menu apart and notify
2137         the user prematurely.
2138
2139 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
2140
2141         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
2142         window, clear window->need_default_position to avoid infinite loops.
2143         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
2144
2145 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
2146
2147         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
2148         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
2149         (gtk_tree_view_set_property): don't cast possible NULL objects.
2150         (gtk_tree_view_destroy): reset the model to NULL.
2151
2152         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
2153         parent_class handler.
2154
2155 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2156
2157         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
2158
2159 2001-08-17  Anders Carlsson  <andersca@gnu.org>
2160
2161         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
2162         point numbers so that the result will be floating point.
2163
2164 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2165
2166         * tests/testgtk.c (create_handle_box): 
2167         (create_toolbar): Replace gtk_window_set_policy calls by
2168         gtk_window_set_resizable.
2169
2170 2001-08-16  Jakub Steiner <jimmac@ximian.com>
2171
2172         * gtk/stock-icons/dialog_info.png: new style bulb
2173         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
2174         * gtk/stock-icons/dialog_warning.png: need a hand?
2175         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
2176           the aa border gets chopped off ok
2177         * gtk/stock-icons/stock_colorselector.png: using the new hand
2178         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
2179           this one is for, but the old icon was butt ugly.
2180         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
2181         * gtk/stock-icons/stock*_insert_object.png: "
2182         * gtk/stock-icons/stock_index.png: using new hand icon
2183         * gtk/stock-icons/stock*_new.png: the document template being used 
2184           elsewhere too
2185         * gtk/stock-icons/stock*_print*.png: new print and print preview 
2186           icons (panel/menu)  
2187         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
2188           icons based on Tuomas' floppy image.
2189         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
2190         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
2191         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
2192         * gtk/stock-icons/stock*_undelete.png: "
2193         * gtk/stock-icons/stock_preferences.png: I have a version with a 
2194           document base if the sliders are no good.
2195         * gtk/stock-icons/stock_properties.png: properties 
2196         
2197
2198         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
2199           (tigert@ximian.com) clipboard icons
2200         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
2201         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
2202         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
2203           little bigger IMHO
2204
2205 2001-08-16  Sven Neumann  <sven@gimp.org>
2206
2207         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
2208
2209 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
2210
2211         * gtk/gtkcellrenderertext.c:
2212         Avoid warning when specifying NULL for "attributes" property
2213
2214 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2215
2216         * docs/debugging.txt: Add a warning about --enable-debug=no,
2217         some editorial changes.
2218
2219 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2220
2221         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
2222         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
2223         debugging info, remove unused debug flags. (#58330)
2224
2225 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
2226
2227         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
2228         (gtk_tree_selection_select_all): Remove strict checking for rows.
2229
2230 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2231         
2232         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
2233         Don't remove the tooltip window when the tip text changes. (#15891)
2234
2235 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
2236
2237         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
2238         $(srcdir).
2239
2240 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
2241
2242         * Makefile.am (EXTRA_DIST): Fix problem with trying to
2243         dist files from intl/, which is no longer there.
2244
2245 2001-08-11  Hans Breuer  <hans@breuer.org>
2246
2247         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
2248           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
2249           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
2250           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
2251           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
2252           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
2253
2254         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
2255           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
2256         GDK_TYPE_EVENT signals
2257
2258         * gtk/gtkalignment.c : removed 'direct allocation bug',
2259         which Tim discovered while reading the patch
2260
2261 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
2262
2263         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
2264         compat macros for push/pop/set_visual that were supposed
2265         to be added a long time ago, but got dropped. 
2266
2267 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
2268
2269         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
2270         property notifies.
2271
2272 2001-08-07  Havoc Pennington  <hp@pobox.com>
2273
2274         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
2275
2276         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
2277         some fixage is needed here, but nothing simple. Owen understands
2278         it. ;-)
2279
2280         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
2281         sizing and positioning.  Also, fix bug in compute_geometry_hints
2282         (width/height confusion for setting min size). 
2283         (gtk_window_move): new function
2284         (gtk_window_resize): new function
2285         (gtk_window_get_size): new function
2286         (gtk_window_get_position): new function
2287         (gtk_window_parse_geometry): new function
2288         
2289         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
2290         (gtk_widget_get_size_request): new function
2291         (gtk_widget_get_usize): delete, that was a short-lived function
2292         ;-)
2293         (gtk_widget_set_usize): deprecate
2294         (gtk_widget_set_uposition): deprecate, make it a trivial 
2295         gtk_window_move() wrapper
2296         (gtk_widget_class_init): remove x/y/width/height properties,
2297         add width_request height_request
2298         
2299         * demos/*: update to avoid deprecated functions
2300         
2301         * gtk/gtklayout.c: add x/y child properties
2302
2303         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
2304         uses of "gint16"
2305
2306         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
2307         sizing test
2308
2309         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
2310         configure events on toplevel windows are always in root window
2311         coordinates, following ICCCM spec that all synthetic events 
2312         are in root window coords already, while real events are 
2313         in parent window coords. Previously the code assumed that 
2314         coords of 0,0 were parent window coords, which was 
2315         really broken.
2316   
2317         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
2318         warning
2319  
2320         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
2321         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
2322         hints in gtk_window_parse_geometry()
2323  
2324         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
2325         new USER_POS USER_SIZE hints    
2326
2327 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2328
2329         * tests/prop-editor.c (properties_from_type): Use 
2330         g_object_class_list_properties to get the param specs 
2331         for a given type. (#58609)
2332
2333 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2334
2335         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
2336         free the text_aa parts. (#57549)
2337
2338 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2339
2340         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
2341         not the foreground color. (#57621)
2342
2343 2001-08-09  Alexander Larsson <alexl@redhat.com>
2344
2345         * gdk/win32/gdkfont-win32.c:
2346         Update to the new pango win32 api.
2347
2348 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
2349
2350         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
2351         COMPOUND_TEXT instead of TEXT
2352         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
2353         interpret the return value of g_string_to_compound_text()
2354         (#55152)
2355
2356 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2357
2358         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
2359         fail if iter is NULL. (#58347)
2360
2361 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2362
2363         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
2364         some off-by-one issues, fixing selection of line-ends. (#50323)
2365
2366 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2367
2368         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
2369         functions in order to make mouse operation work again in the
2370         color wheel. (#58604)
2371
2372 2001-08-07  James Henstridge  <james@daa.com.au>
2373
2374         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
2375         the accelerator when the accel object is changed.  Fixes bug
2376         #58628.
2377
2378 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
2379
2380         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
2381         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
2382         (gnome bugzilla #58202)
2383
2384 2001-08-06  Havoc Pennington  <hp@pobox.com>
2385  
2386         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
2387         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
2388         it was expecting a GdkWindow, not a GdkWindowImplX11.
2389  
2390         Also, we were getting the window rect in screen coords 
2391         and the screen rect in window coords then intersecting 
2392         them; instead, get window rect in window coords.
2393  
2394         Finally, there were codepaths that resulted in a stuck server grab
2395         (when the window was fully onscreen, or on gdk_image_new()
2396         failure); make the server ungrab thing a bit more
2397         robust/consistent.
2398
2399 2001-08-06  Sven Neumann  <sven@gimp.org>
2400
2401         * gdk/gdkpango.c (gdk_pango_context_destroy): 
2402         check if info->colormap != NULL before unref'ing it. It might have
2403         been set to NULL using gdk_pango_context_set_colormap().
2404
2405 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
2406
2407         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
2408         Fix conversion from float to int so that we don't get
2409         skew in the int => float => int roundtrip. 
2410         (#58120, reported by Vitaly Tishkov). Also fix problem
2411         where if no alpha was set, the returned alpha
2412         from (say) set_current_alpha() was returned as 1, not 65535.
2413
2414 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
2415
2416         * gtk/gtklist.c (gtk_list_clear_items): Fix
2417         problem with selecting a new focus child.
2418
2419         * gtk/gtklist.c (gtk_list_clear_items): Clear 
2420         list->undo/list_focus_child after unparenting
2421         child, since unparenting the child can result
2422         in list->last_focus_child being set. (#58024)
2423
2424         * Makefile.am (SUBDIRS): Add target specific pc
2425         files to DISTCLEANFILES.
2426
2427         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
2428         (58327, Matthias Clasen)
2429
2430 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
2431
2432         * tests/testgtk.c: Patch from Hans (with various modifications),
2433         to add the ability to use testgtk as a rough-and-ready
2434         benchmark. Try, 'testgtk --bench all:5' (if you want decent
2435         numbers, run without a window manager)
2436
2437 2001-08-04 Alexander Larsson <alexl@redhat.com>
2438
2439         * gdk/win32/gdkinput.c:
2440         Add #ifdef HAVE_WINTAB around wintab.h include.
2441
2442         * gtk/gtk.def:
2443         Removed marshals that have been moved to glib.
2444         Commented out plug and socket. They didn't compile for me 
2445         on win32.
2446
2447 2001-08-04  Hans Breuer  <hans@breuer.org>
2448
2449         * gtk/stocks-icons/makefile.msc : new file
2450         * gtk/makefile.msc.in : use it
2451
2452         * gtk/gtkstyle.c : not all platforms do provide M_PI and
2453         friends, but luckily there is G_PI
2454
2455         * gtk/gtk.def : updated
2456
2457         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
2458         windows WS_POPUP, but only those without a parent. This fixes the 
2459         mis-alignment between the selectable (temp, input only) window and 
2460         the window text of GtkLabel.
2461
2462         (gdk_window_show) : respect private->state when actually showing
2463         the window.
2464
2465         (gdk_window_set_transient_for) : Implementation from Wolfgang 
2466         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
2467         error handling. Should fix #50586.
2468
2469         * gdk/win32/gdkevents-win32.c : beautify log output
2470
2471 2001-08-04  Michael Natterer  <mitch@gimp.org>
2472
2473         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
2474         Need to show the image after adding it to the GtkImageMenuItem.
2475         This used to work without in testgtk because of the
2476         gtk_widget_show_all() at the end of the function.
2477         (Closes #54978).
2478
2479 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
2480
2481         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
2482         (gtk_notebook_set_child_property): fix finding of child's page,
2483         since we have to validly deal with labels and menus here as well.
2484         (gtk_notebook_get_child_property): fix warning.
2485         (gtk_notebook_class_init): property tab_pack is of type
2486         GTK_TYPE_PACK_TYPE (enum) not boolean.
2487         (gtk_notebook_find_child): don't always warn, we might be looking
2488         for a label or menu child.
2489         (gtk_notebook_map): fix mapping of panel.
2490
2491         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
2492         widget's mapped state, regardless of the value being set equals
2493         old settings, since things like REALIZED(parent) or MAPPED(parent)
2494         may have changed since the old value was set. make it an error to
2495         invoke this function on a toplevel widget.
2496
2497 2001-07-31  Darin Adler  <darin@bentspoon.com>
2498
2499         * gdk/gdkprivate.h:
2500         * gdk/x11/gdkx.h:
2501         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
2502
2503         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
2504         GTK_OBJECT.
2505
2506 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
2507
2508         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
2509         scoping error pointed out by matthiasc@poet.de.
2510
2511 2001-07-31  Sven Neumann  <sven@gimp.org>
2512
2513         * demos/gtk-demo/appwindow.c
2514         * demos/gtk-demo/item_factory.c
2515         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
2516
2517 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
2518
2519         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
2520         argument order for g_signal_has_handler_pending.
2521
2522 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
2523
2524         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
2525         instead of long deprecated g_scanner_stat_mode().
2526
2527 2001-07-29  Hans Breuer  <hans@breuer.org>
2528
2529         * gdk/makefile.msc : build in the backend dir after
2530         auto-generating files
2531
2532         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
2533         with code from win32-production-branch.
2534
2535         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
2536         before calling DestroyWindow, which indirectly calls 
2537         gdk_window_destroy_notify ()
2538
2539         (performance patch merged from win32-production-branch)
2540         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
2541         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
2542         R2_COPYPEN rop). It is claimed to be much faster.
2543
2544 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
2545
2546         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
2547         add an "attributes" property to the text renderer for ATK.
2548
2549 2001-07-26  Alex Larsson  <alexl@redhat.com>
2550
2551         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
2552         Initialize image->bits_per_pixel from the drawable, not from
2553         the root window.
2554
2555         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
2556         Fix cast. argument is an IMPL already.
2557
2558 2001-07-15  James Henstridge  <james@daa.com.au>
2559
2560         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
2561         (gtk_window_remove_accel_group): same here.
2562         (gtk_window_key_press_event): same here.
2563
2564         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
2565         (gtk_widget_remove_accelerator): same here.
2566         (gtk_widget_remove_accelerators): same here.
2567
2568         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
2569
2570         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
2571         instead of GtkObject.
2572
2573         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
2574         now takes GObjects.
2575
2576         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
2577         pass a GObject to gtk_accel_group_entries_from_object.
2578         (gtk_item_factory_create_item): s/accel_widget/accel_object/
2579
2580         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
2581
2582         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
2583
2584         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
2585         GObjects can have accelerators set now.  Add compatibility
2586         defines.
2587
2588         * gtk/gtkmarshal.list: add missing marshallers.
2589
2590         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
2591         accelerators on plain GObjects.  gtk_accel_group_object_destroy
2592         has been converted into a weak reference, and
2593         gtk_accel_group_delete_entries is now a destroy notify for that
2594         piece of data.
2595
2596 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
2597
2598         * gdk/gdkdraw.c: Added a check on the colormap depth to
2599         gdk_drawable_set_colormap()
2600         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
2601         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
2602         for pixmaps without visuals (more specifically, bitmaps)
2603         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
2604         doesn't set a colormap with the wrong depth
2605
2606
2607 2001-07-22  Anders Carlsson  <andersca@gnome.org>
2608
2609         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
2610         expander_height and expander_width properties with a single
2611         property, expander_size.
2612         (gtk_tree_view_init): Set the tab_offset to expander_size
2613         plus some padding.
2614         (gtk_tree_view_unrealize): Remove the expand/collapse
2615         timeout if it exists.
2616         (coords_are_over_arrow): Fix a small bug.
2617         (gtk_tree_view_motion_draw_column_motion_arrow): Use
2618         expander_size.
2619         (gtk_tree_view_draw_focus): Use "treeview" instead of
2620         "add-mode" as detail when drawing the focus.
2621         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
2622         instead of "add-mode" as detail when drawing the focus.
2623         (gtk_tree_view_deleted): If we have a node currently being
2624         expanded or collapsed, remove the timeout and set the node 
2625         to NULL.
2626         (gtk_tree_view_queue_draw_arrow): New function that just
2627         redraws the arrow of a node.
2628         (gtk_tree_view_draw_arrow): Use expander_size instead of
2629         expander_width/expander_height, also pass a different
2630         expander_style to gtk_paint_expander depending on the 
2631         state of the node being drawn.
2632         (expand_collapse_timeout): New function for expanding 
2633         or collapsing a node depending on the previous state.
2634         (gtk_tree_view_real_expand_row): Add timeout and set 
2635         correct state for node being expanded.
2636         (gtk_tree_view_real_collapse_row): Add timeout and set
2637         correct state for node being collapsed.
2638
2639         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
2640         information about the node currently being expanded or
2641         collapsed, and also a timeout id.
2642
2643         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
2644         with expander_style for draw_expander.
2645
2646         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
2647         expander_style.
2648         (create_expander_affine): New function for creating an 
2649         expander affine.
2650         (apply_affine_on_point): New function for applying an 
2651         affine to a point.
2652         (gtk_default_draw_expander): Modified to take expander_style
2653         instead of is_open, and to draw the rectangle rotated differently
2654         depending on the expander style.
2655         (gtk_paint_expander): Replace is_open with expander_style.
2656
2657         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
2658
2659         * gtk/gtkenums.h: Add expander style enum.
2660
2661 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
2662
2663         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
2664         value from gtk_tree_model_get_iter, the model might be empty.
2665
2666 2001-07-20  Hans Breuer  <hans@breuer.org>
2667
2668         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
2669         gdk/gdkinput.c like the other backends
2670
2671         * gdk/win32/gdkinput-win32.h :
2672         * gdk/win32/gdkinput.c :
2673         * gdk/win32/gdkvisual-win32.c :
2674         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
2675         GdkVisual GObjectification. UNTESTED for pen-devices because
2676         I simply have none.
2677
2678         * gdk/gdk.def :
2679         * gtk/gtk.def : updated externals
2680
2681         * gtk/gtkiconfactory.c :
2682         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
2683         before passing &error to functions to avoid strange crashes
2684         
2685         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
2686
2687         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
2688
2689         * gtk/makefile.msc.in : updated
2690
2691 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
2692
2693         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
2694         Add property support. (#51858)
2695
2696 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
2697
2698         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
2699         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
2700         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
2701
2702 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
2703
2704         * gtk/gtkcolorsel.c: Add propery support (roughly
2705         based on patch from Lee Mallabone, #51014)
2706
2707         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
2708         deprecated, since we already g_warning() on it.
2709
2710 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
2711
2712         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
2713         typo that sometimes caused selection not to work properly.
2714
2715         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
2716         entry when tabbing in. (#57743)
2717         
2718         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
2719         user drags up above or down below the entry, move
2720         to the end or the beginning of the entry. (Suggestion
2721         from Jay Cox, #50940)
2722
2723         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
2724         a current selection, then when moving by chars or
2725         words, move to the end of the selection rather than
2726         from entry->current_pos. (Suggestion from Jay Cox,
2727         #50942)
2728         
2729 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
2730
2731         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
2732         set window->decorated. (Patch from Hidetoshi Tajima,
2733         #55846)
2734
2735 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
2736
2737         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
2738         the widget/child realization/mapping invariants.
2739
2740         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
2741         gtk_widget_[get/set]_child_visible() to control
2742         whether visible children of a mapped window are
2743         mapped.
2744
2745         * docs/widget_system.txt: Updated for changes in
2746         container contract, and addition of GTK_CHILD_VISIBLE.
2747
2748         * gtk/gtkcontainer.c: Add generic map()/unmap()
2749         functions that work for almost all containers.
2750
2751         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
2752         gtk_widget_set_child_visible() where necessary.
2753
2754         * gtk/*.c: Remove excess map(), unmap(), and 
2755         realization/mapping invariant enforcing code
2756         from many containers.
2757
2758 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
2759
2760         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
2761         Get the foreground color from 'text', nor 'fg'. (#57568)
2762
2763 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
2764
2765         * gtk/*.c: Patch from Matthias Clasen to remove remove
2766         all instances of g_return_if_fail (foo != NULL); that are
2767         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
2768         since the second check catches the NULL anyways.
2769
2770 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2771
2772         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
2773         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
2774         GDK_THREADS_ENTER()/LEAVE() pairs.
2775
2776         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
2777         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
2778         pairs. (Problem found by M. Meeks)
2779
2780 2001-07-18  Darin Adler  <darin@bentspoon.com>
2781
2782         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
2783         that we don't get a g_warning message every time we register a new
2784         icon size.
2785
2786         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
2787         using pixel variable of the correct type.
2788         
2789 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
2790
2791         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
2792         so that using X functions on a GdkWindow is possible, if
2793         a little hairy.
2794
2795         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
2796         and ts_origin of a GC, so that external parties can offset/restore
2797         a GC, when using gdk_window_get_internal_paint_info().
2798
2799 2001-07-17  Darin Adler  <darin@bentspoon.com>
2800
2801         * .cvsignore: Ignore the sgml directory made by gtkdoc.
2802         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
2803         instead of the deprecated gtk_window_set_policy.
2804         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
2805         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
2806         function to get rid of warning and some code too.
2807         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
2808         missing const.
2809         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
2810         unused local.
2811         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
2812         const.
2813         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
2814         (gdk_utf8_to_compound_text): Add missing const.
2815         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
2816         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
2817         cast and get rid of an unnecessary one.
2818         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
2819         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
2820         local.
2821         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
2822         Remove unused local.
2823         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
2824         missing const.
2825         * tests/testsocket.c: (add_child): Add cast so the printf format
2826         doesn't make us implicitly depend on what integer type
2827         gtk_socket_get_id returns.
2828         * tests/testtextbuffer.c: Add missing const.
2829         * tests/testtreefocus.c: (main): Remove unused local.
2830         * tests/treestoretest.c: (iter_remove): Remove unused local.
2831         (uppercase_value): Remove unused function.
2832         (make_window): Add statement to quiet the compiler's uninitialized
2833         variable warning.
2834
2835 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
2836
2837         * gtk/gtkrange.c:
2838         (second_timeout): 
2839         (initial_timeout): 
2840         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
2841         (gtk_range_calc_layout): compute the new layout based on an
2842         adjustment->value being passed in as argument.
2843         (gtk_range_button_press): for button2 slider warps, first recalc
2844         the layout, then adjust the value. also, use update_slider_position()
2845         for adjusting the value, so we keep pixel quantisation at which we
2846         usually operate (upon motion or button releases). the reason for this
2847         is that, we can't change the adjustment upon button2 presses to a non
2848         quantised value and upon button2 release re-quantise the value since
2849         that'd alter the value even if we didn't get any motion events (causing
2850         unexpected scroll area warps upon release and/or slider pixel-jitter).
2851         (gtk_range_motion_notify): update the slider position from queried
2852         coordinates, not event coordinates.
2853
2854 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
2855
2856         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
2857         the default gc values are: width=0, CapBut, JoinMiter.
2858
2859 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
2860
2861         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
2862         into account the xpad and ypad when calculating the width and the
2863         height of the pixbuf cel.
2864
2865 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
2866
2867         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
2868         Rename to gtk_radio_menu_item_get_group(), add deprecated
2869         alias. (#57044)
2870
2871         * gtk/gtkfilesel.c: Indentation fix.
2872
2873 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
2874
2875         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
2876         Hasselmann to fix warnings in compat macros. 
2877         (#56773)
2878
2879         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
2880         stupid wrong cast added in last patch.
2881
2882 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
2883
2884         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
2885         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
2886
2887 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
2888
2889         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
2890         missing cast.
2891
2892         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
2893         NULL/FALSE return value confusion.
2894
2895         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
2896         problem when scrollbar completely fills range. (Patch
2897         from  Matthias Clasen, #57047)
2898
2899 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
2900
2901         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
2902         clean up when handling events for move-resize emulation.
2903         (Problem traced down by Matthias Clasen, #57271)
2904
2905 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
2906
2907         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
2908           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
2909           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
2910           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
2911           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
2912           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
2913           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
2914         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
2915
2916 2001-07-09  Peter Williams  <peterw@ximian.com>
2917
2918         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
2919         for when srcdir != builddir
2920
2921 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
2922
2923         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
2924         gtk_tree_model_get_iter_root.
2925
2926         * gtk/gtkliststore.c: Add a bunch of g_return statements.
2927         (gtk_list_store_iter_n_children): Fix up.
2928
2929         * gtk/gtktreestore.c: Add a bunch of g_return statements.
2930
2931 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
2932
2933         * gtk/gtkwidget.c (gtk_widget_class_init):
2934         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
2935         restore some workingness.
2936
2937         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
2938         handle of window type for input-only windows.
2939
2940 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
2941
2942         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
2943         Patch from Gregory Merchan to add 
2944         gtk_button_box_set_secondary(), which separates
2945         the child into a separate group from the normal
2946         buttons. (#56331)
2947
2948         * gtk/gtkdialog.c: Make help buttons secondary by
2949         default.
2950
2951         * gtk/gtkbbox.c: Added a child property "secondary".
2952
2953         * gtk/testgtk.c: Turn on the help button for the 
2954         color selector to check that it properly appears
2955         as secondary.
2956
2957 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
2958  
2959         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
2960         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
2961         Add gdk_set_pointer_hooks() to allow pointer-querying to
2962         be hooked by an event record/playback system like GERD.
2963         (#56914)
2964         
2965 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
2966
2967         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
2968         in the right value of initial_emission to
2969         gtk_widget_set_style_internal (#57091)
2970
2971 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
2972
2973         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
2974         Make compile.
2975
2976         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
2977         with calling gtk_widget_set_style_internal() with
2978         the old style, not the new style. (#56989)
2979
2980 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
2981
2982         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
2983           gtk/gtkwidget.c:
2984         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
2985         not GTK_WIDGET_GET_ANCESTOR ... see 
2986         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
2987         Indicate the best practice in the docs for gtk_widget_get_toplevel().
2988
2989         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
2990         so GtkPlug can give the correct signals when transforming
2991         from a child to a toplevel.
2992         
2993         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
2994         reparentation correctly.
2995
2996         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
2997         Propagate the previous_toplevel argument down properly.
2998
2999         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
3000         of wrong atr list.
3001
3002         * gtk/gtkplug.[ch]: Add an "embedded" signal.
3003
3004         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
3005         signals.
3006
3007         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
3008         functions gtk_plug_get_id(), gtk_socket_get_id(),
3009         to avoid the user having to worry about realization,
3010         and gdkx.h.
3011
3012         * tests/testsocket.c: Extend to try out the new signals
3013         and gtk_plug/socket_get_id().
3014
3015         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
3016         setting of underline attributes.
3017
3018         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
3019         DestroyNotify events from SubstructureNotifyMask
3020
3021         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
3022         Switch GDK_WINDOW_TYPE (window) as needed.
3023
3024         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
3025         allow creation of toplevel windows as children of
3026         foreign windows.
3027
3028         * gtk/gtkplug.c: Remove hacks involving changing private
3029         fields of GdkWindow.
3030
3031         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
3032         exactly the same signals and notification
3033         be emitted for local embedding as for inter-process
3034         embedding.
3035
3036 2001-07-04  James Henstridge  <james@daa.com.au>
3037
3038         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
3039
3040 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
3041
3042         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
3043         XEMBED embedding add a _XEMBED_INFO property to the
3044         client with version number and a "mapped" flags.
3045         Use the mapped flag instead of the racy MapRequestEvent
3046
3047         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
3048         code to reliably set things (when the child is a passive
3049         embedder participating in the XEMBED protocol) intead
3050         of just being a hack for embedding non-participating
3051         programs. Fix various bugs and race conditions.
3052         
3053         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
3054         work by simply making the GtkSocket the gtk parent
3055         of the GtkPlug. Set a flag in this case and make
3056         the GtkPlug work like a normal container by overriding
3057         methods such as check_resize and "chaining past" GtkWindow
3058         to GtkBin.
3059
3060         * gtk/gtkentry.c (gtk_entry_real_activate)
3061           gtk/gtkmain.c (gtk_propagate_event): 
3062         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
3063         
3064         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
3065         gtk_widget_get_ancestor):
3066         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
3067         might not give the expected result and recommend
3068         an alternative.
3069
3070         * tests/testsocket.c tests/testsocket_child.c
3071         tests/testsocket_common.c tests/Makefile.am: Extended
3072         to test different type of adding plugs to sockets
3073         (local,active,passive), and to test mapping/unmapping
3074         the plug.
3075
3076         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
3077         mark the window as destroyed until after we
3078         called _gdk_windowing_window_destroy().
3079         (_gdk_windowing_window_destroy() may use GDK functions
3080         on the window.)
3081
3082         * gdk/x11/gdkinput.c: Remove the check for finalization - 
3083         devices can be finalized under some circumnstances.
3084  
3085         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
3086         small problem with GDK_TYPE_DEVICE.
3087  
3088 2001-07-02  Havoc Pennington  <hp@pobox.com>
3089
3090         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
3091         use constants not atoms.
3092
3093 2001-07-02  James Henstridge  <james@daa.com.au>
3094
3095         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
3096         PANGO_TYPE_TAB_ARRAY.
3097
3098         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
3099         for PANGO_TYPE_TAB_ARRAY.
3100
3101         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
3102         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
3103
3104         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
3105         the file.  Remove Pango types from defs -- they are now defined in
3106         libpango.
3107
3108 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
3109
3110         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
3111
3112         * gtk/gtkobject.c (gtk_object_destroy): invoke
3113         g_object_run_dispose().
3114
3115         * gtk/gtkwindow.c: 
3116         * gtk/gtkwidget.c: 
3117         * gtk/gtkobject.c:
3118         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
3119         method.
3120
3121 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
3122
3123         * gtk/gtktypeutils.c (gtk_type_class): Remove
3124         change check for GTK_TYPE_OBJECT derivation to
3125         G_TYPE_OBJECTS - it's Tim-approved to use this 
3126         for arbitary objects.
3127
3128         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
3129         prefix gtk_container_dequeue_resize_handler().
3130
3131         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
3132         to the hierarachy_changed signal, since you otherwise
3133         have to always keep that around.
3134
3135         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
3136         for extra argument to hierarchy_changed.
3137
3138 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
3139
3140         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
3141         for style to mean "revert to default style"
3142
3143         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
3144           gtk_widget_restore_default_style): Make this functions
3145         deprecated aliases for gtk_widget_set_style (widget, NULL).
3146
3147         * gtk/gtkwidget.[ch]: Remove:
3148            gtk_widget_set_default_style ()
3149            gtk_widget_push_style ()
3150            gtk_widget_pop_style ()
3151         These functions interact are overriden by RC files, and
3152         thus virtually useless, and complicated.
3153
3154 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
3155
3156         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
3157         most of the previous global variables in gtkrc.c. This is
3158         in preparation for multi-head, since each screen can
3159         have different GtkSettings and RC information.
3160
3161         * gtk/gtkrc.[ch]: 
3162
3163         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
3164         GtkSettings parameter to GtkRcStyle::parse.
3165
3166         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
3167         Add two new settings gtk-theme-name, gtk-key-theme-name,
3168         for RC files that are loaded by name after reading
3169         the default RC files.
3170         
3171         * gtk/gtkrc.c: Allow priorities for styles, as wll as
3172         bindings.
3173
3174         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
3175         and use it by default for RC files loaded via 
3176         gtk-theme-name, gtk-key-theme-name.
3177
3178         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
3179         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
3180         tests/testgtkrc: Require pathnames to be absolute.
3181
3182         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
3183         the source when parsing, since the operation of looking up a
3184         pixmap from an RC file depends on the parsing context.
3185
3186         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
3187         reset RC styles on all widgets when files are reparsed.
3188
3189         * tests/testgtk.c (create_rc_file) 
3190           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
3191         Simplify, now that gtk_rc_reparse_all() resets styles on
3192         all widgets itself.
3193
3194         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
3195         return value.
3196
3197         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
3198         GtkSettings argument.
3199
3200         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
3201         gtk_settings_get_global().
3202
3203         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
3204         to get the appropriate GtkSettings for a widget. (For now,
3205         just gets the default GtkSetttings.) 
3206
3207         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
3208           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
3209         changes.
3210
3211         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
3212         getting a style for a path without actually having a widget.
3213         (Allows using a style for a subpart of a widget, for
3214         example.)
3215
3216         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
3217         the RC files to be reloaded for just one GtkSettings
3218         (not sure how useful this really is.)
3219
3220         * gtk/gtkrc.h: Deprecate
3221         gtk_rc_add_widget_name/widget_class/class_style
3222
3223 2001-06-30  Alex Larsson  <alexl@redhat.com>
3224
3225         * gdk/linux-fb/gdkinput-none.c:
3226         * gdk/linux-fb/gdkinput.c:
3227         * gdk/linux-fb/gdkinputprivate.h:
3228         Convert GdkDevice to a GObject.
3229
3230         * linux-fb/gdkprivate-fb.h:
3231         * linux-fb/gdkvisual-fb.c:
3232         Convert GdkVisual to a GObject.
3233
3234 2001-06-29  Alex Larsson  <alexl@redhat.com>
3235
3236         * gdk/gdkvisual.h:
3237         * gdk/gdkcolor.c:
3238         * gdk/x11/gdkx.h:
3239         * gdk/x11/gdkvisual-x11.c:
3240         Convert GdkVisual to a GObject.
3241
3242         * gdk/gdkinput.h:
3243         * gdk/gdkevents.c:
3244         * gdk/x11/gdkinputprivate.h:
3245         * gdk/x11/gdkinput-gxi.c:
3246         * gdk/x11/gdkinput-none.c:
3247         * gdk/x11/gdkinput-x11.c:
3248         * gdk/x11/gdkinput-xfree.c:
3249         * gdk/x11/gdkinput.c:
3250         Convert GdkDevice to a GObject.
3251
3252 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
3253
3254         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
3255         to just plain new, fixing the number of columns, and column types
3256         at creation time.
3257
3258         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
3259
3260         * gtk/gtkcellrenderertext.c
3261         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
3262         height to a specific font.
3263
3264         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
3265
3266         * tests/*c: change to work with new store models.
3267
3268 2001-06-29  Havoc Pennington  <hp@redhat.com>
3269
3270        * Throughout: fixes to compile with G_DISABLE_COMPAT
3271         (s/g_signal_connectc/g_signal_connect/,
3272         s/g_signal_newc/g_signal_new/,
3273         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
3274
3275 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
3276
3277         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
3278         add path argument to selection callbacks.
3279
3280 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
3281
3282         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
3283         walk through a model in a depth first manner, with the option to
3284         break out.
3285
3286 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
3287
3288         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
3289         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
3290         column and follow it when draged, rather than a location in the
3291         view. "expander_column" property and drawing functions changed
3292         accordingly.  Fixes bug #55942.
3293
3294         (gtk_tree_view_{set,get}_expander_column): Now works with a
3295         GtkTreeViewColumn* instead of int.
3296
3297 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
3298
3299         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
3300
3301 2001-06-28  Havoc Pennington  <hp@pobox.com>
3302
3303         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
3304         image data to the screen, using a server grab to avoid race
3305         conditions.
3306
3307         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
3308         check for NULL return from gtk_image_new_from_stock(), it never
3309         returns NULL.
3310         (gtk_item_factory_create_item): fix bug where we parsed the stock
3311         ID as an inline pixbuf
3312
3313         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
3314
3315         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
3316         support (should be using binding set here)
3317
3318         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
3319         support (should be using binding set here)
3320
3321         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
3322         support
3323
3324         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
3325
3326         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
3327
3328         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
3329
3330         * gtk/gtkimcontextsimple.c
3331         (gtk_im_context_simple_filter_keypress): keypad
3332
3333         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
3334
3335         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
3336
3337         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
3338
3339         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
3340         should be binding-setted)
3341
3342         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
3343
3344         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
3345
3346         * gtk/gtkcalendar.c: numeric keypad fixes
3347
3348         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
3349         support
3350
3351         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
3352         screwup
3353
3354         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
3355         clip the render area to the drawable's clip region in advance,
3356         so we don't get data from the server that we don't need.
3357
3358         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
3359         check return value of gdk_pixbuf_get_from_drawable(), fall back 
3360         to bilevel alpha if we can't get the pixbuf to composite against.
3361
3362         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
3363
3364         * gdk/gdkimage.c (gdk_image_get_colormap): add
3365         gdk_image_set_colormap, gdk_image_get_colormap
3366
3367         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
3368         take a region of the image, instead of converting the entire
3369         image.
3370
3371         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
3372         keybinding signal. Add default bindings for it. Add default
3373         handler for show_help that shows the tooltip for the widget.
3374
3375         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
3376         "close" keybinding signal, remove key press handler.
3377
3378         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
3379         it's not our usual practice to leave a deprecated function around
3380         with a runtime warning, plus we don't want it to appear in docs,
3381         plus if we make them yellow no one will want to change them
3382         anyhow.
3383
3384 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
3385
3386         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
3387         GTK_WIDGET_REALIZE() for resize queueing.
3388
3389         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
3390         GTK_WIDGET_REALIZE() for post event delivery destruction upon
3391         GDK_DESTROY.
3392         
3393         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
3394         sompensate for former (pre-2.0) connect_after() facility.
3395         (gtk_widget_send_expose): 
3396         (gtk_widget_event): assert the widget is realized, since event delivery
3397         to non-realized widgets is essentially a bug. event handlers should
3398         be able to unconditionally rely on widget->window (unless they
3399         emit events on their own which can trigger widget destruction).
3400         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
3401         logic. event delivery happens as follows:
3402         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
3403         b) if !was_handled in (a) and the widget is still realized, emit event-
3404            specific signal (RUN_LAST handler). returns was_handled.
3405         c) emission of GtkWidget::event-after for notification if the widget is
3406            still realized (regardless of was_handled from previous stages, no
3407            class handler). no return value.
3408         d) was_handled gets passed on to caller, to determine further
3409            propagation. if the widget got unrealized meanwhile, was_handled
3410            is returned as TRUE.
3411
3412         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
3413         gdk_event_get_coords().
3414
3415 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
3416
3417         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
3418         age 0, binary age 0. depend on glib 1.3.7.
3419
3420         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
3421
3422         * gtk/gtkmenubar.c: same here.
3423         
3424         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
3425
3426         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
3427
3428         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
3429         
3430         * gtk/gtkmenubar.c (add_to_window): likewise.
3431         
3432         * gtk/gtktextbtree.c: and here...
3433         
3434         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
3435         
3436         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
3437         
3438         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
3439         
3440         * gtk/gtktreeviewcolumn.c:
3441         (_gtk_tree_view_column_set_tree_view): yet again.
3442
3443         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
3444         signal connections without g_signal_connect_data().
3445         
3446         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
3447         demo of the matter.
3448         
3449         * demos/testpixbuf.c (main): running out of equality phrases for the
3450         ChangeLog, but had to adapt connections here as well.
3451         
3452         * demos/testanimation.c (progressive_timeout): and for the fun of it,
3453         tackled this the same way.
3454         
3455         * tests/testtext.c (create_view): ok, it's becoming a pain at this
3456         point, but had enough enery for one more fix.
3457
3458         * tests/testtreecolumns.c (main): stand up man, do your work!
3459
3460         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
3461         fix, either that's been all of it or CVS gtk is broken yet again.
3462         
3463 2001-06-29  James Henstridge  <james@daa.com.au>
3464
3465         The following changes correspond to bug #56812
3466
3467         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
3468         code for GdkDevice.
3469
3470         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
3471         GdkCursor.
3472
3473 2001-06-19  Havoc Pennington  <hp@pobox.com>
3474
3475         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
3476         for mapping a window without fooling with stacking order, but
3477         updating the "withdrawn" flag
3478
3479         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
3480         filtering as soon as possible, moving move resize and wmspec_check
3481         handling after the event filter.  Make default filter apply to all
3482         events, not just those with no GdkWindow wrapped around the X
3483         window. Fix a FIXME about how the window could be a pixmap using 
3484         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
3485
3486         Also, be robust against events not on a known GdkWindow.
3487
3488         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
3489         gdk_x11_ungrab_server): export reference-counted server grabs, so
3490         other people can grab server over a GDK function that also does
3491         so.
3492
3493 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
3494
3495         * gtk/gtktreeviewcolumn.c
3496         (gtk_tree_view_column_pack_start_cell_renderer): New function to
3497         reflect that you can (hypothetically) pack cell renderers into a
3498         column.
3499         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
3500         (gtk_tree_view_column_cell_is_visible): Move more functionality to
3501         the column.
3502         (gtk_tree_view_column_cell_can_focus): Move more functionality to
3503         the column.
3504
3505         * gtk/gtktreeview.c: Move to use new column-packing code.
3506         (gtk_tree_view_real_expand_row): remove totally braindead code.
3507         (gtk_tree_view_real_collapse_row): ditto.
3508
3509 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
3510
3511         * gtk/gtktreeviewcolumn.c: Fix a typo.
3512         
3513 2001-06-26  Joel Becker  <jlbec@evilplan.org>
3514
3515         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
3516           at the end of the file
3517
3518 2001-06-26  Havoc Pennington  <hp@redhat.com>
3519
3520         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
3521
3522 2001-06-26  Havoc Pennington  <hp@redhat.com>
3523
3524         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
3525         property
3526
3527 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
3528
3529         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
3530         stupid missing statement
3531
3532         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
3533         private function for ATK.  It notifies you of how many _visible_
3534         children are deleted when a node is deleted.  Should be used by
3535         atk only.
3536
3537 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
3538
3539         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
3540         Use new pango_context_get_metrics() to fix problems
3541         with font lists in descriptions. (#56184, reported by
3542         Jonas Borgström)
3543
3544 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
3545
3546         * gtk/gtkiconfactory.c:
3547         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
3548         item factory so inlined pixbufs actually work.
3549
3550 2001-06-25  Havoc Pennington  <hp@redhat.com>
3551
3552         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
3553         s/RESIZEABLE/RESIZABLE/
3554
3555         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
3556
3557 2001-06-25  Alexander Larsson  <alexl@redhat.com>
3558
3559         * configure.in:
3560         Added --enable-fbmanager. This is some experimental code
3561         that lets several GtkFB apps coordinate their access to the
3562         framebuffer.
3563         
3564         * acconfig.h:
3565         Added ENABLE_FB_MANAGER.
3566
3567         * gdk/linux-fb/Makefile.am:
3568         Added gdkfbmanager and gdkfbswitch.
3569
3570         * gdk/linux-fb/gdkkeyboard-fb.c:
3571         * gdk/linux-fb/gdkmouse-fb.c:
3572         * gdk/linux-fb/gdkprivate-fb.h:
3573         Split device init and open so that
3574         they can be opened and closed while switched
3575         away.
3576
3577         * gdk/linux-fb/gdkmain-fb.c:
3578         Add the basic manager communication.
3579
3580         * gdk/linux-fb/gdkrender-fb.c:
3581         Don't update to the shadow fb if we're
3582         blocked by the fb manager.
3583
3584 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
3585
3586         * docs/Changes-2.0.txt: Add note about child property
3587         changes.
3588
3589 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
3590
3591         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
3592         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
3593
3594         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
3595         with un'reffing wrong list reported by Jeff Franks.
3596
3597         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
3598
3599         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
3600         for the default icon. Remove inline XPM.
3601
3602         * gtk/gtkstock.h gtk/gtkiconfactory.c:
3603         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
3604         is used for GTK_STOCK_DND, but it is a bit too small.)
3605
3606         * gtk/stock-icons/stock_dnd_multiple.png
3607         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
3608
3609         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
3610         TRUE when starting a drag. In other cases, we are
3611         just observing. (#52995)
3612
3613         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
3614         function to set the icon for a drag from a GdkPixbuf
3615         or stock ID.
3616
3617         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
3618         Likewise, for drag sources.
3619
3620         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
3621         (Now should be done using the stock system.)
3622
3623 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
3624
3625         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
3626         Removed - didn't work and not particularly useful anyways
3627         if it did. 
3628
3629 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
3630
3631         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
3632         introduced last night that was making things decidedly not work.
3633
3634         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
3635         so that we have getter/setter pairing everywhere it makes
3636         sense. (#55767)
3637
3638         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
3639         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
3640         deprecated compat macro. (#55516)
3641
3642         * gtk/gtklabel.[ch]: Add functions
3643         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
3644         gtk_label_set_label(), which mirror the property API for GtkLabel.
3645         Make gtk_label_get_attributes() only reflect the attributes
3646         set by gtk_label_set_attributes.
3647
3648         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
3649         from gtk_notebook_set_page().
3650
3651 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
3652
3653         * configure.in: Fix tests for XShm.h.
3654
3655         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
3656         gdk_image_new() by use of goto, properly use g_object_unref().
3657
3658 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
3659
3660         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
3661         calls, as GdkImage is an object. these should be g_obejct_unref()
3662         instead but that won't work because of the g_error() statement
3663         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
3664         to spot these places.
3665
3666 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
3667
3668         * modules/input/gtkimcontextxim.c: Fixup some problems with 
3669         text length handling in error cases.
3670
3671         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
3672         a bit to make test actually warn on attempt to allocation
3673         a negative size. (#56101, Matthias Clasen)
3674
3675 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
3676
3677         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3678         noticed by Brian Cameron.
3679         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
3680         Cameron.
3681
3682 2001-06-22  Hans Breuer  <hans@breuer.org>
3683
3684         * gdk/gdk.def : updated externals
3685
3686         * gdk/win32/gdkdrawable-win32.c : corrected some casts
3687         in GDK_NOTEs
3688
3689         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
3690         to translate coordinates to the internal > 16 bit system
3691         Try to handle WM_WINDOWPOSCHANGED to get better performance for
3692         when moving/resizing
3693
3694         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
3695         and gdk_keymap_get_direction (). The latter is untested for
3696         the RTL case
3697
3698         * gtk/gtk.def : updated externals
3699
3700         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
3701         from pango_language_from_string (), not an already freed pointer
3702
3703         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
3704         binary (-kb) to be useable on windoze
3705  
3706 2001-06-21  Alexander Larsson  <alexl@redhat.com>
3707
3708         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
3709         Update to new PangoLanguage changes.
3710         
3711         * gtk/gtkwindow-decorate.c:
3712         * gtk/gtkwindow.[ch]:
3713         Added setting argument to gtk_window_set_has_frame ()
3714         
3715 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
3716
3717         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
3718         the case without XKB properly.
3719
3720         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
3721         unused gtk_rc_auto_parse variable.
3722
3723         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
3724         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
3725         longer needed with GdkPixbuf.
3726
3727         * gtk/gtkrc.c (_gtk_rc_init): Make private.
3728
3729 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
3730
3731         * gtk/gtkentry.h: Mark deprecated functions with
3732         GTK_DISABLE_DEPRECATED.
3733
3734 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
3735
3736         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
3737
3738         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
3739
3740         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
3741           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
3742           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
3743           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
3744           to recent changes in Pango.
3745
3746         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
3747           to test whether the basic engine honors them.
3748
3749 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
3750
3751         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
3752         gtk_container_child_get_property().
3753
3754 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
3755
3756         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
3757         (gtk_tree_view_move_cursor_page_up_down): implement.
3758
3759 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
3760
3761         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
3762         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
3763         don't use automatic fixed size buffer for printf-ing floats, doubles
3764         can expand to really _huge_ strings, use g_strdup_printf() instead.
3765
3766 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
3767
3768         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
3769         construct property in 1.2 and still needs to be.
3770
3771         * gtk/gtkwidget.c: "composite_child" is not a settable property.
3772
3773 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
3774
3775         * gtk/gtkliststore.c (gtk_list_store_clear): 
3776         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
3777         clear a model.
3778
3779 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
3780
3781         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
3782
3783         * gtk/Makefile.am:
3784         * gtk/gtk.h: disabled GtkPacker compilation.
3785
3786         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
3787
3788         * gtk/gtknotebook.c:
3789         * gtk/gtktable.c:
3790         * gtk/gtkbox.c: ported this over to child properties.
3791
3792         * gtk/gtksettings.c: fetch class properties via
3793         g_object_class_list_properties().
3794
3795         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
3796         child arg interface. use gobjectnotifyqueue.c for child property
3797         notification.
3798
3799         * gtk/gtkwidget.[hc]: provide necessary means for container child
3800         properties, i.e. ::child_notify signal,
3801         gtk_widget_freeze_child_notify(),
3802         gtk_widget_child_notify(),
3803         gtk_widget_thaw_child_notify().
3804
3805         * tests/testgtk.c: removed inferior property handling code, for
3806         property editing, a generic module should be used, and GLE
3807         coincidentally fullfills that purpose.
3808
3809         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
3810         needs to be adapted to g_object_class_list_properties() before this
3811         builds again.
3812
3813 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
3814
3815         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
3816         test if a node is expanded.
3817
3818 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
3819
3820         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3821         where collapsing a selected row would result in the cursor/anchor
3822         getting screwed up.
3823
3824 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
3825
3826         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
3827         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
3828         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
3829         Now I can really reorder/sort all Store widgets.  treesorttest
3830         seems to just work now.
3831         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
3832         testtreesort worked through a big coincidence all this time.
3833         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
3834         code.
3835         * tests/testtreecolumns.c: Big 'ol warning at the top letting
3836         people know that this code should never ever ever be copied.
3837
3838 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
3839
3840         * gtk/gtkwindow.h: Fixed a small typo, it should be
3841         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
3842         on line 134.
3843
3844 2001-06-14  Havoc Pennington  <hp@redhat.com>
3845
3846         Docs fixups, and:
3847         
3848         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
3849         GTK_DISABLE_DEPRECATED
3850
3851 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
3852
3853         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
3854         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
3855         finish it off tonight, though it basically works now when it's a
3856         list.  Also, I have a sinking feeling neither GtkTreeStore or
3857         GtkListStore actually resort when adding a new item.  I'll look
3858         into it.
3859
3860 2001-06-14  Havoc Pennington  <hp@redhat.com>
3861
3862         * demos/gtk-demo/main.c (load_file): fix bug identified by
3863         warnings I just added to gtktextbuffer
3864
3865 2001-06-14  Havoc Pennington  <hp@redhat.com>
3866
3867         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
3868
3869         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
3870
3871         * gtk/gtktextbtree.c: don't leak node data all over the place.
3872
3873         * demos/gtk-demo/main.c (main): create fontify tags for the right
3874         buffer
3875
3876         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
3877         to mention tags in the same table can't have the same name,
3878         suggested by Skip Montanaro
3879
3880 2001-06-11  Havoc Pennington  <hp@redhat.com>
3881
3882         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
3883         for trying to add two tags with same name to the tag table
3884
3885         * demos/gtk-demo/main.c (main): fix colors ;-)
3886
3887 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
3888
3889         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
3890         that allows grouping together multiple windows so that grabs
3891         within that set of windows only affect those windows.
3892
3893         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
3894         signal for notification when a widget becomes shadowed
3895         by a grab or is no longer shadowed by a grab.
3896
3897         * gtk/gtkwidget.c (gtk_widget_propagate_state)
3898           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
3899         insenstive widgets to maintain a grab.
3900
3901 2001-06-14  Alexander Larsson  <alexl@redhat.com>
3902
3903         * docs/README.linux-fb:
3904         Add some example config files that can be used with the URW fonts.
3905         
3906         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
3907         Set up the color ramps for DirectColor mode.
3908
3909 2001-06-11  Havoc Pennington  <hp@redhat.com>
3910
3911         * Release 1.3.6
3912          
3913 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3914
3915         * gdk/linux-fb/gdkwindow-fb.c:
3916         Unify shaped window code and make it repaint the area that used
3917         to be part of the shape, but isn't anymore.
3918
3919 2001-06-11  Havoc Pennington  <hp@redhat.com>
3920
3921         * NEWS: Updates
3922
3923         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
3924
3925         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
3926         
3927 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3928
3929         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
3930         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
3931         passes zero instead, so do we.
3932         
3933 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3934
3935         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3936         Deep copy dash_list too.
3937         (_gdk_fb_gc_new): Set default cap_style before
3938         setting values.
3939
3940 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
3941
3942         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
3943         gdk_keymap_get_direction): New functions.
3944
3945 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
3946
3947         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
3948         gtk_tree_model_get_flags by adding a second flag for atk.
3949
3950         * gtk/gtktreemodel.c: make cursor behavior interact better with
3951         mouse presses.
3952
3953 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
3954
3955         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
3956         expand_row/collapse_row to be 2 signals each -- test_expand_row
3957         and row_expanded as well as test_collapse_row and row_collapsed.
3958
3959 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
3960
3961         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
3962         signal name to be changed instead of selection_changed.
3963
3964 2001-06-08  Havoc Pennington  <hp@redhat.com>
3965
3966         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
3967         "scroll_offset" property for notification when the layout offsets
3968         may have changed
3969         (gtk_entry_adjust_scroll): add notify for scroll_offset
3970         (gtk_entry_layout_index_to_text_index): function to compensate for
3971         preedit string when doing coordinate stuff on the entry's layout
3972         (gtk_entry_text_index_to_layout_index): inverse function
3973         (gtk_entry_get_layout_offsets): hook to get current position of
3974         the layout      
3975         (gtk_entry_get_layout): hook to get the layout itself.
3976
3977         * gtk/gtklabel.c (gtk_label_get_layout): new function
3978
3979 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
3980
3981         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
3982         keybinding.
3983         (gtk_tree_view_focus): Fix merge conflict.
3984
3985 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
3986
3987         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
3988         clean up cursor handling.
3989
3990 2001-06-08  Havoc Pennington  <hp@redhat.com>
3991
3992         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
3993         function
3994
3995         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
3996         this function
3997
3998 2001-06-08  Alex Larsson  <alexl@redhat.com>
3999
4000         * gtk/gtkcompat.h.in:
4001         Added compat macros for all old GTK_TYPE_GDK_xxx types.
4002         Fixes bug #52892
4003
4004 2001-06-08  Havoc Pennington  <hp@redhat.com>
4005         
4006         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
4007         parent still
4008
4009 2001-06-08  Havoc Pennington  <hp@redhat.com>
4010
4011         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
4012         don't call g_list funcs on GSList
4013
4014         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
4015         gtk_container_focus(), since some widgets have focusable locations
4016         which are not other widgets. These widgets should not have to be 
4017         containers just to manage the focus. For example, GtkHSV is
4018         currently a container for no good reason. Also, this cleans
4019         up the "if (is_container && is_sensitive && is_drawable)
4020         container_focus ()" mess in widget implementations.
4021
4022         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
4023         function, and have it just call gtk_widget_child_focus().
4024
4025         * gtk/gtkhsv.c: derive from widget not container
4026         
4027         Throughout: fix to reflect GtkContainer::focus change
4028         
4029 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
4030
4031         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
4032         range.  Fix bug #55921
4033
4034         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
4035         (#55920).
4036
4037 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
4038
4039         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
4040         and gdk_keymap_get_current_direction().
4041
4042         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
4043           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
4044         the current locked group, use it to set the keymap
4045         direction.
4046
4047         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
4048         to determine whether we draw a split cursor or use
4049         a jumping cursor based on the current direction.
4050
4051         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
4052         Obey the split cursor setting. 
4053
4054 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
4055
4056         * gtk/gtkimmulticontext.c (activate_cb): Only activate
4057         when toggling on, not when toggling off... (#55906)
4058
4059 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
4060
4061         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
4062         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
4063         in docs. (#55812, Vitaly Tishkov)
4064
4065 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
4066
4067         * demos/gtk-demo/main.c (create_tree): Changed signal name from
4068         selection_changed to changed in signal connection to GtkTreeSelection,
4069         also used g_signal_connectc since GtkTreeSelection is now a GObject.
4070
4071 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
4072
4073         * gtk/gtktreeselection.c: Now it's a GObject instead of a
4074         GtkObject.  The GtkTreeSelection::selection_changed signal is now
4075         the GtkTreeSelection::changed signal.
4076
4077         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
4078         object.
4079
4080         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
4081         object.
4082
4083 2001-06-07  Havoc Pennington  <hp@redhat.com>
4084
4085         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
4086
4087 2001-06-07  Havoc Pennington  <hp@redhat.com>
4088         
4089         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
4090         (not tested yet because with absolute path to srcdir I can't build
4091         atk, but it was broken anyway so this may help) 
4092
4093 2001-06-07  Havoc Pennington  <hp@redhat.com>
4094
4095         * configure.in: output m4macros/Makefile
4096         
4097 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
4098
4099         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
4100         buttons.  Fixes #55460 reported by matthiasc@poet.de.
4101
4102 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
4103
4104         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
4105         expansion/collapsing so it only happens in one place.
4106         (gtk_tree_view_real_expand_row): ditto.
4107
4108 2001-06-07  Havoc Pennington  <hp@redhat.com>
4109
4110         * tests/Makefile.am: add missing -I flag
4111
4112         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
4113
4114         * configure.in: use pkg-config to see if GModule is
4115         supported; fix to properly turn on included loaders 
4116         when GModule isn't supported; don't use AC_CHECK_LIB 
4117         when libs are not installed yet
4118
4119         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
4120
4121         * Makefile.am (SUBDIRS): add m4macros subdir
4122
4123         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
4124         dependencies also.
4125
4126 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
4127
4128         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
4129         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
4130
4131 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
4132
4133         * gtk/gtktreeview.c
4134         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
4135         bindings to expand and collapse rows.
4136         (gtk_tree_view_real_select_cursor_parent): New key binding.
4137         (gtk_tree_view_real_toggle_cursor_row): New key binding.
4138
4139         * gtk/gtkmarshal.list: new
4140         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
4141
4142 2001-06-06  Havoc Pennington  <hp@redhat.com>
4143
4144         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
4145
4146         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
4147         Down to move visually rather than logically, since it confuses 
4148         people. Add -/+ and Ctrl--/+ bindings for logical movement.
4149
4150 2001-06-06  Alex Larsson  <alexl@redhat.com>
4151
4152         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4153         Fix up error messages.
4154
4155 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
4156
4157         * gtk/gtktooltips.h: Include gtkwidget.h 
4158         (#55798, Karl Nelson)
4159
4160         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
4161         a valid latin-1 character. (Marc Lehmann, #35467)
4162
4163         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
4164         (Marc Lehmann, #35467)
4165         
4166 2001-06-05  Alex Larsson  <alexl@redhat.com>
4167
4168         * demos/gtk-demo/appwindow.c (do_appwindow):
4169         Don't swap the order of the args to gtk_widget_destroyed.
4170
4171         * tests/testgtk.c (destroy_properties):
4172         Don't crash when the properties window is destroyed.
4173
4174         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
4175         Use with_mnemonics to handle the case of stock items with
4176         underscores in them.
4177
4178 2001-06-05  Havoc Pennington  <hp@redhat.com>
4179
4180         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
4181         gtk_text_iter_reorder
4182
4183 2001-06-05  Havoc Pennington  <hp@redhat.com>
4184
4185         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
4186
4187 2001-06-05  Havoc Pennington  <hp@redhat.com>
4188
4189         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
4190         to the range that was set
4191
4192         * gtk/gtkrange.c: add value_changed signal, primarily 
4193         intended for use with GtkScale
4194         (gtk_range_set_increments): new function
4195         (gtk_range_set_range): new function with weird name
4196         (gtk_range_set_value): new function
4197         (gtk_range_get_value): new function
4198
4199         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
4200         from gtk_spin_button_get_value_as_float(). Compat #define
4201         added for get_value_as_float.
4202
4203         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
4204
4205         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
4206
4207 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
4208
4209         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
4210
4211 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
4212
4213         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
4214
4215         * tests/testgtk.c (create_tooltips): Remove usage of
4216         gtk_widget_set().
4217
4218 2001-06-05  Havoc Pennington  <hp@redhat.com>
4219
4220         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
4221
4222         Applying patch from Jeff Franks, with function docs added.
4223         
4224         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
4225         remove call to set_mnemonic_widget, change docs a bit.  
4226
4227         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
4228         new function
4229
4230         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
4231         new function
4232
4233         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
4234
4235         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
4236         function
4237         (gtk_radio_button_new_with_mnemonic_from_widget): new function
4238
4239         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
4240         new function
4241
4242         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
4243         function        
4244
4245         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
4246         auto-selection of mnemonic widget.
4247
4248 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
4249
4250         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
4251         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
4252         (gtk_tree_view_column_set_min_width): ditto.
4253
4254 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
4255
4256         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
4257         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
4258
4259 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
4260
4261         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
4262         gtk_clist_thaw().
4263
4264 2001-06-04  Havoc Pennington  <hp@pobox.com>
4265
4266         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
4267         releases for buttons 6, 7
4268
4269 2001-06-04  Havoc Pennington  <hp@redhat.com>
4270
4271         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
4272         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
4273         #55562
4274
4275 2001-06-04  Havoc Pennington  <hp@redhat.com>
4276
4277         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
4278         where text_view->layout == NULL by assuming its size is 0, 
4279         i.e. same as if we haven't done any reflow. Reported by 
4280         Hidetoshi Tajima #55448 
4281
4282 2001-06-04  Havoc Pennington  <hp@redhat.com>
4283
4284         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
4285         and 7 for scroll left/right, from Thomas Broyer
4286
4287 2001-05-10  Havoc Pennington  <hp@redhat.com>
4288
4289         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
4290         we need to parse the xsetting as if it were an RC file string.
4291
4292         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
4293         value of palette from settings, not from static variable
4294
4295         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
4296         xsettings translation table
4297
4298         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
4299         hardcoding the toolbar style conflicts with new customizable 
4300         toolbar style philosophy
4301         (gtk_toolbar_class_init): add settings for default toolbar style;
4302         these are used unless the app specifically forces a toolbar style
4303
4304         * gtk/gtksettings.c (settings_install_property_parser): only
4305         return at the start if we warn and parser == NULL
4306
4307         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
4308         palette changed handler so we don't notify dead color selections
4309
4310         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
4311         xthickness/ythickness of 0 or 1 properly 
4312         (gtk_default_draw_resize_grip): clear the background behind the
4313         resize grips, and align to bottom right if we square the 
4314         area to be drawn.
4315
4316         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
4317         statusbar label to 1, so it doesn't make toplevels resize oddly
4318         (gtk_statusbar_size_request): add grip size to request
4319         (gtk_statusbar_size_allocate): hack so the hbox still works with 
4320         the grip size in the request
4321
4322         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
4323         bug where showing all on a toplevel makes the toolbar 
4324         button text appear despite the toolbar mode
4325
4326         * gtk/gtkmenubar.c: add internal padding style property
4327
4328         * gtk/gtktoolbar.c: Add internal padding style property; add
4329         shadow type style property
4330
4331         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
4332         state; and put Container::border_width outside the frame
4333
4334         * gtk/gtktextview.c: don't draw focus rectangle if we're in
4335         interior focus mode, we just use blinking cursor
4336
4337 2001-06-04  Havoc Pennington  <hp@redhat.com>
4338
4339         * configure.in: Make gdk-pixbuf have same version number as GTK
4340
4341 2001-06-04  Havoc Pennington  <hp@redhat.com>
4342
4343         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
4344         digits greater than 6. If there actually are limits (which there
4345         likely aren't), should clamp to them not warn.
4346         (gtk_spin_button_new_with_range): don't take log of 0
4347         (gtk_spin_button_size_request): use digits to compute size
4348         request, rather than step increment.
4349
4350         * tests/testgtk.c (create_spins): test larger values of digits
4351         
4352         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
4353         font on map not expose, so we don't get weirdness during scrolling
4354
4355 2001-06-04  Havoc Pennington  <hp@redhat.com>
4356
4357         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
4358         Sam Solon, bug #54577, update value even if not drawable.
4359
4360 2001-06-04  Havoc Pennington  <hp@redhat.com>
4361
4362         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
4363         SCROLL_LEFT, reported by Thomas Broyer.
4364
4365 2001-06-04  Havoc Pennington  <hp@redhat.com>
4366
4367         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
4368         Process updates immediately, to prevent funny lag effect
4369         when scrolling, at some mild potential efficiency cost.
4370
4371 2001-06-04  Havoc Pennington  <hp@redhat.com>
4372
4373         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
4374         slider on the click.
4375
4376 2001-06-03  Havoc Pennington  <hp@pobox.com>
4377
4378         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
4379         hscale/vscale details, so we can use it for scrollbar as well.
4380
4381         * tests/testgtk.c (reformat_value): honor digits from GtkScale
4382
4383         * gtk/gtkenums.h (GtkTroughType): Remove this enum
4384         (GtkScrollType): add START and END from GtkTroughType
4385
4386         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
4387         its x/y arguments
4388
4389         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
4390         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
4391         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
4392         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
4393         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
4394
4395         Notable changes in the process:
4396          
4397         - stepper_size style property is the height for vertical 
4398           ranges, width for horizontal; the other dimension matches
4399           the trough size
4400         - add ability to do NeXT-style steppers (and several other styles
4401           that don't make any sense)
4402         - added min_slider_length, fixed_slider_length properties to
4403           GtkScrollbar
4404         - cleaned some private (or at least useless) functions out of
4405           gtkscale.h    
4406         - moved bindings to GtkScale from subclasses, even arrow keys,
4407           since blind users don't know scale orientation.
4408         - change move_slider action signal to use new GtkScrollType,
4409           remove GtkTroughType argument
4410         - digits rounds the values a range will input to the given 
4411           number of decimals, but will not try to force adjustment 
4412           values set by other controllers. That is, we no longer
4413           modify adjustment->value inside a value_changed handler.
4414         - added getters for GtkScale setters
4415         - middle-click begins a slider drag
4416         
4417 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
4418
4419         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
4420         getting the focus code to work.
4421         (gtk_tree_view_class_init): Add a bunch of keybindings.
4422
4423         * gtk/gtktreeviewcolumn.c
4424         (gtk_tree_view_column_set_cell_data_func):
4425         s/GtkCellDataFunc/GtkTreeCellDataFunc.
4426         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
4427         of "properties_changed" to help justify the death of the latter
4428         signal. (-:
4429
4430         * tests/testtreefocus.c (main): Let some columns be focussable to
4431         test focus better.
4432
4433 2001-06-01  Havoc Pennington  <hp@redhat.com>
4434
4435         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
4436         
4437         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
4438         overwrite in overwrite mode if we already deleted the selection
4439         and replaced it with new text.  
4440
4441         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
4442         selection to an empty range, clear the clipboard if we owned it.
4443         (gtk_label_set_selectable): give up selection if we become
4444         unselectable.
4445         (gtk_label_state_changed): override state changed to unselect text
4446         when insensitive
4447         (get_text_callback): add paranoia check that indexes aren't
4448         outside of label->text
4449         (gtk_label_select_region): make -1 for start_offset mean "end of
4450         label," for consistency with GtkEditable
4451
4452         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
4453         GTK_DIALOG_NO_SEPARATOR flag
4454
4455 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
4456
4457         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
4458         notifications on non-existant "enable_arrow_keys".
4459         (#53753, Skip Montanaro)
4460
4461 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
4462
4463         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
4464         GDK_TYPE_RECTANGLE.
4465
4466         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
4467         of allocation argument be GDK_TYPE_RECTANGLE.
4468
4469 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
4470
4471         * gtk/gtkoptionmenu.c: Account for the fact that the border
4472         width is _outside_ the window. (Fixes #54585, bug found
4473         by Bastien Nocera.)
4474
4475 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
4476
4477         * gtk/gtksettings.c (gtk_settings_get_property): Validate
4478         value from GDK settings against parameter spec.
4479
4480         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
4481         to temporary values and use g_value_transform(), since
4482         thinking that GValue was going to be easy or efficient
4483         to use was, of course, a mistake.
4484
4485         * gtk/gtksettings.c: Add cursor blink setting.
4486         
4487         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
4488
4489         * gtk/gtkentry.c: Add cursor blinking.
4490
4491         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
4492         cursor blink global settings.
4493
4494         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
4495         for :text_position in places where it is missing.
4496
4497 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
4498
4499         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
4500
4501 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
4502
4503         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
4504         not pkg-config. (#51032)
4505
4506         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
4507         (fixes #51952, James Henstridge)
4508         
4509 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
4510
4511         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
4512         Rename to the more correct gtk-go-up.
4513
4514         * gtk/stock-icons/stock_menu_sort_ascending.png:
4515         Added new file.
4516         
4517         * gtk/stock-icons/stock_menu_sort_descending.png:
4518         Changed to show descending instead of ascending.
4519
4520         * gtk/gtkiconfactory.c:
4521         Added menu size icon to sort ascending.
4522
4523         * gtk/stock-icons/Makefile.am:
4524         Added stock_menu_sort_ascending.png.
4525         
4526         * gtk/gtkseparatormenuitem.c:
4527         Use correct typenames.
4528
4529 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
4530
4531         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
4532         gulong as in GSignal.
4533
4534 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
4535
4536         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
4537         instances of GtkCellRenderer in code (all but dnd icon code).
4538         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
4539         there, and I can do multiple Cells per column.
4540
4541         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
4542
4543         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
4544         when model was unreffed prior to removing the row reference.
4545
4546 2001-05-25  Havoc Pennington  <hp@redhat.com>
4547
4548         * gtk/gtkiconfactory.c: fix so that default icons are created if 
4549         you call gtk_stock_list_ids()
4550
4551         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
4552         in list
4553
4554 2001-05-25  Havoc Pennington  <hp@redhat.com>
4555
4556         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
4557         set can render without falling back to missing image icon
4558
4559         * gtk/gtktextview.c (gtk_text_view_size_request): request full
4560         size of text, instead of random values
4561
4562         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
4563         size of tree view, instead of random values
4564
4565         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
4566         image in an appropriate size
4567
4568         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
4569         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
4570
4571         Throughout: fix GTK_STOCK_BUTTON_ instances
4572         
4573         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
4574         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
4575         Add a bunch of new stock items/icons
4576
4577         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
4578         new function, convenience for inserting columns with a data func
4579
4580         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
4581         (_gtk_icon_factory_list_ids): use list of all factories to
4582         generate a list of all known IDs
4583
4584         * gtk/gtkstock.c (gtk_stock_list_ids): replace
4585         gtk_stock_list_items() with a function that returns all IDs known
4586         including those for GtkIconFactory.
4587
4588 2001-05-25  Hans Breuer  <hans@breuer.org>
4589
4590         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
4591         work -> check boxes and radio buttons are drawn now, even on win9x.
4592         Improved line settings a bit, still no clue how to get really dotted
4593         lines on win9x, on NT it's PS_ALTERNATE.
4594
4595         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
4596         GDK_HINT_MIN_SIZE as well
4597
4598         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
4599
4600         * gtk/gtk.def : updated
4601
4602         * gtk/gtktreeprivate.h : change column_drop_func to be a function
4603         pointer not a function pointer pointer
4604
4605         * tests/testdnd.c : include <stdlib.h> for putenv prototype
4606
4607         * tests/testsocket.c : made it compile on win32 again
4608
4609         * tests/makefile.msc : one more test-app uses prop-editor.obj
4610
4611 2001-05-22  Havoc Pennington  <hp@pobox.com>
4612
4613         * gtk/gtkbin.c (gtk_bin_get_child): New function
4614
4615 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
4616
4617         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
4618         to ignore when doing compose processing.
4619
4620 2001-05-22  Joe Shaw  <joe@ximian.com>
4621
4622         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
4623         Simplify as suggested by Havoc. Just get the last iter and work
4624         backward to the tag instead of getting a line and working back from
4625         there. Fixes passing in an invalid offset to
4626         iter_init_from_byte_offset().
4627
4628 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
4629
4630         * gtk/gtktreeview*.h: 
4631         * gtk/gtkcell*.h:
4632         * gtk/gtk*store.h:
4633         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
4634         macros to all objects.
4635
4636 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
4637
4638         * gtk/gtkcellrenderertext.c
4639         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
4640         with very large (TM) amounts of text.  May be moved to
4641         GtkCellRenderer in the future, though I'm not sure it wants to be
4642         this accessible.
4643
4644         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
4645         More sanity brought to this class.  I like it.
4646
4647         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
4648         case.  Kids, don't try this at home.
4649
4650         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
4651         convenience function.
4652
4653         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
4654
4655 2001-05-21  Alexander Larsson  <alexl@redhat.com>
4656
4657         * gtk/gtkfontsel.c:
4658         Added properties. Based on patch by Lee Mallabone.
4659
4660         * gtk/gtkruler.c:
4661         * gtk/gtkhruler.c:
4662         * gtk/gtkvruler.c:
4663         * gtk/gtktext.c:
4664         * gtk/gtktextview.c:
4665         Converted GtkArg to GParam. Based on patches by John Margaglione.
4666
4667         * tests/Makefile.am:
4668         * tests/testtext.c:
4669         Add a property editor to testtext.
4670         
4671 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
4672
4673         * gtk/gtk{h,v,}paned.c: Only show the separator if 
4674
4675         * configure.in: Fixed reversed conditional causing all image
4676         libraries to be linked in.
4677
4678 2001-05-21  Joe Shaw  <joe@ximian.com>
4679
4680         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
4681         that top_y needs to be >= 0.
4682
4683 2001-05-11  Havoc Pennington  <hp@pobox.com>
4684         
4685         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
4686         losing connection to the X server.
4687
4688 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
4689
4690         * configure.in: Start checks for X from pangox/pangoxft
4691         CFLAGS to avoid duplicate libraries.
4692
4693         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
4694
4695         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
4696         to include gobject.
4697         
4698 2001-05-18  Alexander Larsson  <alexl@redhat.com>
4699
4700         * gtk/gtkspinbutton.c:
4701         Convert GtkArgs to GParams. Based on patch by John Margaglione.
4702         Also do size request reasonable for MAXDOUBLE. Previously it printed
4703         the limits to a buffer and overran it. Instead do it using log10() and
4704         limit the width to 10 digits.
4705         
4706         * gtk/gtkwidget.c (gtk_widget_get_property):
4707         Correctly handle setting the parent property to NULL.
4708
4709 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
4710
4711         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
4712         style attributes even if the widget isn't realized.
4713
4714         * demos/gtk-demo/main.c: Use a slightly smaller font.
4715
4716 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
4717
4718         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
4719         This is something that only a widget writer would ever want
4720         to change.
4721
4722         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
4723         gtk_signal_emit_by_name().
4724
4725         * gtk/gtkviewport.c: Fix some warnings.
4726
4727         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
4728         allowing the requisitions of multiple widgets to be grouped
4729         together.
4730
4731         * tests/testgtk.c: Add GtkSizeGroup test
4732
4733         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
4734
4735         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
4736         warnings.
4737
4738         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
4739
4740 2001-04-28  Martin Baulig  <baulig@suse.de>
4741
4742         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
4743         to gtk_image_menu_item_set_icon() and made it work if there's already
4744         an image.
4745         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
4746         (gtk_image_menu_item_new_with_label): New function.
4747
4748 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
4749
4750         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
4751         highlighting code!!!!  The result is okay so long as you don't try
4752         to stress it.  It also highlights a bug in the TextView so it's in
4753         an unproportional font right now until it's fixed.
4754
4755         *demos/gtk-demo/*.c: Clean up code a bit to make it
4756         ugly-parser(TM) friendly. (-:
4757
4758 2001-05-17  Joe Shaw  <joe@ximian.com>
4759
4760         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
4761         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
4762         if it is only partially onscreen.
4763
4764 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
4765
4766         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
4767         not by characters.
4768
4769         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
4770         are not zero or one; that is, when graphemes of multiple characters
4771         are involved.
4772
4773         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
4774         FIXME.
4775
4776 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
4777         
4778         * gtk/gtkbbox.c:
4779         Add properties, based on patch by Lee Mallabone.
4780
4781         * gtk/gtknotebook.c:
4782         * gtk/gtktoolbar.c:
4783         Convert from GtkArg to GParam, based on patch by John Margaglione.
4784         
4785         * gtk/gtkhscale.c:
4786         * gtk/gtkvscale.c:
4787         * gtk/gtkhscrollbar.c:
4788         * gtk/gtkvscrollbar.c:
4789         * gtk/gtkrange.c:
4790         Move adjustment property to GtkRange.
4791
4792         * gtk/gtklabel.c:
4793         Setup mnemonics on property changes
4794
4795         * gtk/gtkwidget.c (gtk_widget_get_property):
4796         GdkExtensionMode is an enum, not a flag. Set it with
4797         g_value_set_enum ().
4798
4799         * tests/prop-editor.c:
4800         Better propery editor.
4801
4802         * tests/testgtk.c:
4803         Add new property test. Pass zero to the property editor to
4804         get properties from all derived types.
4805         
4806 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
4807
4808         * autogen.sh (have_automake): Require libtool-1.4,
4809         automake-1.4p1.
4810
4811         * acinclude.m4: Remove libtool macros.
4812
4813         * gdk-pixbuf/Makefile.am: Add dependencies to loade
4814         modules.
4815
4816         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
4817         for libgdk.
4818
4819         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
4820         libgdk.la for libgtk.
4821
4822         * modules/input/Makefile.am: Make modules have full
4823         dependencies.
4824
4825 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
4826
4827         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
4828         #54699 where paths weren't being checked for correctness.
4829
4830 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
4831
4832         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
4833         in any order you wan, whether or not the column is added to the
4834         tree, or the tree is realized.  Yay!
4835
4836         * gtk/gtktreeviewcolumn.c
4837         (gtk_tree_view_column_setup_sort_column_id_callback): handle
4838         sorting columns a lot saner
4839
4840         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
4841         new function to actually set wether or not a column is
4842         reorderable.
4843
4844         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
4845         if we have 'em.
4846
4847         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
4848         Fix nasty bug where we were showing the button just before
4849         realizing it.  As a result, the parent window was
4850         tree_view->window instead of tree_view->priv->header_window.
4851
4852         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
4853         to let you easily reorder a list or tree.
4854
4855 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
4856
4857         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
4858         from args to properties.
4859
4860 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
4861
4862         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
4863         from args to properties. (#51957)
4864
4865         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
4866         calls to after ->set_property call.
4867
4868 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
4869
4870         * tests/prop-editor.c: Block against redundant changes.
4871
4872         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
4873         properties.
4874
4875 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
4876
4877         * gdk/gdkpixmap.h: Remove creative formatting.
4878
4879 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
4880
4881         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
4882         property API. (#51669)
4883
4884         * gtk/gtkscale.c: Patch from John Margaglione converting to
4885         property API. (#51891)
4886
4887         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
4888         to property API. (#50985)
4889
4890 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
4891
4892         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
4893         buffering state across expose event, so we still call end_paint().
4894
4895 2001-05-11  Alexander Larsson  <alexl@redhat.com>
4896
4897         * gtk/gtkhsv.c (paint_triangle):
4898         Expose the ring in the triangle at the correct place when
4899         exposing just a part of the triangle.
4900
4901         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
4902         Return FALSE, or window focusing will not work.
4903
4904 2001-05-11  Havoc Pennington  <hp@pobox.com>
4905
4906         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
4907         #54144
4908
4909         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
4910         bug #54330
4911
4912 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
4913
4914         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
4915         propagate exposes to NULL child.
4916
4917         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
4918         against not having one of the scrollbars.
4919
4920         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
4921         we don't keep a mnemonic window if we have no mnemonic installed.
4922
4923 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
4924
4925         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
4926         it has the _important_ side effect of initializing a class.
4927
4928 2001-05-10  Alexander Larsson  <alexl@redhat.com>
4929
4930         * gdk/linux-fb/gdkprivate-fb.h:
4931         Make sure you can compile out the implementation/wrapper assert
4932         macros.
4933
4934         * gdk/linux-fb/gdkdrawable-fb2.c:
4935         Check implementation/wrappers, initialize type for pixmap dummys.
4936
4937         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
4938         Hide the cursor if reading from the screen.
4939
4940         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4941         Fix sign bug in tiling code.
4942
4943         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4944         Handle background pixmaps.
4945
4946 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
4947
4948         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
4949         function to let user control where columns are dragged.
4950
4951         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
4952         Escape is pressed.
4953
4954 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
4955
4956         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
4957         "columns_changed" signal.
4958         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
4959         motion code to draw arrows to the side if indicator is outside the
4960         widget.
4961         (gtk_tree_view_map_expanded_rows): Implement.
4962
4963 2001-05-07  Alexander Larsson  <alexl@redhat.com>
4964
4965         * demos/testpixbuf-save.c: 
4966         * demos/testpixbuf-drawable.c:
4967         Include gdkfb.h on linux-fb.
4968
4969 2001-05-07  Alexander Larsson  <alexl@redhat.com>
4970
4971         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
4972         New function for getting toplevel window at position.
4973         (gdk_drag_find_window): Use get_toplevel_window () instead
4974         of gdk_window_get_pointer(). (gdk_drag_status): Use
4975         correct context for getting window.
4976
4977         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
4978         g_strdup the atom name.
4979
4980         * gdk/linux-fb/gdkwindow-fb.c:
4981         Costmetic fix.
4982
4983         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
4984         Add code for changing cursor on linux-fb backend (same as
4985         win32).
4986
4987 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
4988
4989         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
4990         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
4991         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
4992         report was not for the development branch of GTK+, but it applies
4993         anyways).
4994
4995 2001-05-04  Havoc Pennington  <hp@redhat.com>
4996
4997         * configure.in: fix some shell typos
4998
4999         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
5000
5001         * gtk/gtkimage.c: handle animations
5002
5003         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
5004         border_width * 2, not just border_width
5005
5006         * gtk/gtkscale.c: add "format_value" signal to allow people
5007         to override the way values are drawn.
5008         (gtk_scale_get_value_size): fix width/height mistake,
5009         and compute size from actual displayed text, not 
5010         from made-up text.
5011
5012         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
5013         signal registration
5014
5015         * tests/testtext.c: Add "Remove all tags" menu item for testing
5016
5017         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
5018
5019         * demos/gtk-demo/main.c (main): add hack so we can find modules
5020         without installing gtk
5021
5022         * demos/gtk-demo/textview.c (insert_text): demo font scaling
5023
5024         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
5025         factor)
5026         (gtk_cell_renderer_text_set_property): remove some bogus
5027         g_object_notify
5028
5029         * gtk/gtktexttag.c: add "scale" property which is a font scaling
5030         factor
5031
5032         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
5033         to layout
5034
5035         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
5036         gtk_text_iter_is_first
5037
5038 2001-01-06  Hans Breuer  <hans@breuer.org>
5039
5040         * gdk/gdk.def : updated exports
5041
5042         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
5043         gdk won't compile anymore
5044  
5045         * gdk/win32/gdkevents-win32.c : initialize ret_val when
5046         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
5047         Improved gdk_flush () to not only do pending drawing operations
5048         but also process all currently pending events. This should make
5049         the behaviour more similar to the X11 version.  
5050
5051         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
5052         option needs to be set even if there is no GDK_GC_BACKGROUND.
5053         (gdk_win32_hdc_get) : use predraw_set_background () independent
5054         of value_mask. This allows to draw dashed lines leaving the original
5055         background intact.
5056
5057         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
5058         after processing, because we can't reuse it as the X11 version does.
5059
5060         * gtk/gtk.def : updated exports
5061
5062         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
5063         would like to get rid of this file again, and use straight
5064         makefile.msc again, as the other Gtk+ subdirs do)
5065
5066         * test/makefile.msc (new file) : build the test apps here
5067
5068 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
5069
5070         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
5071         strike-through setting
5072         (gdk_draw_layout_line_with_colors): Render strike-through
5073
5074 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
5075
5076         * Release 1.3.5
5077
5078         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
5079
5080         * NEWS: Updated
5081
5082         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
5083         Makefile breakage.
5084
5085 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
5086
5087         * demos/gtk-demo/images.c (progressive_timeout): Fix
5088         typo in filename.
5089
5090         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
5091         out FIXME warning; just too annoying.
5092
5093 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
5094
5095         * gdk/linux-fb/gdkcolor-fb.c:
5096         Better error messages.
5097
5098         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
5099         Initialize abs_x and abs_y.
5100         
5101         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
5102         Correct handling of stipple offset.
5103
5104         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
5105         Treat directcolor framebuffers as truecolor.
5106         
5107 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
5108
5109         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
5110         dependency on Atk for accessibility support.
5111
5112         * configure.in **/Makefile.am: Major reworking of substituted
5113         variables for CFLAGS/LIBS to make a lot more sane and 
5114         keep the the compile/link lines a bit shorter.
5115
5116         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
5117
5118 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
5119
5120         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
5121         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
5122         use _gtk_boolean_handled_accumulator.
5123
5124 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
5125
5126         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
5127         to fix things so clicking inside selection leaves cursor
5128         at point where clicked. (#50324)
5129
5130         * gtk/gtksettings.c (gtk_settings_class_init): Restore
5131         sane value for default double click time.
5132
5133         * tests/testtext.c (test_init): Really path to input modules.
5134
5135 2001-05-03  Sven Neumann  <sven@convergence.de>
5136
5137         * demos/testpixbuf-save.c: include target-specific headers as
5138         done in testpixbuf-drawable.c
5139
5140 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
5141
5142         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
5143         new_text_length appropriately when we run into the 
5144         size limit for the entry. (#53445, reported by Jeff Franks)
5145
5146         * tests/testgtk.c (create_entry): Remove most of the
5147         property toggle buttons. Replace with a "Props" button
5148         that brings up a property editor.
5149
5150         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
5151         Split the property editor code out for reuse, improve.
5152
5153 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
5154
5155         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
5156         trap errors around calls to XSetInputFocus since we have
5157         no way of knowing reliably whether we are viewable or
5158         not. (#53947)
5159
5160 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
5161
5162         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
5163         fix bug in dropping columns.  Moving columns now basically works
5164         modula some fine tuning.
5165
5166 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
5167
5168         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
5169         autoscroll support.  It mostly works, but could use some fine
5170         tuning.
5171         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
5172         Actually move the column.
5173
5174 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
5175
5176         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
5177           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
5178           New default theme! A slighly improved version of the 2.0 Raleigh
5179           theme, with Windows-esque focus/drawing default. 
5180           (GtkWidget::interior_focus defaults to TRUE.)
5181
5182         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
5183
5184 2001-04-30  Havoc Pennington  <hp@pobox.com>
5185
5186         * tests/testtext.c (line_numbers_expose): fix to work with
5187         gtk_paint_layout change
5188
5189 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
5190
5191         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
5192           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
5193           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
5194           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
5195
5196         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
5197           with GtkWidget::interior_focus = TRUE better.
5198
5199         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
5200         ::default_outside_border for more flexibility.
5201
5202         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
5203         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
5204         change that had to be made with g_object_get.
5205
5206 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
5207
5208         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
5209         (gtk_tree_view_move_column_after): Clean up interface. 
5210
5211 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
5212
5213         * gtk/gtkpacker.h:
5214         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
5215          to gtkenum.h.
5216
5217         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
5218         handled in switch).
5219
5220         * gtk/Makefile.am:
5221         (gtk.defs): generate enum portions with  glib-mkenums.
5222         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
5223         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
5224         
5225         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
5226         addition.
5227
5228         * docs/Changes-2.0.txt: keep a note on signal handlers now
5229         not getting emitted during the emission they were connected within.
5230
5231 2001-04-28  Havoc Pennington  <hp@pobox.com>
5232
5233         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
5234
5235 2001-04-24  Havoc Pennington  <hp@redhat.com>
5236
5237         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
5238         (gtk_text_layout_move_iter_to_next_line): fix these two for
5239         invisible text, lots of other stuff still hosed.
5240
5241         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
5242         new function, replaces the get/set palette stuff. This function 
5243         is intended for use by libgnomeui which should set the hook to a
5244         thing which sets the palette in GConf, and we need the
5245         GConf-to-xsettings proxy which will result in the change being
5246         propagated back to the GTK app.
5247
5248         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
5249         about unusable signals that it may be because the signal has 
5250         parameters.
5251
5252         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
5253         style, otherwise gtkrc.c won't know to create a new GtkStyle for
5254         it.
5255         (gtk_widget_modify_color_component): call
5256         gtk_widget_modify_style() so the rc style will get copied.
5257         (gtk_widget_modify_font): ditto
5258
5259         * gtk/gtkrc.c: make a couple variables static
5260
5261         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
5262         help button by default, since it does nothing
5263
5264         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
5265         around with UI
5266
5267         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
5268         so we can have tooltips
5269
5270         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
5271         can have tooltips
5272
5273         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
5274         GDK_ENABLE_BROKEN, because its memory behavior is completely
5275         hosed.
5276
5277         * gtk/gtknotebook.c: remove key press handler, replace with
5278         binding set, add numeric keypad support
5279
5280         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
5281
5282         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
5283
5284         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
5285         addition to plain Delete
5286
5287         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
5288         GDK_KP_Enter in addition to GDK_Return
5289
5290         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
5291         activate on entry instead of key press
5292         (gtk_font_selection_on_clist_key_press): get
5293         rid of this signal handler, not needed with new font sel.
5294
5295         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
5296         no-longer-needed emit_stop_by_name(), just return TRUE
5297
5298         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
5299         cruft, this widget is no longer focusable.
5300
5301         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
5302         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
5303         move_slider action signal, add binding set for vscale/hscale, in
5304         the process support numeric keypad
5305
5306         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
5307         make GDK_Return and GDK_KP_Enter activate the entry via 
5308         binding set, instead of hardcoded.
5309
5310 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
5311
5312         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
5313         code.  Some documentation added.
5314
5315 2001-04-27  Havoc Pennington  <hp@redhat.com>
5316
5317         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
5318
5319         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
5320
5321         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
5322         line/para separators
5323         (gtk_entry_create_layout): set single paragraph mode on the layout
5324
5325         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
5326         spacing between the image and label; instead, inside a button box 
5327         the button will get extra space that will go there, but if people 
5328         configure button box for 0 chubbiness, then there's no spacing.
5329
5330         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
5331         and min/max size style properties, so people can tune their
5332         chubbiness.
5333
5334         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
5335         functions
5336
5337         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
5338         space_style, and button_relief into style properties, remove
5339         functions for setting them
5340         
5341         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
5342         it back down
5343
5344         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
5345         types from gtk_widget_style_get
5346
5347         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
5348         with a style property.
5349
5350         * gdk/x11/gdkevents-x11.c: namespace the settings
5351
5352         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
5353
5354         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
5355         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
5356         be used. Also, translate doc strings for settings. Also, namespace
5357         the double-click-time property. Also, remove bell properties crap.
5358
5359 2001-04-27  Sven Neumann  <sven@gimp.org>
5360
5361         * Makefile.am: before creating links, check if pkg-config files
5362         exist for the default target. Otherwise link to the pkg-config files
5363         that got installed with this build.
5364
5365 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
5366
5367         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
5368         dragging code.  Revealed some (potential) GdkWindow bugs.
5369
5370         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
5371         _gdk_window_init_position to the end of reparent to fix the case
5372         of reparenting when new_x != old_x and new_y != old_y.
5373
5374 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
5375
5376         * gtk/gtkentry.c (strstr_len): Fix optimization that
5377         was correct for the use here, but completely incorrect
5378         in general.
5379
5380 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
5381
5382         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
5383         until patch adding gtk_window_set_size() is recommitted. 
5384
5385         * **Makefile.am configure.in gdk/x11/gdkim-11.c
5386           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
5387           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
5388           (#10784)
5389
5390 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
5391
5392         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
5393         window == NULL in a number of cases.
5394
5395         * tests/testdnd.c: Set module path for gdk-pixbuf.
5396
5397 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
5398
5399         * gtk/Makefile.am xembed.h: File containing #defines
5400         for XEMBED protocol.
5401
5402         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
5403
5404         - Change protocol from old plug/socket specific protocol
5405           to XEMBED draft
5406         - Various fixes to work with GTK+-2.0
5407
5408         Still quite a bit of work to do here to handle initiation
5409         from the socket side (as specified by XEMBED), to handle
5410         the more advanced features of XEMBED, and to figure out
5411         a good way to handle same-app embedding with less overhead
5412         than using full XEMBED.
5413
5414 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
5415
5416         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
5417         track of whether the toplevel has the focus; only send
5418         focus-in events to the focus widget when the window
5419         actually has the focus.
5420
5421 2001-04-25  Havoc Pennington  <hp@pobox.com>
5422
5423         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
5424         were still in the header
5425
5426 2001-04-24  Alexander Larsson  <alexl@redhat.com>
5427
5428         * gtk/gtkclist.[ch]:
5429         * gtk/gtkctree.c:
5430         When there is a row highlighted for D'n'D it must alse
5431         be painted hightlighted on exposes. Otherwise exposes from
5432         the icon being dragged will mess up the hightlight.
5433
5434         * gtk/gtkfontsel.c:
5435         Don't recenter selected font when exposing the font family
5436         clist. This means you can now actually scroll the font family
5437         list.
5438
5439         * gtk/gtknotebook.c:
5440         Fix focus movement on scrolling tabs that are placed on the left
5441         and right.
5442
5443 2001-04-21  Havoc Pennington  <hp@pobox.com>
5444
5445         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
5446         empty/invisible lines.
5447
5448         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
5449         (gtk_text_iter_set_visible_line_index): new functions to set
5450         indexes excluding invisible text
5451
5452         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
5453         index
5454
5455         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
5456         (gtk_text_iter_get_visible_line_offset): new functions to 
5457         get indexes excluding invisible text
5458
5459         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
5460         bunch of extra padding that served no purpose
5461
5462         * gtk/gtkdialog.c: Make all the spacings configurable via style
5463         properties, for chubbiness configuration in themes
5464
5465         * tests/testtext.c: fix path to the immodules.
5466         
5467 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
5468
5469         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
5470         got munched by #endif.
5471
5472         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
5473
5474         * gtk/gtktreeview.c: Refactored code to clean up a number of
5475         events.
5476
5477         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
5478         values to make consistent with other functions.  Spotted by Jeff
5479         Franks <jcf@tpg.com.au>.
5480
5481         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
5482         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
5483
5484 2001-04-23  Sven Neumann  <sven@gimp.org>
5485
5486         * gtk/Makefile.am
5487         * gtk/gtkplug.c
5488         * gtk/gtksocket.c: on request of Owen, reverted my last change 
5489         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
5490
5491 2001-04-23  Sven Neumann  <sven@gimp.org>
5492
5493         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
5494         compile for non-X11 targets again
5495
5496 2001-04-20  Alexander Larsson  <alexl@redhat.com>
5497
5498         * gtk/gtkcolorsel.[ch]:
5499         API Change. Take GdkColor arguments instead of gdouble *.
5500         Leave the old gtk_color_selection_set_color for compatibility,
5501         but marked deprecated.
5502         Do correct rounding when converting RGB <-> HSV.
5503         
5504         * gtk/gtkcolorseldialog.c:
5505         * tests/testgtk.c:
5506         Use new GtkColorSelection API.
5507
5508         * gtk/gtkhsv.c:
5509         Fix problem selecting colors in triangle when Hue is 330.
5510         Fix some black dots around the HSB triangle.
5511         
5512         * gtk/gtkfilesel.c:
5513         return FALSE from the focus_in_event handler to fix focus problems.
5514
5515 2001-04-18  Havoc Pennington  <hp@redhat.com>
5516
5517         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
5518         set, so keybindings are configurable    
5519         (gtk_window_activate_default): Change to activate the focus widget
5520         instead if there's a focus widget, to be consistent with the
5521         behavior that previously existed in key_press_event
5522
5523 2001-04-18  Havoc Pennington  <hp@redhat.com>
5524
5525         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
5526
5527 2001-04-18  Havoc Pennington  <hp@redhat.com>
5528
5529         Close bug #50615:
5530         
5531         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
5532         the layout
5533
5534         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
5535
5536         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
5537
5538         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
5539         
5540         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
5541         to blue for base, in addition to bg
5542         
5543 2001-04-18  Havoc Pennington  <hp@redhat.com>
5544
5545         * tests/testgtk.c (create_image): allow shrinking the image window
5546         to test that we clip to allocation.
5547
5548         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
5549         #9845
5550
5551         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
5552
5553 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
5554
5555         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
5556         mode on shm segments to 0600. We'll see who complains.
5557
5558         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
5559         _gdk_windowing_window_destroy() AFTER recursing through
5560         children.
5561
5562         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
5563         testsocket_child on X.
5564
5565         * tests/testsocket[_child].c: Fix uses of
5566         gtk_window_get_default_accel_group().
5567
5568         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
5569
5570         * gdk/gdkimage.c: (gdk_image_get):
5571         Deal with the possibility that XGetImage() might return NULL.
5572         Allocate the GdkImagePrivate structure only after XGetImage()
5573         succeeds in order not to dereference a NULL ximage pointer.  This
5574         prevents a core dump when XGetImage() fails - which is unlikely,
5575         but can happen due to race conditions accessing the geometries of
5576         drawables.  An x error will still be triggered, but the gdk image
5577         wrapper at least wont seg fault.
5578         
5579 2001-04-18  Havoc Pennington  <hp@redhat.com>
5580
5581         * gtk/gtkimage.c: fix to properly queue resizes when the image is
5582         set
5583
5584         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
5585         if the insertion point isn't editable
5586
5587         * demos/gtk-demo/images.c: Added a GtkImage demo
5588
5589         * demos/gtk-demo/drawingarea.c: drawing area demo
5590         
5591         * demos/gtk-demo/menus.c (create_menu): cleanups
5592
5593 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
5594
5595         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
5596           gdk/x11/gdkevents-x11.c: Introduce an extra child
5597         of toplevel windows that serves to hold the focus to
5598         avoid events being delivered to embedded windows.
5599
5600         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
5601         some extra variables to clean up code and reduce the
5602         number of casts.
5603
5604         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
5605         guint for 1 bit bit fields, not gboolean.
5606
5607 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
5608
5609         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
5610         not TRUE. (Fixes #52925)
5611
5612 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
5613
5614         * Released 1.3.4
5615
5616         * NEWS: Updated
5617
5618         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
5619         use GTK_TYPE_ENUM.
5620
5621 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
5622
5623         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
5624
5625         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
5626         names to compatibility #defines so docs work.
5627
5628         * gtk/gtkenums.h: Remove GtkMenuFactoryType
5629
5630         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
5631
5632         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
5633
5634         * tests/testgtkrc: No magenta cursors, please.
5635
5636         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
5637
5638         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
5639         
5640 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
5641
5642         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
5643         grabs, since they are no longer necessary.
5644
5645         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
5646         by signal_connect() and call gtk_button_pressed() rather
5647         than signal_connect_after().
5648
5649         * tests/testgtk.c: Restore radio menu items to combos 
5650         since they'll look OK with Raleigh, and it is easier
5651         than finishing the process of removing them that was
5652         started earlier.
5653
5654 2001-04-16  Hans Breuer  <hans@breuer.org>
5655
5656         * gdk/gdk.def :
5657         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
5658
5659         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
5660         we are interested in the functions return value not the function address
5661         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
5662
5663         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
5664
5665 2001-04-14  Hans Breuer  <hans@breuer.org>
5666
5667         * gdk/gdk.def :
5668         * gdk/makefile.msc : updated
5669
5670         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
5671         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
5672         (the testgtk::text backgound pixmap is drawn again)
5673         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
5674         Win32 Pango change
5675         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
5676
5677         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
5678         Not sure if the returned settings have the right unit, because I couldn't
5679         find any docs for the X version ...
5680
5681         * gtk/gtk.def :
5682         * gtk/makefile.msc.in : updated
5683
5684 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
5685
5686         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
5687         wording problems. (Compared to version from Johannes Stezenbach to
5688         check correctness.)
5689
5690 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
5691
5692         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
5693         this to compile.
5694
5695 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
5696
5697         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
5698         not pixbufpos.
5699
5700         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
5701
5702         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
5703         are unsigned insts, therefore use g_value_set_uint.
5704         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
5705
5706 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
5707
5708         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
5709
5710         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
5711         GTK_TYPE_STRING.
5712
5713         * gtk/gtktreeview.c: New functions to allow initial column
5714         dragging work.
5715
5716         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
5717
5718         * tests/testtreefocus.c: give dave some love.
5719
5720         * tests/testtreesort.c: Modify test to check really long samples.
5721
5722 2001-04-11  Alexander Larsson  <alexl@redhat.com>
5723
5724         * gtk-2.0.m4: Pass pkg-config options
5725         before the other args so it works even if
5726         POSIXLY_CORRECT is set.
5727
5728 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
5729
5730         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
5731         0, interface 0).
5732
5733 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
5734
5735         * gtk/gtkcalendar.c (gtk_calendar_button_press):
5736         check for action_func != NULL
5737
5738 2001-04-04  Sven Neumann  <sven@gimp.org>
5739
5740         * tests/testgtk.c (test_init): corrected path to gtk.immodules
5741
5742 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
5743
5744         * Released Gtk+-1.3.3.
5745
5746 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
5747
5748         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
5749
5750 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
5751
5752         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
5753         files to/from source dir. (if we don't stay in builddir, we
5754         can't reach make-inline-pixbuf.
5755
5756         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
5757         deps.
5758
5759         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
5760         ages 0).
5761
5762 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
5763
5764         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
5765         moved to the GtkTreeSortable interface.
5766
5767         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
5768         Make more efficient (fixes #50262).
5769
5770 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
5771
5772         * NEWS: Updated.
5773
5774         * configure.in: Remove support for uninstalled glib.
5775
5776         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
5777         so as not to stop emission.
5778
5779         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
5780         is no longer supported.
5781
5782         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
5783         into tests, change build order to build modules before
5784         gtk/.
5785
5786         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
5787         to here.
5788
5789 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
5790
5791         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
5792         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
5793         GPatternSpec. this is actually unlikely to cause breakage in
5794         third-party apps since except for gle, pretty much ever caller
5795         passes NULL here.
5796
5797         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
5798
5799         * *.c: use g_pattern_*() API.
5800
5801         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
5802
5803         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
5804         directions aren't passed in.
5805
5806         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
5807         functionality to be usable from gtkstyle.c as well, give precedence
5808         for conversion to user-supplied parsers.
5809         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
5810
5811         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
5812         _gtk_settings_parse_convert() for rcporperty value conversion.
5813
5814 2001-04-03  Alexander Larsson  <alexl@redhat.com>
5815
5816         * gdk/linux-fb/gdkevents-fb.c:
5817         Add empty gdk_setting_get().
5818
5819 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
5820
5821         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
5822         variable names.
5823         
5824         * gtk/makeenums.pl: touch this so enum files get remade.
5825
5826 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
5827
5828         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
5829         work again when not sorted.
5830
5831         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
5832         and "expand_row" signal, closing bug 52578.
5833
5834         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
5835         support.
5836
5837         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
5838         support.
5839
5840 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
5841
5842         * gdk/gdkevents.h: Add GdkEventSetting event for notification
5843         of changes to system settings, gdk_setting_get() to retrieve
5844         a single system setting.
5845
5846         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
5847         to the draft XSETTINGS mechanism.
5848
5849         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
5850         XSETTINGS.
5851
5852         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
5853         of GDK settings changes to the GtkSettings object.
5854
5855         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
5856         double-click-timeout property to GDK.
5857
5858         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
5859         Define GDK boxed types here.
5860
5861         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
5862         gdk/gdkenumtypes.[ch] for enum definitions.
5863
5864         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
5865         * gtk/gtk-boxed.defs: Comment out GDK types
5866         * gtk/gtktypeutils.h: Remove GDK types
5867         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
5868
5869 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
5870
5871         * Applied patch from Ron Steinke to add signal accumulators
5872         so that signals with the convention 'TRUE return means
5873         handled' stop emission on a TRUE return.
5874
5875         * gtk/gtkmain.[ch]: Add private accumulator 
5876         _gtk_boolean_handled_accumulator, used throughout GTK+.
5877         
5878         * gtk/gtkspinbutton.c: Add accumulator for ::output.
5879
5880         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
5881         
5882         * gtk/gtkwidget.c: Add accumulators for event signals,
5883         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
5884         for ::mnemonic-activate.
5885
5886         * gtk/gtkwindow.c: Add accumulator for ::frame_event
5887
5888 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
5889
5890         * gtk/gtkwidget.c: Add missing include.
5891
5892 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
5893
5894         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
5895         marshaller.
5896
5897         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
5898         "changed" signal to "range_changed".
5899
5900         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
5901         removing a tree from one model would remove all trees from that
5902         model.
5903         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
5904         changed signal instead.
5905
5906 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
5907
5908         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
5909         chaining up to parent impl, since we have a INPUT_ONLY
5910         window.
5911
5912         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
5913         foreground color for the cursor.
5914
5915 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
5916
5917         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
5918         param spec when caching property values, since we unref it
5919         later when we free the style.
5920
5921         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
5922         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
5923
5924 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
5925
5926         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
5927         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
5928         stupidity.
5929
5930 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
5931
5932         [ First pass at adding style properties. Still needs some definite
5933         fine-tuning. ]
5934
5935         * gtk/gtkbutton.c: Add ::default_spacing style property.
5936          
5937         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
5938         ::indicator_spacing style properties.
5939
5940         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
5941         style properties.
5942
5943         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
5944         rather than a normal property.
5945
5946         * gtk/gtkwidget.c: Add an ::interior_focus style property to
5947         draw focus inside buttons, in the Windows/Java Metal/etc. style.
5948
5949         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
5950         Honor ::interior_focus.
5951         
5952         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
5953         TRUE.
5954
5955         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
5956         Add ::slider_width, ::trough_border, ::stepper_size,
5957         ::stepper_spacing style properties.
5958
5959         * gtk/gtkscale.[ch] Add ::slider-length style property.
5960
5961 2001-04-02 Alexander Larsson   <alexl@redhat.com>
5962
5963         * gdk/linux-fb/gdkwindow-fb.c:
5964         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
5965         warnings that were spewed on startup.
5966
5967         * gtk/gtkwindow-decorate.c:
5968         gtk_window_reposition -> _gtk_window_reposition
5969
5970 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
5971
5972         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
5973         Add boxed type for GtkRequistion. Use it for ::size-request.
5974
5975         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
5976         Add a new GtkBorder structure useful for geometry properties
5977         for widgets. Add corresponding GTK_TYPE_BORDER.
5978         
5979         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
5980         Support automatic parser selection like
5981         gtk_settings_install_property_parser().
5982
5983         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
5984         functionality for use by gtk_widget_class_install_style_property.
5985         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
5986
5987 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
5988
5989         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
5990         g_param_spec_unichar(). 
5991
5992 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
5993
5994         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
5995         _NET window managers.
5996
5997         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
5998
5999 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
6000
6001         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
6002         bad needs to be nuked, not just deprecated.
6003
6004         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
6005         gtk_widget_popup().
6006
6007         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
6008         
6009         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
6010         widget.
6011         
6012         * docs/Changes-2.0.txt: updates.
6013         
6014 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
6015
6016         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
6017         for (i = 0; i < 100; i ++)
6018           g_print ("I will confirm it compile before committing\n");
6019
6020 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
6021
6022         * gtk/gtktreestore.c: Initial work on implementing the
6023         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
6024
6025 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
6026
6027         * gtk/gtkwidget.c: fixed a bunch of notifications, added
6028         reference counts around emissions where the widget is used afterwards.
6029         added freeze/thaws around multiple properties being notified.
6030         (_gtk_widget_get_aux_info): cleanups.
6031         
6032         * gtk/gtksettings.c (gtk_settings_install_property): provide
6033         default parsing functions for gdkcolor, enums and flags.
6034
6035         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
6036         applied by owen.
6037         backed out gtk_window_get_location(), gtk_window_set_location(),
6038         gtk_window_get_size() and gtk_window_set_size(), these
6039         have to be sorted out wrg x/y/width/height/default_with/default_height
6040         properties.
6041         kept a flag in GtkWindowGeometryInfo to handle user
6042         resetting default sizes.
6043         cleaned up ZVT comments.
6044         bunch of assorted bug fixes, notification fixes.
6045         (_gtk_window_reposition): make this a really internal function.
6046         
6047         * gtk/testgtk.c: fixups.
6048         
6049 2001-03-31  Hans Breuer  <hans@breuer.org>
6050
6051         * config.h.win32.in : disable USE_MMX for msvc build cause
6052         the assembler doesn't fit and is out of my scope. Disable
6053         USE_GMODULE for msvc build as wel. The right way to share
6054         binaries on win32 would be to use libtiff.dll etc. To reduce
6055         installation hassles IMO it's better to include all fileformats
6056         builtin to gdk-pixbuf
6057
6058         * gdk-pixbuf/makefile.msc : new file
6059
6060         * gdk/gdk.def : updated
6061
6062         * gdk/win32/gdkevents-win32.c : don't erase the background if
6063         .no_bg is set. It improves the scrolling (e.g. of testgtk main
6064         buttons
6065         * gdk/win32/gdkgeometry-win32.c : added comment about the above
6066
6067         * gdk/win32/gdkwindow-win32.c : added three new functions like
6068         the X version. Only one is implemented, because the other two
6069         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
6070         be default behaviour on win32 anyway ...
6071
6072         * gtk/gtk.def : updated
6073
6074         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
6075         from where it was built and add an additional rule to automagically
6076         build gtkmarshal.[hc]
6077
6078         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
6079         before array access for the current entry isn't finished
6080
6081         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
6082         use g_return_val_if_fail
6083
6084         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
6085         for the static array, but let the compiler calculate it. It
6086         makes me wonder if gcc isn't capable to catch bugs like this ...
6087
6088 2001-03-31  James Henstridge  <james@daa.com.au>
6089
6090         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
6091         constant "-1" in the aux info structure.
6092
6093 2001-03-30  Alexander Larsson  <alexl@redhat.com>
6094
6095         * gtk/gtkbutton.c (gtk_button_get_property):
6096         * gtk/gtklabel.c:
6097         Remove leaks.
6098         
6099         * gtk/gtkcontainer.c:
6100         * gtk/gtkhscale.c:
6101         * gtk/gtkhscrollbar.c:
6102         * gtk/gtklayout.c:
6103         * gtk/gtkmisc.c:
6104         * gtk/gtkprogress.c:
6105         * gtk/gtkprogressbar.c:
6106         * gtk/gtkrange.c:
6107         * gtk/gtktable.c:
6108         * gtk/gtkviewport.c:
6109         * gtk/gtkvscale.c:
6110         * gtk/gtkvscrollbar.c:
6111         * gtk/gtkwidget.c:
6112         Property patches, based on patches from John Margaglione and Lee Mallabone.
6113
6114 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
6115
6116         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
6117         adjustment. Cleaned redundant preconditions (spin != NULL). Added
6118         inline API function docs.
6119         (gtk_spin_button_new_with_range): New convenience constructor.
6120         (gtk_spin_button_set_increments): New adjustment helper.
6121         (gtk_spin_button_set_range): New adjustment helper.
6122
6123         * gtk/testgtk.c : added test of the new convenince constructor and
6124         value_changed signals.
6125
6126 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
6127
6128         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
6129         listen to the reorder signal.
6130
6131 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
6132
6133         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
6134         to get the aux info structure fo the widget.
6135
6136         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
6137         above function.
6138
6139         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
6140
6141         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
6142         to get the size of the window manager frame, basically the same
6143         code that gdk_window_get_root_origin() had
6144         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
6145
6146         * gtk/gtkwindow.c (gtk_window_set_default_size): use
6147         gdk_window_resize() if the window is realized and resizeable
6148
6149         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
6150         typo so that setting gravity works
6151
6152         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
6153         allocation if auto_shrink is on, even if the default size
6154         has not changed.
6155
6156         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
6157         g_return_if_fail
6158
6159 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
6160
6161         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
6162         reordering/sorting work.  Now pretty much works.
6163
6164         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
6165         reorder mostly work.  Still need to get the parity correct.
6166
6167         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
6168         signal, so I can listen for the sort_column_changed signal so I
6169         can change my "sort_indicator" property.  Cool.
6170
6171 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
6172
6173         [ Patch from Havoc Pennington, hp@redhat.com ]
6174
6175         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
6176         Add functions gdk_window_begin_resize_drag/begin_move_drag
6177         to start resizing or moving a toplevel window. This
6178         is done either using the _NET_WM_MOVERESIZE protocol,
6179         or, if that isn't present, by emulation.
6180
6181         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
6182         to export the above to GTK+-land.
6183
6184         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
6185         
6186         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
6187         Move this function into gdkwindow, since we need it
6188         when implementing fallback resizing.
6189
6190         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
6191         Fix typo when setting gravity.
6192
6193         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
6194         Add an optional (but on by default) resize grip for resizing 
6195         the parent window.
6196
6197 01-03-29  Alexander Larsson  <alexl@redhat.com>
6198
6199         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
6200         Don't return TRUE from the event handler, that blocks all
6201         event signals on the tooltip widget. Now you can press buttons
6202         in toolbars again.
6203
6204 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
6205
6206         * gtk/testtext.c (create_buffer): Add missing NULL on
6207         valist.
6208
6209         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
6210         c-n-p problem with INCONSISTENT property.
6211
6212         [ Patch from Havoc Pennington  <hp@redhat.com> ]
6213
6214         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
6215         hook.
6216
6217         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
6218         signal as a hook for extending the default popup menu
6219
6220         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
6221         use radio menu items for the input method menuitems
6222
6223         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
6224         inserted unicode from Ctrl-Shift-hex input method
6225
6226         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
6227         validatation here, already done at GtkTextBuffer level.
6228
6229         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
6230         popup_menu run action signal and Shift+F10 and Menu keybindings.
6231
6232         * gtk/gtkentry.c: implement a default handler for popup_menu
6233
6234         * gtk/gtktextview.c: implement a default handler for popup_menu
6235
6236         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
6237         from a key event
6238         
6239         * gtk/gtklabel.c: remove "trailer" cruft
6240
6241 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
6242
6243         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
6244         handle reordering of trees.  Seems to mostly work w/ the exception
6245         of the parity flag.
6246
6247         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
6248         signal.
6249
6250 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
6251
6252         * gtk/gtkwidget.h: c++ fixes.
6253
6254 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
6255
6256         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
6257         memory.
6258
6259 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
6260
6261         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
6262         Nils Barth fixing event return values. (#51041)
6263
6264         * gtk/gtkwidget.c: Fix some return values for default
6265         functions.
6266
6267         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
6268         return values for trough_keys functions.
6269
6270         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
6271         value for add_accelerator (shoudl have been a void
6272         return.)
6273
6274         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
6275         Fix return type of EVENT.
6276
6277         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
6278         signal return a boolean.
6279
6280 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
6281
6282         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
6283         reordered signal.
6284
6285         * tests/testtreesort.c (main): fix spelling.
6286
6287 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
6288
6289         * gtk/gtkliststore.c: More work on implementing sortable
6290         interface.
6291
6292 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
6293
6294         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
6295         reference the widgets in the resulting list. (#11821)
6296         This makes this consistent with gtk_container_children.
6297
6298         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
6299         uses of gtk_window_list_toplevels.
6300
6301 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
6302
6303         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
6304         a virtual function to set whether the IM context should use 
6305         the preedit string. (#51922)
6306         
6307 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
6308
6309         * gdk/gdkpango.h: Remove stale FIXME comment.
6310
6311 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
6312
6313         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
6314         Fixed bug that returned NULL if a filename was selected.
6315
6316 2001-03-24  Havoc Pennington  <hp@pobox.com>
6317
6318         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
6319         to contain the word "theme"
6320
6321 2001-03-24  Havoc Pennington  <hp@pobox.com>
6322
6323         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
6324         slower but finer-grained
6325         (gtk_hsv_focus): get initial focus on the ring or triangle 
6326         according to tab direction
6327
6328         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
6329
6330 2001-03-23  Havoc Pennington  <hp@pobox.com>
6331
6332         * gtk/gtkhsv.c: make this somewhat key-navigable
6333
6334         * gtk/gtkfontsel.c: mnemonics
6335
6336         * gtk/gtkgamma.c: mnemonics
6337
6338         * gtk/gtkcolorsel.c: add mnemonics to labels
6339
6340 2001-03-22  Havoc Pennington  <hp@pobox.com>
6341
6342         Applied big patch from Seth Lytle to fix event handler return
6343         values, slightly modified.
6344
6345         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
6346         handled.
6347         (gtk_calendar_key_press): return TRUE for GDK_space triggers
6348         select_day
6349
6350         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
6351         (gtk_clist_button_release): return TRUE if handled
6352
6353         * gtk/gtkcolorsel.c (mouse_release):
6354         (palette_activate): 
6355         (palette_press): 
6356         (palette_new): 
6357         (mouse_press): 
6358         (get_screen_color): 
6359         fixed return type (void to gboolean), return TRUE,
6360         added GTK_SIGNAL_FUNC cast
6361
6362         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
6363         (void to gboolean), and return TRUE
6364         (gtk_combo_button_release): changed return value to TRUE after
6365         gtk_grab_add on combo->popwin
6366
6367         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
6368         collapse or expand
6369
6370         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
6371         button/motion
6372
6373         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
6374         press/release and motion that trigger act
6375
6376         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
6377
6378         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
6379         for GDK_Return
6380         
6381         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
6382         (gtk_list_button_release): return TRUE if selection
6383
6384         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
6385         press
6386
6387         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
6388         (gtk_menu_shell_button_release): chain parent_menu_shell retval
6389
6390         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
6391         nothing triggered
6392         (gtk_notebook_button_release): return TRUE if we do anything
6393
6394         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
6395         (gtk_spin_button_button_release): return TRUE or chained retval
6396
6397         * gtk/gtktext.c (gtk_text_button_press): 
6398         (gtk_text_button_release): return TRUE
6399         (gtk_text_key_press): remove redundant retval code
6400         
6401         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
6402         and sensitive
6403         (gtk_tree_item_subtree_button_click): changed type to gint, and return
6404         TRUE if sensitive
6405
6406         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
6407         return TRUE
6408
6409 2001-03-23  Havoc Pennington  <hp@redhat.com>
6410
6411         * gtk/testgtk.c: fix warnings
6412
6413         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
6414
6415         * gtk/gtktextview.c: fix warnings
6416
6417         * gtk/gtktext.c (find_cursor_at_line): fix warning
6418
6419         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
6420
6421         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
6422         of this function
6423
6424         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
6425         fix warning
6426
6427         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
6428
6429         * gtk/gtkfontsel.c: fix warning
6430
6431         * gtk/gtkcolorsel.c: fix warnings
6432
6433 2001-03-23  Havoc Pennington  <hp@redhat.com>
6434
6435         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
6436
6437         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
6438
6439         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
6440         and deprecated gtk_check_menu_item_set_show_toggle().
6441         
6442         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
6443
6444         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
6445
6446         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
6447
6448 2001-03-23  Havoc Pennington  <hp@redhat.com>
6449
6450         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
6451         some docs
6452
6453 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
6454
6455         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
6456         this.
6457
6458         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
6459         set_cell to set_value
6460
6461         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
6462         set_cell to set_value
6463
6464 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
6465
6466         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6467         fix braino.
6468         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
6469         support.
6470
6471         * gtk/gtktreeview.c: Addition of initial sortable support.
6472
6473         * gtk/gtktreestore.c: Addition of initial sortable support.
6474
6475         * gtk/gtkliststore.c: Addition of initial sortable support.
6476
6477         * gtk/gtkmarshal.list: yet another marshaller.
6478
6479         * gtk/gtktreedatallist.[ch]: shared code between the store models
6480         for handling sorting headers.
6481
6482 2001-03-22  Havoc Pennington  <hp@redhat.com>
6483
6484         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
6485         (gtk_container_unset_focus_chain): Add ability to override the 
6486         focus chain for a container explicitly
6487
6488 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
6489
6490         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
6491         added PROP_MNEMONIC_WIDGET.
6492
6493         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
6494         (gtk_window_remove_mnemonic): 
6495         (gtk_window_add_mnemonic): fixed assertions.
6496         (gtk_window_activate_mnemonic): constrain modifier checks to those
6497         permitted by gtk_accelerator_get_default_mod_mask().
6498         got rid of gtk_window_get_default_accel_group().
6499
6500         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
6501         activatable widgets either by focussing or a warning.
6502         added a signal accumulator to ::activate_mnemonic which stops the
6503         emission once a handler returned TRUE.
6504
6505 2001-03-22  Havoc Pennington  <hp@pobox.com>
6506
6507         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
6508         the stock item label
6509
6510         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
6511
6512         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
6513
6514         * demos/gtk-demo/*.c: Add mnemonics all over the place
6515
6516         * gtk/gtklabel.h: mark parse_uline deprecated
6517
6518 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6519
6520         * gtk/gtkitemfactory.[ch]:
6521         Add support for stock and normal imagemenuitems.
6522         
6523         * gtk/testgtk.c:
6524         Add some tests for mnemonics, stock toolbars, stock
6525         and image menuitems in itemfactory and gdk_window_scroll.
6526
6527 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6528
6529         * gtk/gtkbutton.[ch]:
6530         * gtk/gtkdialog.c:
6531         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
6532         removed accel_group argument. Renamed gtk_button_new_accel() to
6533         gtk_button_new_with_mnemonic() and removed accel_group argument.
6534
6535         * gtk/gtkcheckbutton.[ch]:
6536         New function gtk_check_button_new_with_mnemonic().
6537
6538         * gtk/gtkentry.c:
6539         Override activate_mnemonic and just grab focus.
6540
6541         * gtk/gtkitemfactory.c:
6542         Don't add menu uline accel group, instead use mnemonics support.
6543
6544         * gtk/gtklabel.[ch]:
6545         New support for mnemonics.
6546
6547         * gtk/gtkmarshal.list:
6548         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
6549
6550         * gtk/gtkmenu.[c]:
6551         * gtkmenushell.c:
6552         Use mnemonics instead of accel groups for uline
6553         support in menu items.
6554         Removed gtk_menu_get_uline_accel_group() and
6555         gtk_menu_ensure_uline_accel_group().
6556
6557         * gtk/gtkmenuitem.c:
6558         Override activate_mnemonic to handle switching between
6559         menu items if there are collisions.
6560         
6561         * gtk/gtknotebook.c:
6562         Connect to activate_mnemonic on the tab_label, so that
6563         activating it switches to that notebook page.
6564
6565         * gtk/gtkwidget.[ch]:
6566         Add activate_mnemonic signal. New function
6567         gtk_widget_activate_mnemonic() to emit it.
6568         Default implementation does activate/grab_focus.
6569
6570         * gtk/gtkwindow.[ch]:
6571         Add support for mnemonics in windows.
6572         New functions:
6573         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
6574         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
6575
6576         * gtk/testgtk.c:
6577         Update to function name changes.
6578         
6579 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6580
6581         * gtk/gtkimagemenuitem.[c]:
6582         Add gtk_image_menu_item_new_from_stock()
6583
6584 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
6585
6586         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6587         Fix buglet in meeting.
6588
6589 2001-03-19  Havoc Pennington  <hp@redhat.com>
6590
6591         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
6592         add a bunch of accessor functions. This is because we have
6593         reasonable expectations of extending what fields it contains in
6594         the future.
6595
6596         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
6597         changes
6598
6599         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
6600         GtkIconSource   
6601
6602 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
6603
6604         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
6605         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
6606
6607         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
6608           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
6609           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
6610           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
6611         Change float to double everywhere with the exception of 0<->1.0 alignment
6612         and GtkCurve.
6613
6614 2001-03-19  Tor Lillqvist  <tml@iki.fi>
6615
6616         * gdk/win32/gdkdrawable-win32.c
6617         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
6618         output.
6619
6620         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
6621         gdkwin32.h.
6622
6623 2001-03-18  Tor Lillqvist  <tml@iki.fi>
6624
6625         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
6626         print_event_state, print_event): Use preprocessor macro to make
6627         code more compact. Print also GDK_WINDOW_STATE events.
6628         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
6629         
6630         * gtk/gtk.def
6631         * gtk/makefile.mingw.in: Update.
6632
6633         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
6634         to catch also Cygwin.
6635
6636 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
6637
6638         * gtk/gtkspinbutton.[hc]: added rc-style argument
6639         GtkSpinButton::shadow_type.
6640         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
6641         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
6642         rc-style settings.
6643
6644         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
6645
6646         * gtk/gtkwidget.c: quark cleanups.
6647
6648         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
6649         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
6650         to create_rc_style() (we don't do cloning in standard OO sense).
6651         added per rc style properties.
6652         
6653         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
6654         property values and for caching those. some cleanups.
6655         
6656         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
6657         
6658         * gtk/gtksettings.[hc]: new file for global rc-file properties
6659         (at least currently, should get extended to support X properties
6660         and other communication mechanisms).
6661         
6662         * gtk/gtkwidget.[hc]: added style property support:
6663         (gtk_widget_class_install_style_property_parser): install style
6664         property pspec with parser function for rc-file values other
6665         than LONG, DOUBLE or STRING.
6666         (gtk_widget_class_install_style_property): same as above without
6667         parser (parsers are going to be needed quite infrequently).
6668         (gtk_widget_style_get_property): retrive style property value.
6669         (gtk_widget_style_get_valist): same as above with varargs support,
6670         has NOCOPY semantics.
6671         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
6672
6673 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
6674
6675         * demos/gtk-demo/main.c (row_activated_cb): modified to use
6676         "row_activated" signal.
6677
6678         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
6679         stupidity.  Lets actually pass in the row with this signal...
6680
6681 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
6682
6683         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
6684
6685         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
6686
6687         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
6688         everything into the ::destroy function, and freed a lot more.
6689
6690 2001-03-16  Havoc Pennington  <hp@redhat.com>
6691
6692         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
6693         instead of gint16, to avoid overflow issues, since sizes > 16-bit
6694         are now allowed.
6695
6696 2001-03-16  Havoc Pennington  <hp@redhat.com>
6697
6698         * Applied patch from Nils Barth (bug # 51041) to 
6699         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
6700         in various places.
6701
6702 2001-03-15  Havoc Pennington  <hp@redhat.com>
6703         
6704         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
6705         for properties to set on the tag.
6706
6707         * gtk/testtext.c: fixups to reflect create_tag change
6708         
6709         * gtk/gtktexttag.c (gtk_text_tag_set_property):
6710         background/foreground stipple are objects, not boxed.
6711
6712         * demos/gtk-demo/textview.c: intellihancing
6713
6714 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
6715
6716         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
6717         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
6718
6719 2001-03-16  Alexander Larsson  <alexl@redhat.com>
6720
6721         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
6722         Fix sign error with queued region translations.
6723
6724 2001-03-15  HideToshi Tajima  <tajima@happy>
6725
6726         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
6727         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
6728         * gtk/gtkentry.c (update_im_cursor_location): 
6729         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
6730         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
6731         set_cursor_pos to set_cursor_location in GtkInputContext class
6732
6733 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
6734
6735         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
6736         the location of the cell relative to its area.
6737         * gtk/gtkcell*: modified for above change
6738         * gtk/gtktreeview.c: modified for above change.
6739
6740 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
6741
6742         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
6743          (gtk_tree_view_finalize): actually unref the model.  Thanks to
6744         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
6745
6746 2001-03-14  Havoc Pennington  <hp@redhat.com>
6747
6748         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
6749         
6750         * gtk/gtk.h: remove gtkdata.h
6751
6752         * gtk/Makefile.am: remove gtkdata
6753         
6754         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
6755         not "disconnect" on the adjustments.
6756         
6757         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
6758         GtkData
6759
6760         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
6761         not GtkData
6762
6763         * configure.in: handle case where X render exists, but Pango lacks
6764         Xft support.
6765
6766 2001-03-15 Alexander Larsson  <alexl@redhat.com>
6767
6768         * gtk/gtktoolbar.[ch]:
6769         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
6770         to add stock items to toolbars.
6771
6772         * gtk/Makefile.am:
6773         Remove ../gdk/gdkim.h from gdk_headers.
6774
6775 2001-03-15  Sven Neumann  <sven@gimp.org>
6776
6777         * gdk/gdkim.h: removed
6778         
6779         * gdk/gdkprivate.h
6780         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
6781
6782 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
6783
6784         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
6785         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
6786         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
6787         set_cursor_pos() virtual method
6788
6789         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
6790         (gtk_im_context_xim_set_cursor_pos): add implementation for
6791         set_cursor_pos() method
6792
6793         * gtk/gtkentry.c (recompute_idle_func): set current cursor
6794         position to input methods
6795
6796 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
6797
6798         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
6799         code a lot.
6800
6801         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
6802         g_mem_chunk.
6803         (_gtk_tree_data_list_alloc): use g_mem_chunk.
6804         (_gtk_tree_data_list_node_to_value): Fix to switch on
6805         G_TYPE_FUNDAMENTAL.
6806         (_gtk_tree_data_list_value_to_node): Fix to switch on
6807         G_TYPE_FUNDAMENTAL.
6808         (_gtk_tree_data_list_node_copy): Fix to switch on
6809         G_TYPE_FUNDAMENTAL.
6810
6811 2001-03-12  Havoc Pennington  <hp@redhat.com>
6812
6813         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
6814         to convert to new property API. Also, change default_width and
6815         default_height get_property to return 0 as the flag value for
6816         "unset"; -1 is not a valid value for these fields.
6817
6818 2001-03-12  Havoc Pennington  <hp@redhat.com>
6819
6820         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
6821         enum with registration for icon sizes, instead of strings.
6822
6823         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
6824         gtkwidget.c: Fix to reflect GtkIconSize
6825         
6826 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6827
6828         Make GtkFB compile and link.
6829         
6830         * gdk/linux-fb/gdkdrawable-fb2.c:
6831         window->mapped to GDK_WINDOW_IS_MAPPED(). 
6832         
6833         * gdk/linux-fb/gdkwindow-fb.c:
6834         window->mapped to GDK_WINDOW_IS_MAPPED(). 
6835         Added gdk_window_shape_combine_region.
6836         Added assorted placeholders for unimplemented new GdkWindow API calls.
6837
6838 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6839
6840         * gtk/gtkfilesel.c:
6841         Add more test when converting filenames from/to utf-8.
6842         Don't allow entering text in the filename entry which isn't allowed in
6843         a filename. Just beep instead.
6844
6845 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6846
6847         * gtk/gtkclist.c:
6848         Scroll using gdk_window_scroll(). Don't wait for exposes.
6849         Move the column headers in an order that makes them flash less.
6850
6851 2001-03-10  Hans Breuer  <hans@breuer.org>
6852
6853         * gdk/gdk.def : updated
6854
6855         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
6856         to offseting the clip_mask at the right place
6857
6858         * gdk/win32/gdkwindow-win32.c : don't create background brushes
6859         for all the gdkClasses, especially not for the input_only case.
6860         Otherwise flickering wont be avoidable, because we don't get
6861         WM_ERASEBKGND message for these windows.
6862
6863         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
6864         and fixed massive redraw problems apparently triggered by Alexanders 
6865         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
6866         but it seems to work quite well :-)
6867
6868         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
6869         prototype
6870
6871 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
6872
6873         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
6874         (gtk_list_store_set_cell): Fix a stupid typo.
6875
6876 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
6877
6878         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
6879         select_all not work if you're in SINGLE mode (it doesn't make that
6880         much sense, anyway.)
6881
6882         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6883         handle types more sanely.
6884         (_gtk_tree_data_list_value_to_node): handle types more sanely.
6885         (_gtk_tree_data_list_node_copy): handle types more sanely.
6886
6887         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
6888         GValue better. Converts the type as well.
6889
6890         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
6891         GValue better. Converts the type as well.
6892
6893 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
6894
6895         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
6896         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
6897         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
6898         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
6899
6900         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
6901         gdk_im/gdk_ic.
6902
6903 2001-03-09  Hans Breuer  <hans@breuer.org>
6904
6905         * gdk/gdk.def : updated
6906
6907         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
6908         for their palette
6909
6910         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
6911         removing
6912
6913         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
6914         removing and implemented Havoc's GdkWindow state functions; 
6915         stick/unstick only as no-op, cause I don't know how to emulate 
6916         on win32 ...
6917
6918         * gtk/gtk.def : updated
6919
6920         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
6921
6922         * gtk/gtktypeutils.c : #include <string.h>
6923
6924         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
6925
6926 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
6927
6928         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
6929         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
6930         not a boxed.
6931
6932 2001-03-09  Alexander Larsson  <alexl@redhat.com>
6933
6934         * docs/Changes-2.0.txt:
6935         Document expose event->region change and that gtk_widget_event
6936         doesn't allow passing expose events.
6937
6938         * gdk/gdkevents.h:
6939         Add region to expose event.
6940         
6941         * gdk/gdkevents.c:
6942         Handle event->region in gdk_event_copy() and gdk_event_free().
6943
6944         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
6945         Generate expose_event->region when creating expose events.
6946
6947         * gdk/x11/gdkevents-x11.c:
6948         Generate expose events with regions when translating X events.
6949
6950         * gtk/gtkcontainer.[ch]:
6951         Default expose handler that propagates expose events to NO_WINDOW
6952         children. New function gtk_container_propagate_expose()
6953
6954         * gtk/gtkwidget.[ch]:
6955         Moved gtk_widget_event implementation to gtk_widget_event_internal.
6956         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
6957         expose events. New function gtk_widget_send_expose() to send expose
6958         events. New function gtk_widget_region_intersect() to calculate
6959         window/region intersections.
6960         
6961         * gtk/gtkmain.c (gtk_main_do_event):
6962         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
6963         Use gtk_widget_send_expose() to send expose events.
6964         
6965         * gtk/gtkbin.c:
6966         * gtk/gtkbox.c:
6967         * gtk/gtkfixed.c:
6968         * gtk/gtkimagemenuitem.c:
6969         * gtk/gtklist.c:
6970         * gtk/gtkpacker.c:
6971         * gtk/gtktable.c:
6972         * gtk/gtktree.c:
6973         Remove expose handler, using the default container implementation
6974         instead.
6975         
6976         * gtk/gtkbutton.c:
6977         * gtk/gtkcheckbutton.c:
6978         * gtk/gtkeventbox.c:
6979         * gtk/gtkfixed.c:
6980         * gtk/gtkhandlebox.c:
6981         * gtk/gtklayout.c:
6982         * gtk/gtklistitem.c:
6983         * gtk/gtkmenu.c:
6984         * gtk/gtkmenubar.c:
6985         * gtk/gtkmenuitem.c:
6986         * gtk/gtknotebook.c:
6987         * gtk/gtkoptionmenu.c:
6988         * gtk/gtkpaned.c:
6989         * gtk/gtkscrolledwindow.c:
6990         * gtk/gtktogglebutton.c:
6991         * gtk/gtktoolbar.c:
6992         * gtk/gtktreeitem.c:
6993         * gtk/gtkviewport.c:
6994         Chain expose handler to parent class handler. Use
6995         gtk_container_propagate_expose() to propagate exposes.
6996
6997         * gtk/gtkclist.c (check_exposures):
6998         * gtk/gtktext.c (process_exposes):
6999         Use gtk_widget_send_expose instead of gtk_widget_event.
7000
7001 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
7002
7003         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
7004
7005 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
7006
7007         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
7008         unref the nodes.   Fixes bug #50058.
7009
7010         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
7011         "::ref_iter" to "::ref_node".
7012         (gtk_tree_model_unref_node): change "::unref_iter" to
7013         "::unref_node". Fixes bug #50064.
7014
7015 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
7016
7017         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
7018         support for invisible cells.
7019          (gtk_tree_view_bin_expose): ditto
7020
7021 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
7022
7023         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
7024         on gobjects.
7025
7026         * tests/testtreefocus.c (main): New test file.
7027
7028         * tests/testtreeview.c: update to latest glib changes.
7029
7030         * tests/testtreecolumns.c: update to latest glib changes.
7031
7032 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
7033
7034         * gtk/testgtk.c: re-enabled event watcher emission hooks.
7035
7036 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
7037
7038         * *.c: added accumulator data argument to g_signal_newc()
7039         functions.
7040
7041         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
7042         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
7043         * gtk/treestoretest.c (make_window):
7044         s/g_signal_connect/g_signal_connectc/.
7045
7046         * gtk/gtktextbuffer.c: completed signal arg fixups,
7047         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
7048
7049 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
7050
7051         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
7052         G_CONST_RETURN.
7053
7054         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
7055         ::hierarchy-changed signal when a widget changes
7056         from anchored to unanchored or vice versa.
7057         (anchored means 
7058          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
7059         Use a private flag to keep track of this efficiently.
7060
7061 2001-03-07  Havoc Pennington  <hp@redhat.com>
7062
7063         * gtk/testgtk.c (create_spins): uglify so that size request gets
7064         tested.
7065
7066         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
7067         request on values for upper/lower, completes #6152
7068
7069 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
7070
7071         * Makefile.am: Remove gtk-config-2.0 again.
7072         (Grrrr, pkg-config. And stops make loops.)
7073
7074 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
7075
7076         * gtk/gtksignal.[hc]: removed old emission hook API.
7077         
7078         * docs/Changes-2.0.txt: fixed sections.
7079         
7080         * gtk/gtktextbuffer.c: signal arg fixups.
7081
7082 2001-03-07  Havoc Pennington  <hp@redhat.com>
7083
7084         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
7085
7086         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
7087         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
7088         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
7089         validation and the redraw which is higher priority than the
7090         validation.
7091
7092 2001-03-07  Havoc Pennington  <hp@redhat.com>
7093
7094         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
7095         (gtk_entry_set_property): remove trailer
7096
7097         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
7098         (gtk_entry_get_width_chars): new functions, to set size request to 
7099         a given number of characters
7100
7101         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
7102
7103         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
7104         (gtk_dialog_get_has_separator): new function
7105         (run_delete_handler): fix to not emit "response" signal
7106         because we already did in the delete event handler installed
7107         at dialog creation time.
7108         
7109         * gtk/gtkdialog.h: add a has_separator property,
7110         add GTK_DIALOG_NO_SEPARATOR flag
7111
7112 2001-03-07  Havoc Pennington  <hp@redhat.com>
7113
7114         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
7115         off decorations for a window.
7116
7117         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
7118         changes
7119
7120         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
7121         to get location of PangoLayout inside the label, closes #51198
7122
7123         * gtk/testgtk.c (create_bbox): fix up button box usage
7124
7125         * gtk/testcalendar.c (create_calendar): fix up button box usage
7126
7127         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
7128
7129         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
7130
7131         * gtk/gtkhbbox.h: deprecations
7132
7133         * gtk/gtkvbbox.h: deprecations
7134
7135         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
7136         emulate deprecated gtk_button_box_get_spacing
7137
7138         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
7139         the "set global default" functions
7140         (struct _GtkButtonBox): remove "spacing" field, use the one from 
7141         GtkBox base class
7142
7143         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
7144
7145         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
7146         render the icon, return the missing image icon.
7147
7148         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
7149         image icon if the load fails.   
7150
7151         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
7152         when no image is found; should be the Netscape "missing image"
7153         icon eventually but for now is a random image
7154
7155         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
7156         role for the session manager
7157
7158         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
7159
7160         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
7161         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
7162
7163         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
7164
7165 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
7166
7167         * gtk/*.c: marshaller fixes.
7168         
7169         * gtk/gtkmarshal.list: extreme cleanup.
7170
7171         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
7172         param spec for now.
7173
7174         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
7175         where appliable.
7176
7177         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
7178         special cased autogenerated boxed types from gtktypebuiltins_ids.c
7179         which are not reference counted:
7180         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
7181         PangoFontDescription, GtkTreeIter and GtkTreePath.
7182
7183 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
7184
7185         * gtk/gtktreeselection.h: 
7186         * gtk/gtktreemodel.c:
7187         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
7188         file should be included directly, and gobject/gmarshal.h
7189         as well as gtk/gtkmarshal.h even can't be included directly.
7190
7191         * Makefile.am: grr, install gtk-config-2.0.
7192
7193         * gtk/testgtk.c:
7194         * gtk/simple.c:
7195         * gtk/gtkmenu.c:
7196         * gtk/gtkitemfactory.c: use g_object_connect() instead of
7197         passing "*signal*::*" args to gtk_widget_set().
7198         
7199         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
7200         
7201         * gtk/*.c: removed trailer arg from property setters and getters.
7202         macro fixups.
7203
7204 2001-03-07  Alexander Larsson  <alexl@redhat.com>
7205
7206         * gtk/gtklabel.c (set_markup): Removed warning
7207
7208 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
7209
7210         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
7211         field to allow you to hide cell renderers.
7212
7213         * gtk/gtkcellrenderer.c: Add support for invisible cells.
7214
7215         * gtk/gtktreeview.c: Add support for invisible cells.
7216
7217 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
7218
7219         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
7220         Add "clicked" signal back to columns.
7221
7222         * ChangeLog: remove conflict markers.
7223
7224 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
7225
7226         * gtk/gtkbutton.c: Add animation of activation by, on 
7227         activate, pressing the button, and adding a timeout that 
7228         releases the button after 250ms or on key release and
7229         emits ::clicked. (#51501)
7230
7231         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
7232         action area, we connect to ::clicked instead of ::activate
7233         so the dialog stays up through the animation.
7234
7235 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
7236
7237         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
7238         check the ignore_enter flag for the menu shell that
7239         the item is actually a child of, not for attached
7240         submenus. (#51536)
7241
7242 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
7243
7244         * gtk/gtkmain.c (gtk_propagate_event): Only do special
7245         special key-press grab handling for widgets within
7246         GtkWindows. Otherwise, fall through to normal case.
7247
7248         This prevents key events being sent twice to GtkInvisible
7249         widgets, which can cause all sorts of mischief.
7250
7251 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
7252
7253         * gtk/gtkmain.c (gtk_propagate_event): When a grab
7254         widget is in effect, give the grab widget a first
7255         crack at KEY_PRESS/RELEASE events. (#424)
7256
7257 2001-03-06  James Henstridge  <james@daa.com.au>
7258
7259         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
7260         offset for the window_state_event to point at window_state_event
7261         rather than no_expose_event.
7262
7263 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
7264
7265         * gtk/gtkimmodule.h: fix busted /* comment */
7266
7267 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
7268
7269         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
7270         object properties.
7271
7272 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
7273
7274         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
7275         add object properties.
7276
7277         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
7278         to add object properties.
7279
7280         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
7281         object properties.
7282
7283         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
7284         add object properties.
7285
7286         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
7287         object properties.
7288
7289 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
7290
7291         * gtk/gtktreemodel.c: renamed "child_toggled" to
7292         "has_child_toggled".
7293
7294         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
7295         handle new signal name.
7296
7297         * gtk/gtktreestore.c: Updated to handle new signal name.
7298         * gtk/gtklisttore.c: Updated to handle new signal name.
7299         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
7300
7301 2001-03-05  Alexander Larsson  <alexl@redhat.com>
7302
7303         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
7304         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
7305
7306 2001-03-05  Michael Natterer  <mitch@gimp.org>
7307
7308         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
7309         pixbuf-engine coincidentially also failed to make one of it's
7310         parent_class pointers static, causing overwriting of GtkLabel's
7311         parent_class pointer in pixbuf_style_class_init().
7312         (Will commit the fix to the pixbuf-engine too).
7313
7314 2001-03-05  Alexander Larsson  <alexl@redhat.com>
7315
7316         * gdk/gdkwindow.h:
7317         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
7318         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
7319         gdk_window_set_icon_list for net wmspec functionality.
7320
7321         * gdk/x11/gdkwindow-x11.c:
7322         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
7323         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
7324         gdk_window_set_icon_list.
7325         Added gdk_wmspec_change_state helper function and used it in the code.
7326         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
7327
7328         * gtk/gtkdialog.c (gtk_dialog_init):
7329         Set GDK_WINDOW_TYPE_HINT_DIALOG.
7330
7331         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
7332         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
7333
7334         * gtk/gtkwindow.c:
7335         new function gtk_window_set_type_hint.
7336         On realize, set type hint and modal hint.
7337
7338         * gtk/gtkwindow.h:
7339         Added type_hint field and gtk_window_set_type_hint.
7340
7341 2001-03-05  Alexander Larsson  <alexl@redhat.com>
7342
7343         * gtk/gtklabel.[ch]:
7344         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
7345         New function gtk_label_get_accel_keyval () to get the underline accelerator
7346         of the label. Setting the label pattern overrides other attributes.
7347
7348 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
7349
7350         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
7351         Added missing initializers to gtk_rc_style_init().
7352
7353 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
7354
7355         * gtk/gtktextview.c: fixed bug #51097 about setting 
7356         gtk_text_view_set_border_window_size() if the widget is 
7357         already realized.
7358
7359 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
7360
7361         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
7362
7363         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
7364         comment. Won't do to have duplicated doc comments between
7365         the platform subdirs.
7366
7367 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
7368
7369         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
7370           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
7371
7372         Detectable auto-repeat - make a repeating key generate
7373         press/press/press/release instead of press/release pairs.
7374
7375         If we have Xkb and XkbSetDectableAutoRepeat supports
7376         that, we do it that way. Otherwise, when we get
7377         a release event, we check ahead with XPending to see
7378         if the next key is a KeyPress with the same keycode
7379         and timestamp. (Not 100% reliable, but pretty close.)
7380           
7381 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
7382         
7383         * gtk/gtkmain.c (gtk_propagate_event): Only do special
7384         special key-press grab handling for widgets within
7385         GtkWindows. Otherwise, fall through to normal case.
7386  
7387         This prevents key events being sent twice to GtkInvisible
7388         widgets, which can cause all sorts of mischief.
7389  
7390 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
7391  
7392         * gtk/gtkmain.c (gtk_propagate_event): When a grab
7393         widget is in effect, give the grab widget a first
7394         crack at KEY_PRESS/RELEASE events. (#424)
7395  
7396 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
7397
7398         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
7399         to extend the selection. (Roughly based on patch
7400         from Jay Cox, #50939)
7401
7402         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
7403         to properly handle previous GDK_BUTTON_PRESS. 
7404         (Patch from Jay Cox, #50938)
7405
7406         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
7407         '\0' back along with the deleted text. (#51148)
7408
7409 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
7410
7411         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
7412         the group when extracting it from the X keyboard event.
7413
7414         * modules/input/Makefile.am modules/input/imipa.c: 
7415         Simple module for entering IPA. (Do we need a 
7416         gtk-stupid-input-tricks CVS module?)
7417
7418 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
7419
7420         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
7421         const.
7422
7423         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
7424
7425         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
7426         is no focus widget for the dialog currently, grab the focus as well
7427         as the default.
7428
7429         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
7430         the action area's children to iterate through, not the
7431         dialog's children.
7432
7433 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
7434
7435         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
7436         Add plug-socket tests. (Won't work worth a darn until I commit
7437         the rest of the plug-socket changes, but no reason these
7438         can't go into CVS now.)
7439
7440 2001-03-02  Havoc Pennington  <hp@redhat.com>
7441
7442         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
7443         _gdk_region_get_xrectangles()
7444
7445         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
7446
7447         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
7448
7449         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
7450         function, contributed by Ron Steinke    
7451
7452         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
7453         gdk_net_wm_supports
7454
7455         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
7456         New function, contributed by Ron Steinke
7457
7458         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
7459         used to line up the text in the entry when using the entry for
7460         editable sheet cell hacks
7461
7462         * gtk/testgtk.c (create_entry): test the activate_default setting
7463         on GtkEntry
7464
7465         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
7466         cause the entry to activate the default button for a dialog when 
7467         activated
7468         (gtk_entry_get_activates_default): new function
7469
7470 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
7471
7472         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
7473         Hwang to move call to sync_selection() up a few lines
7474         to before the row list is modified, to fix crash when
7475         removing rows in the undo_selection list.
7476
7477         (Test case provided by Daniel Elstner:
7478
7479         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
7480
7481 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
7482
7483         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
7484         of tree->root_tree in parent_set rather than _map(), 
7485         fixing #50892 in a bit better manner.
7486
7487 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
7488
7489         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
7490
7491 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
7492
7493         * gtk/gtkstyle.c : Remove duplicate fwd decl for
7494         gtk_default_draw_shadow.
7495
7496 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
7497
7498         * gdk/gdkimage.c (gdk_image_new): Remove excess 
7499         warning, make warnings more verbose, treat a error
7500         in shmat as permanent, and don't try again.
7501         (#51163, Ed Randall.)
7502
7503 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
7504
7505         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
7506         delay for the first click before starting to scroll.
7507         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
7508
7509         * gtk/gtktext.c: GtkText should have I-beam cursor. 
7510         (based on gtk-enf-990513-1.patch, Eric Fisher.)
7511
7512 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
7513
7514         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
7515         cleanup to remove some references to unused
7516         ->xoffset, ->yoffset.
7517
7518 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
7519
7520         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
7521         mask. (#51039, fix from Martin Maierhofer)
7522
7523 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
7524
7525         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
7526         for unshifted + and shifted = for non-us keyboards.
7527         Make <Control>+ and <Control>- work as well as 
7528         <Control>KP_Plus, <Control>KP_Minus for recursive
7529         open/close.  (#2682, René Seindal)
7530
7531 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
7532
7533         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
7534         the active menu item before deactivating the menu,
7535         so gtk_menu_popdown doesn't change the history. (#50964)
7536         
7537 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
7538
7539         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
7540         draw lines with text_gc rather than black_gc.
7541         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
7542
7543 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
7544
7545         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
7546         Move handling of buttons fully in gtktreeviewcolumn.  This code is
7547         less interrelated then it was, but it still requires the
7548         GtkTreeView to map it.
7549
7550         * test/testtreecolumn.c: Now I can add a column to one view,
7551         remove it, add it to the another view, remove it, then re-add it
7552         to the first.  Nifty.
7553
7554 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
7555
7556         * docs/tutorial/gtk-tut.sgml: Minor corrections
7557
7558 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
7559
7560         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
7561         GtkRowReference.
7562
7563 2001-02-28  Havoc Pennington  <hp@redhat.com>
7564
7565         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
7566         draw_default
7567         (gtk_widget_draw_focus): remove this function; we could instead
7568         make it just gtk_widget_draw(), but in most cases I think the
7569         result would be broken user code, so think it's better to have
7570         that code not compile and get fixed
7571         (gtk_widget_draw_default): ditto
7572
7573         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
7574         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
7575         
7576         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
7577         widgets lose/get the default, instead of calling draw_default
7578         
7579         * docs/Changes-2.0.txt: note about all this
7580
7581         Then fixed every widget in GTK, I won't list all the filenames.
7582
7583 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
7584
7585         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
7586         _gtk_tree_row_reference_deleted.
7587         (inserted_callback): Proxy out to
7588         _gtk_tree_row_reference_inserted.
7589         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
7590         get around signal emission ordering problem.
7591
7592         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7593         fix to work with SINGLE 
7594         (_gtk_tree_selection_internal_select_node): Major sanitization on
7595         selections.  SINGLE now seems to work.
7596
7597         * tests/Makefile.am: add testtreecolumn.c:
7598
7599         * tests/testtreecolumn.c: New test.  Mostly points out selection
7600         bugs currently, but will test columns later.
7601
7602         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
7603         selection bug.  I hate touching this code -- it's scary.
7604
7605 2001-02-26  Havoc Pennington  <hp@redhat.com>
7606
7607         * gtk/testgtk.c: test the window state stuff
7608
7609         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
7610         window come to the user's attention as if it were just created
7611         (gtk_window_iconify): new function
7612         (gtk_window_deiconify): new function
7613         (gtk_window_stick): new function
7614         (gtk_window_unstick): new function
7615         (gtk_window_maximize): new function
7616         (gtk_window_unmaximize): new function
7617
7618         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
7619
7620         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
7621
7622         * gdk/x11/gdkevents-x11.c: create window state events when
7623         appropriate
7624         (gdk_wmspec_supported): new function
7625
7626         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
7627         iconification before showing the window
7628         (gdk_window_deiconify): new function
7629         (gdk_window_stick): new function
7630         (gdk_window_unstick): new function
7631         (gdk_window_maximize): new function
7632         (gdk_window_unmaximize): new function
7633
7634         * gdk/gdkwindow.c: store the window state in the window; 
7635         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
7636         window->mapped.
7637         (gdk_window_get_state): return the current window state
7638
7639         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
7640         (gdk_event_get_state): handle GDK_WINDOW_STATE
7641         (gdk_synthesize_window_state): function to create the window state
7642         events
7643
7644         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
7645         event, for changes to "window state" such as maximized, sticky, 
7646         etc.
7647         
7648         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
7649         focuses a window
7650
7651         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
7652         finds out if we support a given WM spec hint
7653
7654 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
7655
7656         * docs/faq/gtk-faq.sgml: New question re memory leaks.
7657
7658 2001-02-25  Hans Breuer  <hans@breuer.org>
7659
7660         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
7661         cause we want to loose those prototypes only in the latter case
7662
7663         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
7664         GdkPixmapImplWin32 because it itsn't derived from it. Use the
7665         impl member variable instead
7666
7667         * gtk/gtk.def : updated
7668
7669         * gtk/gtklist.c : 
7670         * gtk/gtkmenus.c : include <string.h> for memset ()
7671
7672         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
7673         for everthing built here, but for gtk-x.x.dll only. This solves
7674         problem of indifferent gtk type definitions
7675
7676 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
7677
7678         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
7679
7680 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
7681
7682         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
7683         column that is exposed.
7684
7685         (_gtk_tree_view_update_size): Changed name from set_size, and
7686         changed function to do more work, and not force people calling it
7687         to figure out the size.  Simplifies a lot of code elsewhere.
7688
7689 2001-02-23  Alexander Larsson  <alexl@redhat.com>
7690
7691         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
7692         return solid masks for xpms that have no transparent color.
7693         This makes the ..._create_from_xpm... API backwards
7694         compatible.
7695
7696 2001-02-23  Tor Lillqvist  <tml@iki.fi>
7697
7698         * README.win32: Update. Mention the gtk-1-3-win32-production
7699         branch.
7700
7701         * gdk/win32/bdfcursor.c: New file. A program that generates
7702         xcursors.h. Thanks to Stefan Ondrejicka.
7703
7704         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
7705         compact format.
7706
7707         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
7708
7709         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
7710         function, uses xcursors.h.
7711         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
7712         cursor from inline data instead of using LoadCursor() to generate
7713         it from a resource.
7714
7715         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
7716         event, must check the Windows message for mouse button state, as
7717         the GDK event state might not have been built if it is
7718         undelivered. Remove one goto.
7719
7720         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
7721         SetCursor() if the current cursor as returned by GetCursor() is
7722         the window's previous cursor. The ChildWindowFromPoint() test
7723         apparently didn't work correctly.
7724
7725         * gdk/win32/rc/*.cur: Remove.
7726
7727         * gdk/win32/rc/gdk.rc.in: Remove cursors.
7728
7729         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
7730
7731         * gtk/makefile.{mingw,msc}.in: Updates.
7732
7733 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
7734
7735         * gtk/gtktreemodel.h: add functions for signal emission.
7736
7737         * gtk/gtktreestore.c: move to use above functions instead of
7738         g_signal_emit.
7739
7740         * gtk/gtkliststore.c: ditto
7741
7742 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
7743
7744         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
7745         GObject instead of GtkObject.
7746
7747         * gtk/gtkliststore.c: ditto.
7748
7749         * gtk/gtktreemodelsort.c: ditto.
7750
7751         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
7752         GtkTreeModelIface, instead of in each model.
7753
7754 2001-02-21  Havoc Pennington  <hp@redhat.com>
7755
7756         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
7757         unbreak this function
7758
7759         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
7760         properties
7761
7762         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
7763         properties
7764
7765         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
7766         properties
7767
7768         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
7769         mean unset the max length
7770
7771 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
7772
7773         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
7774         Changed name to be set_cell_data_func to make it clear what
7775         the functino does.  Close bug #51069.
7776
7777 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
7778
7779         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
7780         have memory actually freed.  Keeps box running longer.
7781
7782 2001-02-21  Alexander Larsson  <alexl@redhat.com>
7783         
7784         * gtk/gtkseparatormenuitem.[ch]:
7785         Added new menu separator item. The drawing and size handling
7786         is still done in GtkMenuItem, but the API is a bit more sane.
7787         
7788         * gtk/Makefile.am:
7789         Add gtkseparatormenuitem.[ch].
7790
7791         * gtk/gtk.h:
7792         Add gtkseparatormenuitem.h.
7793         
7794         * gtk/gtkentry.c:
7795         * gtk/gtkmenufactory.c:
7796         * gtk/gtktextview.c:
7797         Use the new API for menu separators.
7798         
7799         * demos/gtk-demo/menus.c (create_menu):
7800         Add some GtkSeparatorMenuItem demo code.
7801
7802 2001-02-20  Havoc Pennington  <hp@redhat.com>
7803
7804         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
7805         Lee Mallabone
7806
7807         * gtk/gtkarrow.c: Convert to new property API, patch from 
7808         Lee Mallabone
7809
7810 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
7811
7812         * tests/testtreeview.c (toggled_callback): fix to reflect change
7813         in GtkTreeModelStore.
7814
7815 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
7816
7817         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
7818         function to create an icon set from a pixbuf.
7819
7820 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7821
7822         * gtk/gtkcellrenderertext.[ch]:
7823         Add a "markup" property.
7824
7825         * gtk/treestoretest.c:
7826         Use the markup property, remove some leftover stuff from
7827         GtkTreeModelMapping.
7828
7829 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7830
7831         * gtk/gtklabel.c (gtk_label_set_selectable):
7832         Queue a redraw if the selectable setting was changed.
7833
7834 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7835
7836         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
7837         Actually copy the whole gc, not just the public parts.
7838         
7839         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7840         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
7841         labels.
7842
7843 2001-02-19  Havoc Pennington  <hp@pobox.com>
7844
7845         * gdk/gdkwindow.c: docs
7846
7847         * gdk/gdkrgb.c: docs
7848
7849         * gdk/gdkregion-generic.c: docs
7850
7851         * gdk/gdkgc.c (gdk_gc_set_values): docs
7852
7853         * gdk/gdkdraw.c: docs
7854
7855         * gdk/gdkdrawable.h: deprecate drawable get/set data
7856
7857 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
7858
7859         * demos/gtk-demo/dialog.c: Add simple new demo.
7860
7861 2001-02-19  Havoc Pennington  <hp@redhat.com>
7862
7863         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
7864         insert_child_anchor signal, bug #50245
7865
7866         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
7867         from create_child_anchor, so the anchor is passed in
7868
7869         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
7870         (_gtk_widget_segment_new): have the child anchor object passed in, 
7871         instead of creating it.
7872
7873         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
7874         to gtk_text_buffer_get_modified
7875
7876 2001-02-19  Havoc Pennington  <hp@redhat.com>
7877
7878         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
7879         changed GLib without fixing GTK
7880
7881         * gtk/gtkrange.h: Rename all the stupid implementation detail 
7882         functions to have an underscore in front. Most of them should 
7883         probably just go away, but for starters don't export them.
7884         Bug #50482
7885
7886 2001-02-19  Havoc Pennington  <hp@redhat.com>
7887
7888         * gdk/gdkcolor.h: test was backward, so deprecated functions were
7889         excluded by default
7890
7891         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
7892         clean up the old code a bit
7893
7894         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
7895         inconsistent state
7896
7897         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
7898         draw inconsistent state
7899
7900         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
7901         (create_menu): add inconsistent test
7902
7903         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
7904         new function
7905         (gtk_check_menu_item_get_inconsistent): new function
7906         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
7907         state (using etched in for now)
7908
7909         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
7910         draw inconsistent state
7911
7912         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
7913         function, used when the user has selected a range of stuff in
7914         different states
7915         (gtk_toggle_button_get_inconsistent): accessor for that
7916         (gtk_toggle_button_paint): draw inconsistent state (etched in?
7917         don't know what else to do)
7918
7919 2001-02-19  Hans Breuer <hans@breuer.org>
7920
7921         * gtk/gtk.def : updated exported symbols
7922
7923         * gtk/makefile.msc.in : updated
7924
7925         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
7926         a colormap, when invoked from testgtk::entry. I'm not sure where
7927         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
7928         avoids immediate crashing ...
7929
7930         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
7931         any objections ?
7932
7933         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
7934         0 parameter. At least msvc doesn't like macros with var args. 
7935         I simply removed the extra 0, was it a feature or a typo ?
7936
7937         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
7938         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
7939         because the value assignment to the internal struct wasn't working.
7940         I'm not absolutely sure. The problem could have been resolved by
7941         changing the "func" declartion in the struct, but was the pointer
7942         to the function pointer intended ?
7943
7944         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
7945
7946         * gdk/gdk.def : updated exported symbols
7947
7948         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
7949         only use SetDIBitsToDevice if there is a palette at the drawable
7950         and the image is GDK_VISUAL_PSEUDO_COLOR
7951
7952         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
7953
7954         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
7955
7956         * gdk/*/makefile.msc : updated
7957
7958 2001-02-19  Havoc Pennington  <hp@redhat.com>
7959
7960         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
7961         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
7962
7963         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
7964         (gdk_key_repeat_restore): nuke
7965
7966         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
7967         (gdk_init_check): no atexit func
7968
7969         * gdk/gdkrgb.h: mark some stuff deprecated
7970
7971         * gdk/gdkcolor.h: mark some stuff deprecated
7972         
7973         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
7974
7975         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
7976
7977 2001-02-16  Havoc Pennington  <hp@redhat.com>
7978
7979         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
7980         scroll steps.
7981
7982         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
7983         steps, and add Ctrl-arrow shortcuts for paging visually as with
7984         HScale, since Page Up and Page Down move logically.
7985
7986         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
7987         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
7988         
7989         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
7990         steps
7991         (gtk_range_scroll): handle the visual steps
7992
7993         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
7994         scroll steps
7995
7996         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
7997         steps, not the logical ones.
7998
7999         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
8000         (scroll_vertical): handle up/down steps
8001
8002 2001-02-19 Alexander Larsson  <alexl@redhat.com>
8003
8004         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
8005         Copy data and free data with free().
8006
8007         * gdk-pixbuf/gdk-pixbuf.c:
8008         * gdk-pixbuf/io-jpeg.c:
8009         * gdk-pixbuf/io-png.c:
8010         Use g_try_malloc/g_free instead malloc/free.
8011         
8012         * gdk-pixbuf/test-gdk-pixbuf.c:
8013         Must... initialize... gobject...
8014         
8015         * gdk-pixbuf/pixops/timescale.c:
8016         * gtk/gtkcalendar.c:
8017         Use g_malloc instead of malloc.
8018         
8019 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
8020
8021         * gtk/testgtkrc:
8022         Comment out property assignments, these don't work yet.
8023
8024 2001-02-17  Havoc Pennington  <hp@pobox.com>
8025
8026         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
8027         bit.
8028
8029 2001-02-17  Havoc Pennington  <hp@pobox.com>
8030
8031         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
8032         shadowed variables that had broken size request in some cases,
8033         leading to bogus tooltips (#50996)
8034
8035 2001-02-06  Jon K Hellan  <hellan@acm.org>
8036
8037         Implement fast browsing of tooltips, bug #50619
8038         
8039         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
8040         and last_popdown
8041         
8042         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
8043         use_sticky_delay and last_popdown.
8044         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
8045         time of popdown.
8046         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
8047         is NULL.
8048         (gtk_tooltips_recently_shown): New static function.  Return true
8049         if < sticky_delay has elapsed since last popdown.
8050         (gtk_tooltips_event_handler): Display window after sticky_delay
8051         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
8052         since last popdown.
8053         
8054 2001-02-17  Havoc Pennington  <hp@pobox.com>
8055
8056         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
8057         instead of (). #6394
8058
8059         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
8060         G_CONST_RETURN, make it return by reference, #50473
8061         
8062 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
8063
8064         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
8065         generated ENTER_NOTIFY event with 0, otherwise not explicitely
8066         setup fields contain garbage (e.g. subwindow, breaking
8067         gdk_drawable_ref() upon event copy).
8068         (gtk_menu_stop_navigating_submenu_cb): same here.
8069
8070         * gtk/gtklist.c (gtk_list_vertical_timeout): 
8071         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
8072         * gtk/gtkclist.c (vertical_timeout): 
8073         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
8074         default-zero-intialization for unions to memset(,0,), as unions are
8075         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
8076         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
8077
8078         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
8079         g_closure_sink() warning.
8080
8081         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
8082         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
8083         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
8084         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
8085         
8086 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
8087
8088         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
8089         gtk_*_store_get, and moved to GtkTreeModel.
8090
8091         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
8092
8093         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
8094
8095         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
8096
8097         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
8098         set the func.
8099
8100         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8101         freeze/thaw notify between setting all the properties for a cell.
8102
8103         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
8104
8105 2001-02-15  Havoc Pennington  <hp@redhat.com>
8106
8107         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
8108         the X coordinates so they're with respect to the line, rather than 
8109         with respect to the layout.
8110
8111         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
8112         Mallabone
8113
8114         * gtk/testgtk.c (create_range_controls): add vscale tests, 
8115         and inverted test
8116
8117         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
8118         #50806
8119
8120         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
8121
8122         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
8123         gtk_text_iter_is_end
8124
8125         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
8126         rename gtk_text_buffer_get_end_iter
8127
8128         * gtk/testgtk.c (create_labels): Add test for selectable
8129
8130         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
8131         the selection stuff. This code is kind of broken since it doesn't 
8132         use the theme engine.
8133
8134         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
8135         fix infinite loop and y offset problem
8136         (gdk_draw_layout_line_with_colors): fix foreground color handling
8137
8138         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
8139         that makes the label selectable.
8140         
8141         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
8142         layout when the style is set, since fonts etc. could have changed.      
8143
8144 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
8145
8146         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
8147
8148         * gtk/gtktreemodelsimple.[ch]: removed.
8149
8150 2001-02-16  Alexander Larsson  <alexl@redhat.com>
8151
8152         * gtk/gtktreemodelmapping.[ch]:
8153         New files. Implement GtkTreeModelMapping.
8154         
8155         * gtk/Makefile.am:
8156         Add gtktreemodelmapping.[ch].
8157         
8158         * gtk/gtk.h:
8159         Add gtktreemodelmapping.h
8160
8161         * gtk/treestoretest.c:
8162         Test the GtkTreeModelMapping
8163
8164 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
8165
8166         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
8167         have a demo, we might as well pass in real values.  Thanks to
8168         clahey for pointing this out.
8169
8170 2001-02-14  Havoc Pennington  <hp@pobox.com>
8171
8172         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
8173         "static" to a private function
8174         (gtk_image_menu_item_class_init): remove destroy handler,
8175         add "image" object property
8176
8177 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
8178
8179         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
8180         Add a shortcut if the window and the current clip_region doesn't
8181         overlap. This is needed when there are a lot of windows in a
8182         window. The layout test in testgtk is a good test.
8183
8184         * gdk/linux-fb/gdkwindow-fb.c:
8185         Whitespace fix.
8186
8187 2001-02-13  Sven Neumann  <sven@convergence.de>
8188
8189         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
8190
8191 2001-02-13  Alexander Larsson  <alexl@redhat.com>
8192
8193         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
8194         Don't reference last_cursor if it is null. Fixes crash when rotating
8195         the screen before having moved the mouse.
8196
8197         * gdk/linux-fb/gdkcc-fb.c: Zapp!
8198
8199         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
8200
8201         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
8202         when using 90 or 270 degrees rotation.
8203
8204 2001-02-12  Havoc Pennington  <hp@pobox.com>
8205
8206         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
8207         it always set the foreground, even if we were only using
8208         a stipple.
8209         (gdk_draw_layout_line_with_colors): new function, allow
8210         override colors
8211         (gdk_draw_layout_with_colors): new function, allow override
8212         colors
8213         (gdk_pango_layout_line_get_clip_region): function to get the clip
8214         region for a logical text range
8215         (gdk_pango_layout_get_clip_region): get the clip region for a
8216         logical text range
8217
8218         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
8219         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
8220         the right number of arguments.
8221
8222         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
8223         enhance the function to check that node data corresponds to a 
8224         view still belonging to the tree.
8225
8226         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
8227         GtkTreePath
8228         (gtk_tree_view_inserted): ditto
8229         (gtk_tree_view_child_toggled): ditto
8230
8231         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
8232         simplify this code.
8233
8234         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
8235         a PangoAttrList
8236
8237         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
8238
8239         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
8240
8241         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
8242         size in the size request 
8243         (gtk_menu_bar_size_allocate): consider toggle size here
8244
8245         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
8246         that displays a widget in the toggle slot
8247
8248         * gtk/testgtk.c: test GtkImageMenuItem
8249
8250         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
8251         
8252         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
8253         request and allocation
8254
8255         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
8256
8257         * gtk/gtkcheckmenuitem.c
8258         (gtk_check_menu_item_toggle_size_request): ditto
8259         
8260 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
8261
8262         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
8263         reference.
8264
8265         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
8266         and refuse to initialize GTK+ if they fail.
8267
8268 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
8269
8270         * configure.in: Add check for gtk-doc version.
8271
8272 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
8273
8274         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
8275         where the xpad/ypad was only being used on one side!
8276
8277 2001-02-11  Tor Lillqvist  <tml@iki.fi>
8278
8279         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
8280         function, copied from X11 version.
8281
8282         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
8283         DestroyCursor failures. The reason for the problem (despite the
8284         inconsistent messages from GetLastError()) was that
8285         DestroyCursor() cannot be called while a cursor is set in a
8286         window. Set the new cursor first and then destroy the old one.
8287         Thanks to jpe@archaeopteryx.com.
8288
8289         * gdk/win32/gdkcc-win32.c: Remove.
8290
8291         * gdk/win32/Makefile.am: Remove from here, too.
8292         
8293         * gdk/gdk.def
8294         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
8295
8296         * gtk/gtk.def
8297         * gtk/makefile.mingw.in: Updates.
8298
8299 2001-02-08  Havoc Pennington  <hp@redhat.com>
8300
8301         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
8302         add a widget to a bin that already has a child.
8303
8304         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
8305
8306         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
8307         
8308         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
8309
8310         * gdk/gdk.h: remove gdkcc.h
8311
8312         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
8313
8314         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
8315         GdkPixbuf, since the previous implementation was GdkColorContext
8316         dependent.
8317
8318         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
8319         
8320 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
8321
8322         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
8323         a sane value!
8324
8325 2001-02-08  Havoc Pennington  <hp@redhat.com>
8326
8327         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
8328         lighten them.
8329
8330 2001-02-08  Havoc Pennington  <hp@redhat.com>
8331
8332         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
8333         validation idle
8334
8335         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
8336         cell renderer
8337
8338         * demos/pixbuf-demo.c (timeout): remove deprecated
8339         gtk_widget_draw
8340
8341         * demos/testpixbuf-save.c (main): remove deprecated
8342         gtk_drawing_area_size
8343
8344         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
8345         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
8346         at the start of the allocation.
8347         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
8348         unsetup or NULL model.
8349
8350         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
8351         even/odd/sorted cells in the tree view.
8352
8353         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
8354         bugfixes
8355
8356         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
8357         backgrounds with draw_flat_box using different detail for even/odd
8358         rows.
8359
8360         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
8361         row, so we can draw the alternating colors thing
8362
8363         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
8364         property from a synonym property, notify for the synonym.
8365         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
8366         (gtk_text_tag_get_property): Always return the font, even if
8367         all its fields aren't set
8368
8369         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
8370         store the attr list; it leaves us with no way to change attributes
8371         in _render according to the render flags, and no way to implement
8372         get_property. Instead store all the specific text attributes. 
8373         Separate whether an attribute is enabled from its value. Sync all
8374         properties with GtkTextTag, make them all consistent, etc.
8375
8376         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
8377         renderers can highlight the sort row/column     
8378
8379         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
8380         accessor functions to get values; this has the side effect of
8381         showing up which accessor functions were missing. Added those.
8382
8383         * gtk/gtktreeviewcolumn.h: Replace set_justification with
8384         set_alignment, to be consistent with GtkLabel, GtkMisc
8385
8386         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
8387         arrow.
8388
8389         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
8390
8391         * gtk/gtktreesortable.h: updates in here
8392
8393 2001-02-07  Sven Neumann  <sven@convergence.de>
8394
8395         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
8396         pango dimensions after painting the background. We used to draw
8397         gigantic flat boxes here.
8398
8399 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
8400
8401         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
8402         error introduced with earlier commit) (pointed out by
8403         Ollie Lho)
8404
8405 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
8406
8407         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
8408         which are no longer necessary.
8409
8410 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
8411
8412         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
8413
8414 2001-02-04  Tor Lillqvist  <tml@iki.fi>
8415
8416         * gdk/gdk.def
8417         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
8418         Provide dummy implementations.
8419
8420 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
8421
8422         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
8423
8424         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
8425         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
8426         deprecated this function.
8427
8428         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
8429         argument.
8430
8431 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
8432
8433         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
8434
8435 2001-02-03  Havoc Pennington  <hp@pobox.com>
8436
8437         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
8438         Mikael Hermansson with patch from Mikael (if there was a toggle
8439         start one after the first character in the range, this function
8440         was broken). Bug #50380
8441
8442 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
8443
8444         * configure.in: Remove confusing comment about X11.
8445
8446 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
8447
8448         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
8449         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
8450         
8451 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
8452
8453         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
8454         it breaks things on BSD. If you want to compile GTK+ with
8455         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
8456         when configuring, since GTK+ simply can't be "pure ANSI" 
8457         in the header files it uses. (#8170, Greg Hudson)
8458
8459 2001-02-02  Havoc Pennington  <hp@redhat.com>
8460
8461         * gtk/gtkwindow.c: docs
8462
8463         * gtk/gtkwidget.c: docs
8464         (gtk_widget_set_colormap): add a reference to the colormap
8465         (gtk_widget_get_default_colormap): add a reference to the colormap
8466
8467         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
8468
8469         * gtk/gtktextiter.c: docs
8470
8471         * gtk/gtkmain.c (gtk_propagate_event): docs
8472
8473         * gtk/gtkpaned.c (gtk_paned_get_position): docs
8474         (gtk_paned_set_position): docs
8475
8476         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
8477         sort interface, no implementation yet.
8478
8479         * demos/testpixbuf.c (new_testrgb_window): replace
8480         gtk_drawing_area_size() with gtk_widget_set_usize()
8481
8482         * demos/testpixbuf-drawable.c (main): ditto
8483         
8484         * gtk/testgtk.c: remove use of GtkStatusbarMsg
8485
8486         * gtk/gtktextbuffer.c: docs
8487
8488         * gtk/gtkstock.c: docs
8489
8490         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
8491
8492         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
8493
8494         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
8495         
8496         * gtk/gtkimage.c: add some docs in here
8497         (gtk_image_size_request): change name of
8498         gtk_widget_render_stock_icon
8499         (gtk_image_get_icon_set): don't dup returned string
8500         (gtk_image_get_icon_set): don't dup returned string
8501
8502         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
8503         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
8504         and gtkiconfactory.h functions
8505
8506         * gtk/gtkiconfactory.c: add some docs in here
8507
8508         * gtk/gtkmain.c (gtk_get_default_language): document
8509         (gtk_get_current_event): document
8510         (gtk_get_current_event_state): document
8511         (gtk_get_event_widget): document
8512
8513         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
8514
8515         * gtk/gtkcontainer.c: Add some documentation
8516         (gtk_container_add): give a more explanatory warning on adding an
8517         already-parented widget, this is kind of a FAQ and also a common
8518         typo that's easier to debug with a nice warning 
8519
8520         * gtk/gtkcellrenderertoggle.c
8521         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
8522         adding this, it's useless
8523         (gtk_cell_renderer_toggle_set_active): remove
8524         (gtk_cell_renderer_toggle_get_radio): add
8525
8526         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
8527         the NULL cell renderer, that doesn't make any sense to me. 
8528
8529         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
8530         demo code should never use deprecated features.
8531
8532         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
8533         code should never use deprecated features.
8534
8535         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
8536         gtk_widget_queue_clear_area deprecated
8537
8538         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
8539         deprecated
8540
8541         * gtk/gtklabel.h: mark gtk_label_get() deprecated
8542
8543         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
8544         a GdkImage deprecated, replaced by new consistently-named
8545         functions       
8546
8547         * gtk/gtkmain.h: Mark gtk_exit() deprecated
8548
8549         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
8550
8551         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
8552         deprecated
8553
8554         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
8555         so it won't appear in docs and confuse people.
8556
8557         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
8558
8559         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
8560         macros deprecated. (can't mark the type itself deprecated, since
8561         GtkProgressBar is not deprecated and we need the type decl to use
8562         GtkProgressBar)
8563
8564         * gtk/gtkpixmap.h: Mark deprecated
8565
8566         * gtk/gtkoldeditable.h: Mark deprecated
8567
8568         * gtk/gtklist.h: Mark deprecated
8569
8570         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
8571         for anything anymore.
8572
8573         * gtk/gtkctree.h: Mark deprecated
8574
8575         * gtk/gtkclist.h: Mark deprecated
8576
8577         * gtk/gtkpreview.h: Mark deprecated
8578
8579         * gtk/gtkpacker.h: Mark deprecated
8580
8581         * gtk/gtktipsquery.h: Mark deprecated
8582
8583         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
8584
8585         * gtk/gtkvruler.h: Add comment that it will move out of GTK
8586
8587         * gtk/gtkhruler.h: Add comment that it will move out of GTK
8588
8589         * gtk/gtkruler.h: Add comment that it will move out of GTK
8590
8591         * gtk/gtkgamma.h: Add comment that it will move out of GTK
8592
8593         * gtk/gtkcurve.h: Add comment that it will move out of GTK
8594
8595 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
8596
8597         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
8598         gdk_colormap_sync private since it was never exported
8599         in a header file.
8600
8601         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
8602         colormap->colors[] for StaticGray, StaticColor colormaps.
8603
8604         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
8605         was being used as if it was image->bits_per_pixel.
8606
8607         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
8608         for the image in the GdkImage structure since it isn't
8609         reconstructable, and we need it to handle packed types
8610
8611         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
8612         the assumption that on Win32 image->bits_per_pixel == image->depth,
8613         always.
8614
8615         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
8616
8617         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
8618         warning message if no converter can be found. 
8619
8620 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
8621
8622         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
8623         chars to isupper() / tolower(). (#567)
8624
8625         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
8626         to clear up 64-bit warnings. (#567)
8627
8628 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
8629
8630         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
8631         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
8632
8633         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
8634         since some people set $(libdir) separately. (#1290, David Kaelbling)
8635
8636 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
8637
8638         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
8639         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
8640         MAXPATHLEN, but the code here depends on a fixed value.)
8641         (#4524)
8642
8643 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
8644
8645         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
8646         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
8647
8648 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
8649
8650         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
8651         viewable there is no way that moving the node will cause the 
8652         focus row to become not viewable, so omit check on the visibility
8653         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
8654
8655 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
8656
8657         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
8658         selection before inserting new text.
8659
8660 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
8661
8662         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
8663         Make the sensitivity of the reparented child track that of
8664         the original parent menu item. (#34218, David Hodson)
8665
8666         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
8667         the case where the current item is destroyed properly.
8668
8669         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
8670         some edge cases with child-less menuitems.
8671         
8672 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
8673
8674         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
8675         key pop down window. (#12074, Jon K Hellan)
8676
8677 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
8678
8679         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
8680         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
8681         The solution here isn't perfect - you get an extraneous
8682         emission of "toggle", which could conceivably confuse an app,
8683         but better than the current situation. LXR search seems to
8684         indicate that no apps in GNOME CVS connect to "toggle".
8685
8686 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
8687
8688         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
8689         gtk_public_h_sources to directly here to avoid warning when
8690         building srcdir != builddir. (#9656)
8691
8692 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
8693
8694         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
8695         handlers in gtkrange.c return the proper values (TRUE == handled)
8696         (#10316).
8697
8698         This is just the tip of the iceberg, but gtkrange.c is the
8699         most common place where the propagation is problematical,
8700         and also a place where it is almost certainly safe to change
8701         this in the stable branch.
8702
8703         (You don't want right click popups on a range control or anything...)
8704
8705 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
8706
8707         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
8708         area on focus out, even if a background pixmap isn't set.
8709         (#13941)
8710         
8711 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
8712
8713         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
8714         to deal with setting the shape properly when scrolling arrows are
8715         turned on, but not visible because there is sufficient space.
8716         (#13432)
8717
8718 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
8719
8720         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
8721         items with submenus, destroy the item along with the submenu.
8722         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
8723         properly.
8724
8725         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
8726         later.
8727
8728 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
8729
8730         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
8731         the focus widget sometimes wasn't drawn with the default if there
8732         was no default widget.
8733
8734         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
8735         unreference pixmaps. 
8736
8737         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
8738         for some extra safety.
8739
8740 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
8741
8742         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
8743         the text of a cell to the old pointer value better, by
8744         copying the new text before freeing the old text. Some code
8745         cleanup. (#8079, Karl Nelson)
8746
8747 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
8748
8749         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
8750         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
8751
8752 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
8753
8754         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
8755         item from a menu, check to see if it matches 
8756         menu->old_active_menu_item, and if so, unref and clear
8757         old_active_menu_item (Patch from Pavel Cisler)
8758
8759         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
8760         menu_shell->active_menu_item, if it is the child being
8761         removed. (Patch based on that of Gene Ragan, #50337)
8762
8763 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
8764
8765         * gdk/linux-fb/gdkselection-fb.c: 
8766         * gdk/linux-fb/gdkcolor-fb.c: 
8767         * gdk/linux-fb/gdkdrawable-fb2.c: 
8768         * gdk/linux-fb/gdkfont-fb.c: 
8769         * gdk/linux-fb/gdkim-fb.c: 
8770         * gdk/linux-fb/gdkinput.c: 
8771         * gdk/linux-fb/gdkkeyboard-fb.c: 
8772         * gdk/linux-fb/gdkmain-fb.c: 
8773         * gdk/linux-fb/gdkrender-fb.c: 
8774         A bunch of whitespace cleanup.
8775         
8776 2001-01-30  Havoc Pennington  <hp@pobox.com>
8777
8778         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
8779         #ifdef GTK_ENABLE_BROKEN.
8780
8781         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
8782         GTK_ENABLE_BROKEN just before including the broken headers.
8783         
8784         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
8785         deprecated types registered.
8786
8787         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
8788         we have to test the broken stuff.
8789
8790         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
8791         
8792 2001-01-30  Havoc Pennington  <hp@redhat.com>
8793
8794         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
8795         here where prev pointer was set to the wrong thing
8796
8797         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
8798         (gtk_tree_path_is_descendant): new function
8799
8800         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
8801         cached length
8802         (gtk_list_store_get_iter): don't modify iter if we can't get the
8803         path.
8804
8805         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
8806         
8807         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
8808         GtkTreeDragDest
8809
8810         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
8811         was causing segfault
8812
8813         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
8814         pointer to NULL
8815
8816         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
8817
8818         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
8819         on returning FALSE
8820         (gtk_list_store_iter_children): ditto
8821         (gtk_list_store_iter_nth_child): ditto
8822         (gtk_list_store_iter_nth_child): ditto
8823         (gtk_list_store_iter_parent): ditto
8824
8825         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
8826         on iter->user_data != NULL instead of silently accepting it.
8827         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
8828         we are returning TRUE.
8829         (gtk_tree_store_iter_children): ditto
8830         (gtk_tree_store_iter_nth_child): ditto
8831         (gtk_tree_store_iter_parent): ditto
8832         (gtk_tree_store_insert): remove handling of parent->user_data ==
8833         NULL, replace with parent == NULL       
8834
8835         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
8836         and a comment explaining things
8837
8838         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
8839         interface support to GtkTreeStore.
8840
8841         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
8842         FALSE if no prev, fix
8843
8844         * gtk/gtktreeview.c (set_source_row): use a row reference
8845         (set_dest_row): use a row reference
8846
8847 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
8848
8849         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
8850         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
8851         (gtk_tree_selection_select_iter): The same as above.
8852
8853 2001-01-26  Havoc Pennington  <hp@redhat.com>
8854
8855         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
8856         which holds a handle to a specific row (particular set of values
8857         in the model, i.e. pointer-identity row).
8858
8859         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
8860         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
8861         Still need to use it for the src/dest row saved on the drag context.
8862
8863 2001-01-26  Havoc Pennington  <hp@redhat.com>
8864
8865         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
8866
8867         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
8868         not offset by TREE_VIEW_HEADER_HEIGHT
8869         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
8870         TREE_VIEW_HEADER_HEIGHT
8871
8872         * configure.in (included_loaders): for me, --with-included-loaders
8873         generates the error "the specified loader yes does not exist",
8874         i.e. the arg defaults to "yes", so change test for value ""
8875         to test for value "yes", and include all loaders in that case.
8876
8877         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
8878
8879         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
8880         handle TREE_VIEW_VERTICAL_SEPARATOR
8881         (gtk_tree_view_bin_expose): fix to consider the row offset as
8882         pointing halfway into vertical separator.       
8883         (gtk_tree_view_draw_node_focus_rect): ditto
8884
8885         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
8886         --gtk-debug=updates, which causes gdk_window_set_debug_updates
8887         (TRUE) to be called.
8888
8889         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
8890         debug mode where the invalid region is colored in on invalidate,
8891         so you can see the flicker and know whether your redraw code is 
8892         doing a good job.
8893
8894         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
8895         tree window coordinates (clip rect is in tree window coords)
8896
8897         * gtk/Makefile.am: add gtktreednd.[hc]
8898
8899         * gtk/gtkliststore.c: implement gtktreednd interfaces.
8900
8901         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
8902         drag-and-drop data operations on a model (so we can set up tree
8903         drag-and-drop automatically)
8904
8905         * gtk/testgtk.c: Add a window to change sensitivity in the
8906         GtkLabel test; add a way to change the entry frame in GtkEntry
8907         test
8908
8909         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
8910         (gtk_entry_get_has_frame): new functions to remove the frame
8911         around an entry
8912         (gtk_entry_size_request): shrink requisition if no frame
8913         (gtk_entry_draw_focus): don't draw frame if no frame
8914
8915         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
8916         checks inside a cell renderer
8917         (gtk_default_draw_option): ditto for options
8918
8919         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
8920         children from the alignment, not the button
8921         (gtk_tree_view_column_init): ref/sink the column, to emulate
8922         GObject refcounting.
8923
8924         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
8925         
8926         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
8927         Use theme functions to draw the toggles 
8928
8929         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
8930
8931         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
8932         GdkPangoAttrEmbossed to use in rendering insensitive text
8933
8934         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
8935
8936         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
8937         using new GDK features
8938         
8939 2001-01-24  Alexander Larsson  <alexl@redhat.com>
8940
8941         * gtk/gtkimage.c:
8942         Splitted gtk_image_clear into gtk_image_clear() and
8943         gtk_image_reset(). Call gtk_image_clear() in ::destroy
8944         to avoid leaks.
8945
8946         * gtk/gtklabel.c (set_markup):
8947         Don't leak text.
8948
8949         * gtk/gtktextlayout.c:
8950         Always free display->shaped_objects.
8951
8952         * gtk/testgtk.c (create_clist):
8953         Don't leak custom style.
8954
8955 2001-01-23  Alexander Larsson  <alexl@redhat.com>
8956
8957         * gtk/gtkcolorsel.c (grab_color_at_mouse):
8958         Don't leak image. Simplify using gdk_colormap_query_color().
8959         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
8960
8961         * linux-fb/gdkcolor-fb.c:
8962         Implemented gdk_colormap_query_color.
8963
8964 2001-01-23  Alexander Larsson  <alexl@redhat.com>
8965
8966         * linux-fb/gdkcursor-fb.c:
8967         Don't leak built-in cursors.
8968
8969         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
8970         Don't leak tmp_points.
8971
8972         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
8973         Don't modify desc. Don't leak font if the PangoFont
8974         isn't found.
8975         
8976         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
8977         Free dash_list.
8978
8979         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
8980         Don't leak string.
8981         
8982 2001-01-20  Havoc Pennington  <hp@pobox.com>
8983
8984         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
8985         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
8986         me, matches Pango
8987
8988 2001-01-22  Havoc Pennington  <hp@redhat.com>
8989
8990         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
8991
8992         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
8993
8994         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
8995         Remove, move back to gdk-pixbuf
8996
8997         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
8998         to all the word functions
8999
9000         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
9001         before doing anything on NULL layout or if we don't have the focus
9002
9003         * gtk/testtext.c (fill_example_buffer): "justification"
9004
9005         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
9006         to be called "justification" not "justify"
9007
9008         * demos/gtk-demo/textview.c (create_tags): "justification"
9009         
9010         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
9011
9012 2001-01-22  Alexander Larsson  <alexl@redhat.com>
9013
9014         * gdk/gdkwindow.c (gdk_window_invalidate_region):
9015         Don't leak visible_region. Use visible_region instead of region.
9016         
9017         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
9018         Don't do extra gdk_drawable_ref(). This is not X.
9019         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
9020         gdk_fb_focused_window is ref:ed.
9021         (gdk_fb_window_send_crossing_events): Watch out for destroyed
9022         windows.
9023
9024 2001-01-22  Alexander Larsson  <alexl@redhat.com>
9025
9026         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
9027         Don't leak the PangoFontDescriptor.
9028
9029 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
9030
9031         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
9032         when not realized.
9033         (gtk_tree_view_scroll_to_cell): Make work when not realized.
9034         (gtk_tree_view_realize): add scroll_to support
9035         (gtk_tree_view_finalize): add a finalize method.  Populate.
9036         (gtk_tree_view_insert_column): ref and sink the column.
9037         (gtk_tree_view_append_column): ref and sink the column.
9038         (gtk_tree_view_queue_draw_node): New function to handle redrawing
9039         individual nodes.  Should make the code much more efficient, if
9040         actually used.
9041
9042 2001-01-19  Havoc Pennington  <hp@redhat.com>
9043
9044         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
9045         byte_offset variable was being used to mean both "offset into
9046         layout" and "offset into buffer line" which was no longer true
9047         with addition of preedit string; fix
9048
9049 2001-01-19  Havoc Pennington  <hp@redhat.com>
9050
9051         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
9052
9053         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
9054         function
9055
9056         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
9057         implement
9058
9059         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
9060         scroll_to_cell, matches TextView scroll functions better
9061         (gtk_tree_view_tree_to_widget_coords): new function
9062         (gtk_tree_view_widget_to_tree_coords): new function
9063         (gtk_tree_view_get_visible_rect): new function
9064         (gtk_tree_view_get_path_at_pos): accept negative coordinates
9065         (gtk_tree_view_draw_node_focus_rect): new function moved from
9066         draw_focus, also, use width of bin_window as width of the focus
9067         rect
9068         (gtk_tree_view_expand_row): fix bug where it didn't recognize
9069         already-expanded rows
9070         (gtk_tree_view_get_cell_rect): new function
9071         (gtk_tree_view_get_path_at_pos): return the click position
9072         relative to the passed-in cell
9073         (gtk_tree_view_set_expander_column): new function
9074
9075         * configure.in: remove gtk-config-2.0 chmod
9076
9077         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
9078         and properly handle drags with targets we don't understand
9079         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
9080         scrolling anyway
9081         (gtk_text_view_drag_drop): stop scrolling here though, and set the
9082         mark invisible
9083
9084         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
9085         function
9086         (gtk_drag_dest_get_target_list): new function
9087         (gtk_drag_dest_set_target_list): new function
9088         
9089         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
9090
9091         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
9092         related to drag-and-drop
9093
9094 2001-01-19  Alexander Larsson  <alexl@redhat.com>
9095
9096         * gdk/linux-fb/gdkprivate-fb.h:
9097         Define EMULATE_GDKFONT.
9098         Add extra pango_font stuff to GfkFontPrivate.
9099         
9100         * gdk/linux-fb/gdkdrawable-fb2.c:
9101         * gdk/linux-fb/gdkfont-fb.c:
9102         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
9103         emulation using PangoFont.
9104
9105 2001-01-17  Havoc Pennington  <hp@pobox.com>
9106
9107         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
9108         all the non-deprecated set_foo functions. Added missing object
9109         properties, and added g_object_notify() to setters. 
9110         Wrote docs.
9111         
9112 2001-01-18  Tor Lillqvist  <tml@iki.fi>
9113
9114         * gtk/gtkmain.c
9115         * gtk/gtkrc.c: (Win32) Use the new
9116         g_win32_get_package_installation_(sub)directory() functions.
9117
9118         * config.h.win32.in: New file.
9119         
9120         * config.h.win32: Removed.
9121
9122         * configure.in: Output config.h.win32.
9123
9124         * Makefile.am: Add it to EXTRA_DIST.
9125
9126         * gtk/gtk.def: Update.
9127
9128 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
9129
9130         * gtk/gtklabel.c (gtk_label_size_request): Set the
9131         attributes onto the PangoLayout even if they are newly
9132         created from label->pattern.
9133
9134 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
9135
9136         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
9137
9138         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
9139         structures in functions. Fixes bug where gtk_dataset_*
9140         was accidentally still being used in one place, causing
9141         every dest side event to be treated independently.
9142
9143         * gtk/gtkdnd.c: Remove last vestages of handling
9144         ::draw (fixes warning)
9145         
9146         * gtk/gtkentry.[ch]: Add drag and drop support.
9147
9148         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
9149         new function gtk_check_drag_threshhold() for checking
9150         to check if (dx,dy) has exceeded the threshhold for starting
9151         a drag and use it everywhere.
9152
9153 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
9154
9155         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
9156         add -I{includedir}/gtk-2.0.
9157
9158         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
9159         gdk/gdk-pixbuf.h: Doc fixups.
9160         
9161         * gtk/gtkobject.h: Remove trailing , from enum
9162
9163 2001-01-17 Alexander Larsson <alexl@redhat.com> 
9164
9165         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
9166         Doh! Mixed up x and y.
9167
9168         * gdk/linux-fb/gdkglobals-fb.c:
9169         Removed gdk_fb_pointer_grab_window_events,
9170         added _gdk_fb_pointer_grab_owner_events and
9171         _gdk_fb_keyboard_grab_owner_events.
9172
9173         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
9174         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
9175         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
9176         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
9177         Send crossing events after ungrab finished.
9178         (gdk_keyboard_grab): Set ..._owner_events
9179         (type_masks): Move out of function.
9180         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
9181         gdk_fb_keyboard_event_window): New functions, return the
9182         window an event should be targeted at. Handles grabs and
9183         event propagation. Can return NULL.
9184         (gdk_event_make): Remove event_mask checking. Now always
9185         returns an event.
9186                 
9187         * gdk/linux-fb/gdkkeyboard-fb.c:
9188         * gdk/linux-fb/gdkproperty-fb.c:
9189         * gdk/linux-fb/gdkselection-fb.c:
9190         Use new event_window/gdk_event_make() behaviour.
9191         
9192         * gdk/linux-fb/gdkmouse-fb.c:
9193         Use new event_window/gdk_event_make() behaviour.
9194         Only send motion events if in the same window.
9195         If grabbed, use cursor from window if sibling of grabbed
9196         window, and cursor from grabbed window otherwise.
9197
9198         * gdk/linux-fb/gdkprivate-fb.h:
9199         Update gdk_fb_window_send_crossing_events, gdk_event_make
9200         and grab varaible declarations. Add gdk_fb_*_event_window().
9201
9202         * gdk/linux-fb/gdkwindow-fb.c:
9203         Use new event_window/gdk_event_make() behaviour.
9204         Keep correct track of focus window.
9205         (gdk_window_set_events): Set all specific button motion masks
9206         if GDK_BUTTON_MOTION_MASK set.
9207
9208         * gtk/gtkdnd.c (gtk_drag_update):
9209         Free info->last_event if gdk_drag_motion returned FALSE.
9210
9211 2001-01-16  Tor Lillqvist  <tml@iki.fi>
9212
9213         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
9214         Eliminate redraws when input-only windows are shown or
9215         hidden. Thanks to jpe@archaeopteryx.com.
9216
9217 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
9218
9219         * docs/faq/gtk-faq.sgml: FAQ update:
9220           - Update to bugzilla
9221           - Add GTK+ and security/SUID/SGID
9222           - Add DnD question
9223
9224 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
9225
9226         * gdk/linux-fb/gdkdnd-fb.c:
9227         Some cleanups.
9228         
9229 2001-01-15  Havoc Pennington  <hp@pobox.com>
9230
9231         * tests/testtreeview.c: add test stuff for CellRendererToggle
9232
9233         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
9234         accessor
9235
9236         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
9237         only toggle on button press (would do release like GtkButton, but
9238         we'd need implicit grab code for treeview cells)
9239
9240 2001-01-16  Tor Lillqvist  <tml@iki.fi>
9241
9242         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
9243
9244         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
9245         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
9246
9247         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
9248         to g_{locale,filename}_{to,from}_utf8 to match current API.
9249
9250         * gtk/makefile.msc.in (gtk_OBJECTS)
9251         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
9252
9253         * gtk/gtk.def: Update.
9254
9255 2001-01-15  Tor Lillqvist  <tml@iki.fi>
9256
9257         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
9258         implementaion that more closely mimics the events that an X server
9259         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
9260         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
9261         with nested preview widgets, for instance, more responsive when
9262         you move the mouse quickly into them.
9263         (find_window_for_pointer_event): Make it actually compile.
9264         (gdk_event_translate): Set send_event to the value of
9265         InSendMessage (). This doesn't really mean the same as X11's
9266         send_event flag, but is close enough, says jpe@archaeopteryx.com
9267
9268 2001-01-15  Alexander Larsson  <alexl@redhat.com>
9269
9270         * gdk/linux-fb/gdkdnd-fb.c:
9271         Implemented drag and drop.
9272         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
9273         when it tries to free and then copy the same event (info->last_event).
9274         I am not sure about why this happens, but will continue looking.
9275
9276 2001-01-15  Alexander Larsson  <alexl@redhat.com>
9277
9278         * gdk/linux-fb/gdkwindow-fb.c:
9279         Use gdk_window_invalidate_rect instead of
9280         gdk_window_invalidate_rect_clear to minimise flashing.
9281         When hiding windows you need to clear the root window though.
9282
9283 2001-01-15  Alexander Larsson  <alexl@redhat.com>
9284
9285         * gdk/linux-fb/gdkdrawable-fb2.c:
9286         For optization, add an full_shapes argument to gdk_fb_clip_region.
9287         If this is false, only the cliprects of the shapes are used.
9288
9289         * gdk/linux-fb/gdkprivate-fb.h:
9290         Export gdk_fb_window_peek_shape.
9291         Add full_shapes to gdk_fb_clip_region.
9292
9293         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
9294         When moving a window, don't clear everything under the it, just the
9295         root window. Makes stuff faster and flash less.
9296         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
9297         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
9298         offset of the shape.
9299         
9300
9301 2001-01-12  Havoc Pennington  <hp@redhat.com>
9302
9303         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
9304         current invalid region, fixes redraw bug while scrolling the 
9305         text widget
9306
9307         * gtk/gtktextview.c, gtk/gtktextview.h:
9308         Rearrange the scrolling/validation/etc. code in a major way, 
9309         so it seems to make sense to me. Probably isn't genuinely that
9310         much better, but...
9311
9312         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
9313         notifies
9314
9315         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
9316
9317 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
9318
9319         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
9320         Hide mouse pointer while rotation. Show it afterwards.
9321
9322 2001-01-12  Alexander Larsson  <alexl@redhat.com>
9323
9324         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
9325         windows in consideration when generating clip region.
9326
9327         * gdk/linux-fb/gdkfb.h:
9328         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
9329
9330         * gdk/linux-fb/gdkprivate-fb.h:
9331         Add shape to GdkWindowFBDatat.
9332         exported gdk_fb_window_get_abs_shape().
9333         removed gdk_fb_draw_lines declaration.
9334
9335         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
9336         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
9337         send focus changes when there is a grabbed window.
9338         (gdk_window_get_pointer): Handle shaped windows.
9339         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
9340         (gdk_fb_window_peek_shape): Returns the shape for a window,
9341         handles GDK_FB_USE_CHILD_SHAPE.
9342         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
9343         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
9344         (gdk_window_shape_combine_mask): Implement.
9345
9346         * gtk/gtkwindow-decorate.c:
9347         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
9348         setting the shape of a window makes the window transparent.
9349
9350 2001-01-11  Havoc Pennington  <hp@redhat.com>
9351
9352         * gtk/gtktreemodelsimple.h: Oops, broke some macros
9353
9354 2001-01-10  Havoc Pennington  <hp@redhat.com>
9355
9356         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
9357         add this function, bug 40251
9358
9359         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
9360         of type macro   
9361
9362 2001-01-11  Alexander Larsson  <alexl@redhat.com>
9363
9364         * acconfig.h:
9365         Added ENABLE_SHADOW_FB
9366
9367         * configure.in:
9368         Added --disable-shadowfb
9369
9370         * gdk/linux-fb/gdkcursor-fb.c:
9371         Update shadowfb when updating cursor
9372
9373         * gdk/linux-fb/gdkdrawable-fb2.c:
9374         Added wrappers for shadowfb that calls  the normal drawable
9375         methods, but calls gdk_shadow_fb_update(bounding box) when
9376         GdkWindows are drawed to.
9377         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
9378         which also returns the bounding box.
9379
9380         * gdk/linux-fb/gdkfb.h:
9381         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
9382
9383         * gdk/linux-fb/gdkgeometry-fb.c:
9384         Update shadowfb when scrolling window.
9385
9386         * gdk/linux-fb/gdkglobals-fb.c:
9387         Add _gdk_fb_screen_angle.
9388         
9389         * gdk/linux-fb/gdkkeyboard-fb.c:
9390         Test code for screen rotation. Shift-F2 in the xlate driver
9391         rotates the screen.
9392
9393         * gdk/linux-fb/gdkmain-fb.c:
9394         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
9395
9396         * gdk/linux-fb/gdkmouse-fb.c:
9397         Use fb_width/height instead of modeinfo.xres/yres.
9398
9399         * gdk/linux-fb/gdkprivate-fb.h:
9400         Added fb_men, fb_width, fb_height & fb_stride. When using
9401         shadow fb these can differ from the framebuffer stuff.
9402         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
9403         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
9404         _gdk_fb_screen_angle. Removed CM, RP.
9405
9406         * gdk/linux-fb/gdkrender-fb.c:
9407         Added code for shadowfb handling and screen rotation using
9408         shadowfb.
9409
9410         * gdk/linux-fb/gdkwindow-fb.c:
9411         Use fb_mem, fb_stride, fb_width, fb_height.
9412         Added recompute_rowstride to reset the rowstride of all windows.
9413         Added gdk_fb_recompute_all() which recomputes rootwindow size,
9414         window abs positions and window rowstrides. Usefull when the
9415         rotation has changed.
9416
9417 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
9418
9419         * docs/faq/gtk-faq.sgml: update to make web site updating easier
9420
9421 2001-01-10  Havoc Pennington  <hp@redhat.com>
9422
9423         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
9424         where sibling == iter
9425         (gtk_tree_store_insert_after): handle sibling == iter
9426         (gtk_tree_store_prepend): remove stamp checks
9427         (gtk_tree_store_insert_before): ditto
9428         (gtk_tree_store_append): ditto
9429         (gtk_tree_store_get_path): ditto
9430         (gtk_tree_store_get_value): ditto
9431         (gtk_tree_store_iter_has_child): ditto
9432         (gtk_tree_store_iter_n_children): ditto
9433         (gtk_tree_store_iter_nth_child): ditto
9434         (gtk_tree_store_insert_after): ditto
9435         (gtk_tree_store_is_ancestor): ditto
9436         (gtk_tree_store_iter_depth): ditto
9437         (gtk_tree_store_insert_before): assert that sibling's parent is
9438         the same as the passed-in parent
9439         (gtk_tree_store_insert_after): assert that sibling's parent is
9440         the same as the passed-in parent
9441
9442         
9443         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
9444         function to get the first iterator in a model
9445         
9446         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
9447         conventionally the "root" in this sense is just NULL afaict.
9448
9449         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
9450         where sibling == iter
9451         (gtk_list_store_insert_after): handle case where sibling == iter
9452
9453         * tests/testtreeview.c (run_automated_tests): fairly lame basic
9454         automated tests for ListStore, TreeStore
9455
9456         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
9457         (gtk_list_store_insert): update tail pointer, and fix it to work
9458         (gtk_list_store_insert_before): update tail pointer, and fix it to work
9459         (gtk_list_store_append): use tail to be faster
9460         (gtk_list_store_prepend): fix it, update tail pointer
9461         (gtk_list_store_insert_after): fix it, update tail pointer
9462
9463         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
9464         the list
9465
9466 2001-01-09  Havoc Pennington  <hp@redhat.com>
9467
9468         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
9469         is NULL due to a pending resize
9470
9471         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
9472         column width to values less than 1
9473
9474         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
9475         width to be between min/max width, and still set the width 
9476         even if autosize is turned on, so the tree view can use this 
9477         function in order to autosize.
9478         (gtk_tree_view_column_init): set initial width to 1 not 0
9479
9480         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
9481         setter function to modify column width, so we get notification
9482         (gtk_tree_view_insert_iter_height): ditto
9483         (gtk_tree_view_calc_size): ditto
9484         (gtk_tree_view_check_dirty): ditto
9485
9486         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
9487         properties to change all the interesting attributes of the tree
9488         view column.
9489         (gtk_tree_view_column_set_header_clickable): rename set_clickable
9490         (gtk_tree_view_column_get_clickable): add
9491         (gtk_tree_view_column_set_cell_renderer): don't unset the current
9492         attributes; assume a cell renderer with equivalent object
9493         properties has been swapped in. Do g_object_notify().
9494         (gtk_tree_view_column_set_visible): g_object_notify
9495         (gtk_tree_view_column_get_sizing): rename from get_col_type
9496         (gtk_tree_view_column_set_sizing): g_object_notify
9497         (gtk_tree_view_column_set_width): add g_object_notify
9498         (gtk_tree_view_column_set_min_width): ditto
9499         (gtk_tree_view_column_set_max_width): ditto
9500         (gtk_tree_view_column_set_title): ditto
9501         (gtk_tree_view_column_set_clickable): ditto
9502         (gtk_tree_view_column_set_widget): ditto
9503         (gtk_tree_view_column_set_justification): ditto
9504
9505 2001-01-09  Havoc Pennington  <hp@redhat.com>
9506
9507         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
9508         there are no rows in the model
9509
9510         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
9511         NULL, then return the start of the list
9512
9513         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
9514         if we can't get any rows from an empty model 
9515
9516         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
9517         extraneous * after function pointer typedef usage
9518
9519         * Makefile.am: don't specify full path to cp and rm
9520
9521         * gtk/gtkcellrenderertextpixbuf.c
9522         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
9523         NULL before dereferencing, fixes a segfault that happened from
9524         time to time
9525
9526         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
9527         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
9528         and reindent the function
9529         (gtk_cell_renderer_pixbuf_get_size): indentation
9530
9531         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
9532         we quit it
9533         (gtk_dialog_add_buttons_valist): add g_return_if_fail
9534         (gtk_dialog_set_default_response): New function, to set default
9535         button
9536         (gtk_dialog_set_response_sensitive): New function, to set 
9537         sensitivity of buttons
9538
9539         * gtk/gtkcellrendererpixbuf.c
9540         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
9541         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
9542
9543         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
9544         handle any G_TYPE_OBJECT subclass, not just the base class, and 
9545         also boxed types.
9546         (_gtk_tree_data_list_value_to_node): ditto
9547
9548         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
9549         --gtk-debug=tree
9550
9551         * gtk/gtkmain.c: add GTK_DEBUG_TREE
9552
9553         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
9554
9555 2001-01-09  Tor Lillqvist  <tml@iki.fi>
9556
9557         * gdk/win32/gdkevents-win32.c: Implement better mouse
9558         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
9559         (find_window_for_pointer_event): New function.
9560         (gdk_event_translate): Use it when handling mouse events.
9561
9562 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
9563
9564         * configure.in:
9565         Added --with-included-loaders option
9566
9567         * gdk-pixbuf/Makefile.am:
9568         * gdk-pixbuf/gdk-pixbuf-io.c:
9569         Add support for including selected gdk-pixbuf loaders only.
9570
9571         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
9572         gtk_window_set_has_frame):
9573         Added inline documentation.
9574
9575         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
9576         * docs/reference/gdk/tmpl/windows.sgml:
9577         Added inline documentation.
9578
9579 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
9580
9581         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
9582         realizing buttons that have already been realized.
9583
9584 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
9585
9586         * tests/testtreeview.c (main): Show menu items before adding to
9587         option menu.
9588
9589         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
9590         around if we kill them.
9591
9592         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
9593         Return if we pass in a NULL model.
9594
9595 2001-01-08  Havoc Pennington  <hp@redhat.com>
9596
9597         * tests/testtreeview.c: hack on this some
9598
9599         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
9600         gtk_tree_store_set_valist, v is for arrays, valist for varargs
9601         list
9602         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
9603
9604         * gtk/gtkliststore.h: Add varargs set() and get() convenience
9605         functions
9606
9607 2001-01-08  Alexander Larsson  <alexl@redhat.com>
9608
9609         * gtk/gtkwindow-decorate.[hc]:
9610         * gtk/Makefile.am:
9611         New files. Contains an implementation of a minimal WM for
9612         linux-fb.
9613
9614         * gtk/gtkwindow.h:
9615         Add the possibility for GtkWindows to specify a frame. This
9616         is used for the window decoration code, but could concievably
9617         be used for X programs too (xmms style windows).
9618         GtkWindow->frame is the toplevel window if the window is framed.
9619         The signal frame_event gets all events that are targeted to
9620         GtkWindow->frame.
9621         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
9622         
9623         * gtk/gtkwindow.c:
9624         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
9625         Call out to gtkwindow-decorate.c for WM support in linx-fb.
9626
9627 2001-01-08  Alexander Larsson  <alexl@redhat.com>
9628
9629         * docs/README.linux-fb:
9630         Correct filename ~/.pangoft2_aliases
9631
9632         * gdk/gdkwindow.h:
9633         Added new function gdk_window_get_decorations.
9634
9635         * gdk/linux-fb/gdkfb.h:
9636         Removed _gdk_window_get_decorations declaration.
9637         Renamed _gdk_window_set_child_handler to
9638         gdk_fb_window_set_child_handler.
9639
9640         * gdk/linux-fb/gdkwindow-fb.c:
9641         Renamed _gdk_window_set_child_handler to
9642         gdk_fb_window_set_child_handler.
9643
9644         * gdk/x11/gdkwindow-x11.c:
9645         New function gdk_window_get_mwm_hints().
9646         Implemented gdk_window_get_decorations.
9647
9648         * docs/reference/gdk/tmpl/windows.sgml:
9649         * docs/reference/gdk/gdk-sections.txt:
9650         Added gdk_window_get_decorations docs.
9651         
9652 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
9653
9654         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
9655         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
9656         gdk_fb_window_send_crossing_events):
9657         Possibly send focus events when the mouse moves from one
9658         window to another.
9659
9660 2001-01-07  Tor Lillqvist  <tml@iki.fi>
9661
9662         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
9663         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
9664         to match current API.
9665
9666         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
9667         environment variable is set, don't call g_error when on a
9668         palettized (PseudoColor) display. Some people want to use GTK+ 
9669         in 256-colour mode even though works only partially.
9670
9671         * gdk/gdk.def
9672         * gtk/gtk.def
9673         * gtk/makefile.mingw.in: Update.
9674
9675 2001-01-05  Havoc Pennington  <hp@redhat.com>
9676
9677         * tests/testtreeview.c: hack on this a bit
9678
9679         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
9680         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
9681
9682         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
9683         was spelled incorrectly
9684         (GTK_IS_TREE_MODEL_SIMPLE): ditto
9685
9686         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
9687         from gtk_tree_view_set_headers_active   
9688
9689         * gtk/gtktexttag.c:
9690         (gtk_text_tag_get_property): handle PROP_DIRECTION
9691         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
9692         properties, bug 40235
9693
9694         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
9695         forward_to_line_end
9696
9697 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
9698
9699         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
9700         modules/input/gtkimcontextxim.c: Adapt to new prototypes
9701         for unicode,locale,filename conversion functions.
9702
9703 2001-01-05  Havoc Pennington  <hp@redhat.com>
9704
9705         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
9706         broken if called on the first position in the buffer.
9707
9708         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
9709         forward_to_delimiters to be called only if we aren't already at
9710         the delimiters.
9711
9712 2001-01-05  Havoc Pennington  <hp@redhat.com>
9713
9714         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
9715
9716 2001-01-05  Alexander Larsson  <alexl@redhat.com>
9717
9718         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
9719         colormap in here. Sync from X port.
9720         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
9721         Sync from X port.
9722         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
9723         This happens now and then, and i don't think it is a bug.
9724         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
9725         != endpoint.
9726         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
9727         GDK_LINE_SOLID.
9728
9729         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
9730         some of the fields filled in at least.
9731
9732         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
9733         miLineArcD is no more, remove it from the function definition.
9734
9735 2001-01-04  Havoc Pennington  <hp@redhat.com>
9736
9737         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
9738         this
9739
9740         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
9741         user_data instead of tree_node
9742
9743         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
9744         TREE_VIEW_COLUMN_SIZE
9745
9746         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
9747         "size" field to "width" finishes bug 40061
9748
9749         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
9750         for bitfields, bug 40268
9751
9752 2001-01-04  Havoc Pennington  <hp@redhat.com>
9753
9754         Rename some stuff:
9755         
9756         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
9757
9758         s/GtkModelSimple/GtkTreeModelSimple/g;
9759         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
9760         s/gtk_model_simple/gtk_tree_model_simple/g;
9761         s/gtkmodelsimple/gtktreemodelsimple/g;
9762
9763         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
9764
9765         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
9766         s/column_set_col_type/column_set_sizing/g;
9767
9768         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
9769         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
9770
9771         s/GtkCellRendererType/GtkCellRendererState/g;
9772         
9773         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
9774         (gtk_cell_renderer_toggle_class_init): change "state" property to
9775         "active", to match GtkToggleButton
9776         (gtk_cell_renderer_toggle_get_active): new function, bug
9777         40269
9778         (gtk_cell_renderer_toggle_set_active): new function
9779         (gtk_cell_renderer_toggle_set_property): route changes to toggle
9780         state through gtk_cell_renderer_set_active
9781
9782 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
9783
9784         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
9785         temporarily until they work again.  Brought up to date with
9786         changes in the model.
9787         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
9788         model.
9789
9790 2001-01-04  Havoc Pennington  <hp@redhat.com>
9791
9792         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
9793         equal to the line length, then position iterator before paragraph 
9794         separators. Fixes crash reported by Mikael Hermansson when
9795         pressing left arrow from the start of a line.   
9796
9797         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
9798         about byte indexes off the end
9799         (iter_set_from_char_offset): add g_error about char offsets
9800         off the end
9801
9802 2001-01-03  Havoc Pennington  <hp@redhat.com>
9803
9804         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
9805
9806         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
9807         of private functions; remove inclusion of private headers.
9808
9809         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
9810         function, so we don't need private functions in gtktextdisplay.c
9811
9812         * gtk/gtktextiterprivate.h: underscore-ification
9813
9814         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
9815         to instead say "only useful to implement widgets"
9816
9817         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
9818         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
9819         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
9820
9821         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
9822         This function was completely broken
9823
9824         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
9825
9826         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
9827
9828         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
9829
9830         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
9831
9832         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
9833
9834         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
9835
9836         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
9837         gtk_paint_layout
9838
9839         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
9840         gtk_paint_layout
9841
9842         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
9843         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
9844         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
9845         which were not implemented.     
9846
9847         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
9848         insert_pixbuf signal. Rename delete_text to delete_range since it
9849         also deletes pixbufs and child anchors. This almost closes bug
9850         40245 (still need to deal with child anchors)
9851
9852         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
9853         insert_pixbuf, change signal names as appropriate, change types of
9854         signals taking marks/tags to have the specific type, not just
9855         G_TYPE_OBJECT
9856         
9857         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
9858         closes bug 40051
9859
9860         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
9861         unnecessary remove_contents() call
9862         (gtk_option_menu_class_init): add a "changed" signal, closes
9863         bug 40039
9864         (gtk_option_menu_update_contents): emit "changed" if the 
9865         active menu item changes
9866
9867         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
9868         cast to GtkObject, reported by Jonas Borgstrom
9869         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
9870         we can't do stuff with side effects in finalize. Instead, spew a
9871         warning if the loader isn't closed.
9872
9873         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
9874         colormap in here, non-X ports probably need to sync to this change
9875
9876         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
9877         assertion that colormap != NULL, you can set the colormap to NULL
9878         if you like.
9879         
9880         * Makefile.am: remove gtk-config-2.0
9881
9882         * configure.in: Use pkg-config to locate GLib. Remove
9883         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
9884         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
9885         Use pkg-config to locate Pango. Output correct Pango libs to
9886         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
9887
9888         * Makefile.am (pkgconfig_DATA): install only target-specific pc
9889         files
9890         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
9891         X11 pc files
9892
9893         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
9894         unref from here
9895
9896 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
9897
9898         * configure.in:
9899         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
9900
9901 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
9902
9903         * gtk/gtktextlayout.c
9904         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
9905         variable when moving back onto a single line.
9906
9907 2001-01-01  Havoc Pennington  <hp@redhat.com>
9908
9909         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
9910
9911         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
9912
9913         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
9914         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
9915
9916 2001-01-01  Havoc Pennington  <hp@redhat.com>
9917
9918         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
9919
9920         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
9921         GtkTextAttributes
9922
9923         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
9924         #40246
9925         (gtk_text_attributes_copy_values): rename from 
9926         gtk_text_attributes_copy
9927         (gtk_text_attributes_copy): a more standard GTK copy function, 
9928         which returns a new object
9929
9930 2001-01-01  Havoc Pennington  <hp@redhat.com>
9931
9932         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
9933         
9934         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
9935         don't fill in tree_view->priv->selection, kind of an unexpected
9936         side effect
9937
9938         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
9939         gtkintl.h
9940         
9941         * gtk/gtkcellrenderer.c: Remove definition of _ and include
9942         gtkintl.h
9943         (gtk_cell_renderer_get_property): remove calls to g_value_init
9944
9945         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
9946         gtkintl.h
9947
9948         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
9949         and include gtkintl.h
9950         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
9951         property names
9952
9953         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
9954         GtkTreeSelection
9955         (_gtk_tree_selection_new_from_with_view): rename, return
9956         GtkTreeSelection
9957         (_gtk_tree_selection_set_tree_view): rename with uscore
9958         (gtk_tree_selection_get_selected): fill in the "model" out param
9959         first, so it gets filled in even if we return at the top of the 
9960         function
9961         (gtk_tree_selection_real_select_all): add a comment and an else{}
9962         to clarify this a bit
9963         (gtk_tree_selection_real_unselect_all): add the same else{}
9964
9965         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
9966         set_tree_view to have underscore prefixes, move them to the
9967         private header, fix return type of new_with_tree_view
9968         (struct _GtkTreeSelection): mark struct
9969         fields private  
9970
9971         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
9972         GtkTreeModelFlags, not a guint
9973         (gtk_tree_path_prev): return gboolean not gint
9974         (gtk_tree_path_up): return gboolean not gint
9975
9976         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
9977         return GtkTreeModelFlags, not a guint
9978
9979         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
9980         that child model is non-null before unrefing it
9981         (g_value_int_compare_func): make this a qsort compare func, not 
9982         a boolean predicate
9983
9984         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
9985         (add -umn to the end), and mark it unimplemented
9986         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
9987         I don't see what it's for - doesn't the model always sort itself?
9988         (gtk_tree_model_sort_set_compare): this had the wrong signature
9989
9990         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
9991         Fix the docs to say that it destructively replaces existing
9992         attributes (previously said that it added attributes).
9993         (gtk_tree_view_column_set_visible): canonicalize bool before
9994         equality testing. Also, check for realization before
9995         hiding/showing the tree_column->window; if this window could exist
9996         before realization, then it's busted and needs fixing, we can't 
9997         create GDK resources pre-realization. Also, remove
9998         superfluous queue_resize(), since set_size() does that for us.
9999         (gtk_tree_view_column_set_col_type): check realization before 
10000         using tree_column->window
10001
10002         * gtk/gtktreedatalist.c: fix filename in copyright notice
10003
10004 2000-12-31  Havoc Pennington  <hp@pobox.com>
10005
10006         * gtk/gtktextview.c: Rearrange all the
10007         scroll-while-dragging-or-selecting code to be different, not
10008         necessarily better. ;-)
10009         (gtk_text_view_scroll_to_mark): Change this
10010         function to take within_margin as a fraction instead of a pixel
10011         value, and to take alignment arguments (indicating where to align 
10012         the mark inside the visible area)
10013         
10014         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
10015         to GtkObject
10016
10017         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
10018         behavior so that offsets past the end of the line are not 
10019         allowed, and an offset equal to the line length moves the iterator
10020         to the next line
10021         (gtk_text_iter_set_line_index): make parallel change
10022         (gtk_text_iter_get_bytes_in_line): add this function
10023         
10024         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
10025         of byte indexes off the end of the line; byte index at the end of
10026         the line now returns FALSE and doesn't fill in the requested
10027         values, byte index past the end of the line is an error.  Also,
10028         don't allow -1 offset anymore, since its meaning is unclear.
10029
10030         This change exposes some bug in visual cursor motion, where we
10031         end up with a huge invalid byte index; needs fixing. Symptom of 
10032         bug is a crash when you hit up arrow.
10033         
10034         (_gtk_text_line_char_locate): match the change to byte_locate
10035
10036         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
10037         from start of line properly. fixes bug reported by Mikael
10038         Hermansson where backspace would delete all text before the
10039         cursor.
10040
10041 2000-12-30  Tor Lillqvist  <tml@iki.fi>
10042
10043         * gdk/win32/gdkwindow-win32.c
10044         (gdk_window_impl_win32_get_visible_region): New function, as in
10045         the X11 backend.
10046         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
10047         instead of duplicating the same code here.
10048
10049         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
10050         GDK_COLORMAP macro.
10051
10052         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
10053         destroy function.
10054         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
10055         access that.
10056
10057         * gtk/gtk.def: Update.
10058
10059         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
10060
10061 2000-12-30  Havoc Pennington  <hp@pobox.com>
10062
10063         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
10064         colormap on input only windows, to avoid special cases all over
10065         the code for these windows.
10066
10067 2000-12-26  Tor Lillqvist  <tml@iki.fi>
10068
10069         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
10070         we are on a palettized display ("PseudoColor" in X11), as the code
10071         for that doesn't work anyway, and never has.
10072
10073 2000-12-22  Alexander Larsson  <alexl@redhat.com>
10074
10075         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
10076         Don't use isprint() for chars > 255.
10077
10078 2000-12-21  Havoc Pennington  <hp@redhat.com>
10079
10080         * tests/testtreeview.c: more work
10081
10082 2000-12-21  Alexander Larsson  <alexl@redhat.com>
10083
10084         * docs/README.linux-fb:
10085         Update the docs to the new pangoft2 way.
10086
10087 2000-12-21  Alexander Larsson  <alexl@redhat.com>
10088
10089         * configure.in:
10090         For linux-fb get the pangoft2 cflags and libs. This needs a recent
10091         pango version.
10092         Remove modules/linux-fb/Makefile.
10093
10094         * gdk/linux-fb/gdkdrawable-fb2.c:
10095         Render glyphs using freetype.
10096
10097         * gdk/linux-fb/gdkfb.h:
10098         Add new fb-specific functions needed for managing windows.
10099
10100         * gdk/linux-fb/gdkmain-fb.c:
10101         Remove gdk_font_init/fini() calls.
10102
10103         * gdk/linux-fb/gdkpango-fb.c:
10104         Remove old implementation. Use pangoft2 instead.
10105
10106         * gdk/linux-fb/gdkprivate-fb.h:
10107         Remove PangoFBFont and related stuff.
10108
10109         * gdk/linux-fb/gdkwindow-fb.c:
10110         Implement drawable->get_visible_region.
10111         Implement support for _gdk_window_set_child_handler () and
10112         _gdk_window_get_decorations().
10113
10114         * modules/Makefile.am:
10115         Remove linux-fb subdir.
10116
10117         * modules/linux-fb/*:
10118         Removed all.
10119         
10120 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
10121
10122         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
10123         calls, as they are no longer needed.
10124
10125         * gtk/gtktreemodelsort.c: Fix up the comparison code.
10126         
10127         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
10128         figure out how to emit a signal on an interface.
10129
10130 2000-12-20  Havoc Pennington  <hp@redhat.com>
10131
10132         * tests: new directory to contain tests, gtk/test* should move
10133         here sometime (with appropriate on-cvs-server hackery)
10134
10135         * tests/testtreeview.c, tests/Makefile.am: a test
10136         
10137         * configure.in (AC_OUTPUT): add tests/Makefile
10138
10139         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
10140         and "invisible_set" which were missing
10141
10142         * gtk/gtkrbtree.h: some cheesy indentation fix
10143         
10144 2000-12-20  Alexander Larsson  <alexl@redhat.com>
10145
10146         * gtk/gtkinvisible.c (gtk_invisible_realize):
10147         Attach the style to the window so that the style it is not
10148         leaked when unrealizing the window.
10149
10150 2000-12-18  Havoc Pennington  <hp@redhat.com>
10151
10152         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
10153         begin/end user action where appropriate
10154         (gtk_text_view_commit_handler): add begin/end user action
10155
10156         * gtk/gtktextbuffer.c: add begin/end user action signals, and
10157         bracket interactive operations with begin/end user action pair.
10158         
10159         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
10160         "interactive" arg from insert_text and delete_text signals.
10161         Add begin_user_action, end_user_action signals
10162         (gtk_text_buffer_begin_user_action): 
10163         (gtk_text_buffer_end_user_action): New functions to delimit 
10164         a user-visible action
10165
10166         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
10167         signals.
10168         
10169 2000-12-18  Havoc Pennington  <hp@redhat.com>
10170
10171         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
10172         was pretty non-working.
10173
10174         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
10175         by passing the length to g_utf8_validate().
10176
10177 2000-12-16  Havoc Pennington  <hp@pobox.com>
10178
10179         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
10180         Port to GObject, can go back in gdk-pixbuf after setting up 
10181         a gdk-pixbuf-marshal.h header over there.
10182
10183         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
10184         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
10185         args
10186         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
10187         set
10188         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
10189         here, do it when we create the buttons later
10190         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
10191         (gtk_tree_view_map): paranoia checks that column->button is shown 
10192         and unmapped
10193         (gtk_tree_view_size_request): only request visible children.
10194         Move header size calculation in here, for cleanliness, and 
10195         to maintain invariants for child widgets if we eventually 
10196         let users set different children inside the buttons
10197         (gtk_tree_view_map_buttons): factor out code to map buttons,
10198         since it was being called several times
10199         (gtk_tree_view_size_allocate_buttons): move_resize the drag
10200         windows instead of just moving them; their height may change 
10201         if we allow random widgets in there, or the theme changes.
10202         (gtk_tree_view_size_allocate): move button size allocation 
10203         above emitting the scroll signals, to ensure a sane state when we
10204         hit user code
10205         (gtk_tree_view_button_release): remove queue_resize after
10206         tree_view_set_size(), set_size() will handle any resize queuing
10207         that's needed
10208         (gtk_tree_view_focus_in): just queue a draw, don't fool with
10209         draw_focus goo
10210         (gtk_tree_view_focus): use gtk_get_current_event() and
10211         gdk_event_get_state()
10212         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
10213         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
10214         semicolon
10215         (gtk_tree_view_create_button): show the button here
10216         (gtk_tree_view_button_clicked): actually emit the clicked signal
10217         on the column
10218         (_gtk_tree_view_set_size): return right away if the size is
10219         unchanged, as a cheesy optimization
10220         (gtk_tree_view_setup_model): rename set_model_realized to 
10221         setup_model to match the flag that indicates whether we've 
10222         called it
10223         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
10224         exist, because set_scroll_adjustment does that and it shouldn't
10225         matter what order you call these in
10226         (gtk_tree_view_get_vadjustment): ditto
10227         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
10228         for paranoia
10229         (gtk_tree_view_set_headers_visible): call
10230         gtk_tree_view_map_buttons() instead of using cut-and-paste code
10231         (gtk_tree_view_append_column): clarify whether the return value
10232         is the count of columns before or after, and do the increment 
10233         separately from the return statement so you can tell from the code.
10234         (gtk_tree_view_remove_column): ditto
10235         (gtk_tree_view_insert_column): ditto
10236         (gtk_tree_view_get_column): remove g_return_if_fail for columns
10237         outside the existing range, the docs say that outside-range
10238         columns are allowed, so we handle them as documented. (Presumably
10239         this allows a nice loop with column != NULL as test.)
10240         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
10241         mean (left/right/center etc.).
10242         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
10243         (gtk_tree_view_expand_row): add docs
10244         (gtk_tree_view_collapse_row): add docs
10245
10246         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
10247         function to emit the clicked signal on a column
10248         
10249         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
10250         state of an event
10251         (gdk_event_get_time): don't treat GDK_SCROLL 
10252         as a button event, remove default case from switch so gcc 
10253         will whine if we don't explicitly handle all event types
10254
10255         * gtk/gtktreeselection.h: added some FIXME 
10256         
10257         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
10258         "columns" to "n_columns" and "column" to "columns" for clarity
10259
10260 2000-12-16  Havoc Pennington  <hp@pobox.com>
10261         
10262         * gtk/gtktextiter.c: General cleanup of the log attr iteration
10263         stuff. This should make e.g. the delete key work again in the
10264         text widget...
10265         (gtk_text_iter_forward_cursor_positions): handle negative count
10266         (gtk_text_iter_backward_cursor_positions): handle negative count
10267         (gtk_text_iter_forward_word_ends): handle negative count
10268         (gtk_text_iter_backward_word_starts): handle negative count
10269
10270         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
10271         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
10272         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
10273         GObject. No doubt will cause breakage.
10274
10275         * demos/gtk-demo/textview.c: remove hacks around
10276         non-GObject-ification of the text objects
10277
10278         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
10279         the text tag
10280         
10281 2000-12-14  Havoc Pennington  <hp@pobox.com>
10282
10283         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
10284         that we have Xrender
10285
10286 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
10287
10288         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
10289         Add two virtualized functions gdk_drawable_get_clip_region - to
10290         get the clip region when drawing.
10291         
10292         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
10293         use invalidate_region.
10294
10295         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
10296         region.
10297
10298         * acconfig.h configure.in: Check for Xft. For now, assume
10299         that if Xft is found, Pango was compiled with Xft support
10300         as well.
10301
10302         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
10303         gdk_colormap_query_color().
10304         
10305         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
10306         with Xft if appropriate.
10307
10308         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
10309         a pangoxft context if we have XFT and the environment
10310         variable GD_USE_XFT is set.
10311         
10312         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
10313         and also possibly an XftDraw structure.
10314
10315         * gtk/gtkfontsel.c: Handle the case where the font from the
10316         style doesn't match any of the fonts a bit better.
10317         
10318         * gtk/testgtk.c: Add tabs between directional segments for
10319         hebrew/arabic test. (Not really necessary, just a little
10320         prettier.)
10321
10322 2000-12-14  Havoc Pennington  <hp@redhat.com>
10323
10324         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
10325         reading a file
10326
10327 2000-12-14  Havoc Pennington  <hp@redhat.com>
10328
10329         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
10330         unused call to get_last_line()
10331
10332         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
10333         here until boxed is working (and maybe after that - we should
10334         really not gratuitously break old code)
10335
10336         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
10337         specific types for font_desc and tabs args, move them to
10338         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
10339         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
10340
10341         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
10342         use GTK_TYPE_POINTER for signal signatures as a hack-around
10343
10344         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
10345         PangoTabArray
10346
10347         * gtk/gtktextlayout.c (line_display_iter_to_index): 
10348         make static
10349         (line_display_index_to_iter): make static
10350
10351         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
10352         to marshal a string not a boxed
10353
10354         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
10355
10356         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
10357         since the UTF-8 isn't validated yet
10358
10359         * gtk/gtktextsegment.c (char_segment_check_func): don't require
10360         lines to end in '\n'
10361         
10362         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
10363         forward_to_delimiters, and grapheme boundaries
10364         (gtk_text_view_delete_from_cursor): properly handle non-newline
10365         delimiters, and grapheme boundaries
10366
10367         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
10368         to gtk_text_iter_forward_to_delimiters, and make it work properly
10369         if empty lines end with a character other than '\n'
10370
10371         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
10372         position
10373
10374 2000-12-15  Tor Lillqvist  <tml@iki.fi>
10375
10376         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
10377
10378         * gtk/gtk.def
10379         * gdk/gdk.def: Update.
10380
10381         * gdk/win32/gdkmain-win32.c
10382         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
10383         gdkmain-win32.c here.
10384
10385         * gdk/win32/makefile.mingw.in (all): No need to make
10386         gdk-win32res.o here, the makefile one step up will call us to make
10387         it.
10388
10389         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
10390         gdkkeys-win32.
10391
10392         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
10393
10394         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
10395         call to g_source_add().
10396
10397         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
10398         leak. Thanks to Andreas Kemnade.
10399
10400 2000-12-13  Havoc Pennington  <hp@pobox.com>
10401
10402         * gtk/gtktextbtree.h: Remove double _ in front of some functions
10403
10404         * gtk/gtktext*.[hc]: update accordingly
10405         
10406 2000-12-13  Havoc Pennington  <hp@pobox.com>
10407
10408         * gtk/gtktextbtree.h: Put _ in front of every function in this 
10409         header file
10410
10411         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
10412
10413 2000-12-13  Alex Larsson  <alexl@redhat.com>
10414
10415         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
10416         Add support for ps2 intellimouse.
10417
10418         * gdkkeyboard-fb.c:
10419         Move shift-F1 repaint handling to xlate handler only.
10420         
10421         * docs/README.linux-fb:
10422         Add imps2 to docs.
10423         Document the new refresh keys.
10424         
10425 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
10426
10427         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
10428
10429         * gtk/gtkbox.c: change property types from (u)long to (u)int for
10430         ::position and ::padding.
10431
10432         * gtk/gtkcontainer.c: make ::border_width an INT property.
10433
10434         * gtk/gtkpacker.c: make ::position an INT property.
10435
10436         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
10437         guard against NULL h/v scrollbars, since this is used at construction
10438         time.
10439
10440         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
10441         internal gtk_clist_constructor().
10442
10443         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
10444         gtk_ctree_constructor().
10445
10446         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
10447         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
10448
10449         * docs/reference/Makefile.am: fun stuff, disabled docs generation
10450         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
10451
10452         * gtk/gtkwidget.[hc]:
10453         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
10454         and gtk_widget_get().
10455         (gtk_widget_new): use g_object_new_valist().
10456         (gtk_widget_set): use g_object_set_valist().
10457
10458         * gtk/gtkobject.[hc]:
10459         removed gtk_object_arg_get_info(), gtk_object_getv(),
10460         gtk_object_query_args(), gtk_object_newv(),
10461         gtk_object_class_add_signals(),
10462         gtk_object_class_user_signal_new(),
10463         gtk_object_class_user_signal_newv(),
10464         gtk_object_arg_set(), gtk_object_arg_get(),
10465         gtk_object_args_collect(),
10466         gtk_object_default_construct(),
10467         gtk_object_constructed(),
10468         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
10469         removed nsignals, signals and n_args members from GtkObjectClass.
10470         (gtk_object_new): use g_object_new_valist().
10471         (gtk_object_set): use g_object_set_valist().
10472         (gtk_object_get): use g_object_get_valist().
10473         
10474         * gtk/gtkcompat.h: define gtk_object_default_construct().
10475         
10476         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
10477         g_object_new().
10478
10479         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
10480         fucntions, cleaned up method assignments (make sure your structures
10481         are setup properly before calling out). removed all GTK_CONSTRUCTED
10482         hacks ;)
10483
10484 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
10485
10486         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
10487         off-by-one error in checks. (Dave Lambert)
10488
10489 2000-12-12  Alexander Larsson  <alexl@redhat.com>
10490
10491         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
10492         Don't free gdk_fb_keyboard twice.
10493
10494 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
10495
10496         * gtk/testgtk.c:
10497         (create_tooltips): 
10498         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
10499         use GObject swapped_signal:: properties instead.
10500
10501         * gtk/gtkcellrenderertoggle.c: 
10502         * gtk/gtkcellrenderertextpixbuf.c: 
10503         * gtk/gtkcellrenderertext.c: 
10504         * gtk/gtkcellrendererpixbuf.c: 
10505         * gtk/gtkcellrenderer.c:
10506         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
10507         missing warnings for invalid property ids, install properties
10508         with g_object_class_install_property() now.
10509         
10510         * gtk/gtksignal.c:
10511         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
10512         
10513 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
10514         
10515         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
10516         to determine if a window is the focus widget within
10517         its toplevel.
10518
10519         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
10520         to be boolean.
10521
10522         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
10523         of the case where the container CAN_FOCUS to here instead
10524         of having it in each individual move-the-focus place.
10525
10526         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
10527         focusing to be geometric in a much more obvious sense. Arrowing
10528         around is still non-intuitive because it isn't perfect and
10529         because entries, etc, grab the arrow keys, but it at least
10530         usually will do what you expect now.
10531         
10532         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
10533         file.
10534
10535         * gtk/gtknotebook.c: Change tabs to be a single item in
10536         the focus chain. Make movement of focus on tabs with arrow
10537         keys wrap around.
10538         
10539         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
10540         CHECK_FIND_CHILD macro to give informative error messages
10541         instead of silent returns.
10542
10543         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
10544         flag since we handle GdkReturn on the tabs.
10545
10546         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
10547         windows rather than sending expose events directly.
10548
10549         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
10550         definition for GtkNotebookPage into .c file, since it is private.
10551
10552         * gtk/testgtk.c (create_notebook): Add option for 
10553         testing borderless notebook.
10554
10555         * gtk/testgtk.c (page_switch): Removed egregious poking
10556         around in GTK+ internals.
10557
10558         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
10559
10560         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
10561         properly through gtk_clist_focus. Make the title headers a
10562         single item in the tab-focus chain, and make left-right wrap
10563         around.
10564
10565         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
10566         focus method so that wrapping around works properly.
10567
10568         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
10569         that is handled for the widget now. 
10570
10571 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
10572
10573         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
10574         widgets as TOPLEVEL.
10575
10576         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
10577         TOPLEVEL widgets are containers.
10578
10579         * gtk/gtkinvisible.h: Remove useless include.
10580
10581 2000-12-11  Havoc Pennington  <hp@redhat.com>
10582
10583         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
10584         Handle chopping off \r\n and 0x2029 in addition to \n before
10585         passing to PangoLayout
10586
10587         * gtk/gtkimcontextsimple.c
10588         (gtk_im_context_simple_get_preedit_string): 
10589         return an empty string if no match is pending
10590
10591         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
10592         assertion that the returned preedit string was sane
10593
10594         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
10595         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
10596         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
10597
10598 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
10599
10600         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
10601         Fix up finalizer to chain to its parent.
10602
10603 2000-12-11  Alexander Larsson  <alexl@redhat.com>
10604
10605         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
10606         Clearified the difference between the keyboard types. Wrote a note
10607         about the magic sysrq key to get out of raw mode.
10608
10609 2000-12-09  James Henstridge  <james@daa.com.au>
10610
10611         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
10612         member to hold masks for detecting the start of a protocol packet.
10613         (mouse_devs): add packet start masks for ps2 and ms device types.
10614         Left the mask for fidmour blank, as I have no idea what it should
10615         be.
10616         (handle_mouse_io): skip bytes until we get to the start of a
10617         packet.  My Logitech mouse seems to be passing an extra NULL pad
10618         byte, and GPM does a similar thing here.
10619         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
10620         this is the ms mouse driver.
10621         (gdk_fb_mouse_ms_packet): fix up button handling, which was
10622         completely broken except for button1.  It was checking the wrong
10623         bit in the packet for the status of the right mouse button, and
10624         wrongly assuming right == button2 rather than 3.  I fixed that and
10625         also added support for middle button (button2).
10626
10627 2000-12-08  Havoc Pennington  <hp@redhat.com>
10628
10629         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
10630         that cause a segfault on text insertion
10631
10632         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
10633         warning
10634
10635         * gtk/gtktextiter.c (test_log_attrs): use
10636         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
10637
10638         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
10639         Get log attrs for a line, using a cache stored on the buffer
10640         
10641         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
10642         reported by Jeff Franks
10643
10644 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10645
10646         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
10647         /dev/ttyS0 -> /dev/mouse
10648
10649 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10650
10651         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
10652         Added dummy gdk_fontset_load.
10653
10654 2000-12-08  Alexander Larsson  <alexl@redhat.com>
10655
10656         * docs/README.linux-fb:
10657         * docs/Makefile.am:
10658         Initial GtkFB docs.
10659         
10660         * gdk/linux-fb/Makefile.am:
10661         Define GDK_DATA_PREFIX.
10662
10663         * gdk/linux-fb/gdkmain-fb.c:
10664         Fix typo.
10665         Change default display to /dev/fb0.
10666
10667         * gdk/linux-fb/gdkpango-fb.c:
10668         Add $(prefix)/share/fonts/ to font path.
10669         
10670 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10671
10672         * gdk/linux-fb/gdkkeyboard-fb.c:
10673         New file containing the abstracted keyboard driver. Most code
10674         taken from gdkinput-ps2.c
10675
10676         * gdk/linux-fb/gdkinput-ps2.c:
10677         Removed file.
10678         
10679         * gdk/linux-fb/Makefile.am:
10680         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
10681
10682         * gdk/linux-fb/gdkcolor-fb.c:
10683         display->fb was renamed to display->fb_fd.
10684
10685         * gdk/linux-fb/gdkcursor-fb.c:
10686         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10687
10688         * gdk/linux-fb/gdkinput.c:
10689         Moved gdk_input_init here from gdkinput-ps2.c
10690
10691         * gdk/linux-fb/gdkmain-fb.c:
10692         display->fb was renamed to display->fb_fd.
10693         Now the tty and the console is opened here instead
10694         of in the keyboard driver. Also check GDK_VT to see what
10695         tty to open.
10696         Move gdk_beep () here from gdkinput-ps2.c
10697         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10698
10699         * gdk/linux-fb/gdkmouse-fb.c:
10700         Add header.
10701         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10702         Return correct keyboard modifiers.
10703         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
10704
10705         * gdk/linux-fb/gdkprivate-fb.h:
10706         Add tty and vt info to display.
10707         Add orignal modeinfo storage to display
10708         Update global functions
10709
10710         * gdk/linux-fb/gdkwindow-fb.c:
10711         Added gdk_fb_window_find_focus().
10712         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10713
10714 2000-12-07  Havoc Pennington  <hp@pobox.com>
10715
10716         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
10717         function, noticed by Alex
10718
10719 2000-12-06  Elliot Lee  <sopwith@redhat.com>
10720
10721         * configure.in: Detect freetype properly
10722
10723         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
10724         above.
10725
10726 2000-12-06  Alexander Larsson  <alexl@redhat.com>
10727
10728         * gdk/linux-fb/Makefile.am:
10729         Add gdkmouse-fb.c
10730         
10731         * gdk/linux-fb/gdkmouse-fb.c:
10732         New file. Abstracted the mouse drivers a bit.
10733
10734         * gdk/linux-fb/gdkcursor-fb.c:
10735         The cursor hide/show functions was moved here from gdkinput-ps2.c.
10736
10737         * gdk/linux-fb/gdkinput-ps2.c:
10738         Removed old mouse handling code. Moved cursor handling code
10739         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
10740         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
10741         gdk_mouse_get_info.
10742
10743         * gdk/linux-fb/gdkmain-fb.c:
10744         Pass NULL pointers for x,y in gdk_mouse_get_info call.
10745
10746         * gdk/linux-fb/gdkprivate-fb.h:
10747         Removed public gdk_fb_find_common_ancestor, added and renamed
10748         functions for the new mouse handling code.
10749
10750         * gdk/linux-fb/gdkwindow-fb.c:
10751         Moved gdk_fb_window_send_crossing_events here. added global
10752         variable gdk_fb_window_containing_pointer. made
10753         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
10754         renamed to gdk_mouse_get_info.
10755
10756 2000-12-06  Alexander Larsson  <alexl@redhat.com>
10757
10758         * gdk/linux-fb/gdkevents-fb.c:
10759         Update to match latest gmain/gsource changes.
10760
10761         * gdk/linux-fb/gdkinput-ps2.c:
10762         Bogus gdk_keymap_get_entries_for_keycode implementation so that
10763         it links. Will be implemented later.
10764
10765 2000-12-03  Havoc Pennington  <hp@pobox.com>
10766
10767         * gdk/Makefile.am: add gdkkeys.[hc]
10768
10769         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
10770         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
10771
10772         * acconfig.h, configure.in: add checks and command line options
10773         for XKB
10774
10775         * gdk/x11/gdkkeys-x11.c: Implement the above functions
10776         
10777         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
10778         and group in the key event
10779
10780         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
10781         field with the low-level hardware key code, and a group
10782         field with the keyboard group
10783
10784         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
10785         and declare a couple globals used for keymap handling
10786         
10787         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
10788         hold down Shift-Control and type a hex number to get a Unicode 
10789         character corresponding to the hex number
10790         (gtk_im_context_simple_get_preedit_string): Fix cursor position
10791         (return bytes not chars)
10792
10793 2000-12-05  Elliot Lee  <sopwith@redhat.com>
10794
10795         * gdk/gdkcolor.h: Make GdkColor specify element sizes
10796         to avoid waste on 64-bit platforms.
10797
10798 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
10799
10800         * INSTALL: Fix link to PNG home, remove reference
10801         to fribidi.
10802
10803         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
10804         
10805         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
10806         tested.)
10807
10808         * gtk/gtkcheckmenuitem.c: Permanently turn on
10809         always_show_toggle.
10810
10811         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
10812         be NULL. (Vladimir Klebanov, #26545)
10813
10814         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
10815         some signed/unsigned comparison problems. (#6510,
10816         David Kaelbling)
10817
10818         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
10819         return type to boolean (Oskar Liljeblad, #18648)
10820
10821 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10822
10823         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
10824         Remove bogus colormap setting.
10825
10826 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10827
10828         * gdk/linux-fb/gdkcolor-fb.c:
10829         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
10830
10831         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
10832         Must set colormap.
10833         
10834 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
10835
10836         * docs/tutorial/gtk-tut.sgml: DND updates
10837
10838 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
10839
10840         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10841         Remove old debug g_warning().
10842         (gdk_fb_draw_drawable): The src argument can be either a wrapper
10843         or an implementation, just pass the implementation to draw_drawable_2.
10844         
10845         * gdk/linux-fb/gdkprivate-fb.h:
10846         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
10847
10848         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10849         clear and invalidate area when window is destroyed.
10850         (send_map_events): Remove old commented out code.
10851
10852 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10853
10854         * gdk/linux-fb/gdkpango-fb.c:
10855         Use italic instead of oblique in font aliases.
10856         
10857         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
10858         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
10859         other unsupported functions.
10860
10861 2000-12-04  Havoc Pennington  <hp@redhat.com>
10862
10863         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
10864
10865         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
10866
10867         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
10868
10869         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
10870         hack to avoid infinite loops (synthetic expose event) - 
10871         Owen has more appropriate fixes in a branch he'll check in later.
10872
10873         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
10874         separator, CR, and CRLF as line ends
10875
10876         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
10877         into lines using pango_find_paragraph_boundary(); other bits of
10878         the widget are still going to be broken if the boundary isn't '\n'
10879         though
10880
10881 2000-12-04  Alexander Larsson  <alexl@redhat.com>
10882
10883         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
10884         multiply.
10885
10886         * gdk/linux-fb/gdkpango-fb.c:
10887         Copied some 26.6 scaling macros from pango to clean up the rounding.
10888         (pango_fb_font_get_glyph_info): Correct sign on x value.
10889
10890         * gdk/linux-fb/gdkprivate-fb.h:
10891         Removed unreferenced external functions.
10892
10893         * modules/linux-fb/Makefile.am: Use ` instead of '.
10894
10895         * modules/linux-fb/basic.c:
10896         Remove dead code. In particular the dummy lang engine which broke all
10897         pango layouts in GtkFB. Don't include tables-big.i anymore.
10898
10899         * modules/linux-fb/tables-big.i:
10900         Upgrade to latest version from pango. Left for reference, basic_ranges
10901         moved to basic.c.
10902         
10903 2000-12-04  Havoc Pennington  <hp@redhat.com>
10904
10905         Fix bugs Alex found:
10906         
10907         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
10908         to "draw"
10909
10910         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
10911
10912         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
10913
10914         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
10915         implementation in here, apparently the expose() implementation was
10916         dead code.
10917
10918 2000-12-04  Alexander Larsson  <alexl@redhat.com>
10919
10920         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10921         Return positive descent.
10922
10923 2000-12-02  Havoc Pennington  <hp@pobox.com>
10924
10925         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
10926         method and signal
10927         
10928         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
10929         calls gdk_window_process_updates() to push the exposes through
10930         (gtk_widget_class_init): No more draw signal, no
10931         gtk_widget_real_draw()  
10932         
10933         * gtk/gtkbin.c (gtk_bin_draw): remove
10934
10935         * gtk/gtkbox.c (gtk_box_draw): remove
10936
10937         * gtk/gtkbutton.c (gtk_button_draw): remove
10938
10939         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
10940
10941         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
10942
10943         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
10944
10945         * gtk/gtkclist.c (gtk_clist_draw): remove
10946
10947         * gtk/gtkentry.c (gtk_entry_draw): remove
10948
10949         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
10950
10951         * gtk/gtkfixed.c (gtk_fixed_draw): remove
10952
10953         * gtk/gtkframe.c (gtk_frame_draw): remove
10954
10955         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
10956
10957         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
10958
10959         * gtk/gtklayout.c (gtk_layout_draw): remove
10960
10961         * gtk/gtklist.c (gtk_list_draw): remove
10962
10963         * gtk/gtklistitem.c (gtk_list_item_draw): remove
10964
10965         * gtk/gtkmenu.c (gtk_menu_draw): remove
10966
10967         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
10968
10969         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
10970
10971         * gtk/gtknotebook.c (gtk_notebook_draw): remove
10972
10973         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
10974
10975         * gtk/gtkpacker.c (gtk_packer_draw): remove
10976
10977         * gtk/gtkrange.c (gtk_range_draw): remove
10978
10979         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
10980
10981         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
10982
10983         * gtk/gtktable.c (gtk_table_draw): remove
10984
10985         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
10986
10987         * gtk/gtktext.c (gtk_text_draw): remove
10988
10989         * gtk/gtktextview.c (gtk_text_view_draw): remove
10990
10991         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
10992
10993         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
10994
10995         * gtk/gtktree.c (gtk_tree_draw): remove
10996
10997         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
10998
10999         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
11000
11001         * gtk/gtkviewport.c (gtk_viewport_draw): remove
11002
11003         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
11004
11005         * gtk/gtkvscale.c (gtk_vscale_draw): remove
11006
11007         * gtk/gtkwindow.c (gtk_window_draw): remove
11008
11009 2000-20-01  Anders Carlsson  <andersca@gnu.org>
11010
11011         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
11012         a GtkToggleButton is both insensitive and active, it was being
11013         drawn by the GtkButton draw handler which doesn't check the
11014         state. Now it's calling gtk_toggle_button_paint instead.
11015         
11016 2000-12-01  Havoc Pennington  <hp@redhat.com>
11017
11018         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
11019         dangling pointers to the appearance attributes from the 
11020         line display
11021
11022         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
11023         width/height to mean "full width/height of drawable"
11024
11025         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
11026         click to select word/line
11027         
11028         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
11029         when getting log attrs. Get a slice, so that pixmaps and stuff
11030         are properly handled.
11031
11032         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
11033         paste into the selection (replaces selection now, previously
11034         crashed or added to selection). Reveals longstanding btree bug -
11035         select multiple lines, middle-click on the selection, boom. This
11036         isn't related to my changes though.
11037
11038         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
11039         PangoLogAttrs changes
11040         (gtk_entry_move_backward_word): ditto
11041
11042         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
11043         functions return bool whether the iter moved onto a
11044         dereferenceable position.
11045  
11046         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
11047         functions for motion in terms of display lines.
11048
11049         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
11050         get the buffer a mark is inside
11051         
11052 2000-12-01  Alexander Larsson  <alexl@redhat.com>
11053
11054         * gdk/linux-fb/Makefile.am:
11055         * modules/linux-fb/Makefile.am:
11056         Freetype 2 final uses freetype-config
11057
11058         * gdk/linux-fb/gdkpango-fb.c:
11059         Upgrade to use Freetype 2 final.
11060         More flexible support for font aliases, this also fixes a bug with
11061         GtkFontSelector, as the aliases must be visible in the font/family list,
11062         or GtkFontSelector reads uninitialized memory.
11063
11064 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
11065
11066         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
11067         XGetIMValues to properly terminate variable argument list, and do
11068         NULL return check for ic_values and xim_styles.
11069
11070         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
11071         Restore preedit state after XmbResetIC().
11072         
11073         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
11074         XvaCreateNestedList() should take XvaNestedList, but not
11075         XvaNestedList*.
11076
11077         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
11078         preedit_draw_callback, preedit_caret_callback): Match
11079         "preedit-changed" signal name to "preedit_changed" to be
11080         consistent to the spec.
11081
11082         * gtk/gtkimcontextsimple.c (check_table):
11083         Match "preedit-changed" to "preedit_changed" to be consistent
11084         to the spec.
11085
11086 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
11087
11088         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
11089         gc->clip_region == NULL>
11090
11091 2000-11-30  Tor Lillqvist  <tml@iki.fi>
11092
11093         Changes by Hans Breuer:
11094         
11095         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
11096         Dont't use negative width and height as max_hints. This fixes
11097         Owen's recent testgtk changes for win32.
11098
11099         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
11100         gdk_win32_hdc_release): These are exported and may be called with
11101         other drawable types than our GdkDrawableImplWin32 (?).
11102
11103         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
11104         so always #define USE_BACKING_STORE.
11105
11106         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
11107         of printf for debugging output.
11108
11109         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
11110         
11111         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
11112
11113         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
11114         declaration.
11115
11116         * gtk/gtktexttypes.h: Ditto.
11117
11118         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
11119         (GDK_VoidSymbol) also if in case of arg check failure.
11120
11121         * gtk/gtkimcontextsimple.c
11122         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
11123         position to the pointer, but to the variable it points to.
11124
11125         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
11126
11127         * gtk/gtk.def: Updates.
11128
11129 2000-11-29  Elliot Lee  <sopwith@redhat.com>
11130
11131         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
11132         GTK_TYPE_TREE_MODEL.
11133
11134 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11135
11136         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
11137         Set the size of the font from the description.
11138         (gdk_text_width): Gross hack that calculates the width
11139         of text by text_length * size/2. This is necessary because
11140         GtkLabel does some ugly gtk_string_width call to calculate
11141         an good size.
11142         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
11143
11144 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
11145
11146         * docs/tutorial/gtk-tut.sgml: DND updates
11147
11148 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11149
11150         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
11151         If you pass width or height == 0 to gdk_window_clear_area they
11152         should be calculated from the window size.
11153
11154 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11155
11156         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
11157         a grab, but no grab-cursor, use the cursor from the grabbed
11158         window. (gdk_fb_window_send_crossing_events): Send normal
11159         enter/leave notifications if grab and owner_events == TRUE.
11160
11161 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11162
11163         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
11164         Do implicit button grabs, even if the window doesn't
11165         want the event.
11166         (gdk_fb_window_send_crossing_events): If there is a
11167         grab, only the grabbed window gets normal enter/leave
11168         notifications. On ungrab go from grabbed window to current.
11169         Don't send any notification to b when propagating from c -> b.
11170         If setting a grab on window, don't set prev_window.
11171         (handle_mouse_input): Send enter/leave events to the window the
11172         mouse is over, not the grabbed one.
11173         
11174 2000-11-28  Elliot Lee  <sopwith@redhat.com>
11175
11176         * gdk/gdkregion-generic.c: Zap warning.
11177         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
11178         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
11179
11180 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
11181
11182         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
11183         The cursor should be hidden if it is part of either the
11184         source or destination region. Not only if it is in both.
11185         (gdk_window_set_transient_for): Silence warnings.
11186
11187 2000-11-28  Alexander Larsson  <alexl@redhat.com>
11188
11189         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
11190         The default mode in X is Pie Arcs, therefore that is
11191         what Gtk+ uses.
11192
11193 2000-11-28  Alexander Larsson  <alexl@redhat.com>
11194
11195         * gdk/linux-fb/gdkinput-ps2.c:
11196         Implement correct EnterNotify/LeaveNotify:
11197         (gdk_fb_window_send_crossing_events): New function that sends
11198         all GdkCrossingEvents from the last mouse-window to the specified
11199         destination.
11200         (gdk_fb_window_visibility_crossing): Removed function.
11201         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
11202         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
11203         instead of gdk_window_get_pointer() for better readability.
11204
11205         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
11206         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
11207
11208         * gdk/linux-fb/gdkprivate-fb.h:
11209         removed gdk_fb_window_visibility_crossing, added
11210         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
11211
11212         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
11213         New function that finds the least common ancestor of two windows.
11214         (gdk_window_show, gdk_window_hide):
11215         Use gdk_fb_window_send_crossing_events.
11216         (gdk_fb_window_move_resize): Send configure events to toplevel
11217         windows. Use gdk_fb_window_send_crossing_events.
11218
11219 2000-11-27  Havoc Pennington  <hp@redhat.com>
11220
11221         * gtk/gtkprivate.h (enum): Remove a trailing comma
11222
11223 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
11224
11225         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
11226         the "changed" callback of the adjustment.  We need to redraw the
11227         spin button's arrows when the adjustment's range changes.
11228         (adjustment_changed_cb): Draw the arrows.
11229         (gtk_spin_button_value_changed): Draw the arrows.
11230
11231 2000-11-23  Alexander Larsson  <alexl@redhat.com>
11232
11233         * gdk/linux-fb/gdkselection-fb.c:
11234         Initial selection implementation.
11235
11236         * gtk/gtkselection.c:
11237         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
11238         requestor in gtk_selection_request.
11239         
11240         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
11241         Added gdk_selection_property atom.
11242
11243         * gdk/linux-fb/gdkprivate-fb.h:
11244         Export _gdk_selection_window_destroyed.
11245         Removed mask_off_x/y from GdkCursorPrivateFB.
11246         Removed hbearing, added top, left to PangoFBGlyphInfo.
11247
11248         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
11249         Call _gdk_selection_window_destroyed
11250         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
11251         the root window has been created.
11252         (static_dx_hack, static_dy_hack, compare_draw_rects,
11253         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
11254         in region. They are already sorted. Instead just traverse them in
11255         reverse if draw_direction < 0.
11256         
11257         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
11258         Double-clicks must be sent after the normal button_press.
11259         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
11260         
11261         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
11262         Pass _gdk_fb_screen_gc instead of NULL.
11263
11264         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
11265         Initialize gdk_selection_property.
11266         (gdk_event_make): Remove unused code.
11267
11268         * gdk/linux-fb/gdkcursor-fb.c:
11269         Make the pixmap for the cursor the same size as the mask. Also remove
11270         the mask_off_x/y fields in GdkCursorPrivateFB and combine
11271         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
11272         Now the whole cursor is visible.
11273
11274         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
11275         Fix bug where xdest+height instead of ydest+height was used
11276         to calculate if the source and dest overlapped. This fixes the
11277         redraw bug when the main window in testgtk was scrolled when
11278         partially covered by a tall window.
11279         Copy rectangles in region in order depending on draw_direction.
11280         Also moved the draw_direction flipping of start_y and end_y into
11281         the gc functions, as this might not be what all of them want.
11282         (gdk_fb_draw_lines): Support dashed lines.
11283         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
11284         so that the text is positioned correctly (was 1 pixel high).
11285
11286         gdk/linux-fb/gdkgc-fb.c:
11287         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
11288         all lines were drawn a pixel to short. Also checked the default of
11289         the rest of the values, and they're the same as X now.
11290
11291         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
11292         Clean up pixel positioning of the glyphs. Just use bgy->top and
11293         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
11294         to all divisions to get correct rounding behaviour.
11295
11296         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
11297         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
11298         Moved start_y/end_y flip into draw_drawable implementations.
11299         Flip also x rendering when draw_direction < 0.
11300         Remove unneccesary multiply with draw_direction.
11301
11302 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
11303
11304         * docs/tutorial/gtk-tut.sgml:
11305           - get rid of gtk_toggle_button_toggled FUD
11306           - start DND section - needs work - based on:
11307                 http://wolfpack.twu.net/docs/gtkdnd/
11308
11309 2000-11-22  Alexander Larsson  <alexl@redhat.com>
11310
11311         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
11312         Correct calculation of font metrics. Now GtkEntrys have sane
11313         size.
11314
11315 2000-11-22  Alexander Larsson  <alexl@redhat.com>
11316
11317         * gdk/gdktypes.h:
11318         Add new type GdkSpan
11319         
11320         * docs/reference/gdk/gdk-sections.txt,
11321         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
11322         gdk/gdkregion.h:
11323         Implement and document gdk_region_spans_intersect_foreach.
11324
11325         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
11326         Add new file gdkrender-fb.c which contains all core
11327         rendering code.
11328         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
11329         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
11330         (optimized rectangle fillers).
11331
11332         * gdk/linux-fb/gdkdrawable-fb2.c:
11333         Move all rendering code to gdkrender-fb.c.
11334         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
11335         Use the new span intersection functions in gdk_fb_fill_spans.
11336         gdk_fb_draw_rectangle() clips filled rectangles and calls
11337         gc->fill_rectangle with the result.
11338         gdk_fb_fill_spans() gets extra argument "sorted".
11339
11340         * gdk/linux-fb/gdkevents-fb.c:
11341         Remove unused includes and defines.
11342         New function gdk_fb_get_time() to get correct time for events.
11343
11344         * gdk/linux-fb/gdkinput-ps2.c:
11345         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
11346         Make sure to set the time of all events.
11347
11348         * gdk/linux-fb/gdkmain-fb.c:
11349         Use gdk_fb_get_time ().
11350
11351         * gdk/linux-fb/gdkprivate-fb.h:
11352         New virtual GC calls: fill_span & fill_rectangle.
11353         Export gdk_fb_get_time().
11354         gdk_fb_fill_spans() gets extra argument "sorted".
11355
11356         * gdk/linux-fb/mi*.c:
11357         Use GdkSpan instead of GdkRectangle.
11358         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
11359         from XFree 4 source)
11360         
11361 2000-11-22    <jrb@redhat.com>
11362
11363         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
11364         reversing the order in an if statement will do.  Doing so managed
11365         to make the treemodelsort half work.  Other half will follow after
11366         I get the insert function fully fixed.
11367
11368 2000-11-21  Elliot Lee  <sopwith@redhat.com>
11369         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
11370         more than 2 bits. Besides, I need to implement an evil hack. :)
11371
11372 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
11373
11374         * docs/tutorial/gtk-tut.sgml: minor corrections
11375
11376 2000-11-20  Jonathan Blandford <jrb@redhat.com>
11377         * gtk/gtktreemodelsort.h: Add convertion functions to let you
11378           convert to and from relative path's and iters.
11379
11380         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
11381           testing sorting functions a bit better.  Currently broken -- will
11382           fix in morning.
11383
11384 2000-11-20  Havoc Pennington  <hp@redhat.com>
11385
11386         * gtk/gtkwidget.c: Documented a bunch of functions in here
11387         (gtk_widget_realize): Warn if you try to realize
11388         a widget with no parent that isn't a toplevel
11389         (gtk_widget_intersect): return a gboolean
11390
11391 2000-11-20  Havoc Pennington  <hp@redhat.com>
11392
11393         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
11394         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
11395         scrolling to be implemented in GDK to finish. Also, right now
11396         we just size_allocate all children on every layout change,
11397         which is pretty lame. Test commented out of testtext.c, 
11398         until it works better.
11399
11400 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
11401
11402         * gdk/linux-fb/gdkdrawable-fb2.c:
11403         Removed unused arguments from gdk_fb_drawable_get_pixel().
11404
11405         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
11406         Renamed fidur specific mouse packet data in MouseDevice to
11407         generic. Used it in ps2 mouse handling code to avoid blocking
11408         reads.
11409
11410 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
11411
11412         * demos/gtk-demo/main.c: Changed to have the list become
11413         non-italic when the demo window is destroyed through an external
11414         event (like a close button).  Doing so found three bugs in the
11415         widget.
11416
11417         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
11418
11419         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
11420         we actually set the cell.
11421
11422         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
11423
11424         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
11425         free a leaked path.  Thanks memprof.
11426
11427 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
11428
11429         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
11430         off-by-one error when destroying allocated segments
11431         on failure. (Elliot)
11432
11433 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
11434
11435         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
11436         memleaks found by Evan Martin.
11437
11438 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
11439
11440         * Released 1.3.2
11441         
11442         * NEWS: Updates for 1.3.2
11443
11444 2000-11-17  Tor Lillqvist  <tml@iki.fi>
11445
11446         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
11447         but in general for window system specific events.
11448
11449         * gtk/gtk.def
11450         * gtk/makefile.mingw.in
11451         * gtk/makefile.msc.in: Update.
11452         
11453         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
11454
11455 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
11456
11457         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
11458         distribute gtk.immodules.
11459
11460         * gtk/Makefile.am (install-data-local): Don't install the
11461         gtk.immodules file created for the uninstalled modules;
11462         instead run gtk-query-immodules after install
11463
11464 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
11465
11466         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
11467         -rpath to the right install location.
11468
11469         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
11470         -export-dynamic.
11471
11472         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
11473         properly.
11474
11475 2000-11-15  Havoc Pennington  <hp@pobox.com>
11476
11477         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
11478         patch from Mikael Hermansson to temporarily stop blinking while
11479         the user is using the keyboard to type or navigate. 
11480
11481         Also, when blinking, stay on for longer than we stay off. Also,
11482         return from start_cursor_blink if !cursor_visible, to save
11483         checking that flag all over the place before we call
11484         start_cursor_blink.
11485
11486 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
11487
11488         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
11489         only contain a "fontset" line, which is now ignored.
11490
11491         * gtk/gtkentry.c (gtk_entry_button_release): Make 
11492         double-click-to-select-word work.
11493         
11494 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
11495
11496         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
11497         Don't move back one char when we are actually at the end of the 
11498         paragraph.
11499
11500 2000-11-15  Robert Brady  <robert@suse.co.uk>
11501
11502         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
11503         'o' < 'p'.
11504         
11505         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
11506         bind_textdomain_codeset.
11507
11508         (gtk_init_check): Make the warning about translating default:LTR
11509         sterner.
11510         
11511 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
11512
11513         * **/Makefile.am : remove unecessary rules for win32-specific
11514         config-substituted targets. If you want these rules, use
11515         --enable-maintainer-mode (called automatically by autogen.sh).
11516         Stops a lot of unneccessary make-time warnings.
11517
11518         * gtk/gtktext{layout,display}.c: Factor in total width as
11519         well as screen when figuring alignment for word-wrap as well as
11520         no wrap; this is necessary to handle lines that cannot be wrapped
11521         at all.
11522
11523 2000-11-15  Havoc Pennington  <hp@redhat.com>
11524
11525         * gtk/testtext.c: Implement essential color cycling feature
11526
11527 2000-11-15  Havoc Pennington  <hp@redhat.com>
11528
11529         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
11530         when we invalidate the main window.
11531
11532         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
11533         GtkTextView will now invalidate the side windows for us when text
11534         changes.
11535
11536 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
11537
11538         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
11539         unconditionally, since we may need to update the horizontal
11540         scrollbars even if the height didn't change.
11541
11542         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
11543         the extra attrs, since some of them affect size.
11544
11545         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
11546         x_offset correctly.
11547
11548 2000-11-15  Havoc Pennington  <hp@redhat.com>
11549
11550         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
11551         don't move the first line out into the margin, instead move the
11552         whole paragraph in order to make space for the first line within 
11553         the margin
11554
11555 2000-11-15  Havoc Pennington  <hp@redhat.com>
11556
11557         * gtk/gtktextview.c (changed_handler): offset redraw rect by
11558         xoffset in addition to yoffset, so horizontal scrolling doesn't
11559         break redraws
11560
11561 2000-11-15  Havoc Pennington  <hp@redhat.com>
11562
11563         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
11564         from the cursor
11565         (render_layout_line): fix reversed test that caused weird
11566         underlines to get drawn
11567
11568 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
11569
11570         * gdk/linux-fb/gdkprivate-fb.h:
11571         Fix debug macros.
11572         
11573 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
11574
11575         * gdk/linux-fb/gdkprivate-fb.h:
11576         Added virtual functions set_pixel, get_color,
11577         fill_span and draw_drawable to the GC.
11578         Added global _gdk_fb_screen_gc to use instead of
11579         NULL when drawing to the screen.
11580         Added _gdk_fb_gc_calc_state() prototype.
11581
11582         * gdk/linux-fb/gdkgc-fb.c:
11583         Call _gdk_fb_gc_calc_state() on any gc state change.
11584
11585         * gdk/linux-fb/gdkglobals-fb.c:
11586         Add _gdk_fb_screen_gc
11587                 
11588         * gdk/linux-fb/gdkdrawable-fb2.c:
11589         _gdk_fb_gc_calc_state() calculates best functions
11590         for the GC state and depth.
11591         Moved bpp specialized code to separate functions.
11592         Added optimized 24 bpp AA draw_drawable.
11593
11594         * gdk/linux-fb/gdkevents-fb.c:
11595         Silence gcc warning.
11596
11597         * gdk/linux-fb/gdkimage-fb.c:
11598         Use _gdk_fb_screen_gc
11599
11600         * gdk/linux-fb/gdkwindow-fb.c:
11601         Init and use _gdk_fb_screen_gc
11602
11603         * gdk/linux-fb/mitypes.h:
11604         Remove unused types.
11605
11606 2000-11-14  Havoc Pennington  <hp@pobox.com>
11607
11608         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
11609         to pixels
11610
11611 2000-11-14  Havoc Pennington  <hp@pobox.com>
11612
11613         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
11614
11615         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
11616         unknown char, no real reason we were using a variable. 
11617         Remove gtk_text_unknown_char variable. Fix all the text widget
11618         files accordingly.
11619
11620         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
11621         since the Unicode spec seems to prefer that character for our
11622         purposes.
11623
11624 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
11625
11626         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
11627         value of g_getenv() isn't freeable, so g_strdup it.
11628
11629         * modules/input/inuktitut.c: Inuktitut input method.
11630
11631         * modules/input/Makefile.am: Build this.
11632         
11633 2000-11-14  Elliot Lee  <sopwith@redhat.com>
11634
11635         * gtk/Makefile.am: Install gtk.immodules, needed for operation
11636         of gtk programs.
11637
11638 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
11639
11640         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
11641         reversed > that was causing Home to go to end of previous line.
11642
11643         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
11644         modified-keypresses (leave for bindings.)
11645
11646         * modules/input/Makefile.am: Remove useless -export-dynamic
11647         from module LDFLAGS.
11648
11649 2000-11-14  Havoc Pennington  <hp@redhat.com>
11650
11651         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
11652         higher.
11653
11654         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
11655         account. Also, render rise, underline, background, etc. for
11656         pixbufs as well as text. Also, draw underlines one pixel higher.
11657
11658         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
11659         PangoAttribute for the rise, so it gets drawn properly. Also,
11660         add the GtkTextAppearance attribute for pixbuf/widget segments
11661         as well; we should go ahead and have rise, underline, background,
11662         stipple work for those
11663
11664         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
11665         Pango
11666
11667 2000-11-15  Tor Lillqvist  <tml@iki.fi>
11668
11669         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
11670
11671         * gtk/gtk.def: Update.
11672
11673         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
11674         included.
11675         (gtk_rc_get_im_module_file): Use run-time installation directory
11676         on Win32.
11677
11678         * gdk/win32/rc/gdk.rc: Remove.
11679         * gdk/win32/rc/gdk.rc.in: New file.
11680         * gdk/win32/rc/Makefile.am: New file
11681         * gdk/win32/Makefile.am: Corresponding changes.
11682
11683         * gtk/gtk.rc: Remove.
11684         * gtk/gtk-win32.rc.in: New file.
11685         * gtk/Makefile.am: Corresponding changes.
11686
11687         * configure.in: Corresponding changes.
11688
11689         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
11690         has a built gtkcompat.h. Developers using CVS code on Win32 can
11691         hand-edit it from gtkcompat.h.in.
11692
11693         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
11694         gtkcompat.h from gtkcompat.h.win32.
11695
11696 2000-11-14  Havoc Pennington  <hp@redhat.com>
11697
11698         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
11699         to default to GDK_ACTION_MOVE if the drag is within a single
11700         widget. Defaults to GDK_ACTION_COPY between widgets.
11701
11702 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
11703
11704         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
11705
11706         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
11707
11708         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
11709         srcdir != builddir
11710
11711         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
11712
11713         * configure.in (GTK_VERSION): Up to 1.3.2
11714
11715         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
11716         gtkimcontextxim.h
11717
11718         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
11719         missing doc comment.
11720
11721 2000-11-14  Alexander Larsson  <alexl@redhat.com>
11722
11723         * modules/linux-fb/basic.c:
11724         Use the glib iconv wrappers.
11725
11726 2000-11-13  Havoc Pennington  <hp@pobox.com>
11727
11728         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
11729         still more bugs.
11730
11731         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
11732         scroll the GdkWindows before realization.
11733
11734 2000-11-13  Havoc Pennington  <hp@redhat.com>
11735
11736         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
11737         where GC didn't always get updated properly
11738
11739         * demos/gtk-demo/textview.c (create_tags): Use subattributes
11740         of fonts instead of setting the entire font
11741
11742         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
11743         setting entire font
11744
11745         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
11746
11747         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
11748         a bunch of individually-settable font attributes. You can still 
11749         use the "font" and "font_desc" args, they just set all the font
11750         attributes at once.
11751
11752 2000-11-13 Elliot Lee <sopwith@redhat.com>
11753
11754         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
11755
11756 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
11757
11758         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
11759         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
11760
11761         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
11762         work better.
11763
11764 2000-11-13  Havoc Pennington  <hp@redhat.com>
11765
11766         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
11767         the module file.
11768
11769         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
11770         dest->language
11771
11772         * gtk/testtext.c: Test pixels above/below/inside paragraphs
11773         settings
11774
11775         * gtk/gtktextview.c: Implement object args and setters/getters for
11776         all the aspects of the GtkTextAttributes that are not set from
11777         GtkWidget attributes. This is spacing, justification, margins,
11778         etc.
11779
11780         (gtk_text_view_set_arg)
11781         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
11782         args
11783         (gtk_text_view_class_init): Add args for justify, left_margin,
11784         right_margin, indent, and tabs
11785         
11786
11787         * gtk/gtktextlayout.c (set_para_values): fix to display indent
11788         attribute properly
11789
11790         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
11791         replace with indent attribute
11792
11793         * gtk/gtktextlayout.c (set_para_values): multiply indent by
11794         PANGO_SCALE
11795
11796         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
11797         rearranging code to do that
11798         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
11799         i.e. don't subtract the top_margin first, just to keep
11800         all margin-futzing in one place.
11801
11802         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
11803
11804         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
11805         special case of last line, Pango now handles this itself.
11806         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
11807         Y coordinate
11808         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
11809         (find_display_line_above): wasn't moving the byte index as it
11810         iterated over lines, so always returned byte 0. Also, port to use
11811         PangoLayoutIter.
11812         (find_display_line_below): same problem as
11813         find_display_line_above. Also, port to use PangoLayoutIter.
11814
11815 2000-11-13  Alexander Larsson  <alexl@redhat.com>
11816
11817         * gdk/linux-fb/*.[ch]:
11818         Massive reindent to gtk+ standard. My hands hurt.
11819
11820         * gdk/linux-fb/gdkcolor-fb.c:
11821         Move GdkColorPrivateFB from inherited to windowing_data
11822
11823         * gdk/linux-fb/gdkcursor-fb.c:
11824         _gdk_cursor_new_from_pixmap made static
11825
11826         * gdk/linux-fb/gdkdnd-fb.c:
11827         GdkDragContextPrivate moved to windowing_data
11828
11829         * gdk/linux-fb/gdkdrawable-fb2.c:
11830         Removed endian.h, use glib endianness macros instead
11831         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
11832         and GDK_DRAWABLE_IMPL_FBDATA
11833
11834         * gdk/linux-fb/gdkfont-fb.c:
11835         Add empty gdk_font_load(). Needed for linking of Gtk+.
11836
11837         * gdk/linux-fb/gdkimage-fb.c:
11838         Removed endian.h, use glib endianness macros instead
11839         Moved GdkImagePrivateFB to windowing_data
11840         gdk_image_new_bitmap didn't always allocate enough
11841         memory.
11842
11843         * gdk/linux-fb/gdkinput-ps2.c:
11844         Added semi-working support for MS serial mice.
11845
11846         * gdk/linux-fb/gdkprivate-fb.h:
11847         s/GdkWindowPrivate/GdkWindowObject/
11848         Removed GdkWindowPrivate typedef
11849         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
11850         Removed GDK_DRAWABLE_P
11851         Move GdkColorPrivateFB from inherited to windowing_data
11852         Moved GdkImagePrivateFB to windowing_data
11853
11854         * gdk/linux-fb/gdkvisual-fb.c:
11855         Removed some unused debug code.
11856
11857         * gdk/linux-fb/gdkwindow-fb.c:
11858         Use stock cursors instead of including X headers.
11859         s/GdkWindowPrivate/GdkWindowObject/
11860
11861         * gdk/linux-fb/mitypes.h:
11862         Removed unused types.
11863
11864         * modules/linux-fb/basic.c:
11865         Use the pango fribidi wrappers.
11866
11867 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11868
11869         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
11870         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
11871         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
11872         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
11873         GEqualFunc where applicable.
11874         
11875         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
11876         pango_font_description_equal as changed in pango.
11877         
11878         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
11879
11880         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
11881
11882         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
11883
11884         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
11885
11886         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
11887
11888         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
11889
11890         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
11891         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
11892
11893         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
11894         gtk_rc_styles_compare -> gtk_rc_styles_equal.
11895
11896 2000-11-12  Havoc Pennington  <hp@pobox.com>
11897
11898         * demos/gtk-demo/Makefile.am (democodedir): change demo install
11899         dir to datadir/gtk+-2.0/demo
11900
11901         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
11902         sorts of text widget and Pango font bugs. Urgh.
11903
11904         * demos/gtk-demo/Makefile.am (demos): Add textview.c
11905
11906         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
11907         tree that you should double click to see the demo. Fix 
11908         types of variables to reflect changed return values from 
11909         GtkTreeStore and GtkTreeViewColumn constructors.
11910
11911         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
11912         newly-created buffer to prepare for GObject semantics
11913
11914         * gtk/testtext.c: don't leak the buffer with GObject semantics
11915
11916         * gtk/testtextbuffer.c: ditto
11917         
11918 2000-11-12  Havoc Pennington  <hp@pobox.com>
11919
11920         Rename this testgtk to gtk-demo to avoid confusion, and 
11921         install it so people can use it as a supplement to 
11922         the documentation.
11923         
11924         * demos/gtk-demo: Moved from demos/testgtk
11925
11926         * demos/testgtk: Removed
11927
11928         * configure.in: make Makefile in gtk-demo
11929         
11930         * demos/gtk-demo/Makefile.am: Install sample source to 
11931         datadir/gtk-demo (maybe there's a better place?), and 
11932         rename the binary to gtk-demo
11933         
11934         * demos/gtk-demo/main.c (load_file): Load installed sample
11935         source if source isn't found in pwd.
11936
11937 2000-11-09  Havoc Pennington  <hp@pobox.com>
11938
11939         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
11940         argument to set the char displayed when visibility == FALSE
11941         (gtk_entry_create_layout): If !entry->visible, replace 
11942         all chars with the "invisible char"
11943
11944         * gtk/testgtk.c: Test the invisible_char deal
11945         
11946 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
11947
11948         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
11949         can't get a native font in the right encoding.
11950
11951 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
11952
11953         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
11954         respectively.
11955
11956 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
11957
11958         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
11959         Fix warning when moving between paragraphs.
11960
11961         * gtk/gtkentry.[ch]: Change move => move_cursor, 
11962         delete => delete_from_cursor, insert => insert_at_cursor
11963
11964 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
11965
11966         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
11967
11968         * modules/input/imthai-broken.c: A Thai input method for use if
11969         Thai keys are really generating Latin1 keysyms.
11970
11971         * modules/input/Makefile.am: Build these.
11972
11973 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
11974
11975         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
11976         g_filename_{to,from}_utf8 now takes an extra parameter.
11977
11978         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
11979         strftime into UTF-8.
11980
11981         (column_from_x, gtk_calendar_paint_day_names): Support RTL
11982         calendars.
11983
11984         (gtk_calendar_paint_day_names): Draw day names in the right 
11985         place.
11986         
11987 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
11988
11989         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
11990         problem with using result of g_get_charset() backwards -
11991         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
11992
11993         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
11994         negative min_width/height and max_width/height to
11995         mean "requisition"; this allows setting a window
11996         to be user-resizable in only one direction easily.
11997
11998         * gtk/testgtk.c (create_main_window): Remove hard-coded
11999         usize - set a default size in the vertical direction.
12000
12001 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
12002
12003         * gtk/gtkrange.c: Add some missing casts. Support 
12004         2 and 3 button clicks on the arrows to mean 
12005         "move by pages" and "jump to end". (Like gtkspinbutton)
12006
12007 2000-11-12 Hans Breuer <Hans@Breuer.Org>
12008
12009         * gdk/win32/makefile.msc : reflect build module changes
12010
12011         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
12012         from GdkPixmap*, cast implementation member instead.
12013
12014         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
12015         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
12016         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
12017         more Gdi functions return value checking. 
12018         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
12019         GdkImagePrivateWin32 *.
12020
12021         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
12022         menus useable again. Add #pragma message to keep reminded on this issue.
12023         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
12024         windows. This allows to enable backing store on Win32!
12025
12026         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
12027         in drawable is of impl type. Correct specific type checks appropriate.
12028  
12029         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
12030         GDK_WINDOW_DESTROYED before allocating new resources.
12031
12032         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
12033
12034         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
12035         (gdk_window_foreign_new) initialize parent handle.
12036         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
12037
12038         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
12039         Let the GDI invalidate the window on MoveWindow call to fix scrolling
12040         problems (e.g. main buttons in testgtk). 
12041
12042 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
12043
12044         * gtk/gtkentry.c (gtk_entry_key_press): Call 
12045         gtk_widget_activate for GDK_Return.
12046
12047         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
12048         of preedit cursor position.
12049
12050 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
12051
12052         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
12053         static.
12054
12055 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
12056
12057         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
12058         out support for multiple locales; that simple doesn't
12059         work reliably with current Xlib
12060
12061         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
12062         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
12063         Add support for positioning the cursor within the preedit string.
12064
12065 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
12066
12067         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
12068         at XIM input method module.
12069
12070         * gtk/gtktextview.c: Check for bindings after passing
12071         events to im context filter.
12072
12073 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
12074
12075         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
12076         empty attribute lists properly.
12077
12078 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
12079
12080         * gtk/queryimmodules.c (main): Return non-zero exit
12081         status if errors were encountered querying any
12082         modules.
12083
12084         * modules/input/Makefile.am (moduledir): remove
12085         leftover bin program target.
12086
12087         * docs/make-todo: Fix typo in error message.
12088
12089 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
12090
12091         * configure.in: Add modules/input/Makefile
12092
12093 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
12094
12095         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
12096         don't include gtkthemes.h.
12097
12098         * gtk/testgtk.c gtk/testtext.c: Set environment variables
12099         to point
12100
12101         * gtk/Makefile.am: Add new .c and .h files, build 
12102         gtk-query-immodules and use it to create a gtk.immodules
12103         file for use of test programs.
12104
12105         * gtk/gtkpreview.c: remove extra blank line.
12106
12107 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
12108
12109         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
12110         Add the ability to add extra tables beyond the default
12111         one, and also the ability to have compose sequences 
12112         that are prefixes of other compose sequences. 
12113
12114         * gtk/gtkimcontextsimple.c: Export a preedit string which
12115         consists of possible candidates for keystrokes that have
12116         been entered but not yet committed.
12117
12118         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
12119         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
12120
12121         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
12122         Add a function to add input-method switching menu items
12123         to a menu.
12124
12125         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
12126         when switching input methods.
12127
12128         * gtk/gtkimcontextsimple.[ch]: Change the format of
12129         the compose table to allow compose tables of different
12130         lengths / sequence.
12131
12132 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
12133
12134         * gtk/gtkimmodule.[ch]: Support routines for loading
12135         GtkIMContext implementations dynamically at runtime.
12136
12137         * modules/input/imcyrillic-translit.c: A sample input
12138         method (based on GtkIMContextSimple with an extra table),
12139         which demonstrates preedit strings and the module
12140         system for input modules
12141
12142         * gtk/queryimmodules.c: Program to query the available
12143         input modules and write the results into a file.
12144          
12145         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
12146         extra config options "im_module_file" (cache file for
12147         input method modules), and "im_module_path" - path
12148         to look for modules when generating cache file.
12149
12150         This doesn't scale.
12151
12152 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
12153
12154         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
12155         generic code from gtkthemes into a new abstraction
12156         GtkModule which has the logic for implementing
12157         a loadable module which implements a number of 
12158         GObject types.
12159
12160 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
12161
12162         * gtk/gtkeditable.[ch]: Convert GtkEditable from
12163         a class into an interface  
12164         
12165         * gtk/gtkoldeditable.[ch]: Move the old editable
12166         implementation into here, so legacy widgets can
12167         still rely on the implemenation. GtkOldEditable
12168         exports GtkEditable. Make selection handling
12169         code use new text conversion functions (and
12170         handle UTF-8 as a side-effect). Use GtkClipboard
12171         for CLIPBOARD.
12172
12173         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
12174         Adopt to match above changes.
12175
12176         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
12177         avoid GtkOldEditable implementation. Restructure
12178         to reduce number of places that modify state directly.
12179         Move to GtkBindingSet. Display the preedit string.
12180         Queue recomputation of PangoLayout and scroll position
12181         to improve effiency of doing complex changes naively.
12182         Add a menu with cut/copy/paste and input method selection.
12183
12184 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
12185
12186         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
12187         to set preedit string and attributes; display preedit string by
12188         inserting string and attributes at cursor when creating the
12189         GtkTextLineDisplay.
12190
12191         * gtk/gtktextlayout.c: Move all conversions between byte
12192         positions in PangoLayout and GtkTextIter into new functions
12193         line_display_iter_to_index/index_to_iter that properly
12194         handle the preedit string.
12195
12196         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
12197         it to return const char * (eventually will end up
12198         as GCONST char *, most likely.)
12199
12200         * gtk/gtktextview.[ch]: Handle the preedit string, call
12201         gtk_im_context_reset() as necessary, add a menu to switch
12202         input methods.
12203         
12204         * gtk/gtktextlayout.[ch]: Remove useless
12205         gtk_text_layout_get_log_attrs() function.
12206
12207 2000-11-11  Tor Lillqvist  <tml@iki.fi>
12208
12209         * gdk/gdk.def
12210         * gtk/gtk.def: Update.
12211
12212         * gdk/win32/*.c: Add last argument to g_type_register_static()
12213         calls.
12214
12215         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
12216
12217         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
12218         generated by older wheel mouse drivers. Get the correct y
12219         coordinate from WM_MOUSEWHEEL messages.
12220
12221         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
12222         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
12223         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
12224         Debugging functions.
12225
12226         * gdk/win32/gdkprivate-win32.h: Declare them.
12227
12228         * gdk/win32/gdkinput-win32.h: Add declaration for
12229         gdk_input_window_destroy().
12230
12231         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
12232
12233 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
12234
12235         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
12236         function to help handle keeping things in sync.
12237
12238 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
12239
12240         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
12241         BOXED marshallers.
12242
12243         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
12244         (gtk_list_store_class_init): use the new BOXED marshallers.
12245
12246         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
12247         new_with_values to new_with_types.
12248         (gtk_tree_store_get_column_type): add this.
12249         (gtk_tree_store_class_init): use the new BOXED marshallers.
12250
12251         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
12252         mirror some POINTER marshallers.
12253
12254 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
12255
12256         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
12257         allow more interesting iterators.  Also, made the lifecycle of
12258         iterators more explicit.
12259
12260         * gtk/gtktreemodelsort.[ch]: New model for sorting.
12261
12262         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
12263         types.
12264
12265 2000-11-09  Alexander Larsson  <alexl@redhat.com>
12266
12267         * demos/testgtk/menus.c:
12268         Changes to make the new testgtk compile after
12269         gtk_menu_append was removed.
12270
12271         * gdk/linux-fb/gdkdrawable-fb2.c
12272         (gdk_fb_get_depth, gdk_fb_get_visual,
12273         gdk_drawable_impl_fb_class_init): Implement
12274         these drawable functions. Now GtkImages work again.
12275
12276         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
12277
12278         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
12279         
12280         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
12281         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
12282         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
12283         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
12284
12285 2000-11-08  Havoc Pennington  <hp@pobox.com>
12286
12287         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
12288         visible_set args, don't know where these had gone, I thought they
12289         used to be there
12290
12291         * gtk/testtext.c: Add a menu item to apply invisibility tag;
12292         now we can test the feature and see that it's totally broken.
12293
12294 2000-11-08  Havoc Pennington  <hp@pobox.com>
12295
12296         Make DND copy pixbufs and tags when source and target share a 
12297         tag table.
12298         
12299         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
12300         in-process GTK_TEXT_BUFFER_CONTENTS target
12301         (gtk_text_view_drag_data_received): Paste from
12302         GTK_TEXT_BUFFER_CONTENTS if we receive it.
12303
12304 2000-11-08  Alexander Larsson  <alexl@redhat.com>
12305
12306         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
12307         API changes.
12308
12309         * gtk/gtkmenu.c: Add support for scrolling menus.
12310         Remove gtk_menu_append/prepend/insert, these have been moved to
12311         gtkcompat.h as #defines.
12312
12313         * gtk/gtkcompat.h.in:
12314         Add compatibility #defines for gtk_menu_append/prepend/insert
12315
12316         * gtk/gtkmenu.h: Add data needed for scrolling menus.
12317         GtkMenuPositionFunc gets an extra argument push_in.
12318         gtk_menu_append/prepend/insert removed.
12319         
12320         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
12321         positioning behaviour to fit to scrolling menus.
12322
12323         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
12324         into menuitem->submeny. That is wrong, and broke torn
12325         off submenus of torn off menus, since they were unrealized
12326         when the first menu was unrealized.
12327
12328         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
12329         gtk_menu_shell_select_item() since these need to be overridden in
12330         GtkMenu.
12331
12332         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
12333         positioning behaviour to fit to scrolling menus.
12334         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
12335         the current item so that it is prelighted when the menu pops up.
12336         This is a workaround to the fact that the menu doesn't get the
12337         initial enter event (due to grabs).
12338
12339         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
12340         s/gtk_menu_append/gtk_menu_shell_append/
12341
12342         * gtk/gtknotebook.c:
12343         s/gtk_menu_insert/gtk_menu_shell_insert/
12344
12345         * gtk/testgtk.c (create_menu, create_menus):
12346         Create the first menu with 50 items so that menu scrolling
12347         can be tested.
12348         
12349         
12350         Patch from Jonathan Blandford  <jrb@redhat.com>
12351
12352         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
12353         system to handle size requests.  First, we ask what the size of
12354         the toggle is.  Then, when allocating the size, we allocate the
12355         toggle_size first.  This way we can have multiple menu-item
12356         classes w/o needing a seperate class for each.
12357
12358         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
12359         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
12360
12361         * gtk/gtkcheckmenuitem.c
12362         (gtk_check_menu_item_toggle_size_request): New function to handle
12363         the toggle size-request.
12364
12365 2000-11-07  Havoc Pennington  <hp@redhat.com>
12366
12367         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
12368         Half-ass somewhat fix this function, so that scrolling to the
12369         insertion point works. Pango hacking is in the future to really
12370         fix it.
12371
12372         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
12373         length of data, no longer used.
12374
12375         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
12376         method contents in here, get rid of destroy method
12377         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
12378         that were backward. Remove debug spew.
12379         (cut_or_copy): Make the clipboard work with insert_range to
12380         preserve tags and pixbufs, not just the primary selection.
12381
12382 2000-11-07  Havoc Pennington  <hp@redhat.com>
12383
12384         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
12385         to gtk_text_mark_get_visible
12386
12387         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
12388         bug that was generating an invalid iterator
12389
12390         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
12391         ensure_char_offsets() in front of code placing the iter in an
12392         invalid state.
12393
12394         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
12395         make override_location arg const
12396         (paste): Replace the selection if we paste into the 
12397         current selection
12398
12399         * gtk/gtkselection.h: Remove "GtkSelectioData"
12400         (struct _GtkSelectionData): move the definition here.
12401
12402         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
12403         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
12404
12405         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
12406
12407         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
12408         (gtk_text_buffer_insert_range_interactive): implement
12409         (gtk_text_buffer_get_tags): Remove, replaced by
12410         gtk_text_iter_get_tags()
12411
12412         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
12413         limit parameter, to avoid infinite linear scan.
12414         (gtk_text_iter_backward_search): Add search limit
12415         (gtk_text_iter_forward_find_char): Add search limit
12416         (gtk_text_iter_backward_find_char): Add search limit
12417
12418 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
12419
12420         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
12421         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
12422         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
12423         gdk/linux-fb/gdkwindow-fb.c:
12424         use g_object_new() instead of g_type_create_instance() which
12425         is a private function for fundamental type implementations.
12426
12427         * gdk/linux-fb/gdkinput-ps2.c:
12428         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
12429         instead just store the current modifier state. Add a (somewhat broken)
12430         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
12431         Rename exported function gdk_input_ps2_get_mouseinfo to
12432         gdk_input_get_mouseinfo.
12433
12434         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
12435         gdk/linux-fb/gdkwindow-fb.c:
12436         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
12437         
12438
12439 2000-11-02  Havoc Pennington  <hp@redhat.com>
12440
12441         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
12442         use stock buttons. Should be 100% source compatible, appropriate
12443         filesel fields now point to dialog->vbox and dialog->action_area.
12444         On the bizarre side, dialog->action_area and filesel->action_area
12445         are not the same widget.
12446         (gtk_file_selection_init): Put some padding around the selection
12447         entry, so it isn't touching the GtkDialog separator.    
12448
12449         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
12450         use stock buttons, etc. Should also be source compatible.
12451         Set the dialog default title in _init not _new().
12452         
12453         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
12454         Use stock buttons; don't put a button box inside the existing
12455         dialog button box. Don't bother with push/pop colormap anymore.
12456
12457         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
12458         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
12459         for message dialog, and necessary for the font selection and color
12460         selection with help and apply buttons.
12461         
12462         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
12463         to the created button widget. Set GTK_CAN_DEFAULT on the button.
12464         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
12465         between buttons, put less padding around the action area.
12466         (gtk_dialog_run): Exit on unmap rather than on destroy. 
12467         This will also exit the loop if the widget is hidden.
12468         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
12469         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
12470         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
12471         special-case delete event.
12472
12473         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
12474         formatting
12475         
12476 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
12477
12478         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
12479         button to temporarily disable position recording in the
12480         "saved position" test.
12481
12482 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
12483
12484         * gtk/gtkthemes.c: added compat code that temporarily implements
12485         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
12486         going to be revamped by owen's upcoming GtkModule patches, but
12487         untill then people want gtk to build, right? ;)
12488
12489 2000-11-04  Havoc Pennington  <hp@pobox.com>
12490
12491         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
12492         list
12493
12494         * docs/Changes-2.0.txt: Add note about
12495         gtk_container_get_toplevels()
12496
12497         * gtk/gtktextview.h: formatting
12498         
12499         * gtk/gtktextview.c: don't start descriptions with "Returns",
12500         confuses gtk-doc
12501
12502 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
12503
12504         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
12505         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
12506
12507 2000-11-03  Havoc Pennington  <hp@redhat.com>
12508
12509         * gtk/gtktexttagtable.c: Docs
12510         (gtk_text_tag_table_size): return a signed int
12511
12512         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
12513         (gtk_text_tag_event): make the event_object a GObject
12514
12515         * gtk/gtktextview.c: Write API docs for all functions.
12516
12517         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
12518         for gtk_text_view_get_window_type() called on one of the private
12519         windows.
12520
12521         * gtk/gtktextview.c: Instead of accessing text_view->buffer
12522         directly, call get_buffer() which demand-creates a default
12523         buffer. So gtk_text_view_new() can be used to create a view with a
12524         default buffer in it, if you just want an empty text box users can
12525         put data in. Useful for GUI builders also.
12526
12527 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
12528
12529         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
12530         the charset encodign portion MUST be in lowercase.
12531         * gtk/gtkrc.az: added file for Azeri language
12532
12533 2000-11-03  Havoc Pennington  <hp@redhat.com>
12534
12535         Get widgets working on the btree/buffer side. Display of them 
12536         still doesn't work.
12537         
12538         * gtk/gtktextview.c: start implementing child widget stuff
12539
12540         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
12541
12542         * gtk/gtktextlayout.c: handle embedded widgets
12543
12544         * gtk/gtktextdisplay.c: handle embedded widgets
12545
12546         * gtk/gtktextchild.c: Implement all the child anchor goo
12547
12548         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
12549         function
12550
12551         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
12552         (insert_pixbuf_or_widget_segment): abstract out common portions of 
12553         creating a child anchor or a pixbuf segment.
12554         (gtk_text_btree_create_child_anchor): new function
12555         (gtk_text_btree_unregister_child_anchor): new function
12556
12557         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
12558         allocate_child signal on GtkTextLayout
12559
12560         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
12561         values
12562         (gtk_text_iter_get_child_anchor): new function
12563
12564         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
12565         default handler for the changed signal, which calls
12566         gtk_text_buffer_set_modified(), instead of just always emitting
12567         changed then calling set_modified() manually. I guess this is
12568         maybe more flexible. It seems logical.
12569
12570 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
12571
12572         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
12573         now.
12574
12575         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
12576
12577 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
12578
12579         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
12580         been marked static.
12581
12582 2000-11-02  Havoc Pennington  <hp@redhat.com>
12583
12584         * gtk/testgtk.c (create_labels): had a test backward
12585
12586         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
12587         fields, so the dest GC ends up with the correct clip origin, 
12588         etc. Fixes a bug where colored labels didn't redraw 
12589         properly.
12590
12591 2000-11-02  Alexander Larsson  <alexl@redhat.com>
12592
12593         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
12594         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
12595         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
12596         Add last argument to t_type_register_static call.
12597         
12598         * gdk/linux-fb/gdkdrawable-fb2.c:
12599         Add last argument to t_type_register_static call.
12600         export the get_image drawable virtual function.
12601
12602         * gdk/linux-fb/gdkimage-fb.c:
12603         Add last argument to t_type_register_static call.
12604         rename gtk_image_get to _gdk_fb_get_image and
12605         export it for use by gdkdrawable-fb2.
12606
12607         * gdk/linux-fb/gdkprivate-fb.h:
12608         export _gdk_fb_get_image.
12609
12610         * gdk/linux-fb/gdkselection-fb.c:
12611         Add new api call stubs.
12612
12613         * gtk/Makefile.am:
12614         Missing ( in linux-fb part.
12615
12616         * modules/linux-fb/Makefile.am:
12617         Must link with gdk_pixbuf or get unresolved symbol.
12618
12619 2000-11-01  Havoc Pennington  <hp@pobox.com>
12620
12621         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
12622         GTK_TYPE_TEXT_ITER and BOXED marshallers
12623
12624         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
12625
12626         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
12627         
12628         * gtk/gtk-boxed.defs: add GtkTextIter
12629
12630         * gtk/gtkmarshal.list: Add marshallers for text widget that 
12631         properly use OBJECT and BOXED
12632
12633 2000-11-01  Havoc Pennington  <hp@redhat.com>
12634
12635         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
12636
12637         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
12638         before returning it. 
12639         
12640 2000-11-01  Havoc Pennington  <hp@redhat.com>
12641
12642         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
12643         Clip the rectangle to be rendered to the drawable, since
12644         get_from_drawable() requires a region within the drawable
12645
12646 2000-11-01  Havoc Pennington  <hp@redhat.com>
12647
12648         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
12649         from coordinates.
12650
12651 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
12652
12653         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
12654         it isn't NULL.
12655
12656 2000-11-01  Havoc Pennington  <hp@pobox.com>
12657
12658         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
12659         on a label
12660         (gtk_label_finalize): unref the attr list if any.
12661
12662         * gtk/testgtk.c (create_get_image): close test on second click
12663         (make_message_dialog): close dialog if it exists
12664
12665         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
12666
12667         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
12668         gdk-pixbuf
12669
12670         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
12671         from Pango markup format
12672         (gtk_label_set_markup_with_accel): ditto but with accelerator
12673         parsing
12674
12675         * gtk/gtkimage.c (gtk_image_expose): reformatting.
12676
12677         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
12678         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
12679         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
12680         call gdk_window_get_origin().
12681
12682         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
12683         implement GDK_PIXBUF_ALPHA_FULL
12684         
12685 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
12686
12687         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
12688         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
12689         g_signal_handlers_disconnect_matched to block/unblock and disconnect
12690         multiple handlers respectively, instead of only treating the
12691         first handler found (bug reported by owen).
12692
12693 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
12694
12695         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
12696
12697         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
12698
12699         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
12700         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
12701         gtk/gtktreeviewcolumn.h: Fixed inline docs.
12702
12703         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
12704         widget.  Needs writing someday.
12705
12706         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
12707         the docs.
12708
12709 2000-10-30  Havoc Pennington  <hp@redhat.com>
12710
12711         * gtk/gtktextview.h, gtk/gtktextview.c:
12712         Rename delete_at_cursor delete_from_cursor, and 
12713         move to move_cursor.
12714
12715 2000-10-30  Havoc Pennington  <hp@redhat.com>
12716
12717         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
12718         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
12719         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
12720         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
12721         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
12722         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
12723         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
12724         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
12725         gtktexttypes.h, gtktextview.c, gtktextview.h:
12726
12727         Massive reindentation and reformatting. Arg alignment and comments
12728         still need fixing in various places.
12729
12730 2000-10-30  Havoc Pennington  <hp@redhat.com>
12731
12732         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
12733         to be named insert_at_cursor and delete_at_cursor so C++ can
12734         handle them.
12735
12736 2000-10-28  Tor Lillqvist  <tml@iki.fi>
12737
12738         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
12739         to get a double directory separator in case the home directory
12740         ends with one. This would cause trouble especially on Windows,
12741         where the path will be confused with the syntax for an an UNC
12742         (network share) path \\server\share\path.
12743         (gtk_rc_add_initial_default_files): Ditto.
12744
12745 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
12746
12747         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
12748
12749         * gtk/gtktextview.c: Use correct marshallers.
12750
12751 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
12752
12753         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
12754         use new iter stuff, and added all the appropriate signals et al.
12755
12756         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
12757         code is internal to gtk only.
12758
12759 2000-10-28  Tor Lillqvist  <tml@iki.fi>
12760
12761         * gtk/gtk.def
12762         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
12763         glib-genmarshal etc.
12764
12765 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
12766
12767         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
12768         parallel builds.
12769
12770 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
12771
12772         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
12773
12774 2000-10-27  Robert Brady  <robert@suse.co.uk>
12775
12776         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
12777         en_GB (British), ia (Interlingua).
12778
12779 2000-10-26  Havoc Pennington  <hp@redhat.com>
12780
12781         * gtk/gtktextiter.c (my_strrstr): fix constness warning
12782
12783         Fixed output of:
12784         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
12785         
12786         * gtk/gtktextsegment.c (char_segment_new): rename
12787         (_char_segment_new_from_two_strings): rename
12788         (_toggle_segment_new): rename
12789         
12790         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
12791         (make_clipboard_widget): make it static
12792         (text_get_func): static
12793         (text_clear_func): static
12794
12795         * gtk/gtkcolorsel.c (adjustment_changed): make this function
12796         static
12797         (hex_changed): make it static
12798         (hsv_changed): make it static
12799         (opacity_entry_changed): make it static
12800
12801         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
12802         (toggle_segment_check_func): rename with _gtk
12803
12804         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
12805         (_widget_segment_new): rename
12806         (_widget_segment_add): rename
12807         (_widget_segment_remove): rename
12808         (_widget_segment_ref): rename
12809         (_widget_segment_unref): rename
12810
12811         * gtk/gtktextmark.c (_mark_segment_new): Rename
12812         _gtk_mark_segment_new   
12813
12814 2000-10-26  Havoc Pennington  <hp@redhat.com>
12815
12816         * gtk/gtkmarshal.list: add new marshallers used by the text widget
12817         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
12818         types
12819
12820         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
12821         marshaller types
12822
12823         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
12824         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
12825         license on these files.
12826
12827         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
12828         work.
12829
12830         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
12831         runtime random number different for each tree, instead of 
12832         a constant I made up.
12833
12834 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
12835
12836         * gtk/Makefile.am: buncha cleanups, kludged build sources
12837         dependencies with a Makefile: oldest-source-stamp dependancy
12838         for the moment. automake is really fighting us here, with
12839         intentionally not allowing user-defined rules or dependancies
12840         prior to it's -include $(DEP_FILES) statement. sucks rocks!
12841
12842         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
12843         to public headers. tehy have a comment stating that they are
12844         "semi-public" aren't included by gtk.h and if enums popup there,
12845         they can be /*< skip >*/-ed.
12846
12847         * gtk/gtktextlayout.h: 
12848         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
12849         added LGPL... <SIGH>
12850
12851 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
12852
12853         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
12854         GtkTreeIter.  Added iterators everywhere.
12855
12856         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
12857
12858         * gtk/gtktreeviewselection.c: Changed to use the iterators.
12859
12860         * gtk/gtktreestore.c: Changed to use the iterators.
12861
12862         * gtk/gtkliststore.c: Commented out the code.  Will convert to
12863         iterators tomorrow.
12864
12865         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
12866         iterators tomorrow.
12867
12868         * gtk/treestoretest.c: Changed to use iterators.
12869
12870         * demos/testgtk/main.c: Moved to use the new iterator system.
12871
12872 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
12873
12874         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
12875         localization misbehaviour.
12876
12877         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
12878         a useless type without copy/free.
12879
12880         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
12881         of GTK_TYPE_CTREE_NODE.
12882
12883 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
12884
12885         * gtk/gtksignal.c:
12886         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
12887         applicable.
12888
12889         * gtk/gtk-boxed.defs (GtkSelectionData): specify
12890         gtk_selection_data_copy and gtk_selection_data_free
12891         do GtkSelectionData work as params in signals.
12892
12893 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
12894
12895         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
12896         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
12897         couldn't they at least give it a non-standard name?
12898         
12899         * gtk/gtktextlayout.c: arg! yet another implementation of
12900         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
12901
12902         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
12903         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
12904         home. now i know this _is_ a conspiracy.
12905
12906         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
12907         ::state-changed.
12908
12909         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
12910         (gtk_accel_group_create_add): marshaller signature fixups.
12911
12912         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
12913         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
12914
12915         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
12916         anymore.
12917
12918 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
12919
12920         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
12921         due to the signal system changes, it wouldn't build currently. to
12922         be fixed soon.
12923
12924         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
12925
12926         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
12927         so it needs gtk_marshal_VOID__ENUM() instead of
12928         gtk_marshal_NONE__UINT().
12929
12930         * gdk/gdk*.c: adapted type registration functions.
12931
12932         * gtk/gtkbindings.c:
12933         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
12934         gone.
12935
12936         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
12937
12938         * gtk/gtkobject.c:
12939         (gtk_object_destroy):
12940         (gtk_object_shutdown): fixed recursion guards. basically we have to
12941         catch the case where any of GObject.shutdown() or gtk_object_destroy()
12942         is called during ::destroy, and avoid recursion there.
12943
12944         * gtk/gtktypeutils.c:
12945         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
12946         boxed_copy/boxed_free. this needs a more general solution based on a
12947         publically installed code-generator utility.
12948
12949         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
12950         glib's gobject has support for that now.
12951         define GtkSignalMarshaller in terms of GSignalCMarshaller.
12952
12953 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
12954
12955         * gtk/gtksignal.[hc]:
12956         * gtk/gtkmarshal.[hc]:
12957         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
12958         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
12959         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
12960         care of that.
12961
12962         * *.c: marshaller name fixups.
12963
12964         * gtk/gtkmarshal.list: added a comment briefing the format.
12965
12966 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
12967
12968         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
12969         compatibility macros here now. more specifically, most of
12970         the API is preserved (yes, _most_, nonwithstanding the
12971         following exceptions listed, the API is stil lHUGE ;)
12972         things that got removed completely:
12973         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
12974         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
12975         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
12976         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
12977         gtk_signal_remove_emission_hook().
12978         non-functional functions variants:
12979         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
12980         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
12981         not supported anymore.
12982         (gtk_signal_compat_matched): new internal function to aid
12983         implementation of the compatibility macros, it  provides
12984         functionality to block/unblock/disconnect handlers based
12985         on func/data.
12986
12987         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
12988
12989         * *.c: adaptions to new type registration API signatures.
12990
12991 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
12992
12993         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
12994
12995 2000-10-25  Robert Brady  <robert@suse.co.uk>
12996
12997         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
12998         gdk_property_delete): If window == NULL, assume the root window.
12999         (restoring the behaviour that was in 1.2).
13000         
13001         * gtk/testtext.c (save_buffer): Allow creation of new files when
13002         saving.
13003
13004         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
13005         calls to read().
13006
13007 2000-10-25  Tor Lillqvist  <tml@iki.fi>
13008
13009         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
13010
13011         * gdk/win32/gdkdrawable-win32.c
13012         * gdk/win32/gdkimage-win32.c
13013         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
13014         X11 backend.
13015
13016         * gdk/win32/gdkcc-win32.c
13017         * gdk/win32/gdkcolor-win32.c
13018         * gdk/win32/gdkfont-win32.c
13019         * gdk/win32/gdkinput-win32.c
13020         * gdk/win32/gdkmain-win32.c
13021         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
13022
13023 2000-10-24  Havoc Pennington  <hp@redhat.com>
13024
13025         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
13026         it a static function
13027
13028         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
13029         redraw text when a tag is applied to it.
13030
13031         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
13032         (gtk_text_tag_affects_nonsize_appearance): private functions to
13033         see if a tag requires various kinds of redraw/layout to be queued
13034         up.
13035
13036         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
13037
13038         * gtk/testtext.c (fill_example_buffer): Put the cursor 
13039         at the start of the buffer, so search works by default
13040
13041         * gtk/gtktextiter.c (lines_match): init match_start always
13042
13043         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
13044         function, get iter at a line + a byte index
13045
13046         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
13047         to set byte position within a line
13048         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
13049
13050 2000-10-23  Havoc Pennington  <hp@redhat.com>
13051
13052         * gtk/testtext.c: Re-enable the "find" dialog
13053
13054         * gtk/testgtk.c: Add test for gdk_drawable_get_image
13055         
13056         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
13057         the arguments to gdk_draw_drawable were in the wrong order
13058         (gdk_window_paint_init_bg): This function was ignoring the
13059         init_region, instead of clipping to it, so the entire backing
13060         pixmap was cleared on every begin_paint()
13061         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
13062         was in here again, the loop kept using the same GtkWindowPaint
13063         over and over.
13064         (gdk_window_begin_paint_region): Fix a bug where we had two
13065         x_offset instead of x_offset and y_offset
13066
13067         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
13068         before we get the image.
13069         (gdk_draw_drawable): get the composite before we draw the drawable.
13070         (gdk_drawable_real_get_composite_drawable): default
13071         get_composite_drawable implementation that returns the drawable 
13072         itself
13073
13074         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
13075         get_composite_drawable virtual function
13076
13077         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
13078         list-walking bug
13079
13080         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
13081         make this work if the source drawable is a GdkDrawableImplX11
13082         instead of a public drawable type. This is really broken; the
13083         problem is that GdkDrawable needs a virtual method get_xid(), but
13084         of course that doesn't work in practice. Enter RTTI.
13085
13086         Also, improve mismatched depth message.
13087
13088         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
13089         GdkPixmap
13090
13091         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
13092         install _gdk_x11_get_image as our implementation of get_image
13093         
13094         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
13095         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
13096
13097         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
13098         gdk_drawable_get_image
13099
13100         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
13101
13102         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
13103         get_image
13104
13105         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
13106         trailing semicolon after for loop
13107
13108 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
13109
13110         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
13111         where font_desc for widget's context lagged widget's font_desc by
13112         one step.
13113
13114 2000-10-22  Tor Lillqvist  <tml@iki.fi>
13115
13116         * gdk/win32/gdkgc-win32.c
13117         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
13118
13119         * gtk/makefile.mingw.in
13120         * gtk/gtk.def: Updates.
13121
13122         * gtk/testgtk.c: sleep() is called _sleep in MS's C
13123         library.
13124
13125         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
13126
13127         * gtk/makefile.msc: Remove
13128
13129         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
13130
13131         * gtk/Makefile.am: Add it.
13132
13133         * configure.in: Generate it.
13134
13135         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
13136         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
13137         something even if not implemented, to satisfy picky MSVC.
13138
13139         Patches by Hans Breuer:
13140         
13141         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
13142         SetBkMode() and SetTextAlign() before calling
13143         pango_win32_render().
13144
13145         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
13146         Set hcliprgn to NULL after destroying it.
13147         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
13148
13149         * gdk/win32/gdkgeometry-win32.c
13150         (_gdk_windowing_window_queue_antiexpose): More effective
13151         implementation.
13152
13153         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
13154         depth as default, not the visual's.
13155
13156         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
13157         against empty title.
13158
13159         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
13160         IMAGE_PRIVATE_DATA.
13161
13162         * gdk/win32/gdkimage-win32.c: Use it.
13163
13164 2000-10-22  Robert Brady  <robert@suse.co.uk>
13165
13166         * configure.in: Check for bind_textdomain_codeset
13167
13168         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
13169         present, make use of it.
13170
13171         Add a translatable string "default:LTR" which, if translated
13172         to "default:RTL", will cause the default direction to be
13173         Right-to-Left.
13174
13175         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
13176         direction if marked as flippable.
13177
13178         * gtk/gtkhscale.c: Mark widget as flippable.
13179         
13180 2000-10-04  Havoc Pennington  <hp@redhat.com>
13181
13182         * gtk/testgtk.c (create_buttons): create some stock buttons
13183         with the default accel group
13184         (create_image): test some new GtkImage features
13185         (make_message_dialog): test GtkMessageDialog
13186         (create_modal_window): fix someone's bizzarro indentation
13187
13188         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
13189         GTK_WIN_POS_CENTER_ON_PARENT. 
13190         Add "destroy with parent" setting, which means the window goes
13191         away with its transient parent.
13192         (gtk_window_get_default_accel_group): get the default accel group
13193         for the window.
13194         (gtk_window_set_destroy_with_parent): set/unset destroy with
13195         parent flag
13196         (gtk_window_read_rcfiles): invalidate icon set caches
13197         after reloading rcfiles 
13198
13199         * gtk/gtkenums.h (GtkWindowPosition): add
13200         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
13201         on its parent window when the dialog is mapped for the first time.
13202
13203         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
13204         a simple message dialog class
13205         
13206         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
13207         handler to emit response signal, and maybe later it would
13208         honor a hide_on_delete flag - though that isn't there yet.
13209         Set border width on the vbox to 2, so we get some padding.      
13210         Use a button box for the action area.
13211         (gtk_dialog_key_press): synthesize a delete event if Esc
13212         is pressed and the GtkWidget key press handler didn't 
13213         handle the escape key.
13214         (gtk_dialog_new_with_buttons): new function creates a dialog
13215         with some default buttons in it.
13216         (gtk_dialog_add_action_widget): add an activatable widget
13217         as a button in the dialog - you can also add a non-activatable
13218         widget by accessing the action area directly.
13219         (gtk_dialog_add_button): add a simple button - stock ID or 
13220         label - to the action area
13221         (gtk_dialog_response): emit response signal
13222         (gtk_dialog_run): block waiting for the dialog, return 
13223         the response. Override normal delete_event behavior, so that 
13224         delete_event does nothing inside gtk_dialog_run().
13225
13226         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
13227         emitted when an action widget is clicked or the dialog gets
13228         delete_event
13229
13230         * gtk/gtk.h: add gtkmessagedialog.h
13231
13232         * gtk/Makefile.am: add gtkmessagedialog.[hc]
13233
13234 2000-10-18  Havoc Pennington  <hp@redhat.com>
13235
13236         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
13237         where any number of empty lines would get skipped
13238
13239         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
13240         edge.
13241
13242         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
13243         warning about invalid iterators (explain more thoroughly)
13244         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
13245
13246         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
13247         big
13248
13249         * demos/*.c: Add error handling
13250
13251         * gtk/gtktextbuffer.c: don't modify const iterators
13252
13253         * gtk/gdk-pixbuf-loader.c: Add full error handling here
13254
13255         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
13256         on file load
13257
13258         * gtk/gtkiconfactory.c: Update to reflect addition of error
13259         handling to gdk-pixbuf loaders
13260
13261 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
13262
13263         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
13264         move to new modularized testgtk.
13265
13266 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
13267
13268         * gtk/gtktreeview.c: Draw the arrows correctly.
13269
13270         * gtk/gtktreemodel.c: Added user docs.
13271
13272         * gtk/gtk.h: remove gtktreedatalist.h.
13273
13274         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
13275         parent when generating my type.
13276
13277         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
13278         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
13279
13280 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
13281
13282         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
13283         GtkTreeModel from object to interface.
13284
13285 2000-10-16  Havoc Pennington  <hp@redhat.com>
13286
13287         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
13288         compilation
13289
13290 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
13291
13292         * gtk/gtktreeselection.c: Add API documentation to all public
13293         functions.
13294
13295         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
13296         functions.
13297
13298 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
13299
13300         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
13301         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
13302         docs to all public functions.
13303
13304         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
13305         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
13306         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
13307         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
13308         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
13309         issue.
13310
13311 2000-10-14  Robert Brady  <robert@suse.co.uk>
13312
13313         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
13314
13315 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
13316
13317         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
13318         values other then G_TYPE_STRING.
13319         * gtk/gtktreeselection.c: Minor commenting updates.
13320         * gtk/gtktreeview.c: Format updates.
13321
13322 2000-10-09  Tor Lillqvist  <tml@iki.fi>
13323
13324         * README.win32: Update.
13325
13326         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
13327         lines that had been deleted by mistake (?).
13328
13329         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
13330         also the case fg==white and bg==black (but still not randomly
13331         coloured cursors). Thanks to Wolfgang Sourdeau.
13332
13333         * gdk/win32/*.c: Silence gcc -Wall.
13334
13335         * gtk/gtk.def: Add missing entry points.
13336
13337         Fixes by Hans Breuer:
13338
13339         * gdk/makefile.msc
13340         * gdk/win32/makefile.msc: Update.
13341
13342         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
13343         some MSVC thing, presumably), cause breakpoint on failures. Add
13344         GDK_NOR case. Call g_log_set_always_fatal.
13345
13346         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
13347         should be pased by reference.
13348         
13349         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
13350         
13351         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
13352
13353         * gdk/win32/gdkevents-win32.c
13354         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
13355
13356         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
13357         implementation object.
13358
13359         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
13360         not just windows.
13361         
13362         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
13363         Use the wrapper object.
13364         
13365 2000-10-06  Havoc Pennington  <hp@redhat.com>
13366
13367         * Makefile.am (SRC_SUBDIRS): contrib subdir
13368
13369         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
13370         so it can be used in Xlib version
13371
13372         * demos/testpixbuf.c (update_timeout): error checking from 1.0
13373         tree
13374
13375         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
13376         change from 1.0 tree that returns first frame of animation
13377         if the loaded file is an animation.
13378
13379         * contrib: add new directory to hold stuff that comes with GTK+
13380         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
13381         
13382         * configure.in: add contrib/*
13383
13384 2000-10-05  Havoc Pennington  <hp@redhat.com>
13385
13386         * demos/testpixbuf-save.c: add pixbuf save test
13387
13388         * demos/Makefile.am: add testpixbuf-save.c
13389
13390 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
13391
13392         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
13393         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
13394         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
13395         * gtk/gtktreeselection.[ch]: Replaced
13396         "node_selected"/"node_unselected" signal with "selection_changed"
13397         signal.
13398
13399 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
13400
13401         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
13402         tree widget.
13403
13404 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
13405
13406         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
13407         drawing.
13408
13409 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
13410
13411         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
13412         Move list pointer forwards before removing item from
13413         list. (Crash reported by Salmaso Raffaele)
13414
13415         * gdk/gdkwindow.h: Remove spurious trailing ,
13416
13417         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
13418         dependencies on uninstalled libraries, sorry folks.
13419
13420 2000-10-04  Havoc Pennington  <hp@redhat.com>
13421
13422         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
13423         gtk/gtkiconfactory.c: Fix copyrights    
13424
13425         * demos/testpixbuf.c: add inline pixbuf test
13426         
13427 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
13428
13429         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
13430         Add gdk_window_iconify.
13431
13432         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
13433         (gdk_window_set_geometry_hints): Add win_gravity
13434         to geometry structure.
13435
13436         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
13437         Implement _NET_WM_PING.
13438
13439         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
13440         Set _NET_WM_PID on the client leader.
13441
13442         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
13443         Handle UTF-8 better.
13444
13445         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
13446         UTF-8 better, set _NET_WM_NAME as well. Only set
13447         icon name if it hasn't previously been explicitely 
13448         set.
13449
13450 2000-10-03  Havoc Pennington  <hp@redhat.com>
13451
13452         * gtk/testtextbuffer.c: clean up trailing whitespace,
13453         add extensive tests for tag toggle iteration.
13454         
13455         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
13456         distance
13457
13458         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
13459         optimize case where the tag root is on level 1
13460         (gtk_text_line_previous_could_contain_tag): attempt to implement
13461         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
13462         functionality
13463
13464         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
13465         Implement this, though not very efficiently.
13466
13467         * gtk/gtktextiterprivate.h: reformat
13468
13469         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
13470         iterator
13471
13472         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
13473         this to properly revalidate the iterators.
13474
13475         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
13476         properly at the end of the line (and therefore on empty lines)
13477
13478         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
13479         maybe we should return a value...
13480
13481 2000-10-03  Tor Lillqvist  <tml@iki.fi>
13482
13483         * config.h.win32: Guard definition of alloca(). glib.h now handles
13484         that.
13485
13486         * gdk/gdk.def
13487         * gtk/gtk.def: Add new entry points.
13488
13489         Changes just to make GTK+ build without errors on Win32. No hope
13490         of it working in its current state, though...:
13491         
13492         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
13493         some functions from the X11 backend, just to make GTK+ build.
13494
13495         * gdk/makefile.mingw.in
13496         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
13497         number. Add new object files.
13498
13499         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
13500         GetMessageTime to get timestamp (where on X11 uses
13501         gdk_x11_get_server_time()).
13502
13503 2000-10-02  Havoc Pennington  <hp@pobox.com>
13504
13505         * gtk/gtktextview.c: text_window_* weren't static and should have
13506         been.
13507         Start work on child widgets; not yet complete, syncing to 
13508         office computer.
13509
13510         * gtk/gtktextchild.h: change this to contain a public interface,
13511         starting work on child interfaces.
13512         * gtk/gtktextchildprivate.h: move private interfaces here
13513
13514         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
13515
13516         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
13517         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
13518         gtk/gtktextmark.c: copyright notices
13519
13520         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
13521         internal functions      
13522
13523         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
13524         internal function
13525
13526         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
13527         Reformatting    
13528
13529 2000-09-30  Havoc Pennington  <hp@pobox.com>
13530
13531         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
13532         NULL start/end pointers
13533
13534         * gtk/gtktextbuffer.c: Write some docs
13535         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
13536         NULL, so you can just check whether there's a selection.        
13537
13538         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
13539         cleanup_line or segments_changed ourselves, it gets done 
13540         in unlink_segment
13541
13542         * gtk/gtktextmark.h:
13543         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
13544         
13545         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
13546
13547         * gtk/gtktextmark.c: delete some more old Tk cruft
13548
13549         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
13550         mark before removing it, so we can emit MARK_DELETED with a valid
13551         pointer.
13552         (gtk_text_buffer_mark_set): hold ref across signal emission
13553
13554         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
13555         whining about attempts to delete special marks
13556
13557         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
13558         underscore, since it's internal.
13559
13560         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
13561         now implemented in terms of iterators in gtktextiter.h
13562
13563         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
13564         New function, destructively sets contents of buffer. Also 
13565         a convenient way to clear the buffer by setting text to ""
13566
13567         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
13568         multiline string literal
13569
13570         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
13571         text changes.
13572
13573         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
13574         is not dereferenceable
13575         (gtk_text_iter_forward_lines): fix return value
13576
13577 2000-09-29  Havoc Pennington  <hp@redhat.com>
13578
13579         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
13580
13581         * gtk/gtktextview.c: Implement drag thresholding; change functions 
13582         that set border window size to have nicer name
13583         (gtk_text_view_mark_set_handler):  Fix this to have the 
13584         right signature.
13585
13586         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
13587
13588         * gtk/testtext.c: Update with API changes, put line numbers on 
13589         both sides.
13590         
13591         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
13592         with this
13593
13594         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
13595         pixbuf; delete a big block of #if 0 Tk code
13596
13597         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
13598         insert_pixmap with insert_pixbuf
13599
13600 2000-09-29  Martin Baulig  <baulig@suse.de>
13601
13602         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
13603         confusion with the GdkPixbuf of the GNOME 1.x platform.
13604
13605 2000-09-29  Havoc Pennington  <hp@pobox.com>
13606
13607         * gtk/gtktextview.c: Implement the side windows.
13608
13609         * gtk/testtext.c: Implement simple line numbering in the 
13610         left side window; seems to make scrolling sloooow. Oops.
13611         Also, cursor blink is for some reason causing redraws
13612         of the line numbers. Should investigate...
13613
13614 2000-09-28  Havoc Pennington  <hp@redhat.com>
13615
13616         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
13617         scrolling child windows, and draw focus rectangle properly.
13618         
13619         (gtk_text_view_buffer_to_window_coords):
13620         Coordinate transformation to deal with all these freaking windows
13621         and offsets
13622         (gtk_text_view_window_to_buffer_coords): transform the other way
13623
13624         * gtk/testtext.c (create_buffer): Update to match Pango API change
13625
13626         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
13627         anonymous tags
13628         (foreach_unref): don't emit remove signal from finalize, just
13629         set tag's parent to NULL
13630
13631 2000-09-26  Havoc Pennington  <hp@redhat.com>
13632
13633         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
13634         Fix some warnings       
13635
13636 2000-09-26  Havoc Pennington  <hp@redhat.com>
13637
13638         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
13639         headers into the private header list
13640
13641         * Makefile.am (pkgconfig_DATA): install pkg-config files
13642
13643         * configure.in: add pkg-config files
13644
13645         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
13646
13647         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
13648         outstanding icon caches on theme change.
13649
13650         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
13651         important types:
13652
13653         (GtkIconSource): Specification for creating a pixbuf 
13654         appropriate for a direction/state/size triplet from 
13655         a source pixbuf or filename
13656
13657         (GtkIconSet): List of GtkIconSource objects that are used to
13658         create the "same" icon (e.g. an OK button icon), and cache for
13659         rendered icons
13660
13661         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
13662         up the icon set for a given stock ID.  GTK maintains a stack of
13663         GtkIconFactory to search, and applications or libraries can add
13664         additional icon factories on top of the stack
13665         
13666         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
13667         the set of GtkIconSource specified for a given stock ID into 
13668         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
13669         RcStyle, under the specified stock ID.
13670
13671         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
13672         render_icon used to derive a GdkPixbuf from a GtkIconSource.
13673         This allows people to theme how prelight, insensitive, etc. are
13674         done.
13675
13676         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
13677         icon factories for a style, and return the resulting 
13678         icon set if any.
13679
13680         (gtk_style_render_icon): Render an icon using the render_icon 
13681         method in the GtkStyleClass.
13682
13683         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
13684         Use the style for a given widget to look up a stock ID, get the
13685         icon set, and render an icon using the render_icon method 
13686         of the style
13687
13688         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
13689         (contains information about a stock item), the built-in stock item
13690         IDs, and functions to add/lookup stock items.
13691
13692         * gtk/stock-icons/*: Stock icons that come with GTK
13693
13694         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
13695         a button based on a GtkStockItem
13696         (gtk_button_new_accel): Takes a uline string and accel group, and
13697         installs the accelerator.
13698
13699         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
13700         image-display widget.
13701
13702 2000-09-25  Havoc Pennington  <hp@redhat.com>
13703
13704         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
13705
13706         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
13707         Fix a bug when removing node data, we didn't properly 
13708         re-splice the linked list after removing the data.
13709
13710         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
13711         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
13712
13713         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
13714
13715         * gtk/gtktextlayout.c (set_para_values): Set tab array 
13716         for the layout from the GtkTextTag.
13717
13718         * gtk/gtktexttypes.h: delete tab and search cruft, 
13719         remove g_convert() in favor of GLib version
13720
13721         * gtk/gtktexttypes.c: remove tab implementation from here,
13722         move to Pango
13723
13724         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
13725         tab stuff using new PangoTabArray from Pango
13726
13727         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
13728         unused border_width stuff
13729
13730 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
13731
13732         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
13733         glib) and now useless utf_to_latin1() latin1_to_utf()
13734
13735         * gtk/gtktextview.[ch]: Change ::move_insert and
13736         ::delete_text action signals to ::move and ::delete;
13737         create the signals with the right enumeration type,
13738         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
13739         C-v bindings, change Home, End to move to beginning/end
13740         of line, Add C-Home C-End to move to beginning/end
13741         of buffer. Change ::cut_text to ::cut_clipboard, etc;
13742         combine ::scroll_text into ::move; use new GtkSelectionData
13743         functions to simplify DND text handling.
13744         
13745         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
13746         deletion enumerations here, rename enumeration values to 
13747         be consistently plural.
13748
13749         * gtk/gtktextbuffer.c: Use new clipboard interfaces
13750         for cut/copy/paste and primary selection.
13751
13752         * gtk/gtktextbuffer.[ch]: Remove excess time and
13753         'interactive' arguments from cut/copy/paste;
13754         rename cut to cut_clipboard, etc; remove
13755         gtk_text_buffer_get_clipboard_contents().
13756
13757         * gtk/gtktextlayout.[ch]: Add 
13758         gtk_text_layout_move_iter_to_line_end() to move the iter to 
13759         line ends.
13760
13761         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
13762         Functions to set or get a UTF-8 string on the selection
13763         data.
13764
13765         * gtk/gtkclipboard.[ch]: New, simplified selection handling
13766         interfaces.
13767
13768         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
13769         created widgets - one of these is useless if we don't.
13770
13771         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
13772         a public function clear all targets registered for the
13773         widget.
13774
13775         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
13776         Never call gtk_widget_realize() - that was just asking
13777         for bizarre side-effects.
13778
13779         * gtk/gtkselection.c (gtk_selection_owner_set): Call
13780         gdk_selection_owner_set even if the widget is the
13781         same so that we reliably update the timestamp on
13782         the server.
13783
13784         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
13785         gdk_x11_get_server_time() function.
13786         
13787         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
13788         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
13789         Add some tricky filtering on serial numbers for
13790         selection clear events to fix up long-standard
13791         race condition FIXME's in gtkselection.c.
13792
13793         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
13794         routines to convert from utf8 to compound text or
13795         STRING and from a text property to UTF-8.
13796
13797         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
13798         a convenience function gdk_get_current_event_time().
13799
13800         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
13801         and free selection_data->data properly
13802
13803 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
13804
13805         * gtk/gtkthemes.c: Remove some unecessary includes.
13806
13807 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
13808
13809         * gtk/gtktextdisplay.c
13810         * gtk/gtktextlayout.c
13811         * gtk/gtktexttag.c
13812         * gtk/gtktexttag.h
13813         * gtk/testtext.c: Change the overstrike property to strikethrough,
13814         to closer match pango.
13815
13816 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
13817
13818         * gtk/gtktextview.c: Fix up visibility so that focus,
13819         cursor_visible and blink interact properly.  Reenable cursor blink
13820         which had been roughly disabled. Make blink and focus
13821         properly per-view.
13822
13823         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
13824         Add a flag for whether to display insertion cursor and
13825         a function to set the flag.
13826
13827         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
13828         get_line_y() to get_line_yrange(), to be a bit more generally
13829         useful.
13830
13831 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
13832
13833         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
13834           do stop_navigating_submenu, to clear last timeout properly.
13835           Also in gtk_menu_motion_notify move ignore_enter above
13836           the conditional to make it always happen as suggested by Owen
13837
13838 2000-09-07  Tor Lillqvist  <tml@iki.fi>
13839
13840         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
13841
13842         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
13843         w32api headers.
13844
13845         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
13846         declarations.
13847
13848         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
13849         (gdk_win32_get_colormap): A line had been deleted by mistake.
13850
13851         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
13852         (gdk_event_translate): Handle more virtual keycodes to be able to
13853         generate GDK events for Control-comma, Control-period, etc.
13854
13855         * gtk/gtk.def: Add some missing entry points.
13856
13857 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
13858
13859         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
13860         Doc comment fixing. (Mostly non-matching parameter names.)
13861
13862         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
13863         comments a little to avoid looking like a doc comment.
13864
13865         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
13866         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
13867         conversions be changed to GError?)
13868
13869         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
13870         Move private #defines into .c file.
13871
13872         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
13873         order of argument addition, remove duplicates.
13874
13875         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
13876         parent class is FrameClass, not BinClass.
13877
13878         * gtk/gtk.h: Add gtkinvisible, which was missing.
13879         (It's occasionalyl useful for client apps, if seldom.)
13880
13881         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
13882         #define.
13883
13884 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
13885
13886         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
13887         coordinates when creating window, instead of GDK-space
13888         coordinates. (Avoid BadValue on too large windows.)
13889
13890 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13891
13892         * configure.in (use_mmx_asm): Remove conftest* after use along the
13893         lines of AC_TRY_COMPILE.        
13894         
13895         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
13896         of g_dirname, which is deprecated.
13897         (gtk_rc_parse_any): Removed calls to
13898         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
13899
13900         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
13901         Removed calls to g_hash_table_{freeze,thaw}, as they are
13902         deprecated now.
13903
13904         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
13905         instead of g_basename.
13906         
13907 2000-09-04 Elliot Lee <sopwith@redhat.com>
13908         
13909         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
13910         ANSI warning.
13911
13912 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
13913
13914         * gtk/gtkwidget.h:  Add some documenting comments about 
13915           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
13916           just as owen said on irc.
13917
13918         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
13919           set HAS_DEFAULT.  Only set it if there isn't another window
13920           holding it (a focus window which RECEIVES_DEFAULT) and only unset
13921           it if the widget is not the focused window with RECEIVES_DEFAULT.
13922           This fixes weird double default bugs in dialogs which has things
13923           call gtk_window_set_default at times.
13924
13925 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
13926
13927         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
13928         Nils Barth and David Santiago to improve submenu
13929         navigation. The patch does this by creating a triangular
13930         region from the point where the pointer leaves the
13931         menu to the submenu.  While the pointer is in
13932         that region and a timeout has not expired, events 
13933         that would cause the active submenu to change are
13934         ignored.
13935
13936 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
13937
13938         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
13939         moving a toplevel window immediately after sizing it would
13940         result in it being sized back to the old size since 
13941         impl->width, impl->height aren't updated until we hear
13942         back from the server. There is still a (longstanding) bug
13943         here that gdk_window_get_size() will give the wrong size
13944         until we do hear back.
13945
13946 2000-08-31  Havoc Pennington  <hp@redhat.com>
13947
13948         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
13949         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
13950         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
13951         Rename GtkTextStyleValues to GtkTextAttributes
13952
13953 2000-08-31  Havoc Pennington  <hp@pobox.com>
13954
13955         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
13956         for rapid testing whether an iterator is the end iterator
13957         (gtk_text_btree_new): init end line cache
13958         (gtk_text_line_is_last): use fast cached line to 
13959         see if we're the last line.
13960         (get_last_line): use cached line here too, should 
13961         speed up some random unrelated code.
13962         
13963 2000-08-30  Havoc Pennington  <hp@pobox.com>
13964
13965         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
13966         signals.
13967
13968         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
13969         delete_text signals. This allows the signals to be used for
13970         implementing undo.
13971
13972         * gtk/gtktextbuffer.c: Change signal handler signatures; 
13973         provide "interactive" argument when emitting insert_text or
13974         delete_text signal.
13975         
13976 2000-08-30  Havoc Pennington  <hp@pobox.com>
13977
13978         * gtk/gtktextbuffer.c: Docs
13979
13980 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
13981
13982         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
13983         from switch statements, since Tor removed the enumeration
13984         value.
13985         
13986         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13987         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
13988
13989 2000-08-29 Elliot Lee <sopwith@redhat.com>
13990         * */*.h: Use G_GNUC_CONST.
13991
13992 2000-08-27  Havoc Pennington  <hp@pobox.com>
13993
13994         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
13995         minor indentation fixes, inserted some FIXME about stuff I
13996         realized was broken while documenting it.
13997         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
13998         GTK convention  
13999
14000 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
14001
14002         * gtk/testgtk.c (create_styles): Fix double free of
14003         font desc.
14004
14005 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14006
14007         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
14008         
14009         * gtk/testgtk.c (create_styles): Add a test for modifying
14010         the style through gtk_widget_modify_*.
14011
14012         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
14013         a function to get the current modifier style.
14014
14015         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
14016         of the passed in GtkRcStyle instead of ref'ing it.
14017
14018         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
14019
14020 2000-08-20  Tor Lillqvist  <tml@iki.fi>
14021
14022         * gdk/gdkimage.h
14023         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
14024         shared memory image+pixmap GdkImage type, or
14025         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
14026         I am dropping that.
14027
14028         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
14029         actually call gtk_init_abi_check(), passing also
14030         sizeof(GtkWindow). Ditto for gtk_init_check(). 
14031
14032         * gtk/gtk.def
14033         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
14034         New functions, used to check that the GTK+-using code has been
14035         compiled using the correct compiler and switches. In particular,
14036         with gcc one has to use the -fnative-struct switch as GTK+ is
14037         compiled with that.
14038
14039 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
14040
14041         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
14042         ->prev fields when merging lists. (Found simultaneously
14043         by Pawel Salek and Jakub Jelinek)
14044
14045 2000-08-12  Tor Lillqvist  <tml@iki.fi>
14046
14047         * gdk/gdk.def
14048         * gtk/gtk.def: Add missing entries.
14049
14050         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
14051         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
14052
14053         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
14054         function. Dummy implementation at this point.
14055
14056         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
14057         rules. Undefine GTK_COMPILATION when compiling the test programs.
14058         
14059         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
14060
14061 2000-08-11  Tor Lillqvist  <tml@iki.fi>
14062
14063         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
14064         to convert back and forth from UTF-8 and the "system" (or "current
14065         locale") charset when necessary. Indentation/spacing cleanup.
14066
14067 2000-08-10  Havoc Pennington  <hp@redhat.com>
14068
14069         * Makefile.am (snapshot): Change the format of the snapshot
14070         version to match glib
14071
14072         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
14073         from EXTRA_DIST since it doesn't seem to exist
14074
14075 2000-08-10  Tor Lillqvist  <tml@iki.fi>
14076
14077         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
14078         version of the directory name (not the UTF-8 one) when building
14079         the path name to stat().
14080
14081 2000-08-03  Elliot Lee  <sopwith@redhat.com>
14082
14083         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
14084         PANGO_ATTR_SHAPE set.
14085
14086 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
14087
14088         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
14089         Peter Osterlund to simplify the code while keeping the
14090         functionality the same.
14091
14092 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
14093
14094         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
14095         is_viewable() test further inside the function, since removing the 
14096         window from the redraw list without clearing ->update_area
14097         was also very broken.
14098
14099 2000-08-02  Tor Lillqvist  <tml@iki.fi>
14100
14101         * configure.in: Check for <unistd.h>.
14102
14103 2000-08-01  Martin Baulig  <baulig@suse.de>
14104
14105         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
14106         to display the message that this is a development version of GTK+.
14107
14108 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
14109
14110         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
14111         was depending on widget->allocation instead of the width of text_area,
14112         which was incorrect for subclasses like GtkSpinButton.
14113
14114         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
14115         with width == 1 tests that should be width == -1.
14116
14117 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
14118
14119         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
14120         (broken, Elliot, every single window blank on X) custom code with call
14121         to gdk_window_is_viewable() which a) prevents code duplicate and
14122         b) works. 
14123
14124 2000-07-31  Elliot Lee  <sopwith@redhat.com>
14125
14126         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
14127         to get the GDK_PARENT_ROOT() macro to work.
14128         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
14129         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
14130         of, windows that aren't shown.
14131         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
14132         pointer grab stuff.
14133
14134 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
14135
14136         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
14137           s/gtk_main_iteration/g_main_iteration/
14138
14139           Did this already in change:
14140                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14141           don't know how it got reverted.
14142
14143 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
14144
14145         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
14146         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
14147
14148         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
14149         not gdk_pixbuf.
14150
14151 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
14152
14153         * configure.in,po/{sp,sr}.po: Added Serbian files
14154
14155 2000-07-30  Tor Lillqvist  <tml@iki.fi>
14156
14157         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
14158
14159         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
14160         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
14161         GIOChannel implementation.
14162
14163         * gdk/win32/gdkinput.c
14164         * gdk/win32/gdkpango-win32.c: Update license name here, too.
14165
14166         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
14167         definition to match prototype.
14168
14169         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
14170
14171 2000-07-27  Elliot Lee  <sopwith@redhat.com>
14172
14173         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
14174         function, to allow handling image formats that cannot be detected
14175         by looking at content alone.
14176
14177 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
14178
14179         * docs/tutorial/*.gif *.jpg *.eps
14180           Update these to the same look-n-feel.
14181           Why does including images in DocBook suck so badly?
14182
14183 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
14184
14185         * gtk/gtktable.c: applied patch from Phil Thompson
14186         <phil@river-bank.demon.co.uk> that enables space settings for
14187         the last row/columns as well.
14188
14189 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
14190
14191         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
14192         updates the license headers to the GNU Lesser General Public License,
14193         as well as updating the copyright year to 2000.
14194
14195 2000-07-26  Robert Brady  <rwb197@zepler.org>
14196
14197         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
14198           and po/Makefile, was installing and looking for them under gtk20
14199           and gtk2 respectively.
14200
14201 2000-07-25  Havoc Pennington  <hp@redhat.com>
14202
14203         * gtk/testtext.c: Comment out some stuff that depends on the rest
14204         of my patches.
14205
14206 2000-07-25  Havoc Pennington  <hp@redhat.com>
14207
14208         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
14209         buffer
14210
14211 2000-07-25  Havoc Pennington  <hp@redhat.com>
14212
14213         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
14214         widget changes.
14215
14216         * gtk/gtktextview.h: To be consistent with usage of "line"
14217         throughout the API to mean "newline-terminated thingy", change
14218         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
14219         to MOVEMENT_LINE.
14220
14221         (GtkTextView): Add flags for default editability, and whether to
14222         show the cursor. Add functions to get/set that. Add 
14223
14224         (gtk_text_view_get_iter_location): new function
14225
14226         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
14227         gtktextlayout.h
14228         (g_convert): Add g_convert temporarily, will go in glib in a bit
14229         
14230         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
14231         GtkTextTagTableForeach instead of brokenly using GHFunc.
14232         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
14233
14234         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
14235         moved to public header.
14236
14237         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
14238         "invisible", since "elide" was a bad name.
14239         (gtk_text_tag_get_priority): Added
14240
14241         (GtkTextStyleValues): put this in public header, along with
14242         functions to use it.
14243
14244         * gtk/gtktextmarkprivate.h: Include more headers, since we no
14245         longer include gtktextbtree.h.
14246
14247         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
14248         gtk_text_mark_deleted
14249
14250         * gtk/gtktextlayout.h: Don't include the "really private" headers,
14251         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
14252         to make this possible. Now we only need to install
14253         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
14254         (However the Makefile.am isn't changed yet because of the
14255         logistics of merging gtk-hp-patches piecemeal)
14256
14257         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
14258         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
14259         gtk_text_iter_get_line is now used in the public API for a
14260         different purpose.
14261
14262         * gtk/gtktextiter.h: Clean up function names to be more
14263         consistent. Always call char offset "offset" and byte index
14264         "index". A "line" is always a line number. 
14265
14266         (gtk_text_iter_is_last): new function, more efficient than 
14267         the existing way to check
14268         (gtk_text_iter_is_first): new function, also more efficient
14269
14270         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
14271
14272         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
14273         gtk_text_iter_forward_char, etc.
14274
14275         (gtk_text_iter_forward_to_tag_toggle): Renamed from
14276         forward_find_tag_toggle, since this isn't a linear search
14277
14278         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
14279
14280         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
14281         New functions, search for a buffer substring.
14282
14283         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
14284         interactive and default editable (since we need to store that info
14285         until we receive the selection data).
14286
14287         Remove all the _at_char and at_line etc. versions of functions;
14288         only have iterator versions.
14289
14290         Add _interactive() versions of functions, that consider the
14291         editability of text. (FIXME add interactive flag to the 
14292         insert/delete signals per Darin's suggestion)
14293
14294         (gtk_text_buffer_get_tag_table): new function, demand-creates the
14295         tag table if necessary
14296
14297         Remove declaration of gtk_text_buffer_get_iter_from_string
14298
14299         (_gtk_text_buffer_get_btree): private/internal function, added.
14300         
14301
14302         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
14303         (gtk_text_line_is_last): new function
14304
14305 2000-07-25  Havoc Pennington  <hp@redhat.com>
14306
14307         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
14308         using GtkProgressBar. See Changes-2.0.txt for details.
14309
14310         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
14311         "pulse_step" which are the equivalent of
14312         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
14313         Implement new API.
14314         
14315         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
14316         (use_text_format) to mark whether text set on the progress bar is
14317         a format string. Deprecate entire GtkProgress interface.
14318
14319         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
14320         (gtk_progress_build_string): make this a no-op if use_text_format
14321         is FALSE
14322
14323         * docs/Changes-2.0.txt: Describe progress bar changes.
14324
14325 2000-07-25  Tor Lillqvist  <tml@iki.fi>
14326
14327         * Makefile.am: Include the build directory.
14328
14329         * configure.in: Generate build/Makefile, build/win32/Makefile,
14330         gdk/, gdk/win32/, and gtk/makefile.mingw.
14331
14332         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
14333         Add GETTEXT_PACKAGE.
14334         
14335         * gdk/gdk.def
14336         * gtk/gtk.def: Updates.
14337
14338         * gdk/gdkfont.h
14339         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
14340         need them any longer.
14341
14342         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
14343
14344         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
14345         PANGOWIN32_LIBS and gdk_pixbuf.
14346
14347         * gdk/win32: Compiles, but no doubt doesn't work at all.
14348
14349         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
14350
14351         * gdk/win32/gdkinput.c: New file, temporarily.
14352         
14353         * gdk/win32/gdkinput-win32.h: New file
14354
14355         * gdk/win32/gdkinputprivate.h: Remove.
14356
14357         * gdk/win32/gdkpango-win32.c: New file.
14358
14359         * gtk/makefile.mingw.in: New file
14360
14361         * gtk/makefile.cygwin: Removed
14362         
14363         * gtk/Makefile.am: Update accordingly.
14364
14365         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
14366         made externally visible.
14367
14368         * gtk/gtkmain.c: Use it.
14369         
14370         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
14371         is enough.
14372
14373         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
14374
14375 2000-07-24 Elliot Lee <sopwith@redhat.com>
14376         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
14377         individual backends already.
14378         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
14379         again. Yes, there really is a good reason for this, if you are using the gdkregion
14380         internals, and if you're not, why do you care?
14381         * gdk/gdkwindow.c: Fix inverted condition
14382         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
14383         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
14384         * gtk/gtkrange.c: Redraw trough when moving.
14385         * gtk/gtktypeutils.c: Fix warning by adding const cast.
14386         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
14387
14388 2000-07-23  Tor Lillqvist  <tml@iki.fi>
14389
14390         * configure.in: Check for mkstemp and sigsetjmp. Output
14391         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
14392
14393         More work on GDK for Win32. Still in an intermediate state.
14394
14395         * gdk/makefile.cygwin
14396         * gdk/win32/makefile.cygwin: Removed.
14397         
14398         * gdk/makefile.mingw.in
14399         * gdk/win32/makefile.mingw.in: New files.
14400
14401         * gdk/Makefile.am
14402         * gdk/win32/Makefile.am: Generate and distribute them.
14403
14404         * gdk/win32/gdkwindow-win32.h
14405         * gdk/win32/gdkdrawable-win32.h
14406         * gdk/win32/gdkpixmap-win32.h: New files.
14407
14408         * gdk/win32/gdkcolor-win32.c
14409         * gdk/win32/gdkcursor-win32.c
14410         * gdk/win32/gdkdrawable-win32.c
14411         * gdk/win32/gdkgc-win32.c
14412         * gdk/win32/gdkimage-win32.c
14413         * gdk/win32/gdkprivate-win32.h
14414         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
14415         Rename fields and variables called xcursor, xid, etc (these names
14416         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
14417
14418 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
14419
14420         * gtk/gtkentry.[ch]: Fix some problems with vertical
14421         alignment.
14422
14423         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
14424         char/byte confusion.
14425
14426 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
14427
14428         * gtk/gtktextview.c (changed_handler): Fix bug where
14429         redraw wasn't being done properly when height of
14430         dirty region changed.
14431
14432         * demos/Makefile.am: Remove various references to
14433         -lgmodule
14434
14435 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
14436
14437         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
14438         PangoAttrShape to reserve space for pixmaps, add 
14439         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
14440         in the display functions.
14441         
14442         * gtk/testgtk.c (create_layout): Set some more exotic
14443         scrolled window options
14444
14445         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
14446         Add function to set the shadow type of a window, to allow
14447         putting a shadow around widgets such as GtkLayout or GnomeCanvas
14448         which don't draw their own frame.
14449
14450 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
14451
14452         * docs/tutorial/package-db-tutorial.sh: New file for
14453           packaging DocBook format tutorial
14454
14455 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
14456
14457         * docs/tutorial/gtk-tut.sgml: Minor updates
14458
14459         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
14460
14461 2000-07-19  Tor Lillqvist  <tml@iki.fi>
14462
14463         * gtk/gtksignal.c: Fix C++ comment.
14464
14465         * gtk/gtkimmulticontext.c
14466         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
14467         don't return value from void functions.
14468
14469         * gtk/gtk.def: Add gtk_rc_style_unref.
14470
14471 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
14472
14473         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
14474         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
14475         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
14476         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
14477         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
14478         gtk/gtktypeutils.h: Include files outside of the extern "C"
14479         block. Makes some C++ compiler happy. Reported by Denis Vakatov
14480         <vakatov@peony.nlm.nih.gov>.
14481
14482 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
14483
14484         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
14485           Completes first pass. Hurrah!
14486
14487 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
14488
14489         * docs/tutorial/gtk-tut.sgml: More clean ups.
14490
14491 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
14492
14493         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
14494         paint the background of the text area which was accidentally
14495         removed at some point.
14496
14497         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
14498           
14499          - Move most of the functionality from the theme vtable
14500            into GtkRcStyleClass and GtkStyleClass. The moved
14501            vtable functions were changed a bit in the move to
14502            work better in their new home.
14503
14504          - Get rid of the engine and engine_data fields from
14505            GtkRcStyle and GtkStyle; instead the theme
14506            engine derives theme-specific subclasses of GtkRcStyle
14507            and GtkStyle
14508
14509          - Add extra dlsym() found entry point to themes,
14510            theme_create_rc_style().
14511
14512         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
14513         in gtk_style_real_copy.
14514
14515         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
14516         to register a type associated with an engine. (The engine
14517         won't be unloaded as there is an instance of the type.)
14518
14519
14520 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
14521
14522         * docs/tutorial/gtk-tut.sgml: Clean ups.
14523
14524 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
14525
14526         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
14527           of cleaning up to do.
14528
14529 2000-07-15  Tor Lillqvist  <tml@iki.fi>
14530
14531         * gdk/testgdk.c: New file, quick hack to test backends for
14532         pixel-by-pixel correctness of the most simple graphic operations.
14533
14534 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
14535
14536         * Really release 1.3.1
14537         
14538         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
14539         include structure.
14540
14541 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
14542
14543         * Released 1.3.1
14544
14545 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
14546
14547         * gtk/gtktextlayout.c: use FALSE for size_only most
14548         of the time when calling gtk_text_layout_get_line_display()
14549         to avoid causing double reshapes when a redraw follows
14550         immediately after.
14551
14552 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
14553
14554         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
14555         appropriate region and gdk_window_process_updates() so trough
14556         updating doesn't lag behind the window being scrolled.
14557
14558         * gdk/gdkgc.c: Make parent_class pointer static.
14559          
14560 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
14561
14562         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
14563         include <string.h>.
14564          
14565         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
14566         cut-and-paste error in computing memory offset for 4 channels.
14567
14568 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
14569
14570         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
14571         gtk_rc_append_default_pixmap_path(), since it wasn't
14572         adding an interesting path and we don't have a meaningful
14573         default for this value.
14574
14575 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
14576
14577         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
14578         gtk-config to gtk-config-2.0 move gtk_.m4 to
14579         gtk-2.0.m4
14580
14581         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
14582         gdk/Makefile.am demos/Makefile.am: Change 
14583         library names to libgtk-1.3.la, etc, so that we
14584         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
14585
14586         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
14587         gdk/Makefile.am gdk/x11/Makfile.am
14588         Move include files into /usr/include/gtk-2.0, 
14589         /usr/lib/gtk-2.0/include/
14590          
14591         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
14592         gtk/gtkintl.h: Change package for gettext from 
14593         gtk+ to gtk20. Put hack in autogen.sh to modify
14594         po/Makefile.in.in after gettextize to make this
14595         possible.
14596
14597         * gtk+.spec: Some updates, not tested.
14598
14599         * gdk-pixbuf/Makefile.am: Move loaders into
14600         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
14601
14602         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
14603         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
14604         to THEMENAME/gtk-2.0/. Move engine directory  to
14605         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
14606         
14607 2000-07-12  Tor Lillqvist  <tml@iki.fi>
14608
14609         Win32 changes, still doesn't build though.
14610
14611         * gdk/makefile.cygwin
14612         * gdk/win32/makefile.cygwin
14613         * gtk/makefile.cygwin: Updates.
14614
14615         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
14616         default values for fg and bg pixel as X11 does (0 and 1), not
14617         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
14618         Use 0 for pen width by default (treated as 1 anyway later, but for
14619         apps that might check the value in the GdkGC).
14620         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
14621         interface to gdk_gc_predraw and _postdraw.
14622
14623         * gdk/win32/gdkwin32.h
14624         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
14625
14626         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
14627         extraneous semicolon.
14628
14629         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
14630
14631         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
14632         not the Win32 bitspixel value.
14633
14634         * gdk/win32/gdkcc-win32.c:
14635         * gdk/win32/gdkcolor-win32.c 
14636         * gdk/win32/gdkprivate-win32.h
14637         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
14638         GDK object structure.
14639
14640 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
14641
14642         * docs/tutorial/gtk_tut_12.es.sgml (name): 
14643         * docs/tutorial/gtk_tut_it.sgml (name): 
14644         * docs/tutorial/gtk_tut_fr.sgml (name): 
14645         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
14646         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
14647
14648 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
14649
14650         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
14651           small changes.
14652
14653 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
14654
14655         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
14656         a bug here, never been here and never fixed anything ;(
14657         (don't segfault if tree->root_tree is NULL, which happens prior
14658         to widget realization, but puke instead).
14659
14660 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
14661
14662         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
14663         add the necessary tokens.
14664
14665         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
14666         (gtk_rc_style_to_style): copy thicknesses.
14667         (gtk_rc_init_style): apply thicknesses.
14668         (gtk_rc_parse_style): parse xthickness and ythickness.
14669
14670         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
14671
14672         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
14673         (gdk_window_new): 
14674         (_gdk_windowing_window_init): 
14675         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
14676         (gdk_pixmap_create_from_data): 
14677         (gdk_bitmap_create_from_data): 
14678         (gdk_pixmap_new): 
14679         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
14680         (gdk_image_new): 
14681         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
14682         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
14683         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
14684         (gdk_colormap_get_system): 
14685         (gdk_colormap_new): 
14686         * gdk/gdkwindow.c (gdk_window_init): 
14687         * gtk/gtkstyle.c (gtk_style_new):
14688         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
14689         * gdk/gdkpixmap.c (gdk_pixmap_init): 
14690         * gtk/gtkrc.c (gtk_rc_style_new):
14691         use g_object_new() instead of g_type_create_instance() which
14692         is a private function for fundamental type implementations.
14693
14694 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
14695
14696         * configure.in: Add check for db2html
14697
14698 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
14699
14700         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
14701         hack to set glib_debug_objects based on gtk_debug_flags.
14702
14703 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
14704
14705         * INSTALL.in: Update the Prerequisites section.
14706
14707         * Makefile.am demos/Makefile.am docs/Makefile.am
14708         docs/tutorial/Makefile.am gdk/x11/Makefile.am
14709         gdk/linux-fb/Makefile.am: Dist fixes
14710
14711 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
14712
14713         * NEWS: 10,000 foot view of 1.3.1 changes.
14714
14715 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
14716
14717         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
14718         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
14719         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
14720         gdk/x11/gdkmain-x11.c: 
14721
14722         Patch from George Lebl to add a GdkGrabStatus enumeration to use
14723         as a return value of gdk_*_grab(). Previously, we just
14724         returned the X11 values directly.
14725
14726 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
14727
14728         * gdk/x11/Makefile.am: Patch from George Lebl to 
14729         install all the headers in the right place.
14730
14731 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
14732
14733         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
14734           initial conversion to DocBook.
14735
14736 2000-07-04  Tor Lillqvist  <tml@iki.fi>
14737
14738         * README.win32: Improve a bit.
14739
14740         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
14741         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
14742         Alt+0nnn on the numpad (used to enter characters by numeric code
14743         from current DOS or ANSI codepage) working correctly, as in other
14744         Windows apps.
14745
14746         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
14747         same argument validity tests as in X11 version.
14748         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
14749
14750         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
14751         definitions in case missing from headers.
14752
14753         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
14754         destroy the window-specific cursor.
14755         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
14756         calling GetModuleHandle(NULL).
14757         (gdk_window_set_cursor): Reworked to always copy the passed cursor
14758         with CopyCursor before setting it as the window-specific
14759         cursor. It is OK for the caller to destroy the GdkCursor (and thus
14760         also its Windows cursor) after calling this function. Destroy any
14761         previous window-specific cursor.
14762
14763 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
14764
14765         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
14766         font charset is iso8859-1, not iso-8859-1.
14767
14768 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
14769
14770         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
14771         Use g_get_charset() instead of g_get_codeset().
14772
14773         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
14774         Comment out some strdup'ing functions to keep timj
14775         happy until we finish fighting this out.
14776
14777 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
14778
14779         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
14780         <= width or height.
14781
14782         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
14783         from 1.2 for parent/child states.
14784
14785         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
14786         of typos.
14787
14788         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
14789         event structures, replace with a generic axes field. Replace 
14790         deviceid/sourec with GdkDevice *device.
14791
14792         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
14793         to extract particular axis use value from event. (Also
14794         can be used for normal X/Y.)
14795
14796         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
14797         allow for arbitrary number of axes, namespace everything
14798         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
14799         everywhere.
14800
14801         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
14802         Get rid of the gdk_input_vtable setup if favor of simply
14803         defining the functions in gdkinput-none/gxi/xfree.c in
14804         a similar fashion to the way that the port structure is 
14805         done.
14806
14807         * gtk/gtkdnd.c: Fix fields of synthesized button press event
14808         for new event structures. 
14809
14810         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
14811         new device interfaces.
14812
14813 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
14814
14815         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
14816         set the initial text.
14817
14818         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
14819         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
14820         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
14821         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
14822
14823         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
14824         pango_layout_set_font_description to simplify.
14825
14826 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
14827
14828         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
14829         pango_layout_set_font_description to simplify.
14830
14831 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
14832
14833         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
14834         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
14835         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
14836
14837         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
14838         PANGO_PIXELS() macro.
14839
14840 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
14841
14842         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
14843         that returns a PangoContext owned by the widget and updated to
14844         match future changes in the widget. Also, make 
14845         gtk_widget_create_pango_layout() use this context. If we ever
14846         add a ::changed signal to PangoContext, this will make things
14847         much more convenient. 
14848
14849         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
14850         in the appropriate places instead of destroying the layouts and
14851         creating new ones.
14852
14853         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
14854         in a few strategic places.
14855
14856 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
14857
14858         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
14859         gtk_widget_size_request() on reparented child, if one. Otherwise,
14860         queue_resize() on the child never results in it getting size-requested
14861         at all.
14862
14863         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
14864         in option menus, so that (with luck) people won't copy it into
14865         their apps in the future.
14866
14867         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
14868         to gtk_option_menu_calc_size. This isn't perfect, but should fix
14869         a lot of problems with changing the size of the menu's menu
14870         items after adding it to the option menu.
14871
14872         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
14873
14874         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
14875         the text direction for a widget changes.
14876
14877         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
14878         ::direction_changed to get rid of various hacks.
14879
14880 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
14881
14882         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
14883         name.
14884
14885 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
14886
14887         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
14888         flag to the structure. Do not call XFreePixmap on pixmaps created
14889         by gdk_pixmap_foreign_new().
14890
14891 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
14892
14893         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
14894         value using GdkRGB functionality given GdkColormap and GdkColor.
14895         (name not final, waiting for inspiration.)
14896         
14897         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
14898         set the foreground/background of a GC using the GC's colormap
14899         and GdkRGB. (name not final, waiting for inspiration.)
14900
14901         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
14902         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
14903
14904         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
14905         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
14906         purely a function of the corresponding colormap. Make
14907         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
14908
14909         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
14910         gdk_pixbuf_*create_from_xpm_* in terms of
14911         gdk_pixbuf_new_from_xpm_data(), move into platform independent
14912         code.
14913
14914         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
14915         advantage of the new draw_rgb_32_image_dithalign.
14916
14917         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
14918
14919         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
14920         on each created GC.
14921
14922         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
14923
14924         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
14925         which we initialize from the drawable when the GC is created,
14926         if the drawable has a colormap.
14927
14928         * gdk/x11/gdkgc-x11.c: include string.h for memset.
14929
14930         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
14931
14932         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
14933
14934 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
14935
14936         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
14937         actually returning expose events, make sure to set
14938         the count field properly.
14939
14940         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
14941         accidentally reintroced bug which always cleared
14942         the graphics_exposures value. 
14943
14944 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
14945
14946         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
14947
14948 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
14949
14950         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
14951
14952 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
14953
14954         * docs/faq/gtk-faq.sgml: Start of Section 6.
14955
14956 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
14957
14958         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
14959         
14960         (Fixes problem with drawing childless frames. Pointed out
14961         by and a first patch from Anders)
14962         
14963         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
14964         compute a child_allocation, even if we don't have a child.
14965
14966         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
14967         Always chain to the parent's impl, even if we don't have a child.
14968
14969 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14970
14971         * gdk/gdkrgb.c: If possible, create only a single shm segment and
14972         use multiple parts of it instead of creating a bunch of separate
14973         segments, since the maximum number of segments per system is not
14974         large. (This might be worth backporting to GTK+-1.2.x if we make a
14975         new release )
14976
14977         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
14978         structure in preparation for per-colormap GdkRGB.
14979
14980         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
14981         to False when we get EINVAL from shmget so that the caller of
14982         gdk_image_new can retry with a smaller segment size.
14983
14984 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
14985
14986         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
14987
14988 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
14989
14990         * configure.in: make the current version number 1.3.1 (binary age 0,
14991         interface age 0).
14992         
14993         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
14994         gtkcompat.h is all we want.
14995
14996         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
14997         GLib primitive types. fixed g_type_register_fundamental() argument
14998         ordering.
14999
15000         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
15001         compiles.
15002
15003         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
15004         object code cleanup, comment trigraph fixes, etc...
15005
15006 2000-06-23  Havoc Pennington  <hp@redhat.com>
15007
15008         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
15009         instead of making up a bogus name for first_para_mark
15010
15011         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
15012         0 as a context ID
15013
15014 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
15015
15016         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
15017
15018 2000-06-21  Havoc Pennington  <hp@pobox.com>
15019
15020         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
15021         we didn't check window->bg_pixmap != GDK_NO_BG.
15022
15023         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
15024         gdk-pixbuf
15025
15026 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
15027
15028         * docs/faq/gtk-faq.sgm: Move file to here.
15029           TODO: Update Makfile.am 
15030
15031 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
15032
15033         * docs/gtk-faq.sgm: Add Section 2
15034
15035 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
15036
15037         * docs/gtk-faq.sgm: New file. Start of DocBook
15038           version of the FAQ.
15039
15040 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
15041
15042         * configure.in (GDK_PIXBUF_MAJOR): Define version
15043         numbers for GDK_PIXBUF_*, as they get substituted
15044         into a header file. Need to consider versioning
15045         for gdk-pixbuf more carefully later.
15046
15047 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
15048
15049         Work with srcdir != builddir.   
15050         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
15051         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
15052         * demos/testpixbuf.c: Likewise.
15053         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
15054         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
15055         <gdk/x11/gdkx.h>.
15056         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
15057         "gdk-pixbuf.h".
15058         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
15059
15060 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
15061
15062         * TODO.xml: Change 1.4 version numbers to 2.0.
15063
15064 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
15065
15066         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
15067         fixups to GTK+ standard.
15068
15069 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
15070
15071         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
15072         gdk-pixbuf.
15073
15074         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
15075         fixups for GObject.
15076
15077         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
15078         gdk-pixbuf with GDK dependencies moved into GDK.
15079         
15080         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
15081         move gdk-pixbuf-loader here until GObject has signals.
15082
15083         * demos/: New directory of demos. Move demos from
15084         gdk-pixbuf here.
15085
15086         * demos/pixbuf-init.c: Small bit of code to check for
15087         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
15088         set GDK_PIXBUF_MODULEDIR appropriately.
15089
15090         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
15091         define which no longer makes sense.
15092
15093 2000-06-21  Havoc Pennington  <hp@redhat.com>
15094
15095         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
15096         gtk_get_default_language
15097
15098         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
15099         new function to get the default language
15100
15101         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
15102         s/gtk_text_view_style_values/gtk_text_style_values/
15103
15104         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
15105         Add a "language" field to tags.
15106
15107         (gtk_text_tag_set_arg): Fix bug in setting
15108         "bg_full_height_set" tag.
15109
15110 2000-06-21  Havoc Pennington  <hp@redhat.com>
15111
15112         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
15113         in the interfaces
15114
15115         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
15116         stuff instead when possible.
15117
15118         * gtk/gtktexttypes.h: Delete some unused constants
15119
15120         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
15121         testtextbuffer.c: use glib instead of custom unicode routines
15122
15123 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
15124
15125         * docs/es/: Removed mistakenly added generated sgml
15126
15127         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
15128         Remove outdated info files.
15129
15130         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
15131         Moved tutorial files into subdir
15132
15133         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
15134         subdir.
15135
15136         * docs/man/gtk_button.pod: Remove. (contents will be
15137         integrated into gtk-reference button page.)
15138
15139         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
15140         docs/faq/Makefile.am: Adjust for new organization
15141
15142 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
15143
15144         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
15145         not $(MKINSTALLDIRS)
15146
15147 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
15148
15149         * gtk/testgtk.c (create_text): Finish the job Elliot started
15150         of removing font setting test for text widget. (Since text widget
15151         and GdkFont are not deprecated, and cause portability problems.)
15152
15153 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
15154
15155         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
15156         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
15157         Remove use of libunicode in favor of new GLib functions.
15158
15159         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
15160         nano-x, framebuffer. The X11 include is just a hack until we get
15161         the necessary functions in gdkcolor.h, so there is no reason to
15162         add other includes of platforms.
15163
15164         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
15165         window bigger than the screen change.
15166
15167         * gtk/testgtk.c: Revert some random changes from Elliot
15168         that had no particular point and were causing testgtkrc
15169         not to function correctly.
15170         
15171         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
15172         because GdkSegment and GdkRegionBox have the same fields,
15173         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
15174         results in clearer code.
15175
15176         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
15177         gdk_input_translate_coordinates): Fix missed GdkObjectification
15178
15179 2000-06-18  Elliot Lee  <sopwith@redhat.com>
15180
15181         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
15182         * gtk/gtk{plug,socket}.h: Missed commits from previous.
15183
15184 2000-06-20  Havoc Pennington  <hp@redhat.com>
15185
15186         * modules/linux-fb/Makefile.am: Make this compile
15187         without framebuffer enabled
15188
15189         * gdk/linux-fb/Makefile.am: Add conditional to not build
15190         framebuffer unless specified in configure
15191
15192         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
15193         the size of the target instead of source if -1 was passed for
15194         width/height
15195
15196         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
15197         width/height confusion.
15198
15199 2000-06-19  Havoc Pennington  <hp@redhat.com>
15200
15201         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
15202         GDK_DRAWABLE_XID. In the future, we probably want to make it
15203         faster with G_DISABLE_CHECKS turned on.
15204
15205 2000-06-14  Havoc Pennington  <hp@redhat.com>
15206
15207         * gdk/Makefile.am: add gdkpixmap.c
15208
15209         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
15210         s/gdk_image_init/_gdk_windowing_image_init
15211
15212         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
15213         ref/unref
15214
15215         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
15216
15217         * gdk/gdkcompat.h: remove GdkWindowType compat, since
15218         GdkWindowType is now non-deprecated; 
15219         change gdk_window_get_type() compat to be
15220         gdk_window_get_window_type().
15221
15222         * gdk/gdkdnd.h: make GdkDragContext a GObject.
15223
15224         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
15225         virtual GObject. Make all functions call into the vtable.
15226         Move gdk_image_put() guts in here. Remove GdkDrawableType
15227         and gdk_drawable_get_type(), these are now GdkWindow-specific.
15228         draw_image, get_depth, get_size, set_colormap, get_colormap,
15229         get_visual added to the vtable.
15230         
15231         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
15232         GObject. Virtualize everything. 
15233         (gdk_gc_new_with_values): remove check for destroyed window,
15234         because now GdkWindow::create_gc will check this.
15235         (gdk_gc_set_values): New function to set GC values, this 
15236         was already implemented but wasn't in the header
15237
15238         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
15239
15240         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
15241         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
15242         remove _gdk_window_class; add _gdk_window_impl_get_type() and
15243         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
15244         _gdk_windowing_window_init, rename gdk_image_init to
15245         _gdk_windowing_image_init.
15246         
15247         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
15248         (gdk_draw_layout): Remove check for destroyed window, 
15249         because all the drawable methods already check it.
15250         
15251         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
15252         Add gdkpixmap.c which contains implementation of GdkDrawable
15253         virtual table (by chaining to a platform-specific implementation
15254         object).
15255         
15256         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
15257         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
15258         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
15259         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
15260         GdkColormapPrivate. 
15261
15262         * gdk/gdktypes.h: #include <glib-object.h>
15263
15264         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
15265         Move most functionality to platform-specific implementation
15266         object. GdkWindow itself now handles the backing store, then
15267         chains to the platform-specific implementation.
15268         (gdk_window_get_window_type): return GdkWindowType of the window.
15269         (gdk_window_peek_children): New routine, returns the children of 
15270         a GdkWindow
15271         (gdk_window_get_children): Was in X11-specific code and did 
15272         XQueryTree. Changed to simply return a copy of window->children; 
15273         so it can go in cross-platform code.
15274         
15275         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
15276
15277         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
15278         GdkColormap; just changed to use the new private data instead
15279         of casting to GdkColormapPrivate.
15280
15281         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
15282         gdk_cursor_new().
15283
15284         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
15285         (private data member in the GObject). 
15286         (xdnd_manager_source_filter): Function had broken 
15287         error handling, fix it (use gdk_error_trap_push).
15288
15289         * gdk/x11/gdkdrawable-x11.c: This file now implements
15290         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
15291         base class is purely for the convenience of the X port,
15292         and not part of the interface to cross-platform GDK.
15293
15294         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
15295         
15296         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
15297         specific to X, and returned by the create_gc virtual method
15298         of GdkDrawableImplX11. 
15299         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
15300         rather than gchar, this was also changed in the GdkGC vtable.
15301         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
15302         mask is 0, return immediately, instead of checking every flag.
15303         This is faster, and keeps us from segfaulting if values is NULL
15304         and the mask contains some nonzero flags.
15305
15306         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
15307         GdkWindow.
15308
15309         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
15310         GdkWindowPrivate is gone.
15311
15312         * gdk/x11/gdkim-x11.c: rename things that got renamed.
15313
15314         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
15315         remove the image_put stuff that got transferred to GdkDrawable.
15316         
15317         * gdk/x11/gdkinput.c: renamings
15318
15319         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
15320
15321         * gdk/x11/gdkpixmap-x11.c: GObject conversion
15322
15323         * gdk/x11/gdkprivate-x11.h: indentation fixes
15324
15325         * gdk/x11/gdkproperty-x11.c: renamings
15326
15327         * gdk/x11/gdkselection-x11.c: renamings
15328
15329         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
15330         implements the platform-specific "impl" object.
15331         Moved gdk_window_get_children to gdk/gdkwindow.c
15332
15333         * gdk/x11/gdkx.h: Remove all the private structs and private datas
15334         that no longer exist. Add declaration of GdkGCX11 object here.
15335         Fix all the macros to still work. 
15336
15337         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
15338         GdkDragContext from the boxed types since they are now GObjects.
15339
15340         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
15341         moved xthickness/ythickness into the instance. GtkStyleClass
15342         functions are now in the standard vtable for GtkStyle, so you have
15343         to create a GObject subclass to write a theme engine.
15344         (gtk_style_copy): fixed a leaked PangoFontDescription
15345         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
15346         can be the standard GObject function.
15347         
15348         * Throughout GTK:
15349         s/style->klass->[xy]thickness/style->[xy]thickness
15350         s/pango_layout_unref/g_object_unref/
15351
15352         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
15353         
15354         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
15355         accessing GDK internals.
15356
15357         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
15358         accessing GDK internals.
15359
15360 2000-06-18  Elliot Lee  <sopwith@redhat.com>
15361
15362         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
15363
15364         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
15365         problem by calculating event position relative to the trough
15366         rather than the slider.
15367         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
15368
15369         * gdk/gdkgc.h: Add GDK_NOR.
15370
15371         * configure.in, Makefile.am: Add modules top level dir
15372         * configure.in: Only use pangox library if building x11 target.
15373         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
15374
15375 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
15376
15377         * gtk/gtkcolorsel.c: Change private class member to be named
15378         private_data throughout the file.
15379
15380         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
15381         private_data to avoid clashing with keyword.
15382
15383 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
15384
15385         * gdk/gdkdnd.h: Add comment to remove warning.
15386
15387 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
15388
15389         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
15390         Byelorussian language; changed the Makefile and file names 
15391         to reflect that.
15392
15393 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
15394
15395         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
15396         rather than gdk_window_hide; this makes things work
15397         correctly if the window is programmatically hidden while
15398         iconified.
15399
15400 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
15401
15402         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
15403         cut and paste typo where wrong pixmap was being
15404         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
15405
15406 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
15407
15408         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
15409         Add helper function to compute format / bytes 
15410         relationship. Use in a couple places to fix up
15411         errors which assume 8 * format.
15412
15413         * gtk/gtkselection.c (gtk_selection_request): Use 32
15414         rather than 8 * sizeof (GdkAtom), to work correctly
15415         on Alpha.
15416
15417 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
15418
15419         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
15420         libgtk.la
15421         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
15422         versions
15423
15424         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
15425         checking macros return NULL since the function has a return value.
15426
15427 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
15428
15429         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
15430         GTK+ from building at all.
15431
15432         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
15433
15434 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
15435
15436         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
15437         gtk/Makefile.am: make it possible to configure gtk for different
15438         targets on the same platform. The library name is now 
15439         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
15440         flag. Only the x11 target compiles right now.
15441         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
15442         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
15443         * gdk/nanox/gdk*generic*: delete generic region code.
15444         * gdk/linux-fb/gdk*generic*: delete generic region code.
15445         * README.nanox: update information.
15446         
15447 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
15448
15449         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
15450         prepend not append. (Pointed out by Brett Hall.)
15451
15452 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
15453
15454         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
15455
15456 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
15457
15458         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
15459         need this later, and this makes sure that the atexit for
15460         glib gets called after that for GDK, so atexits are
15461         properly ordered for object leak checking.
15462
15463         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
15464
15465         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
15466         pango_x_shutdown_display()
15467
15468         * gtk/simple.c (main): Close window on destroy.
15469
15470 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
15471
15472         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
15473         to treat initial creation different from setting with 
15474         regards to the graphics-exposures parameter, so add a parameter
15475         indicating whether this is initial or not.
15476
15477 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
15478
15479         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
15480         to sort of work by adding an extra return_exposes arg
15481         to gdk_event_translate() - it might be better to simply
15482         deprecate the function altogether and force people to rewrite
15483         without it. gdk_window_scroll() handles most of it, and where
15484         gdk_window_scroll() doesn't work, simply redrawing more does.
15485
15486         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
15487         assertion.
15488
15489         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
15490
15491         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
15492         bunch of pretty much useless /* Print debugging info */ comments 
15493         which had drifted away from the code they were commenting.
15494
15495 2000-06-02  Havoc Pennington  <hp@pobox.com>
15496
15497         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
15498         is in working order.
15499         
15500         * gtk/testtext.c: Change to reflect anonymous mark API
15501
15502         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
15503
15504         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
15505         field, which was unused.
15506
15507         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
15508         saves some typing.
15509
15510         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
15511
15512         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
15513         flag on the insertion point and selection bound
15514
15515         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
15516         make mark-manipulation functions take a GtkTextMark* instead of a
15517         mark name.
15518         
15519         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
15520         GtkTextMarkBody; will be used to detect attempts to delete
15521         the permanent marks (insert and selection bound)
15522
15523         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
15524
15525 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
15526
15527         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
15528         flag to on.
15529
15530         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
15531         Honor DOUBLE_BUFFRED_FLAG
15532
15533         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
15534         function to set the DOUBLE_BUFFERED flag.
15535
15536         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
15537         or not exposes done on the widget should be double-buffered.
15538
15539         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
15540         to be what would be expected. (Fixes problem with a
15541         g_return_if_fail() validating a TextDirection enumeration)
15542
15543 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
15544
15545         * gtk/gtkwidget.c: Remove all references to 
15546         offscreen flag which was no longer used.
15547
15548         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
15549
15550         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
15551         for non-null label_widget->parent.
15552
15553         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
15554         which no longer was used.
15555
15556         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
15557
15558         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
15559         for null arguments.
15560
15561         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
15562         check for destroyed windows.
15563
15564 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
15565
15566         * gtk/gtkimmulticontext.c: Add a finalize method and unref
15567         the slave context there.
15568
15569         * gtk/gtkinvisible.[ch]: Make reference counting behavior
15570         identical to GtkWindow.
15571
15572 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
15573
15574         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
15575         pangox to here, so we can write them independent of rendering
15576         system, using GDK primitives.
15577
15578         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
15579         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
15580         since we have a rendering-system independent implementation in
15581         terms of draw_glyphs().
15582         
15583         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
15584         function to render a single line.
15585
15586         * gdk/x11/gdkpango.c: Move the guts of this file mostly
15587         into ../gdkpango.c, which simplifies things, since we
15588         don't have to deal with raw X gc's.
15589
15590 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
15591
15592         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
15593         get the logical attributes for a given GtkTextLine.
15594
15595 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
15596
15597         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
15598         g_locale_get_codeset() to g_get_codeset() change.
15599
15600 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
15601
15602         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
15603         descriptions.
15604
15605         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
15606         the entry.
15607
15608         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
15609         redoing (vastly simplifying) for Pango. Still needs quite
15610         a bit of work. (Size selection is currently poor. List of 
15611         predefined sizes is not a good idea, since all of these
15612         sizes won't necessarily be distinct.)
15613
15614 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
15615
15616         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
15617         CODESET results for LANG=C.
15618
15619 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
15620
15621         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
15622         which takes a stringized pango font description;
15623         ignore the older 'font' and 'fontset' declarations.
15624
15625         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
15626         field with a GdkFont derived via gdk_font_from_description(),
15627         for compatibility. (Should we just remove it entirely?
15628         Probably too much compatibility breakage, but people
15629         should be migrating to the new Pango stuff as quickly
15630         as possible.)
15631
15632 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
15633
15634         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
15635
15636 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
15637
15638         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
15639         redoing; there are some bugs in size allocation right
15640         now, the semi-existant distinction between header / day
15641         fonts was removed, but, with Pango, could actually
15642         be made functional in a nice way.
15643         
15644         * gtk/testcalender: Move calender from examples into this
15645         directory as a test program. (We really need to restrcture
15646         testgtk into a whole directory full of tests for every
15647         widget or functionality group, separated into multiple .c
15648         files.)
15649
15650 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
15651
15652         * gtk/testgtk.c (file_exists): Fix stupid typo that
15653         was keeping RC file from being loaded.
15654
15655         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
15656         RC file font code.
15657
15658 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
15659
15660         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
15661         Add function to load a GdkFont from a PangoFontDescription.
15662
15663 2000-05-29  Tor Lillqvist  <tml@iki.fi>
15664
15665         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
15666         variable should be of type GdkEventPrivate.
15667
15668 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
15669
15670         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
15671         to have any widget for the label, use a GtkLabel widget
15672         to display the text. (Based partially on a patch from
15673         Anders Carlson.)
15674
15675         (Quite a bit of code reorganization - strip 90% of the
15676         guts out of gtkaspectframe and add a single virtual
15677         func to GtkFrameClass - compute_child_allocation.)
15678
15679 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
15680
15681         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
15682         (Removed clist->row_center_offset field because caching
15683         it wasn't saving time or code, added private function
15684         _gtk_clist_create_cell_layout()).
15685
15686 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
15687
15688         * gtk/gtkaccellabel.c: Pangoized.
15689
15690         * gtk/[hv]ruler.c: Pangoized
15691
15692 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
15693
15694         * gtk/gtkfilesel.c (gtk_file_selection_init):
15695         Use gtk_clist_set_column_auto_resize() to remove need
15696         need for manual column width computations.
15697
15698 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
15699
15700         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
15701         ensuring Pango correctness, and considerably simplifying the
15702         code.
15703         
15704         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
15705
15706         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
15707         getting of numbers of lines.
15708
15709         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
15710         to the actual requested width of the lable, not to the wrap
15711         width we set.
15712
15713         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
15714
15715         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
15716           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
15717
15718         * gtk/gtktextview.c: Fix structure inheritance.
15719
15720         * gtk/gtkprogressbar.c: Pangoize.
15721
15722 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
15723
15724         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
15725         in a function.
15726
15727         * gtk/gtktextlayout.c (find_display_line_above): Fixed
15728         bug with computing line tops.
15729
15730         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
15731
15732 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15733
15734         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
15735         and y_offset coordinates to do what we need now. (The offset between
15736         buffer and layout coordinates has been reintroduced, but is a 
15737         bit different than before.)
15738
15739         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
15740         handle the adjustments ourselves, and scroll as necessary using
15741         the new gdk_window_scroll().
15742         
15743         The advantage of this is that when we are incrementally revalidating,
15744         we are essentially rearranging things around the visible portion
15745         of the screen. With the old setup, the visible portion of the
15746         screen was moved around in the layout, so scrolling and redrawing
15747         to track that caused jumping of the display. Since we now
15748         control the scrolling ourselves, we can suppress this and
15749         only redraw when things actually change.
15750
15751 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
15752
15753         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
15754         the region not just redisplay it after-all, since we store the
15755         cursors in the LineDisplay. (Ugly interactions here between
15756         GtkLayout and GtkTextBTree here.)
15757         
15758         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
15759
15760 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15761
15762         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
15763         Added function to scroll contents of a window while keeping the
15764         window constant. Works by XCopyArea or guffaw-scrolling depending
15765         on the details of how the window is set up. (guffaw-scrolling
15766         still needs to be filled in.)
15767
15768 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
15769
15770         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
15771         move the debugging that was tied to a global variable
15772         to that.
15773
15774         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
15775
15776         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
15777         validated flag, in line data instead of setting height/width to
15778         -1. This allows us to perform operations with partially invalid
15779         buffer (using the old size for invalid lines) and thus to do
15780         incremental vaidation. Keep height/width aggregates up to date
15781         when deleting text and rebalancing the tree.
15782
15783         * gtk/gtktextbtree.[ch]: Add functions validate a line
15784         (gtk_text_btree_validate_line), and to validate up
15785         to a number of pixels (gtk_text_btree_validate).
15786
15787         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
15788         that indicates that something is changed and a revalidation
15789         pass is needed. Change ::need_repaint to ::changed, and
15790         make it take old and new yranges instead of a rectangle.
15791
15792         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
15793         the line_data_destroy() function from 
15794         gtk_text_btree_add_view() to a virtual function in 
15795         GtkTextLayout
15796
15797         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
15798         since we are handling partial repaints in a different fashion
15799         now.
15800
15801         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
15802         of the selection instead of queueing a repaint on the
15803         entire widget.
15804
15805         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
15806         get_selection_bounds() down to btree, make the function
15807         in buffer a wrapper around the btree function.
15808
15809         * gtk/gtktextlayout.[ch]: Add functions to check if the
15810         layout is valid and to recompute either a range of pixels
15811         aroudn a line or a certain total number of pixels.
15812
15813         * gtk/gtktextlayout.[ch]: Cache a single line display;
15814         now that we only redraw the needed portions, the hit rate
15815         for this cache is quite high.
15816         
15817         * gtk/gtktextview.[ch]: Keep track of the first paragraph
15818         on the screen so that when re-laying-out the buffer, we can
15819         keep the same place. This requires connecting to ::value_changed
15820         on the adjustments
15821
15822         * gtk/gtktextview.[ch]: Add idle functions to revalidate
15823         the buffer after we receive an ::invalidated signal.
15824         
15825 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
15826
15827         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
15828         to max of allocation and layout size, not just to the
15829         layout size.
15830
15831         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
15832         Invalidate window so it gets redrawn properly.
15833
15834         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
15835         to mean the entire window.
15836
15837         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
15838         into public header.
15839
15840 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
15841
15842         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
15843         to get the name of a mark.
15844
15845         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
15846         to find the paragraph from a y position.
15847
15848 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
15849
15850         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
15851         nodes have width/height >= 0, not > 0.
15852
15853 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
15854
15855         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
15856         Add a size_only flag, so when we only need the size, we don't create
15857         useless appearance attributes.
15858
15859         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
15860         duplicate setting of font description.
15861
15862         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
15863
15864 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15865
15866         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15867         EXTRA_DIST. It does not work well when the file that
15868         everything depends on is not in the tarball.
15869
15870 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15871
15872         * gtk/testgtk.c: Some hacks and fixes so that it basically
15873         works when not sitting in the GTK+ build tree.
15874
15875 2000-05-03  Havoc Pennington  <hp@redhat.com>
15876
15877         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
15878         Properly determine the ordering of the tag root and the current
15879         line within the tree. Previous algorithm only worked if the tag
15880         root's immediate parent was the common root of both the current
15881         line and the tag root.
15882
15883 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
15884
15885         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
15886         alignment.
15887
15888         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
15889         the widget text directional dynamically.
15890
15891         * gtk/gtktextview.[ch]: Added functions to get and set default
15892         wrap mode.
15893
15894 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
15895
15896         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
15897         in cursor location computation.
15898
15899 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
15900
15901         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
15902         vadjusment values properly when layout gets smaller.
15903
15904         * gtk/gtktextview.c (need_repaint_handler): Areas being
15905         passed in are far completely inaccurate, and sometimes
15906         too small, so, for now, just queue a redraw on the
15907         whole visible region.
15908
15909 2000-04-25  Havoc Pennington  <hp@redhat.com>
15910
15911         * gtk/gtktextbtree.c (summary_destroy): new function to 
15912         destroy tag summary nodes
15913         (gtk_text_line_next_could_contain_tag): this function was 
15914         totally broken if the line passed in wasn't below the tag
15915         root. Fix it.
15916         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
15917         "wildcard" case, we have to do a linear scan. Blah.
15918         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
15919         we have to do the linear scan
15920         (tag_removed_cb): When a tag is removed from the tag table, 
15921         remove the GtkTextTagInfo node from the btree.
15922         (gtk_text_btree_spew): Implement the spew function, for 
15923         our debugging pleasure.
15924
15925 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
15926
15927         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
15928         a problem with referring to the wrong buffer.
15929
15930         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
15931
15932         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
15933         font description to gtk_style_new() - otherwise things
15934         don't work without a .gtkrc file.
15935
15936         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
15937         tags table if we create it ourself, too.
15938
15939         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
15940         it was conflicting with XKB modifiers.
15941
15942         * gtk/gtktextview.[ch]: Add simple support for 
15943         GtkIMContext.
15944
15945 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
15946
15947         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
15948         with deletion from last commit.
15949
15950 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
15951
15952         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
15953         in the context from the current locale.
15954         
15955         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
15956         context, not hardcoded value.
15957
15958         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
15959         not logical.
15960
15961 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15962
15963         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
15964         attributes - that doesn't handle partial-glyph selection
15965         properly. Instead use new pango_layout_line_get_x_ranges()
15966         functionality to draw the selection.
15967
15968         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
15969         now properly handles out-of-range coordinates.
15970
15971         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
15972
15973         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
15974         public.
15975
15976         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
15977         for paragraphs opposite to the base direction of the widget.
15978
15979         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
15980
15981         * gtk/gtktextlayout.c: Don't split segments on marks, since that
15982         causes Arabic words to reshape as you cursor through.
15983
15984         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
15985         cursor position when moving vertically with the arrow keys and
15986         scrolling with page-up/page-down. (Arrow keys save only the X,
15987         scrolling saves both X and Y.)
15988
15989         This means you can line-up / line-down or page-up / page-down
15990         without losing your place, and also that moving vertically
15991         with the cursor keys keeps the same X position, not the same
15992         character count:
15993
15994         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
15995         arrow keys move by display lines, not paragraphs.
15996
15997 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15998
15999         * gtk/gtklayout.c: Make sure that the bin window is at least
16000         as big as the allocation. (Should we also make sure that the
16001         bin window is big enough to completely cover widget->window?)
16002
16003         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
16004         function to get the onscreen rectangle.
16005
16006         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
16007         for offsets in window coordinates.
16008
16009 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
16010
16011         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
16012         confusion.
16013
16014         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
16015         from the widget direction.
16016
16017         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
16018         Add a "direction" attribute.
16019
16020         * gtk/gtktextview.c: global s/tkxt/text_view/.
16021
16022         * gtk/testtext.c: Added long block of text in Arabic, to test out
16023         the direction attributes. (Some problems with the shaping system
16024         for arabic become obvious - like the fact the cursor splits words
16025         into unjoined pieces.)
16026
16027 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
16028
16029         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
16030
16031         * gtk/gtktextlayout.c: Fix up alignment.
16032
16033         * gtk/testtext.c: Add some tests for centering, wrapping.
16034
16035 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
16036
16037         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
16038         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
16039         If we wrote GTK+-specific layout-render function this could just replace
16040         the draw_layout() operation in the vtable.
16041
16042         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
16043         pango_layout_get_cursor_pos() and use that function.
16044
16045         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
16046         is a non-static symbol.
16047
16048         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
16049         with gtk_text_btree_find_line_by_y()
16050
16051         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
16052         renderer that handles GtkTextAppearance attributes.
16053
16054         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
16055
16056           - Move the values in the style that don't affect geometry into a
16057             GtkTextAppearance structure.
16058           - Change underline to take a PangoUnderline and "font" a string
16059             representation of a font description
16060           - Add a "font_desc" attribute which takes a FontDescription structure.
16061
16062         * gtk/gtktextlayout.[ch]:
16063
16064           - Get rid of the display-line list per each line. Instead, we
16065             generate, on demand, a GtkTextLineDisplay structure which]
16066             contains a PangoLayout * and other necesary information
16067             (offsets, cursor locations) for displaying a paragraph.
16068           - Get rid of the code to wrap lines, create display chunks,
16069             etc. Instead, we just go through a paragraph and convert
16070             it into the necessary inputs to a PangoLayout.
16071           - Implement a new attribute type, GtkTextAttrAppearance. This
16072             holds a GtkTextAppearance, and is used to pass colors, 
16073             stipple, etc, through from the layout to the display without
16074             having to use lots and lots of individual attributes.
16075           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
16076             in terms of PangoLayout functions.
16077         
16078         * gtk/gtktextview.c: 
16079          
16080           - Handle passing the necessary PangoContext to the layout
16081           - Some fixups in painting to deal with the automatic backing store
16082             and offsetting of GTK+-1.4
16083           - Add a style_set handler so that the default style reacts
16084             properly to theme changes.
16085         
16086         * gtk/gtktext?*.[ch]: Random code-style fixes.
16087
16088         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
16089
16090 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
16091
16092         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
16093         in original form preparatory to Pango-ization and gdkimcontext-ization.
16094
16095 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
16096
16097         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
16098         so that we can derive from gtkimcontext in language bindings properly.
16099
16100 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
16101
16102         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
16103         Add a compose table including (almost) all the compose combinations
16104         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
16105         data in the XIM implementation.
16106
16107         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
16108         Moved functions to convert keyvalues from and to unicode here from
16109         the win32 port and made them public.
16110
16111 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16112
16113         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
16114
16115 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
16116
16117         * gtk/gtkimcontext.[ch]: Base class for new input context system
16118
16119         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
16120         the real input context implementation to be loaded from modules
16121         and switched on the fly.
16122
16123         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
16124         context that just does direct keysymbol => unicode translation.
16125
16126         * gtk/gtkentry.[ch]: Start switching editing over to using
16127         GtkInputContext. (No handling of preedit yet.)
16128
16129 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
16130
16131         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
16132         many substitutions. (klass should not be subsituted.)
16133
16134 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
16135
16136         * configure.in: Add checks for Pango
16137
16138         * configure.in docs/Makefile.am: Add test for sgml2html
16139         and allow 'make dist' without building html, but print out
16140         warnings in that case. (For making snapshots)
16141
16142         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
16143         Add Pango libraries and C flags
16144
16145         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
16146         Add function (gdk_draw_layout) to draw a pango layout.
16147
16148         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
16149         for getting Pango contexts for GDK.
16150
16151         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
16152
16153         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
16154         editing.
16155
16156         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
16157         keysym => unicode translations. More languages can be added
16158         here, but real input-method support is needed.
16159
16160         * docs/Changes-1.4.txt: Added note about entry behavior.
16161         
16162         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
16163         to set the reading direction for a widget and the global direction.
16164         Add test which allows toggling the global direction. Two private
16165         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
16166
16167         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
16168           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
16169
16170         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
16171
16172         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
16173         underlining now handled by Pango.
16174
16175         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
16176         to RCStyle and Style. (Having both this and the old font name and GdkFont 
16177         is temporary.)
16178
16179         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
16180         convenience functions for creating contexts and layouts for widgets.
16181
16182         * gtk/testgtk.c: Enhance label tests with multilingual labels.
16183
16184 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
16185
16186         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
16187         titles to be active, even if they aren't visible.
16188         (gtk_clist_column_titles_passive):  Ditto.
16189
16190 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
16191
16192         * gtkmenu.c:
16193         * gtkmenu.h:
16194         * gtktypeutils.h: Spelling/grammar fixes in comments.
16195
16196 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
16197
16198         * gdk/nanox/*.h: add missing header files.
16199
16200 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
16201
16202         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
16203         send_event to TRUE.
16204         (gtk_drawing_area_size): queue a resize.
16205
16206 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
16207
16208         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
16209         the handlers, also invalidate them. bug nailed down by Karl Nelson
16210         <kenelson@ece.ucdavis.edu>.
16211
16212 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
16213
16214         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
16215         "(nil)" foundries, patch from Grigorios Magklis.
16216
16217         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
16218         on non-available fonts, based on a patch by Grigorios Magklis
16219         <maglis@cs.rochester.edu>.
16220
16221 2000-05-18  Elliot Lee  <sopwith@redhat.com>
16222
16223         * gdk/x11/gdkregion-generic.c: If a region does not have any
16224         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
16225         instead of GDK_OVERLAP_RECTANGLE_IN.
16226
16227 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
16228
16229         * gtk/gtklayout.c (gtk_layout_map): Remove references to
16230         OFFSCREEN, as it is no longer necessary.
16231
16232 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
16233
16234         * gtk/gtkcolorsel.c: Patch from David Santiago
16235         <mrcooger@cyberverse.com> to change things so that the 
16236         indicator of the active palette entry is done independently,
16237         not via the focus, since it should always be visible.
16238
16239 2000-05-17  Tor Lillqvist  <tml@iki.fi>
16240
16241         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
16242         refcount leaks as in the X11 backend.
16243
16244         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
16245         cosmetics.
16246
16247         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
16248         backend. Add _gdk_windowing_window_destroy().
16249
16250         * gtk/gtkcolorsel.c: Include correct backend-specific header.
16251         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
16252         either, but these probably do exist on nanox?)
16253         
16254         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
16255         which isn't necessarily defined by <math.h>.
16256
16257         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
16258         ancestry past GtkObject.
16259
16260         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
16261         from DLL on Win32.
16262
16263         * gtk/gtk.def: Update corresponding to recent changes.
16264
16265         * gtk/makefile.{cygwin,msc}: Updates.
16266
16267 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
16268
16269         * docs/Changes-1.4.txt: A bit of editing.
16270
16271         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
16272         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
16273         to clear the update area for the window, and clear it
16274         when hiding a window.
16275
16276         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
16277         if window destroyed.
16278
16279         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
16280
16281         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
16282         gdk_window_destroy() to the generic code, since there was a lot of 
16283         window-system-independent logic it in. Add a function:
16284         
16285          _gdk_window_destroy() 
16286
16287         to the internal API to destroy a window without unreferencing it.
16288         Add a function:
16289
16290          _gdk_windowing_window_destroy()
16291
16292         That does the windowing-system-dependent part of destroying 
16293         the window.
16294
16295 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
16296
16297         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
16298
16299 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
16300
16301         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
16302         Make gtk_widget_shape_combine_mask() keep a reference count on
16303         the pixmap since it keeps it around.
16304
16305 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
16306
16307         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
16308         leak.
16309
16310         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
16311         leak with event filters.
16312
16313 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
16314
16315         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
16316         signal handlers with the right data arguments. (Fixes
16317         some warnings when a widget was repeatedly set as a drag
16318         destination.)
16319
16320         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
16321         window so we can avoid avoid setting the DND properties on the
16322         toplevel window repeatedly.
16323
16324 2000-05-13  Tor Lillqvist  <tml@iki.fi>
16325
16326         * gdk/win32/gdkwin32.h: Define more message types missing from
16327         mingw headers.
16328
16329         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
16330         call gdk_window_destroy_notify(). It was never called. This
16331         probably meant that the GdkWindow was never freed. Thanks Owen for
16332         noticing (!).
16333
16334         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
16335         window as destroyed before calling DestroyWindow(). DestroyWindow()
16336         causes a call to the window procedure (gdk_WindowProc), which
16337         calls gdk_event_translate(), which calls
16338         gdk_window_destroy_notify(), which gets confused unless the window
16339         is set as destroyed.
16340
16341         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
16342         this function to indicate it's win32 only. Put inside #ifdef
16343         G_ENABLE_DEBUG.
16344
16345         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
16346         debugging function. (gdk_event_translate:) Add a default branch
16347         that uses the above function to print debug messages with all
16348         Windows messages symbolically.
16349
16350         * gdk/win32/gdkprivate-win32.h: Declare it, and
16351         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
16352
16353 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
16354
16355         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
16356         public header file.
16357
16358 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
16359
16360         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
16361
16362         * gtk/gtktext.c: made the adjustments no-construct args, simply
16363         provide default adjustments.
16364         (gtk_text_destroy): release adjustments.
16365
16366         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
16367         adjustment argument non-construct.
16368
16369         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
16370         instead of in finalize.
16371         (gtk_progress_get_text_from_value): 
16372         (gtk_progress_get_current_text): 
16373         (gtk_progress_set_value): 
16374         (gtk_progress_get_percentage_from_value): 
16375         (gtk_progress_get_current_percentage): 
16376         (gtk_progress_set_percentage): 
16377         (gtk_progress_configure): ensure an adjustment is present.
16378
16379 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
16380
16381         * gtk/gtkcolorsel.[hc]:
16382         * gtk/gtkcolorseldialog.[hc]:
16383         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
16384         their parent implementation, use bit fields for boolean values, don't
16385         create unused widgets, usage of glib types, braces go on their own
16386         lines, function argument alignment, #include directives etc. etc. etc..
16387
16388         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
16389
16390 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
16391
16392         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
16393
16394         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
16395         of NULL.
16396
16397         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
16398         to freed data.
16399         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
16400
16401         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
16402         to NULL when the toplevel is getting destroyed.
16403         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
16404         (gtk_menu_destroy): 
16405         (gtk_menu_init): store the information of whether we have to
16406         readd the initial child ref_count during destruction in a new
16407         GtkMenu field needs_destruction_ref_count.
16408
16409         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
16410         here, those reading: learn from my mistake! ;)
16411         in order for set_?adjustment to support a default adjustemnt if
16412         invoked with an adjustment pointer of NULL, the code read (pseudo):
16413         if (v->adjustment) unref (v->adjustment);
16414         if (!adjustment) adjustment = adjustment_new ();
16415         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
16416         now imagine the first unref to actually free the old adjustment and
16417         adjustment_new() creating a new adjustment from the very same memory
16418         portion. here, the latter comparision will unintendedly fail, and
16419         all hell breaks loose.
16420         (gtk_viewport_set_hadjustment):
16421         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
16422         after unreferencing it.
16423
16424         * gtk/gtkcontainer.[hc]: removed toplevel registration
16425         functions: gtk_container_register_toplevel(),
16426         gtk_container_unregister_toplevel() and
16427         gtk_container_get_toplevels() which had wrong semantics
16428         anyways: it didn't reference and copy the list.
16429
16430         * gtk/gtkwindow.c: we take over the container toplevel registration
16431         bussiness now. windows are registered across multiple destructions,
16432         untill they are finalized. the initial implicit reference count
16433         users are holding on windows is removed with the first destruction
16434         though.
16435         (gtk_window_init): ref & sink and set has_user_ref_count, got
16436         rid of gtk_container_register_toplevel() call. add window to
16437         toplevel_list.
16438         (gtk_window_destroy): unref the window if has_user_ref_count
16439         is still set, got rid of call to
16440         gtk_container_unregister_toplevel().
16441         (gtk_window_finalize): remove window from toplevel list.
16442         (gtk_window_list_toplevels): new function to return a newly
16443         created list with referenced toplevels.
16444         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
16445
16446         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
16447         adjustment a non-construct arg.
16448         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
16449         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
16450         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
16451
16452         * gtk/gtkrange.c: added some realized checks.
16453         (gtk_range_destroy): get rid of the h/v adjustments in the
16454         destroy handler instead of finalize. remove timer.
16455         (gtk_range_get_adjustment): demand create adjustment.
16456
16457         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
16458         we simply create them on demand now and get rid of them in
16459         the destroy handler.
16460         (gtk_viewport_destroy): get rid of the h/v adjustments in the
16461         destroy handler instead of finalize.
16462         (gtk_viewport_get_hadjustment): 
16463         (gtk_viewport_get_vadjustment): 
16464         (gtk_viewport_size_allocate): demand create h/v adjustment
16465         if required.
16466
16467         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
16468         gtk_widget_real_destroy () functionality.
16469         (gtk_widget_real_destroy): reinitialize with a new style, instead
16470         of setting widget->style to NULL.
16471
16472 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
16473
16474         * gtk/gtkcalendar.c:
16475         * gtk/gtkbutton.c: ported _get_type() implementation over to
16476         GType, either to preserve memchunks allocation facilities,
16477         or because Gtk+ 1.0 GtkTypeInfo was still being used.
16478
16479         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
16480         over. prepare for ::destroy to be emitted multiple times.
16481         removed reference tracer magic. chain into GObjectClass.shutdown()
16482         to emit ::destroy signal.
16483
16484         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
16485         fundamental.
16486
16487         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
16488         cludge.
16489
16490         * gtk/gtksocket.c:
16491         * gtk/gtkplug.c:
16492         * gtk/gtklayout.c:
16493         * gtk/gtklabel.c:
16494         * gtk/gtkargcollector.c:
16495         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
16496         not being a fundamental anymore, and to work with the new
16497         type system (nuked fundamental type varargs clutter).
16498
16499         * gtk/*.c: install finalize handlers in the GObjectClass
16500         part of the class structure.
16501         changed direct GTK_OBJECT()->klass accesses to
16502         GTK_*_GET_CLASS().
16503         changed direct object_class->type accesses to GTK_CLASS_TYPE().
16504
16505         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
16506         GType. made most of the GTK_*() type macros and Gtk* typedefs
16507         simple wrappers around macros and types provided by GType.
16508         most notably, a significant portion of the old API vanished:
16509         GTK_TYPE_MAKE(),
16510         GTK_TYPE_SEQNO(),
16511         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
16512         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
16513         GTK_TYPE_ARGS,
16514         GTK_TYPE_CALLBACK,
16515         GTK_TYPE_C_CALLBACK,
16516         GTK_TYPE_FOREIGN,
16517         GtkTypeQuery,
16518         gtk_type_query(),
16519         gtk_type_set_varargs_type(),
16520         gtk_type_get_varargs_type(),
16521         gtk_type_check_object_cast(),
16522         gtk_type_check_class_cast(),
16523         gtk_type_describe_tree(),
16524         gtk_type_describe_heritage(),
16525         gtk_type_free(),
16526         gtk_type_children_types(),
16527         gtk_type_set_chunk_alloc(),
16528         gtk_type_register_enum(),
16529         gtk_type_register_flags(),
16530         gtk_type_parent_class().
16531         replacements, where available are described in ../docs/Changes-1.4.txt.
16532         implemented compatibility functions for the remaining API.
16533
16534         * configure.in: depend on glib 1.3.1, use gobject module.
16535
16536 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
16537
16538         * TODO.xml: Various updates to current status.
16539
16540 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
16541
16542         * gtk.m4: Print out version when test succeeds.
16543
16544 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
16545
16546         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
16547         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
16548         
16549         (Original triangle color selector from Simon Budig
16550         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
16551         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
16552         Santiago <mrcooger@cyberverse.com>)
16553
16554         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
16555         out into a separate widget.
16556
16557         * gtk/testgtk.c: Add some checkbuttons for toggling palette
16558         and opacity controls.
16559
16560 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
16561
16562         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
16563         snuck in prematurely.
16564
16565 2000-05-07  Tor Lillqvist  <tml@iki.fi>
16566
16567         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
16568         had deleted a ! operator by mistake, which caused
16569         GDK_SELECTION_CLEAR events never to be generated, which caused
16570         only the first copy to the clipboard from an gtkeditable to
16571         actually cause a copy to the Windows clipboard.
16572
16573 2000-05-06  Tor Lillqvist  <tml@iki.fi>
16574
16575         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
16576         compilation, too. Current mingw gcc distributions include the
16577         necessary headers. Also the necessary IIDs are now in mingw
16578         headers/libraries, and own definitions unnecessary.
16579
16580         More hacking on OLE2 DND, still doesn't work though, and thus
16581         ifdeffed out.
16582
16583         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
16584         here, too.
16585
16586 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
16587
16588         * gdk/nanox/*: nano-X port work in progress.
16589         * gdk/simple.c: simple test for Gdk.
16590         * README.nanox: notes about the port: read this first!
16591         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
16592         with nano-X.
16593
16594 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
16595
16596         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
16597         gdk_window_clear() into common code, implement in terms of
16598         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
16599         not redirected to the backing rectangle.
16600
16601 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
16602
16603         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
16604         EXTRA_DIST. It does not work well when the file that
16605         everything depends on is not in the tarball.
16606
16607 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
16608
16609         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
16610         with recursion where process_updates() is called from
16611         an expose handler. (GtkTextView is highly broken in
16612         doing this, but it should work, so it is a nice test
16613         case.)
16614
16615 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
16616
16617         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
16618         handle the case where updates are queued during processing of
16619         updates.
16620
16621 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
16622
16623         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
16624         window is on gdk_display - use that instead of segfaulting.
16625
16626 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
16627
16628         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
16629         broken and require an empty arg, give it to them.
16630
16631 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
16632
16633         * gtk/gtklabel.h: indentation fixes.
16634
16635 2000-05-02  Tor Lillqvist  <tml@iki.fi>
16636
16637         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
16638         draw too narrow or too low arcs, they seem to fail, at least with
16639         some display drivers.
16640
16641         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
16642
16643         Large changes to the Win32 backend, partially made necessary by
16644         the changes to the backend-independent internal
16645         structures. Attempts to implement similar backing store stuff as
16646         on X11. The current (CVS) version of the Win32 backend is *not* as
16647         stable as it was before the no-flicker branch was merged. A
16648         zipfile with that version is available from
16649         http://www.gimp.org/win32/. That should be use by "production"
16650         code until this CVS version is usable. (But note, the Win32
16651         backend has never been claimed to be "production quality".)
16652
16653         * README.win32: Add the above comment about versions.
16654
16655         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
16656
16657         * gdk/gdk.def: Update.
16658
16659         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
16660         presumably be replaced by some more better mechanism as 1.4 gets
16661         closer to release shape.
16662
16663         * gdk/makefile.{cygwin,msc}: Update.
16664
16665         * gdk/win32/*.c: Correct inclusions of the backend-specific and
16666         internal headers. Change code according to changes in these. Use
16667         gdk_drawable_*, not gdk_window_* where necessary.
16668
16669         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
16670         our old DND.
16671
16672         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
16673         to interpret single characters as UTF-8. Thanks to Hans Breuer.
16674         Use correct function name in warning messages.
16675
16676         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
16677         GSourceFuncs gdk_event_prepare and gdk_event_check.
16678         (gdk_event_get_graphics_expose): Do implement, use
16679         PeekMessage. Thanks to Hans Breuer.
16680         (event_mask_string): Debugging function to print an GdkEventMask.
16681         (gdk_pointer_grab): Use it.
16682
16683         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
16684         (old) book I used claimed was Hangul actually is CJK Unified
16685         Ideographs Extension A. Also, Hangul Syllables were missing.
16686         Improve logging.
16687
16688         * gdk/win32/gdkgc-win32.c: Largish changes.
16689
16690         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
16691         g_win32_getlocale() from GLib, and not setlocale() to get current
16692         locale name.
16693
16694         * gdk/win32/gdkprivate-win32.h
16695         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
16696         gdkwin32.h, similarily as in the X11 backend.
16697
16698         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
16699         assignment was used instead of equals in if test. Thanks to Hans
16700         Breuer.
16701
16702         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
16703         the X11 version.
16704
16705         * gdk/win32/makefile.{cygwin,msc}
16706         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
16707         path to the Win32 headers that works also with the mingw compiler.
16708
16709         * gtk/gtkstyle.c: Include <string.h>.
16710
16711 2000-04-26  Havoc Pennington  <hp@redhat.com>
16712
16713         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
16714         replacing the broken gtk_label_get ()
16715
16716 2000-04-15  Havoc Pennington  <hp@pobox.com>
16717
16718         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
16719         this keeps scanner scripts from getting confused.
16720
16721         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
16722         data, rather than void
16723
16724 2000-04-15  Tor Lillqvist  <tml@iki.fi>
16725
16726         * gtk/gtkclist.c (gtk_clist_motion)
16727         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
16728         with is_hint FALSE, get x and y from the event. They used to be
16729         used uninitialised. The Win32 backend never sends motion events
16730         marked as hints. This for instance fixes the annoying file and
16731         font selector behaviour in the Win32 version.
16732
16733 2000-04-14  Tor Lillqvist  <tml@iki.fi>
16734
16735         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
16736         gtk_private_n_signals variables, they are used by some software,
16737         sigh.
16738
16739         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
16740         installation directory from the Registry, where the installer
16741         should have put it.
16742
16743 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
16744
16745         * gdk/x11/Makefile.am: Fix problem with installation directory for
16746         gdkx.h
16747
16748         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
16749         <mrcooger@cyberverse.com> so that when selecting menus with the
16750         mouse, the first item will not be selected, but when selecting
16751         with an accelerator, or navigating left-right on a menubar with
16752         the menus popped up, the first item will be selected.
16753
16754 2000-04-05  Dan Damian  <dand@dnttm.ro>
16755
16756         * configure.in: Added "ro" to ALL_LINGUAS.
16757
16758 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
16759
16760         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
16761         indentation.
16762
16763         * Makefile.am (EXTRA_DIST): Fix typo.
16764
16765         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
16766         to catch gdkconfig.h
16767
16768         * gtk/gtkitemfactory.c: Added FIXME.
16769
16770 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
16771
16772         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
16773         s/return_if_fail/return_val_if_fail/g and add a return value.
16774
16775 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
16776
16777         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
16778         merge slipup.
16779
16780         * gdk/gdkinput.h: Fix missing line from merge.
16781
16782 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
16783
16784         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
16785         instead of gdkprivate.h.
16786
16787 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
16788
16789         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
16790         parent class to correctly be GtkDialogClass.
16791
16792 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
16793
16794         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
16795         toplevel windows and their immediate children by their parents,
16796         since the size of toplevel windows is out of our immediate
16797         control and we don't get any real benefit from trying to track
16798         this size for clipping.
16799
16800         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
16801         for input_only windows.
16802
16803         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
16804         to fix some hacks and make sure that we don't try to set the
16805         background of input only windows.
16806
16807 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
16808
16809         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
16810         the _really_ internal stuff, and leave gdkprivate.h for the fake private
16811         stuff that we've traditionally exposed.
16812
16813         * gdk/**.c: Use gdkinternals.h where appropriate.
16814
16815         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
16816         not include gdkprivate-x11.h, move all stuff of conceivable public
16817         interest into gdkx.h; keep all really private stuff in
16818         uninstalled header gdkprivate-x11.h.
16819
16820         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
16821         image->image_put on windows through a new function _gdk_window_draw_image()
16822         to allow us to do backing store for images. (Sort of ugly)
16823
16824         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
16825         contexts locally so that we can offset them properly when drawing 
16826         onto backing pixmaps.
16827
16828         * gdk/gdkinput.h: Reindented
16829
16830         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
16831         pixmap or color for the window, so we can properly initialize
16832         our double-buffer pixmaps, and also so that we temporarily set
16833         a background of None while scrolling.
16834
16835         * gdk/gdkregion.h: Revise region boolean operators to have an
16836         interface that is actually convenient - switch from creating new
16837         regions on every op, to "methods" that modify existing regions
16838         (A = A OP B). 3 argument forms which allow dest == src, would also
16839         be possible, but the current interfaces seem to map nicely
16840         onto what needs to be done. (There is quite a lot of region
16841         code in GDK now.)
16842
16843         * gdk/gdkregion.h: Add constructor from rectangle and a copy
16844         operator.
16845
16846         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
16847         gdkpoly-generic.h: Copy region code from Xlib, switch it over
16848         to 32 bit coordinates, modify it to be mostly GTK+ style
16849         and to have interfaces that match gdkregion.h.
16850
16851         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
16852         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
16853         create a backing pixmap and redirect all drawing to
16854         that backing pixmap until a matching gdk_window_end_paint().
16855
16856         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
16857         Create a special drawable class for GtkWindow's that 
16858         redirects the drawing to the backing pixmap as necessary
16859         and then calls the real operations in _gdk_windowing_window_class.
16860
16861         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
16862         Store invalid region for each window. Generate expose events for invalid
16863         region in an idle. This replaces both the expose compression
16864         and the redrawing queuing in GTK+. It is both more efficient and
16865         simpler than either one individually and far more so then the
16866         combination.
16867
16868         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
16869         Emulate 32 bit coordinates for windows with 16 bit coordinates
16870         by offsetting drawing, guffaw scrolling techniques and
16871         mapping/unmapping child windows as necessary.
16872
16873         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
16874         where, when invalid regions are processed, the region is stored,
16875         and if expose events come in that are detectably duplicate
16876         the processed exposes (by comparison of event serial numbers),
16877         the stored region is subtracted out of those exposes.
16878
16879         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
16880         regions newly exposed when scrolling or resizing windows.
16881         This, combined with forcing processesing of queued invalidated
16882         regions, gives nice flicker-free scrolling.
16883
16884         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
16885         invalidated regions after every scroll.
16886
16887         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
16888         emulation in GDK. Its, for all practical purposes just a
16889         GtkViewport/GtkFixed hybrid now.
16890
16891         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
16892         (16-bit) structures as necessary instead of just casting.
16893
16894         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
16895         in terms of the structures from gdkregion-generic.c, using appropriate
16896         offsets from GDK to X11 coordinates. Cache clip mask and
16897         origin and ts origin locally and only flush to the server
16898         when drawing, to avoid constantly setting and resetting these
16899         values when offsetting GC's for scrolling and backing pixmaps.
16900
16901         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
16902
16903         * gtk/gtkcontainer.c: Call process_all_updates at end
16904         of resizing to reduce flicker. (Avoids having redraw
16905         lag arbitrarily behind resize under some circumstances)
16906
16907         * gtk/gtkentry.c: Remove old backing store code, and simply take
16908         advantage of the new backing store capabilities of GDK.
16909
16910         * gtk/gtkmain.c: Simple implementation of widget backing
16911         store - simply push a paint while handling each expose.
16912         (Should really be configurable widget for widget.)
16913         
16914         * gtk/gtkwidget.c: Remove all the old complicated redraw
16915         code, and simply invalidate the GDK windows from
16916         gdk_window_queue_clear(), etc. (Sigh, so much carefully
16917         debugged complexity ... gone to the winds.)
16918
16919         Remove all the code for suppressing expose events while
16920         resizes are pending; this isn't needed since the invalid
16921         areas won't be processed until after the resizes are
16922         processed, since they are in a lower priority idle.
16923
16924 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
16925
16926         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
16927         and height of dest rectangle for non-intersecting rectangles.
16928
16929 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
16930
16931         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
16932         for GdkRectangle.
16933
16934 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
16935
16936         * gdk/gdk{events,image,private,types,window}.h
16937          gdk/x11/gdkinputprivate.h: Change all coordinates
16938          from int16 to int. Also, Change width and height from
16939          unsigned to signed to avoid all the stupid C 
16940          signedness bugs.
16941
16942 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
16943
16944         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
16945         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
16946         Add some more detailed checking.
16947
16948         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
16949         New function to retrieve the depth of a drawable.
16950
16951         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
16952         field, reorder fields to save memory. 
16953
16954 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
16955
16956         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
16957         of the background image instead of scaling the background down to
16958         a line.
16959
16960         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
16961         which temporarily set slider to wrong size.
16962
16963         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
16964         queue_clear().
16965
16966 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
16967
16968 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
16969
16970         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
16971
16972 2000-03-17  Tor Lillqvist  <tml@iki.fi>
16973
16974         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
16975         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
16976
16977         * gdk/win32/gdkfont-win32.c
16978         * gdk/win32/gdkproperty-win32.c
16979         * gdk/win32/gdkselection-win32.c
16980         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
16981         now declared such.
16982
16983 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
16984
16985         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
16986
16987 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
16988
16989         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
16990         is called without trapping X errors.
16991
16992 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
16993
16994         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
16995         way into the fontset lists.
16996
16997 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
16998
16999         * gtk/gtkthemes.h: add extern "C" scope.
17000
17001 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
17002
17003         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
17004         to make appends to the list constant. (gtk-guy-990901-0.patch)
17005
17006 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
17007
17008         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
17009         for the typename hash table.
17010
17011 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
17012
17013         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
17014         to make sure we never divide by zero. 
17015         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
17016
17017 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
17018
17019         * gtk/gtkfontsel.c: Apply patch from
17020         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
17021         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
17022
17023         Also, some cleanups in atom handling.
17024
17025 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
17026
17027         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
17028         not GtkWidget.
17029
17030 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
17031
17032         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
17033         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
17034         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
17035         more guint wrap-around bugs before going to bed.
17036
17037 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
17038
17039         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
17040         guint wrap arounds in allocation.width.
17041
17042         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
17043         process untill we fit the allocation given.
17044
17045 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
17046
17047         * gtk/gtkwidget.c:
17048         (gtk_widget_unrealize): guard widget access with ref/unref
17049         around signal emission.
17050         (gtk_widget_hide): same here, but also check its destroyed
17051         state before queueing a resize.
17052
17053 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
17054
17055         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
17056         of gtk_default_insensitive_bg as insensitive base color.
17057
17058         * gtk/gtktext.c (gtk_text_style_set): set the background color according
17059         to the widget's state.
17060         (gtk_text_realize): same here.
17061         (gtk_text_state_changed): same here.
17062         (draw_bg_rect): compare background color against base[] from
17063         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
17064
17065 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
17066
17067         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
17068         grabs are active, unless a delete event is send to the toplevel
17069         of the currently grab holding widget.
17070
17071 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
17072
17073         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
17074         debugging g_print's.
17075
17076 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
17077
17078         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
17079         ever make the scrolled-window requisition ever depend on the 
17080         visibility state of the scrollbars for the AUTOMATIC policy. 
17081         This breaks the GTK+ requisition model, and causes loops.
17082
17083 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
17084
17085         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
17086         the default font to avoid problems with XFree86-4.0 where the
17087         default charset is iso10646-1, not iso8859-1.
17088
17089 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
17090
17091         * acinclude.m4
17092         * config.guess
17093         * config.sub
17094         * ltconfig
17095         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
17096
17097         * gtk/Makefile.am: minor cosmetic consistency tweak
17098
17099 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
17100
17101         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
17102         the activate_time to 0, so that we handle a quick
17103         press/release press/release properly and don't suppress
17104         the second release. (Red Hat bug #7545)
17105
17106 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
17107
17108         * gtk/gtkctree.c (row_delete):
17109         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
17110         bugs with destruction notifier, *always* update internal
17111         structures *before* calling user code.
17112
17113 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
17114
17115         A few more fixes for bug #5487, #2051, #2677.
17116         * gtk/gtkclist.c : 
17117         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
17118         not GDK_BUTTON_PRESS.
17119         (resync_selection): resync only if selection_mode is
17120         GTK_SELECTION_EXTENDED
17121         * gtk/gtkctree.c (resync_selection): same here
17122
17123 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
17124
17125         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
17126         gdk_drag_get_selection() and gtk_menu_detach().
17127
17128         [ From Jeroen Ruigrok/Asmodai ]
17129
17130 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
17131
17132         * gtk/gtknotebook.c (gtk_notebook_size_request): 
17133         page->tab_label can be NULL.
17134
17135 2000-01-25  Havoc Pennington  <hp@pobox.com>
17136         
17137         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
17138         arg is boolean
17139
17140         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
17141
17142         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
17143
17144         * gdk/gdkproperty.c (gdk_property_get): return boolean
17145
17146         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
17147
17148         * gdk/gdkim.c (gdk_im_ready): return boolean
17149
17150         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
17151
17152         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
17153         glib clash, should fix glib)
17154
17155         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
17156         (gdk_get_show_events): return gboolean, and canonicalize 
17157         to TRUE/FALSE
17158
17159         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
17160         colormap is private
17161         (gdk_colors_alloc): gboolean whether to be contiguous
17162         (gdk_color_equal): return gboolean since we are a predicate
17163         and not a qsort() (this looks semi-wrong due to glib breakage,
17164         IMO glib should be fixed)
17165         
17166         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
17167         (gdk_get_use_xshm): return gboolean
17168         (gdk_pointer_is_grabbed): return gboolean
17169
17170         * gdk/gdk.h: Change prototypes to match all the above changes,
17171         and re-run egtk-format-protos as required.
17172
17173 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
17174
17175         * gtk/gtkctree.c (resync_selection): 
17176         * gtk/gtkclist.c (resync_selection):
17177
17178         Return immediately if clist->drag_pos < 0. This is a workaround
17179         for the corrupt state that the clist gets into when a
17180         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
17181
17182         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
17183         
17184         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
17185         variable from recent commit.
17186
17187 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
17188
17189         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
17190
17191 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
17192
17193         * gtk/Makefile.am: prefix all autogenerated source that get build in
17194         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
17195         in builddir. since we subsequently cd into srcdir for autogeneration,
17196         the paths have to be stripped from the target file names, thusly we
17197         use $(@F) as target names now.
17198         put a comment about configure.in's --disable-rebuilds option,
17199         which can be used for non-writable source directories, for development
17200         setups though, srcdir has to be *writable*.
17201
17202 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
17203
17204         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
17205           Finish the job of allowing event to be NULL.
17206           (Fixes bug #4283, reported by Chris Blizzard)
17207
17208         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
17209           things so that the cursor appears on screen, properly
17210           take into account INNER_BORDER.
17211           (Fixes bug #4754, reported by Antonio Campos)
17212
17213 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
17214
17215         * gtk/gtknotebook.c (gtk_notebook_map): Don't
17216           show the tab_label unless it itself is visible.
17217
17218           gtk/gtknotebook.c (gtk_notebook_size_request):
17219           Do a better job of making sure that the visibility
17220           of the tab label corresponds to whether it should
17221           be mapped or not.
17222
17223 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
17224
17225         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
17226           Use the requisition, not the allocation, since the
17227           allocation has not necessarily been computed yet.
17228           (Pointed out by Eugene Osintsev)
17229
17230 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
17231
17232         * gtk/gtkstyle.c (gtk_style_new): Dont' set
17233           style/base[GTK_STATE_INSENSITIVE] both to
17234           gtk_default_insensitive_bg!
17235           (Bug #2187, reported by Jonathan Blandford)
17236
17237         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
17238           Add Alt_L, Alt_R to list of invalid accelerators.
17239           (Bug #3736, reported by Vlad Harchev)
17240
17241 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
17242
17243         * gtk/gtkfilesel.c (open_ref_dir): Fix several
17244         bugs which occured after an attempt to open 
17245         invalid home directory left cmpl_state->reference_dir == NULL.
17246
17247          - completion on files in home directory didn't work
17248          - completion on an empty string caused  segfault
17249
17250          (Bug #3678, reported by Steve Ratcliffe)
17251
17252         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
17253         cut and paste error that was causing scales to
17254         be incorrectly positioned.
17255         (Bug #2956,
17256          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
17257
17258 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
17259
17260         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
17261         when checking for dcgettext, if we've found we needed
17262         it for dgettext.
17263 +
17264 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
17265
17266         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17267         queue_clear on NO_WINDOW widgets during a reparent,
17268         since at that point the window and widget heirarchies
17269         are out of sync. This stops crashing in some cases
17270         (the scrolled window reparent test, for instance), and
17271         _probably_ won't cause drawing errors.
17272
17273         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
17274         test do what it was supposed to do and be robust against
17275         window closings, etc. (Bug #2443)
17276
17277 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
17278
17279         * gtk/gtkentry.c: Fix return values on mouse events.
17280         (Bug #2686, Sky <seb_sky@yahoo.com>)
17281
17282         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
17283         (pointed out by George Lebl)
17284
17285         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
17286         (From Ettore Perazzoli  <ettore@helixcode.com>)
17287  
17288 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
17289
17290         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
17291         clicks between rows or outside calender area correctly.
17292         (Patch from Damon Chaplin)
17293
17294         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
17295         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
17296           Call destroy function when overwriting existing data. 
17297           (Pointed out by Damon Chaplin)
17298
17299 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
17300
17301         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
17302           which was causing problems on various systems with Xmu.
17303           This hasn't been needed for a very long time.
17304           (Fixes #1185 3167)
17305
17306 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
17307
17308         * gdk/gdki18n.h: Include <ctype.h> when defining
17309           gdk_isw* in terms of is* as a fallback.
17310           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
17311
17312 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
17313
17314         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
17315           realize the widget when it is size allocated!
17316           (old, old bug)
17317
17318         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
17319           Removed unused call to gdk_window_get_size() that
17320           showed up when the above was fixed.
17321
17322 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
17323
17324         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
17325           fix up widget->window when the widget is a
17326           NO_WINDOW container widget.
17327
17328 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
17329
17330         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
17331           to account for the fact that feof() does _not_ 
17332           return TRUE on errors, and thus avoid infinite loops
17333           when trying to use gdk_pixmap_create_from_xpm()
17334           on unreadable values.
17335
17336 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
17337
17338         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
17339
17340 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
17341
17342         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
17343           gdk_gc_set_dashes to take gint8 instead of gchar to
17344           make it clearer that it is _not_ a NULL terminated string.
17345
17346         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
17347           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
17348           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
17349           arguments.
17350
17351 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
17352
17353         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
17354         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
17355         background size relative to our allocation, guard against small
17356         allocations, we may have not yet been size allocated.
17357
17358 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
17359
17360         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
17361         not just version == 3. We implement all 3 + most of 4 - 
17362         (we don't support matching text/plain;charset=iso-8859-1
17363         to a dest that expects text/plain). We'll still advertise
17364         3 to be safe, but any client implementing version >= 3
17365         must interoperate with 3.
17366         
17367 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
17368
17369         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
17370         background and gc members, add a warning in gtk_tooltips_set_color()
17371         indicating that this function is deprecated.
17372
17373 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
17374
17375         * docs/gtkfaq.sgml: FAQ Update:
17376           - Minor cleanups (Emmanuel, me)
17377           - New questions:
17378                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
17379                 How can I retrieve the text from a GtkMenuItem? (timj)
17380                 How do I validate/limit/filter the input to a GtkEntry? (me)
17381                 Memory does not seem to be released when I free the list
17382                         nodes I've allocated (timj)
17383
17384 2000-03-07  Tor Lillqvist  <tml@iki.fi>
17385
17386         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
17387         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
17388         for which it is no use to call GetLastError onWin9x.
17389         (gdk_other_api_failed) New function, for general error
17390         reporting without calling GetLastError.
17391         (gdk_win32_api_failed) OTOH, this function always calls
17392         GetLastError. (gdk_win32_last_error_string) Remove this function,
17393         GLib has the equivalent now.
17394
17395         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
17396         call them with function name, file name and line number in the
17397         arguments.
17398
17399         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
17400         functions.
17401         
17402         * gtk/gtk.def: Add some missing entry points.
17403
17404         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
17405         gtk_paned_set_gutter_size, which don't exist any longer, as void.
17406         
17407         Fixes by Hans Breuer:
17408
17409         * gdk/makefile.msc: Update for debugging.
17410
17411         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
17412         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
17413         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
17414         in the dash_list.
17415
17416         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
17417         the x11 backend.
17418
17419         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
17420
17421         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
17422
17423 2000-03-04  Tor Lillqvist  <tml@iki.fi>
17424
17425         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
17426         just pixel value of background colour.
17427
17428         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
17429         containing code snippet previously duplicated in a couple of
17430         places.
17431         
17432         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
17433         gdk_colormap_color.
17434
17435         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
17436         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
17437         events for autorepeated Shift, Control and Alt keys. Use
17438         gdk_colormap_color.
17439
17440         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
17441         pointer is inside the window the cursor of which we are setting,
17442         call SetCursor immediately.
17443
17444         * gdk/win32/makefile.cygwin
17445         * gtk/makefile.cygwin: If we don't have the build number stamp
17446         file, use zero.
17447
17448         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
17449         gtk_paned_set_gutter_size as empty.
17450
17451         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
17452         
17453 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
17454
17455         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
17456           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
17457           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
17458           docs/gtk_tut.sgml docs/gtk.texi TODO:
17459
17460           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
17461
17462 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
17463
17464         * gtk/gtkcalendar.c: Implement num_marked_dates,
17465           and don't emit mutiple day_selected signals on
17466           month_prev.
17467
17468 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
17469
17470         * docs/make-todo (lineno): let title and logo be configurable so
17471         that GNOME can use this script too.
17472
17473         * TODO.xml: added logourl and a title
17474
17475 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
17476
17477         * TODO.xml: Added some UI items, and an explanatory
17478         comment at the top of the file.
17479
17480 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
17481
17482         * TODO.xml: some updates, added abunch of new entries.
17483         a note for those fiddeling with this file, when done
17484         with it, invoke:
17485         $ ./docs/make-todo TODO.xml >/dev/null
17486         and correct output errors before comitting changes.
17487
17488 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
17489
17490         * TODO.xml: Added XML-structured TODO file.
17491         * docs/make-todo: python script to turn TODO.xml into
17492           pretty XML output. 
17493
17494 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
17495
17496         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
17497         the function to let it draw the seven dots, instead of the old,
17498         much maligned, method.
17499         (draw_dot): New function to draw a dot.
17500
17501         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
17502         to draw the handle inside the border width as opposed to outside.
17503         Use paint function instead of gdk_draw_point.
17504
17505         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
17506         to draw the handle inside the border width as opposed to outside.
17507         Use paint function instead of gdk_draw_point.
17508
17509         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
17510         Change indenting to be more GTK like.
17511
17512 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
17513
17514         * docs/gtk_tut.sgml: New section on GtkCalendar
17515         * examples/calendar: Update example code
17516
17517 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
17518
17519         * docs/gtkfaq.sgml: FAQ Update
17520
17521 2000-02-19  Anders Carlsson  <andersca@gnu.org>
17522
17523         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
17524         to prevent the scroll event to be propagated upwards.
17525
17526 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
17527
17528         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
17529         OwnerGrabButtonMask from button entries for
17530         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
17531
17532         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
17533         to the event mask (which will result in button/press release
17534         being added to the event mask on Unix) so scrolling works
17535         for layouts in scroll windows.
17536
17537         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
17538
17539         Patch from Anders Carlsson  <andersca@gnu.org> to add
17540         a scroll event.
17541
17542         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
17543         scrolling to the "Test Scrolling" part of testgtk.
17544  
17545         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
17546  
17547         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
17548         it against GDK_SCROLL.
17549  
17550         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
17551         way of mouse wheel scrolling.
17552  
17553         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
17554  
17555         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
17556  
17557         * gtk/gtkmain.c: Removed previous mouse wheel hack.
17558  
17559         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
17560         gdk_event_mask_table.
17561  
17562         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
17563         GdkEventScroll handler.
17564  
17565         * gdk/gdkevents.h: Added GdkEventScroll structure.
17566  
17567 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
17568
17569         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
17570         and Anders Carlsson to change the Paned widgets so that they
17571         can be dragged from anywhere along the length. Also change
17572         the way that this is drawn to make this apparent.
17573
17574         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
17575         from George Lebl to check that option_menu->menu is present
17576         before getting history.
17577
17578 2000-02-14  Tor Lillqvist  <tml@iki.fi>
17579
17580         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
17581         before the assertion for non-NULL segment list.
17582
17583         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
17584         Seems that pattern brushes *must* be 8x8 pixels! At least on my
17585         machine, but it might be display driver dependent. Sigh, so make
17586         sure the stipple is that size. Does Windows suck or what?
17587
17588         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
17589         places.
17590
17591 2000-02-13  Havoc Pennington  <hp@pobox.com>
17592
17593         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
17594         refcount to 1
17595         (gdk_cursor_new): init refcount to 1
17596
17597         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
17598
17599 2000-02-13  Tor Lillqvist  <tml@iki.fi>
17600
17601         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
17602         so that we don't have to do unnecessary settings to the HDC.
17603
17604         * gdk/win32/gdkdrawable-win32.c
17605         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
17606         gdk_gc_predraw.
17607
17608         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
17609         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
17610         GDI paths, call WidenPath to get the outline of the stroken path,
17611         and then fill the outline (with the brush that was built from the
17612         stipple).
17613
17614         * gdk/win32/gdkgc-win32.c: Factor out common code from
17615         _gdk_win32_gc_new and gdk_win32_gc_set_values into
17616         gdk_win32_gc_values_to_win32values. Use correct colour for
17617         SetBkColor() (Until now the code actually used a random colour in
17618         the call to SetBkColor()... but that didn't show up as not many
17619         GDI APIs use the background colour. Pattern (opaque stippled)
17620         brushes do.)
17621
17622         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
17623         gdk_win32_api_failed): New functions for error logging.
17624
17625         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
17626         WIN32_API_FAILED to call them, passing function or file name and
17627         line number.
17628
17629         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
17630
17631         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
17632         GdkColor for foreground and background in GdkGCWin32Data.
17633
17634         * gdk/makefile.cygwin: Link in the resource object separately.
17635
17636         * gdk/win32/rc/gdk.rc
17637         * gtk/gtk.rc (New file)
17638         * gdk/win32/makefile.cygwin
17639         * gtk/makefile.cygwin: Update build number in DLLs automatically,
17640         as in GLib.
17641
17642 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
17643
17644         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
17645         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
17646         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
17647         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
17648         parameters given and cursor->ref_count. coding style fixups.
17649
17650         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
17651         not GtkWidget.
17652         
17653         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
17654         fix up widget macros and add _GET_CLASS() variant.
17655         
17656         * gtk/*.c: some GtkType fixups.
17657
17658 2000-02-09  Tor Lillqvist  <tml@iki.fi>
17659
17660         * gdk/win32/gdkproperty-win32.c
17661         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
17662         were reversed.
17663
17664 2000-02-04  Tor Lillqvist  <tml@iki.fi>
17665
17666         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
17667         g_filename_to_utf8 to convert the font names Windows gives us from
17668         whatever is the default codepage to UTF-8.
17669         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
17670         in the other direction.
17671
17672         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
17673         error in debugging output.
17674
17675 2000-02-02  Tor Lillqvist  <tml@iki.fi>
17676
17677         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
17678         and height parameters to gdk_window_clear_area(). Not minus one.
17679
17680 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
17681
17682         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
17683         checks if the widget passed to gtk_drag_get_data() was not the
17684         dest widget.
17685
17686 2000-02-01  Tor Lillqvist  <tml@iki.fi>
17687
17688         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
17689         g_filename_from_utf8 functions (which were added a moment ago to
17690         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
17691         size buffers.
17692
17693         gtk_file_selection_get_filename returns the filename in the C
17694         runtime encoding. It calls g_filename_from_utf8, but copies the
17695         returned string to a static buffer, which is returned. I think
17696         this is better than returning the result from g_filename_from_utf8
17697         directly, which would mean all apps that use it would have to free
17698         the return value. Or should this function care about this issue at
17699         all? Maybe a new function with clearly defined semantics.
17700
17701         * gtk/gtkfilesel.h: Add comment about
17702         gtk_file_selection_get_filename returning the filename in the C
17703         runtime's encoding.
17704
17705         * README.win32
17706         * gdk/gdk.def
17707         * gdk/makefile.{cygwin,msc}
17708         * gtk/gtk.def: Updates.
17709
17710         * gdk/gdkcursor-win32.c: Initialise refcount.
17711
17712 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
17713
17714         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
17715
17716 2000-01-30  Havoc Pennington  <hp@pobox.com>
17717
17718         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
17719         destroy
17720
17721         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
17722
17723         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
17724         implemented in platform-specific code
17725
17726         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
17727
17728         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
17729         underscore in front
17730
17731         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
17732         put an underscore in front
17733
17734         * gdk/gdkcursor.c: new file, implements
17735         gdk_cursor_ref/gdk_cursor_unref
17736
17737         * gdk/gdkcursor.h: Refcount GdkCursor
17738
17739         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
17740
17741 2000-01-29  Tor Lillqvist  <tml@iki.fi>
17742
17743         * gdk/gdkwindow.h
17744         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
17745
17746 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
17747
17748         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
17749         structures to properly inherit from GtkWidget not GtkBin.
17750
17751 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
17752
17753         * gtk+.spec.in: Added lib/gtk+/include/* to %files
17754         (bug #5178 - Peter Wainright)
17755         
17756         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
17757         so that it will be installed.
17758         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
17759
17760 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
17761
17762         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
17763         for the GtkStyleClass vtable const.
17764
17765         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
17766         take a const string argument like GtkTranslateFunc. This will
17767         require changes in use code.
17768
17769 2000-01-19  Tor Lillqvist  <tml@iki.fi>
17770
17771         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
17772         semantics (to mimic the X11 backend, which just calls XClearArea)
17773         is to check for zero width (and height), and in that case use the
17774         window's width minus x (height minus y). This fixes for instance
17775         some redraw problems with gtkclist, which were easily noticeable
17776         in the gtk file selection widget.
17777
17778         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
17779         windows.
17780
17781 2000-01-13  Tor Lillqvist  <tml@iki.fi>
17782
17783         * configure.in
17784         * gdk/Makefile.am
17785         * gdk/x11/Makefile.am
17786         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
17787         (bug #5177).
17788         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
17789         out later.
17790
17791 2000-01-09  Tor Lillqvist  <tml@iki.fi>
17792
17793         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
17794         WM_MOVE for iconified or invisible windows. This fixes various
17795         problems when minimising windows. Thanks to Bernd Herd.
17796
17797 2000-01-05  Tor Lillqvist  <tml@iki.fi>
17798
17799         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
17800         backend's draw_lines method, not draw_points.
17801
17802 2000-01-02  Tor Lillqvist  <tml@iki.fi>
17803
17804         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
17805         before Owen's reorganisation: Don't have queued_events and
17806         queued_tail statics in this file, but use gdk_queued_events and
17807         gdk_queued_tail. This makes exposure event compression work again.
17808
17809         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
17810         seem to be needed?
17811
17812 1999-12-30  Tor Lillqvist  <tml@iki.fi>
17813
17814         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
17815         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
17816         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
17817         doesn't do anything.
17818
17819         * gdk/gdk.def: Add gdk_xid_table_insert.
17820
17821         * gdk/win32/gdkprivate-win32.h
17822         * gdk/win32/gdkevents-win32.c
17823         * gdk/win32/gdkinput-win32.c
17824         
17825         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
17826         extension_events field in the GdkWindowWin32Data struct. Use only
17827         the extension_events field in GdkWindowPrivate. Previously one was
17828         set, and the other one tested, which broke tablet
17829         functionality. Thanks to Keishi Suenaga for pointing this out.
17830
17831 1999-12-18  Tor Lillqvist  <tml@iki.fi>
17832
17833         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
17834         When handling a single character (text length == 1), don't handle
17835         it as if it was UTF-8.
17836
17837 1999-12-11  Tor Lillqvist  <tml@iki.fi>
17838
17839         * Makefile.am: Distribute README.win32.
17840         
17841         * gdk/Makefile.am
17842         * gdk/win32/Makefile.am: Distribute Win32 files.
17843
17844         * gdk/makefile.msc: New file.
17845
17846         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
17847         after label).
17848
17849         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
17850         gdk_error_code as GDKVAR, as they are referred outside GDK.
17851
17852         * gdk/win32/makefile.msc: Update.
17853
17854         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
17855         tweaks. Check only if at least one of those Unicode subrange bits
17856         we care for is set. If no code page bits are set, guess (wildly)
17857         based on the charset.
17858
17859         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
17860
17861         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
17862         non-NULL.
17863
17864         * gtk/gtkdnd.c
17865         * gtk/gtklayout.c
17866         * gtk/gtkplug.c
17867         * gtk/gtkselection.c
17868         * gtk/gtksocket.c
17869         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
17870         appropriate. There must be a cleaner way to handle this?
17871
17872         * gtk/gtkrc.c: Must include windows.h on Win32.
17873
17874         * gtk/testgtk.c: No need to include gdkx.h.
17875
17876         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
17877
17878 1999-12-07  Tor Lillqvist  <tml@iki.fi>
17879
17880         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
17881         the rbearing is set to the same as the width, but this should be
17882         fixed.
17883
17884 1999-12-06  Tor Lillqvist  <tml@iki.fi>
17885
17886         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
17887         function. If Windows doesn't tell us what Unicode subranges a font
17888         covers, guesstimate based on the codepages it covers. This will
17889         hopefully help those Windows versions or fonts that don't give us
17890         any useful Unicode subrange information with GetTextCharsetInfo.
17891         Call this function in gdk_font_load_internal.
17892
17893         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
17894         minor changes.
17895
17896 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
17897
17898         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
17899         New function, long needed.
17900
17901 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
17902
17903         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
17904         only_if_exists argument of gdk_atom_intern to
17905         bool.
17906
17907 1999-11-25  Tor Lillqvist  <tml@iki.fi>
17908
17909         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
17910         Fix two copy&paste errors.
17911
17912         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
17913         win32 has changed.
17914
17915         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
17916         GdkWin32SingleFont struct.
17917
17918         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
17919         subranges of loaded fonts. Clear font signature first, in case
17920         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
17921         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
17922
17923         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
17924         Unoffset clip region.
17925
17926 1999-11-23  Tor Lillqvist  <tml@iki.fi>
17927
17928         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
17929         event->any.window before calling filter functions.
17930
17931 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
17932
17933         * gtk/gtkgamma.h: Adapt cast macros to standard.
17934
17935 [ Merges from 1.2 ]
17936
17937 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
17938
17939         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
17940         If translation does not include a '/', use entire
17941         translation instead of crashing.
17942
17943 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
17944
17945         * docs/gtk_tut.sgml:
17946         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
17947
17948 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
17949
17950         * gtk/gtkselection.c (gtk_target_list_remove): Use
17951         g_list_remove_link, not g_list_remove.
17952
17953         [ From Geert Bevin <gbevin@thunderstorms.org> ]
17954         
17955 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
17956
17957         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
17958         statement upon unselection (how the heck did that slip in?).
17959
17960 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
17961
17962         * gtk/gtktext.c (gtk_text_freeze): 
17963         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
17964         in frozen state (and aparently crashes). patch provided by Anders
17965         Melchiorsen <and@kampsax.dtu.dk>.
17966
17967 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
17968
17969         * fix insensitive default/focus widget activation,
17970         reported by Matt Goodall <mgg@isotek.co.uk>.
17971
17972         * gtk/gtkwindow.c (gtk_window_key_press_event): 
17973         (gtk_window_activate_default):
17974         (gtk_window_activate_focus):
17975         return handled=FALSE for actiavtion of insensitive default
17976         widgets. return handled=TRUE for activation of insensitive
17977         focus widgets. don't activate in either case.
17978
17979 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
17980
17981         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
17982         and $glib_cflags to match library order and in the
17983         theory that an old version of GLib is more likely to
17984         be in the include directory for X then vice-versa.
17985         (Bug #2776)
17986
17987 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17988
17989         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
17990         to determine the locale for fontsets, not LC_MESSAGES;
17991         the user may want English messages with a handling
17992         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
17993         will still be broken) (Bug #2891)
17994
17995 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
17996
17997         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
17998
17999 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
18000
18001         * gtk/gtkrc.ko: Changed the Korean default fontset.
18002
18003 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
18004
18005         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
18006         where when scrolling to the left or top double exposes
18007         were done, causing major slowdowns.
18008
18009 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
18010
18011         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
18012         names to lowercase and alphanumeric, before looking
18013         them up.
18014
18015         * gtk/Makefile.am: Install codeset variant gtkrc files
18016         with normalized names.
18017
18018 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
18019
18020         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
18021         popup menus when the menu is already visible, but its parent
18022         is still hidden, (happens after tornoff window got hidden).
18023
18024 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
18025
18026         * gtk/Makefile.am (install-data-local): Fix
18027         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
18028         deleted, causing error messages on install.
18029
18030 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
18031
18032         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
18033         the handle as well, since we now sometimes ignore
18034         exposes on the handle while resizing.
18035
18036 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
18037
18038         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
18039         extra g_free introduced in one of the last one or two 
18040         commits.
18041
18042 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
18043
18044         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
18045         consistent, put each style that a gtkrc.* file creates
18046         in a unique namespace, remove old files before installing.
18047
18048 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
18049
18050         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
18051         gtk_rc_init is called multiple times. (Yes, people who
18052         do that have bugs in their code.)
18053
18054 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
18055
18056         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
18057         Remove it since it's generated by the Makefile anyway
18058
18059 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
18060
18061         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
18062         device->info.axes for core pointer.
18063
18064 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
18065
18066         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
18067         idle_id, to deal with obsolete, broken C libraries.
18068
18069 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
18070
18071         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
18072         allocation->x/y twice!
18073
18074         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
18075         consistent with gtk_vscale_pos_trough().
18076
18077 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
18078
18079         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
18080         be queueing a resize on a toplevel container between
18081         the time we show it and when we map it. So, we need
18082         to test GTK_WIDGET_VISIBLE() for toplevels, and only
18083         use GTK_WIDGET_DRAWABLE() for child windows.
18084
18085 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
18086
18087         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
18088         (fixes bug #2144)
18089
18090 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
18091
18092         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
18093         container DRAWABLE (instead of VISIBLE), so we don't queue
18094         resizes on non-toplevel containers.
18095
18096 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
18097
18098         * gtk/gtkselection.[ch]: Make the data argument
18099         const guchar *.
18100
18101 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
18102
18103         * gtk/gtkwindow.c: Try to behave sensibly if 
18104         the focus widget is the window itself. (Should
18105         we allow this at all?)
18106
18107 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18108
18109         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
18110         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
18111         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
18112         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
18113         in prototypes and implementations consistent (Tomas Ogren).
18114
18115         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
18116         before the widget is unparented (reported by damon).
18117
18118         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
18119         since we provide unsigned data anyways.
18120
18121 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
18122
18123         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
18124         the call to gtk_tooltips_layout_text() until later.
18125
18126         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
18127         Call gtk_widget_ensure_style() before using the style.
18128
18129 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
18130
18131         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
18132         for old widgets that don't propagate draws to all
18133         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
18134
18135 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
18136
18137         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
18138         for a redraw but just the widget that requested the resize.
18139
18140 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
18141
18142         * gtk/gtkcontainer.c: added new widget level method
18143         gtk_container_set_reallocate_redraws() and a GtkContainer flag
18144         reallocate_redraws : 1 to reflect the setting, exported this through
18145         the argument system as a boolean ::reallocate_redraws.
18146
18147         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
18148         on the widget because the allocation changes, do so as well for
18149         widget->parent if the parent has reallocate_redraws set to TRUE.
18150         with that containers requesting reallocation redraws get automatically
18151         redrawn if their children changed allocation (this unfortunately
18152         affects also other children that didn't change allocation, but we
18153         cannot work around that before 1.3).
18154
18155 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18156
18157         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
18158         _and_ height are >0 (not _or_).
18159
18160         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
18161         instead of gtk_container_queue_resize(), which is a core gtk internal
18162         function (must have been on crack when i queued that).
18163
18164         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
18165         we can check more reliably if we want to discard expose events.
18166         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
18167         flag.
18168         
18169         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
18170         we simply trust these events. for deciding whether to discard exposes,
18171         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
18172         
18173 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
18174
18175         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
18176         queues of areas that are completely off screen.
18177
18178         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
18179         logic for handleboxes.
18180
18181         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
18182         check on width/height.
18183
18184 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
18185
18186         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
18187         we are fine with using $@ the way we do (if we actually encounter
18188         brokeness with $@ in VPATH builds because of additional path prefixes,
18189         we need to use $(@F) actually).
18190
18191 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
18192
18193         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
18194         short lived bugs, that would allow language bindings to do surgeries
18195         to our guts.
18196
18197 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
18198
18199         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
18200         where comparison was being done against an uninitialized
18201         value causing intermittant results depending on
18202         compiler flags. Also make it clearer that we aren't
18203         ever initializing the child as 0x0 (though this will
18204         be caught in gtk_widget_size_allocate())
18205
18206 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
18207
18208         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
18209         gtk_window_unset_transient_for() call after we do checks
18210         involving the old transient parent.
18211         [ From Lance Capser <lmc@cyberhighway.net> ]
18212
18213 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
18214
18215         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
18216         an empty file.
18217
18218 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
18219
18220         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
18221         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
18222
18223 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
18224
18225         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
18226         `$@' is valid only in the build dir, not after we've done 
18227         `cd $srcdir'.  Also use `test -f' instead of less portable
18228         `test -e'.
18229
18230 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
18231
18232         * gtk/gtktext.c (correct_cache_insert): Rewrite
18233          for simplicity, and hopefully correctness.
18234          (Fixes bug #1322, which was a segfault when
18235           on some insertions with the properties around
18236           the insertion set up just wrong.)
18237
18238         * gtk/gtktext.c (gtk_text_adjustment): When we receive
18239          a "changed" signal, clamp the new value to the adjustment
18240          bounds to avoid segfaulting if someone tries to change
18241          the adjustment to a bogus value. (Bug #1795)
18242
18243 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
18244
18245         * gtk/gtkmain.c: Ignore unexpected destroy notifies
18246         for children, for toplevel windows handle them
18247         like delete_event.
18248
18249         * gtk/gtkplug.c: Add an unrealize handler so that
18250         we unref plug->socket_window when we are done
18251         with it.
18252
18253 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
18254
18255         * gtk/gtktext.c (clear_area): Fix stupid signedness
18256          problem that was causing background to sometimes
18257          be misaligned.
18258
18259 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
18260
18261         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
18262         
18263         * gtk/gtkmenu.c (gtk_menu_position): Make
18264          sure we never position menus with negative x, y,
18265          since gtk_widget_set_uposition() can't handle that.
18266
18267         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
18268          Modify the positioning code a bit so that we always
18269          put the top-left corner onscreen. (This is for
18270          UI reasons, gtk_menu_position() now takes care of
18271          gtk_widet_set_uposition() brokeness.)
18272
18273 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
18274
18275         * gtk/Makefile.am: fixed up things for -jx, x > 1.
18276
18277 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
18278
18279         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
18280           RC style that is passed in. The lack of the ref
18281           before was a bug. If people worked around this
18282           bug, this will introduce a slight memory leak
18283           in their code. The code should typically look like:
18284
18285             rc_style = gtk_rc_style_new ();
18286             [...]
18287             gtk_widget_modify_style (widget, rc_style);
18288             gtk_rc_style_unref (rc_style);
18289
18290         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
18291           the style if it was already set.
18292
18293         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
18294           style if it was set before.
18295
18296 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
18297
18298         * gtk/testgtk.c (main): Add a check to see if we
18299           are being run from the correct directory and
18300           to quit nicely if we are not.
18301
18302         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
18303           static.
18304
18305 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
18306
18307         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
18308
18309         * gtk/gtkwindow.c:
18310         queue resizes unconditionally (gtk_widget_queue_resize will figure
18311         what to do if the window is not realized).
18312         (gtk_window_move_resize): only recenter the window
18313         for GTK_WIN_POS_CENTER_ALWAYS.
18314         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
18315         the same way as GTK_WIN_POS_CENTER.
18316
18317 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
18318
18319         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
18320         with (!(info->last_flags & GDK_HINT_POS)) instead of
18321         (!info->last_flags & GDK_HINT_POS).
18322
18323         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
18324         new_height unconditionally, because we use these values even if
18325         !default_size_changed && !hints_changed.
18326         comented the (default_size_changed || hints_changed) case with
18327         respect to resize rejects from the window manager.
18328
18329         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
18330         in the zvt condition hack, since this includes the window hints, set
18331         the hints after the handling_resize case.
18332
18333         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
18334         window is initially shown with to the geometry.
18335
18336 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
18337
18338         * gtk/gtkwindow.c (gtk_window_move_resize):
18339         s/size_changed/default_size_changed/g so i know what's
18340         really going on (frying brain on smaller flame now).
18341
18342 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
18343
18344         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
18345         we have size_changed upon handling_resize. this is a gross
18346         workaround for the broken zvt widget and should be removed in
18347         1.3 again (search for FIXME).
18348         Owen provided an accurate comment for this:
18349
18350         /* We could be here for two reasons
18351          *  1) We coincidentally got a resize while handling
18352          *     another resize.
18353          *  2) Our computation of size_changed was completely
18354          *     screwed up, probably because one of our children
18355          *     is broken. It's probably a zvt widget.
18356          *
18357          * For 1), we could just go ahead and ask for the
18358          * new size right now, but doing that for 2)
18359          * might well be fighting the user (and can even
18360          * trigger a loop). Since we really don't want to
18361          * do that, we requeue a resize in hopes that
18362          * by the time it gets handled, the child has seen
18363          * the light and is willing to go along with the
18364          * new size. (this happens for the zvt widget, since
18365          * the size_allocate() above will have stored the
18366          * requisition corresponding to the new size in the
18367          * zvt widget)
18368          *
18369          * This doesn't buy us anything for 1), but it shouldn't
18370          * hurt us too badly, since it is what would have
18371          * happened if we had gotten the configure event before
18372          * the new size had been set.
18373          */
18374
18375 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
18376
18377         * gtk/gtkrc.c: deal properly with the fact that RC
18378           style lists may include rc styles more than once.
18379
18380         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
18381           unused static function.
18382
18383         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
18384           stack of directories of RC files currently being
18385           parsed and implicitely add them to pixmap path.
18386           
18387           This fixes a bug where the directory would get
18388           appended then overwritten by pixmap_path declarations.
18389
18390           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
18391
18392         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
18393           theme's exit function. (Patch from Peter Wainwright,
18394           bug #1454)
18395
18396         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
18397           Add a destroy() handler to take care of removing
18398           group for menu item. (Fixes bug #1197)
18399
18400         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
18401           in warning message.
18402
18403 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
18404
18405         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
18406         roundtrip to figure window's width and height, since we know that
18407         anyways from widget->allocation.
18408
18409 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
18410
18411         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
18412           the hints after we request the new size.
18413
18414 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
18415
18416         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
18417           GTK_WIDGET_REALIZED() assertion - we can compute the
18418           hints before we are realized.
18419
18420         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
18421           hint changing so that we have a value of hints_changed
18422           when we decide whether to constrain the window size.
18423
18424         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
18425
18426         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
18427         change back to G_MAXINT.
18428
18429 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
18430
18431         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
18432         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
18433         contain uncluttered values.
18434         (gtk_window_compute_hints): simply assert that window is realized
18435         and that geometry_info is valid, since we rely on this anyways.
18436         (gtk_window_constrain_size): major cleanups to the code.
18437         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
18438         for the base size, instead of the minimums. use 32767 as max width
18439         and height (like in gtkwindow.c) instead of G_MAXINT.
18440
18441 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
18442
18443         * cleaned up the GtkContainer.need_resize flag handling mess, we
18444         only need to force resize requests when we were prematurely
18445         realized, or our widget tree was modified when we were temporarily
18446         hidden. handling these cases directly upon showing the window (i.e.
18447         while the GdkWindow is still unmapped) avoids the need to wait for
18448         a configure event response and therefore makes the GUI more snappier
18449         and avoids blank windows during the roundtrip.
18450
18451         * gtk/gtkwidget.c:
18452         (gtk_widget_hide): 
18453         (gtk_widget_show): don't queue resizes on toplevels, they know how
18454         to deal with matters.
18455
18456         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
18457         flag directly for not visible resize containers and spare us unecessary
18458         signal emissions.
18459
18460         * gtk/gtkwindow.c:
18461         (gtk_window_realize): if we need to enforce premature size allocation,
18462         queue a container resize so we are correctly resized later on.
18463         (gtk_window_init):
18464         (gtk_window_size_request):
18465         don't freak around with the ->need_resize flag,
18466         gtk_container_queue_resize() will care about that.
18467         (gtk_window_show):
18468         handle initial resizing issues here, we can handle matters better in
18469         this place, especially since we know that our GdkWindow is still
18470         unmapped.
18471         (gtk_window_move_resize):
18472         don't care about ->need_resize at all.
18473         handle size changes properly that occoured while we waited for a
18474         configure event.
18475
18476 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
18477
18478         * gtk/gtkwidget.c (gtk_widget_set_uposition):
18479         * gtk/gtkwindow.[hc] (gtk_window_reposition):
18480         Move the hint setting code from gtk_widget_set_uposition
18481         to here; set the hints so that we respect any previously
18482         set geometry hints.
18483
18484         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
18485         change the window hints here or move the window here,
18486         let that happen in gtk_window_move_resize().
18487
18488 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
18489
18490         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
18491         to already queued resizes (and therefore redraws) on a widget, check
18492         its anchestry as well.
18493
18494         * gtk/gtkcontainer.c:
18495         (gtk_container_queue_resize): clear resize widgets for resize
18496         containers before aborting prematurely. this is especially important
18497         for toplevels which may need imemdiate processing or their resize
18498         handler to be queued.
18499         (gtk_container_dequeue_resize_handler): added new internal function for
18500         gtkwindow.c.
18501
18502         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
18503         configure event, take possible changes in window position into account
18504         as well.
18505         if we request a new window size, queue up a resize handler that will
18506         last until the configure event response arrives.
18507         combined the ->need_resize case (initial show) with the general size
18508         (hints) changed case and added even more comments.
18509         if !auto_shrink, only revert to the old allocation if the new size
18510         is smaller than the current allocation.
18511
18512 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
18513
18514         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
18515                            gtk_window_set_geometry_hints
18516                            gtk_window_set_default_size):
18517         When hints are set, queue a resize so that the hints will
18518         be eventually reset on the toplevel.
18519
18520         * gtk/gtkwindow.c (gtk_window_show): Use
18521         gtk_window_compute_default_size(). Clear the need_resize flag
18522         on the initail map so that we don't unnecessarily trigger the
18523         resize code.
18524
18525         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
18526         into separate functions. Compare the hints we are setting
18527         with what we set last time so that we can accurately
18528         tell when we need to reset the hints.
18529
18530         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
18531         function to figure out the size from requisition
18532         and default_size.
18533
18534         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
18535         from fvwm to constrain a size to the geometry hints.
18536
18537         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
18538         to compare two sets of geometry hints.
18539
18540         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
18541         from gtk_window_set_hints(), just compute the hints,
18542         don't set them.
18543
18544         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
18545         code from gtk_window_move_resize() to separate function,
18546         rationalize a bit.
18547
18548 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
18549
18550         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
18551         structure into a new private structure.
18552
18553         * gtkrc.c: Split GtkRcStyle into public/private.
18554         In the private part, add a list of pointers to the
18555         RcStyle lists this RcStyle participates in.
18556
18557         * gtkrc.c: When a RcStyle is free, remove all
18558         lists referencing it from the 
18559         realized_style_ht hash, and free those lists.
18560         
18561         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
18562         gtk_rc_init(), since that adds the default styles
18563         to the list of parsed RC files again.
18564
18565         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
18566         
18567 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
18568
18569         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
18570         checks that ensure that a widget's allocation is at least 1 in width
18571         and height. (GNOME note: this doesn't affect old panel code anymore,
18572         because GtkSocket will request width and height of at least 1 since
18573         Fri Jul 23).
18574
18575         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
18576         allocated yet (happens if the user realizes the window prematurely),
18577         size request and allocate it.
18578         (gtk_window_size_allocate): guard against guint underflows.
18579
18580 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
18581
18582         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
18583         in gtk_built_sources, so gtk.defs gets built prior to all other
18584         sources.
18585
18586 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18587
18588         * gtk/Makefile.am:
18589         invoke indent on gtkmarshal.*. 
18590         rewrote source generation rules, use COPYING as oldest source tag for
18591         a piggyback rule to generate all sources from (don't touch it ;).
18592         major cleanups, strip spaces on build rules for GNU Make.
18593
18594         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
18595         source and target files from commandline arguments. don't invoke indent.
18596
18597 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
18598
18599         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
18600         notebook after switch to avoid drawing problems.
18601         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
18602         
18603         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
18604         show them instead. 
18605         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
18606
18607 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
18608
18609         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
18610         notebook after switch to avoid drawing problems.
18611         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
18612         
18613         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
18614         show them instead. 
18615         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
18616
18617 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
18618
18619         * gtk/gtkwindow.c:
18620         we use window->need_resize from configure_event now, to indicate that
18621         the gtkwindow should keep its allocation (e.g. because the user resized
18622         the window through window manager handles). resize_count is now reliably
18623         used to figure whether we got the allocation we requested from the
18624         window manager.
18625         configure events get queued as resizes now, the real stuff (size
18626         computation and allocation) now only goes on in gtk_window_move_resize().
18627         GtkWindow's requisition now contains its *real* requisition (like all
18628         other widgets), *not* taking usize into account.
18629         geometry_info->last_{width|height} is now updated from set_hints() only
18630         so it always contains the last hints we set for the window manager.
18631         made some event handlers return TRUE instead of FALSE.
18632         the overall code should be much more straight forward now, and the
18633         significant code portions are accompanied by comments now.
18634         (gtk_window_set_hints):
18635         removed requisition argument and made it
18636         fetch the requisition through gtk_widget_get_child_requisition.
18637         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
18638         does that now.
18639         (gtk_window_show):
18640         ensure that the widget is realized before calling 
18641         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
18642         ensure that we got properly size requested and allocated before
18643         realization.
18644         (gtk_window_configure_event):
18645         ignore plain window moves, or reallocate the widget tree through the
18646         resize queue otherwise.
18647         (gtk_window_move_resize):
18648         mostly rewrote this function to figure window manager hints more
18649         reliably, coalesce window moves and resizes to reduce configure events
18650         and do actuall size allocations.
18651
18652 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18653
18654         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
18655         that have a resize pending, because a redraw is already queued for them.
18656
18657         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
18658         hack to clear resize_widgets.
18659
18660         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
18661         for resize containers prior to size allocation. (this is also a bit
18662         ugly, but avoids side effects for stopped emissions and is thus more
18663         reliable).
18664         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
18665
18666         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
18667         function from gtk_tooltips_expose, as we connect to ::expose_event
18668         *and* ::draw now.
18669
18670 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18671
18672         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
18673         checks.
18674         (gtk_target_list_unref): Likewise.
18675
18676         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
18677
18678 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
18679
18680         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
18681         guard against division by zero. (Fixes bug #1339)
18682
18683 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
18684
18685         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
18686         Prevent the trivial leak of information of allowing
18687         word motion when the entry is not visible.
18688
18689 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
18690
18691         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
18692         modality to error dialog as well as confirmation dialogs.
18693         (Bug #1803, reported by Rosanna Wing Sze Yuen)
18694
18695 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18696
18697         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
18698         tree->view_lines.
18699         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
18700
18701         * gtk/Makefile.am (install-data-local): Solaris apparently
18702         has various troubles with ln -f; use rm first instead.
18703         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
18704
18705 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
18706
18707         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
18708         use `cp' followed by `rm' (the `rm' was already there).
18709
18710 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18711         
18712         * configure.in: Fix autoconf warnings about cross compilation by
18713         trying to provide sane defaults for AC_TRY_RUN.
18714         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
18715         put them into $(srcdir) when generated. Also add a dependency of
18716         gtksignal.h on gtkmarshal.h for -j builds. 
18717         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
18718
18719 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
18720
18721         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
18722         GDK_THREADS_{LEAVE,ENTER} pair.
18723         (From Paul Fisher <pnfisher@redhat.com>)
18724
18725 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
18726
18727         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
18728         width and height are always >0 (owen).
18729
18730 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
18731
18732         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
18733         change that assured that a widget's allocated with and height are
18734         always >1, since this breaks *buggy* panel code. unfortunately this
18735         back-breaks the gimp's color selector.
18736
18737         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
18738         allocation is always >0 in width and height, before sending the
18739         configure event; this is a *gross* hack to get the gimp back to work.
18740         
18741         * marked both cases with TODO-1.3
18742
18743 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
18744
18745         * gtk/gtktext.c: Don't display wrap indicators when
18746         text is not editable and word wrap is on.
18747
18748 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
18749
18750         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
18751         option menus here as they are not derived from menu shell, assure that
18752         the option menu has a menu we can add items to.
18753
18754 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
18755
18756         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
18757         width/height to (gint) before calculations and check against < 0 to
18758         avoid guint wraparounds.
18759
18760 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
18761
18762         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
18763         width and height is never zero. sanity check both dimensions against
18764         32767 and issue a warning if the allocation is greater than that.
18765
18766 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
18767
18768         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
18769         to g_main_pending() as well.
18770
18771 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
18772
18773         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
18774         call to g_main_iteration() - since that will regrab
18775         GTK+ lock to process events.
18776
18777 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
18778
18779         * gtk/gtkwindow.c
18780         - Regularize with the rest of GTK+ by making widget->requisition
18781           not reflect the set_usize()
18782         - Always recompute geometry hints, then check if they
18783           changed before sending them to the X server. The
18784           previous checks for changes would fail in a number
18785           of circumstances. 
18786
18787 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
18788
18789         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
18790
18791 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
18792
18793         * gtk/gtkdnd.c:
18794         - Code cleanups
18795         - Instantaneously update on modifier key presses
18796         - Allow cancellation of the drag with Escape.
18797
18798 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
18799
18800         * gtk/testgtk.c (create_handle_box): Set the policy
18801         to auto_shrink - otherwise the appearance is rather
18802         strange when flipping between horizontal and vertical.
18803
18804 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
18805
18806         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
18807         (gtk_window_set_default_size): don't change a value if it's < 0.
18808         queue a resize.
18809
18810 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
18811
18812         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
18813
18814 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
18815
18816         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
18817         add an extra "/" when concating "/" + filename.
18818         (From Matt Grossman <mattg@oz.net>)
18819
18820 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
18821
18822         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
18823         for fg_gc if we set it for drawing pixmap.
18824
18825 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
18826
18827         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
18828         
18829         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
18830         already set, call old engine's destroy function and
18831         unref the old engine.
18832
18833 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
18834
18835         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
18836
18837 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
18838
18839         * gtk/gtkaccelgroup.h: mark certain functions as internal.
18840
18841 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
18842
18843         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
18844         expand behaviour changed.
18845
18846         * gtk/gtklabel.c (gtk_label_set_pattern):
18847         (gtk_label_set_justify):
18848         (gtk_label_set_line_wrap):
18849         don't bother invoking queue_clear, the reallocation does
18850         that for us, always free_words so the upcoming resize will
18851         relayout the label's contents.
18852
18853 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
18854
18855         * applied argument implementation patches from Elena Devdariani
18856         <elena@cogent.ca>.
18857
18858         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
18859         ::space_style, ::relief
18860         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
18861         * gtk/gtkpreview.c: ::expand
18862         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
18863         * gtk/gtknotebook.c: ::homogeneous
18864         * gtk/gtklabel.c: ::wrap
18865         * gtk/gtklist.c: ::selection_mode
18866         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
18867         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
18868         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
18869         * gtk/gtkclist.c: ::sort_type
18870         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
18871         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
18872
18873 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
18874
18875         * gtk/gtkstyle.c: Removed ill-thought-out part of last
18876         comment.
18877
18878 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
18879
18880         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
18881         counting right when we have to attach a new style
18882         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
18883
18884         * gtk/gtkstyle.c: Documented the refcounting
18885         peculularities of gtk_style_attach.
18886
18887 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
18888
18889         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
18890         window types.
18891
18892         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
18893         of GTK_TOPLEVEL for creating the window.
18894
18895 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
18896
18897         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
18898         the last argument (reported by Per Winkvist).
18899         
18900 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
18901
18902         Fixes for invisible XOR lines (Frank Loemker
18903         <floemker@TechFak.Uni-Bielefeld.DE>)
18904         
18905         * gtk/gtkclist.c (gtk_clist_realize): Always use
18906         a non-zero pixel for GDK_XOR.
18907
18908         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
18909         Use GDK_INVERT instead of GDK_XOR.
18910
18911 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
18912
18913         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
18914         signals if h/voffsets differ from adjustment values.
18915         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
18916
18917 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
18918
18919         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
18920         ::selection-done emissions up to the topmost menu shell.
18921
18922 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
18923
18924         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
18925         the user data on the window before destroying it.
18926
18927         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
18928         unrealize handler to take care of destroying 
18929         notebook->panel properly. 
18930         (Bug #1198 - Morten Welinder <terra@diku.dk>)
18931
18932         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
18933         of g_new and g_realloc to stop memory leak. (Actually,
18934         we could just use g_realloc(), but I'm not 100% sure
18935         that is portable).
18936         (Bug #1196 - Morten Welinder <terra@diku.dk>)
18937
18938 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18939
18940         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
18941
18942         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18943         for fontsets.
18944
18945         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
18946         with bin/button confusion.
18947
18948 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
18949
18950         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
18951         and show how preselection of radio items is done.
18952
18953 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
18954
18955         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
18956         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
18957         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
18958         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
18959         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
18960         * gtk/gtktable.c (gtk_table_attach): 
18961         * gtk/gtklist.c (gtk_list_insert_items): 
18962         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
18963         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
18964         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
18965         * gtk/gtkbin.c (gtk_bin_add): 
18966         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
18967         * gtk/gtkfixed.c (gtk_fixed_put): 
18968         * gtk/gtklayout.c (gtk_layout_put):
18969         general fixups to container_add logic. always realize child if
18970         child->parent is realized, only map the child and queue a resize
18971         if child and child->parent are both visible.
18972
18973 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
18974
18975         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
18976         instead of gtk_container_foreach to walk and unrealize children, so
18977         composite children get also unrealized.
18978         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
18979         (gtk_widget_map): assert that the widget is visible (basic constrain).
18980         (gtk_widget_real_map): assert that the widget is realized (basic
18981         constrain).
18982
18983 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
18984
18985         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
18986
18987 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
18988
18989         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
18990         file for iso-8859-2 locales.
18991
18992         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
18993
18994 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
18995
18996         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
18997          (Pointed out by andy@rz.uni-karlsruhe.de and others).
18998          Remove some suspicious and useless lines. 
18999
19000 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
19001
19002         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
19003         width,height = 0, 0 to mean - here to edge of window,
19004         instead of -1, -1, since the former is all we support.
19005
19006 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
19007
19008         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
19009         when removing from quit_functions list.
19010
19011 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
19012
19013         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
19014
19015 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
19016
19017         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
19018          When redrawing characters on non-visible entry, use appropriate
19019          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
19020
19021 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
19022
19023         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
19024         from drag coordinates.
19025         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
19026         use drag_dest_cell.
19027
19028         * gtk/gtktree (drag_dest_cell)
19029         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
19030         (Bug #1129)
19031
19032 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
19033
19034         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
19035         translate_* fields.
19036         (gtk_item_factory_finalize): invoke translate_notify independant from
19037         translate_data.
19038         (gtk_item_factory_set_translate_func): likewise.
19039         (gtk_item_factory_destroy): only remove ifactory pointer from those
19040         widgets that belong to us (stupid me).
19041
19042 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
19043
19044         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
19045         rc_style list when lookup succeeeds.
19046
19047 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
19048
19049         * gtk/gtkctree.c (resync_selection): 
19050         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
19051         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
19052         bug.
19053
19054 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
19055
19056         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
19057         Add some missing GDK_THREADS_ENTER()/LEAVE around
19058         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
19059
19060 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
19061
19062         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
19063         rather than emit_by_name.
19064
19065         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
19066         on the widget across multiple signal emissions.
19067         (gtk_editable_delete_text): same here.
19068         (gtk_editable_class_init): set widget_class->activate_signal after
19069         editable_signals[ACTIVATE] has been created.
19070
19071 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
19072
19073         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
19074         position here prematurely -- we might not have the
19075         right ->min_position and ->max_position yet.
19076
19077 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19078
19079         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
19080         Add error traps so if the other end of the connection
19081         dies, we survive.
19082
19083         * gtk/gtkselection.c (gtk_selection_notify): Clean
19084         up properly when selection property retrieval fails.
19085         
19086         * gtk/gtkselection.c (gtk_selection_request): Correctly
19087         reject SelectionRequest notifies where the handler
19088         returns no data.
19089
19090 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19091
19092         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
19093         when we've previously highlighted.
19094
19095         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
19096         emit two "drag_leave" signals for Motif drops.
19097
19098         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
19099         back the correct status messages when dropping from
19100         Motif onto a proxy window that is rejecting the
19101         drop.
19102
19103 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
19104
19105         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
19106         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
19107         to compare two argument values. added gtk_arg_to_valueloc() to set a
19108         variable from an arg through its location (pointer).
19109
19110         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
19111         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
19112         as gfloat*, uchars are collected as guchar*, ints are collected as
19113         gint*, etc...
19114
19115 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
19116
19117         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
19118         Include <string.h> instead of <strings.h>.
19119
19120         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
19121         (actually, a lot more duplicate includes occur if
19122          you trace through the sequence of #include's)
19123         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
19124         
19125 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19126
19127         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19128         gtk-a-higuti-990322-[0-3]
19129
19130         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19131         that was causing -DX_LOCALE not to work.
19132
19133         * gtk/gtkrc.c (gtk_rc_init):
19134         X_LOCALE will never have LC_MESSAGES defined
19135
19136 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
19137
19138         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
19139         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
19140
19141         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
19142         left/right as well (gtk-michael-980726-0.patch.gz).
19143
19144         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
19145         for pointer values, use gchar instead of char. fixed uline allocation
19146         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
19147         chunks instead of G_ALLOC_ONLY.
19148         (gtk_label_size_request): always alter requisition as passed and leave
19149         widget->requisition alone.
19150         (gtk_label_set_text): allow NULL strings.
19151         (gtk_label_new): likewise.
19152
19153 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
19154
19155         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
19156
19157 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
19158
19159         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
19160         *and* mapped (i.e. drawable).
19161         (gtk_bin_expose): only send exposes to drawable children.
19162
19163         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
19164         (gtk_box_expose): only send exposes to drawable children.
19165
19166         * gtk/gtkhscale.c (gtk_hscale_draw): 
19167         * gtk/gtkvscale.c (gtk_vscale_draw):
19168         hm, this is an ugly one. we first compute the size of our trough area
19169         here (window relative) and then check intersection with the draw_area
19170         which is parent relative because we're a NO_WINDOW widget, so we need
19171         to offset the trough area by allocation.x and allocation.y before the
19172         check. (this must not be done for the background area though, since
19173         that's already computed parent relative).
19174
19175 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
19176
19177         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
19178         unrealize title buttons.
19179
19180 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
19181
19182         * gtk/gtkclist.c (gtk_clist_column_title_passive)
19183         (gtk_clist_column_title_active): 
19184         only connect/disconnect to GtkWidgetClass::event to block mouse events.
19185
19186         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
19187         zero initialize event, removed superfluous gdk_window_get_pointer call
19188
19189         * gtk/gtklist.c (gtk_list_vertical_timeout)
19190         (gtk_list_horizontal_timeout): removed superfluous
19191         gdk_window_get_pointer call
19192
19193 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19194
19195         * plugging problems reported by "Bruce Mitchener, Jr."
19196         <bruce@puremagic.com> due to a purify session.
19197
19198         * gtk/gtkstyle.c:
19199         (gtk_style_ref): 
19200         (gtk_style_unref): assert ref_count to be > 0.
19201
19202         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
19203         the requisition.
19204         (gtk_clist_set_shift): likewise.
19205
19206         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
19207         adjustments.
19208
19209         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
19210         event before sending it and set send_event to TRUE (which needs to
19211         be done for *all* synthesized events).
19212         (gtk_list_vertical_timeout): likewise.
19213
19214         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
19215         leaks.
19216
19217         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
19218         to TRUE when synthesizing events.
19219
19220 [ *** end of merges from 1.2 *** ]      
19221         
19222 1999-11-21  Tor Lillqvist  <tml@iki.fi>
19223
19224         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
19225         (or copied from gdkconfig.h.win32 on Win32, sigh).
19226
19227         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
19228
19229         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
19230
19231         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
19232
19233         * gdk/gdkconfig.h.win32: New file.
19234
19235         * gdk/win32/makefile.cygwin: Build just a static archive here.
19236
19237         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
19238         for the DLL from the static archive built above.
19239
19240         * gdk/gdk.def: Moved here from the win32 subdirectory.
19241
19242         * gdk/win32/*: Adapt for the changed private struct organisation.
19243
19244         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
19245
19246 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
19247
19248         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
19249         for wheel mice (buttons 4 and 5).
19250
19251 1999-11-18  Tor Lillqvist  <tml@iki.fi>
19252
19253         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
19254         drawables use just the pixel field in the foreground and
19255         background GdkColor of the GdkGC.
19256
19257         gdk_gc_set_{fore,back}ground() are called in the GIMP with
19258         GdkColors containing uninitialized (red,green,blue) fields, and
19259         just the pixel field filled in, and furthermore in the
19260         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
19261         It thus turns out that we really don't need to have the full
19262         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
19263         it later to have just the pixel values.
19264
19265 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
19266
19267         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
19268
19269 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
19270
19271         * docs/gtkfaq.sgml: threads example from Erik Mouw.
19272         New question on GtkLabel background colors.
19273
19274         * docs/gtk_tut.sgml:
19275           - Correct the example code callback
19276             function definitions.
19277           - Update the gtkdial example code, from Frans van Schaik.
19278           - Update setselection.c to current API.
19279
19280         * examples/Makefile examples/*/*.c: Update to code
19281         listed in tutorial.
19282
19283 1999-11-10  Tor Lillqvist  <tml@iki.fi>
19284
19285         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
19286         subrange table (from the "Developing International Software for
19287         WIndows 95 and Windows NT" book) was missing the Hangul syllable
19288         block... Get the loaded font's charset correctly.
19289
19290         (Note that this, and the other *-win32.c files, still really are
19291         the old ones, the win32 subdirectory is not ready for compilation
19292         yet after the reorg.)
19293
19294 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
19295
19296         * gtk/gtkclist.c: Fix off-by-one bug in parameter
19297         check.
19298
19299 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
19300
19301         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
19302         on results of XQueryDeviceState().
19303
19304 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
19305
19306         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
19307         we need to accesss only ->children. We need an accessor
19308         for the children.
19309
19310         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
19311         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
19312         to get rid of gdkx.h include.
19313         
19314         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
19315         and random references to 'None'.
19316
19317         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
19318         Get rid of unused #include <gdk/gdkx.h>
19319
19320         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
19321         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
19322         gdkconfig.h.
19323
19324 1999-11-08  Tor Lillqvist  <tml@iki.fi>
19325
19326         * gdk/win32/gdkdraw.c
19327         * gdk/win32/gdkfont.c
19328         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
19329         following yesterday's changes. (Unrelated to Owen's reorg.)
19330
19331 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
19332
19333         * gdk/x11/gdkinput-gxi.c: Add missing include,
19334           fix GdkWindowPrivate => GdkDrawablePrivate.
19335
19336         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
19337
19338         * gdk/x11/Makefile.am (xinput_sources): Add missing
19339         backslash to fix building with --with-xinput=none
19340
19341 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
19342
19343         Move all X specific code into the x11/ directory.
19344         Aside from shuffling things around, did the following:
19345
19346        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
19347          gdk_arg_context_* - a simple argument parsing system
19348          in the style of popt.
19349
19350        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
19351          gdk/x11/gdkprivate-x11.h:
19352          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
19353          add ->klass and ->klass_data fields. The klass_data
19354          field points to an auxilliary structure that is
19355          windowing system dependent.
19356
19357        * gdk/gdkfont.c: Make most of the measurement functions
19358          simply wrappers around gdk_text_extents().
19359
19360        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
19361          _gdk_font_strlen() function that hides the weird
19362          behavior in gtk+-1.[02] where a string is interpreted
19363          differently for 8-bit and 16-bit fonts.
19364
19365        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
19366          to store common code for synthesizing double/triple
19367          press events.
19368         
19369        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
19370          Make all the function that modify an existing GC
19371          simply wrappers around gdk_gc_set_values().
19372          
19373        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
19374          for throwing out later.
19375
19376        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
19377          GdkImagePrivate and GdkColormapPrivate to have a
19378          windowing system dependent part (GdkFontPrivateX etc.)
19379          that "derives" from the system-independent part.
19380
19381        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
19382          Got rid of the included-source-files for XInput in
19383          favor of automake conditionals. (Which didn't exist
19384          when XInput support was originally added.)
19385
19386        * gdk/gdkrgb.c: Remove the visual id from the debugging
19387          statements since that is X11 specific; print out
19388          type/depth info instead.
19389          
19390
19391 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
19392
19393         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
19394         loading duplicates of hashed fonts.
19395
19396         * gdk/gdk.c (gdk_keysym_convert_case): rename
19397         gdk_XConvertCase to gdk_keysym_convert_case, allow
19398         results to be NULL in the GTK+ style.
19399
19400         * gdk/gdkcompat.h: Started compatibility header
19401         for renames.
19402
19403 1999-11-07  Tor Lillqvist  <tml@iki.fi>
19404
19405         * gdk/win32/gdkprivate.h: New font private structures, related to
19406         fontsets.
19407
19408         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
19409         gdk_font_list_free(). On X11, will just be wrappers to
19410         XListFonts() and XFreeFontNames(). On Win32, the code previously
19411         in gtkfontsel.c is now here.
19412
19413         New function gdk_font_xlfd_create(). On X11 will get the FONT
19414         property of the font (for GDK_FONT_FONTs), or call
19415         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
19416         builds a XLFD style name from the font information in the LOGFONT
19417         struct(s).
19418
19419         New function gdk_font_xlfd_free(), which correspondingly frees the
19420         string returned by gdk_font_xlfd_create().
19421
19422         Implement fontsets on Win32. Add a function that iterates over a
19423         wide char string and calls a callback function for each substring
19424         of wide chars from the same Unicode subrange (and thus probably
19425         available in the same real font).
19426
19427         Improve the XLFD emulation a bit.
19428
19429         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
19430
19431         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
19432         Beta3, WM_IME_CHAR messages don't seem to contain the composed
19433         multi-byte char as with the Active IMM on Win9x. Oh well, handle
19434         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
19435         ImmGetCompositionStringW() to get the composed Unicode chars.
19436
19437         * gdk/win32/gdkgc.c
19438         * gdk/win32/gdkdraw.c: Changes needed because of the font private
19439         struct changes.
19440
19441         * gdk/win32/gdk.def: Add the new functions.
19442
19443 1999-11-04  Tor Lillqvist  <tml@iki.fi>
19444
19445         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
19446         get the Platform SDK to get <dimm.h>.
19447
19448         * gdk/win32/gdkevents.c: More event handling fixes and
19449         simplification. Never generate motion events with is_hint true. We
19450         used to do that on bogus grounds earlier. Windows sends
19451         WM_MOUSEMOVE messages on button events even if the mouse hasn't
19452         moved, ignore these.
19453
19454         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
19455
19456         * gdk/win32/gdkglobals.c
19457         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
19458         the TrackMouseEvent function, and use it.
19459
19460         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
19461         char before calling WideCharToMultiByte in order to get a string
19462         for the window title.
19463
19464         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
19465
19466         * gdk/win32/gdk.def: Remove obsolete functions.
19467
19468         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
19469         /nodefaultlib and /defaultlib switches.
19470
19471         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
19472
19473 1999-10-31  Tor Lillqvist  <tml@iki.fi>
19474
19475         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
19476         EuroSign).
19477
19478         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
19479         same type as GdkWChar, especially on Win32.
19480
19481         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
19482
19483         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
19484         before passing to Windows GDI for drawing etc. Convert to the
19485         system default codepage before passing to Windows as window
19486         titles.
19487
19488         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
19489         support changing input locale on the fly.
19490
19491         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
19492         on-the-fly changes. Convert incoming characters from the current
19493         codepage to Unicode (and then to a UTF-8 multi-byte string) based
19494         on the current input language. Use keysym<->Unicode mapping tables
19495         and functions borrowed from xterm sources.
19496
19497         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
19498         editions of Win9x, use the ActiveX-based Active IMM (Input Method
19499         Manager) if available. IMEs and the Active IMM are available under
19500         the disguise of Chinese, Korean and Japanese support for IE and
19501         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
19502         support is present in all editions (as long as you install it).
19503
19504         Call DispatchMessage from gdk_events_queue() (and thus
19505         gdk_WindowProc()), instead of duplicating the code in
19506         gdk_WindowProc().
19507
19508         Reworked the grab handling and propagation code, factored out
19509         duplicated code snippets into separate functions. Other cleanups,
19510         too.
19511
19512         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
19513         the <dimm.h> header describing the Active IMM.
19514
19515         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
19516         just do the same as for "single" fonts.
19517
19518         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
19519         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
19520         the new keysyms from gdkkeysyms.h.
19521
19522         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
19523         fontset, so that gtkentry uses wide characters.
19524
19525         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
19526         GTk+'s system directory "gtk+", not "gtk".
19527
19528 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
19529
19530         * docs/gtkfaq.sgml: FAQ update
19531
19532 1999-10-21  Tor Lillqvist  <tml@iki.fi>
19533
19534         * gdk/win32/gdkprivate.h: Add more font private data.
19535
19536         * gdk/win32/gdkfont.c
19537         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
19538         fonts and strings. Now works much better. You still have to
19539         have a correct font selected, though. No fontset emulation yet.
19540
19541 1999-10-19  Tor Lillqvist  <tml@iki.fi>
19542
19543         * gtk/maketypes.awk: Use G_OS_WIN32.
19544
19545         * gtk/gtk.def: Add some missing entry points. Also some non-public
19546         ones, but PyGTK porter claims to need them.
19547
19548         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
19549         built-in type generation.
19550
19551 1999-10-14  Tor Lillqvist  <tml@iki.fi>
19552
19553         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
19554         GDK_FONT_FONT fonts (which is all we have for now, we don't
19555         emulate fontsets). The X11 version uses plain XDrawString in that
19556         case, too. The string passed to gdk_draw_text_wc seems to be in
19557         fact (at least, when used by gtkentry and gtktext) either in a
19558         single-byte charset, or a DBCS. Not Unicode.
19559
19560         This fixes the problem in gtkfontsel, where even if you had
19561         selected a font with a non-Latin1 charset (windows-greek, for
19562         instance), the preview still used Latin-1 glyphs.
19563
19564         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
19565         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
19566         (gdk_font_load): Recognize the demibold etc weights, even if we
19567         don't have the corresponding constants in the headers.
19568         (gdk_font_hash_insert): Use same hash mechanism as in the X11
19569         version. Should save font resources a bit, when we don't have
19570         multiple HFONTs for the same font.
19571
19572         * gdk/win32/gdkprivate.h: Add the names field as in the X11
19573         version.
19574
19575 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
19576
19577         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
19578         X values
19579
19580 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
19581
19582         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
19583         layout support (as mentioned on
19584         http://www.jcinteractive.com/gnome-ui/software/widgets/)
19585
19586 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
19587
19588         * gtk/fnmatch.c
19589         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
19590
19591 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
19592
19593         * configure.in (ALL_LINGUAS): Added Galician (gl)
19594
19595 1999-10-05  Tor Lillqvist  <tml@iki.fi>
19596
19597         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
19598
19599         * gdk/win32/gdkcompat.c: New file, actually provide an
19600         implementation for the deprecated functions. (Just temporarily.)
19601
19602         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
19603
19604         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
19605
19606         * gdk/win32/gdk.def gtk/gtk.def: Updates.
19607
19608 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
19609
19610         * configure.in: Added "uk" to ALL_LINGUAS.
19611         
19612 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
19613
19614         * configure.in: correct checking for BeOS check
19615
19616         * gdk/gdktypes.h
19617         * gtk/fnmatch.c
19618         * gtk/gtkfilesel.c
19619         * gtk/gtkitemfactory.c
19620         * gtk/gtkmain.[ch]
19621         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
19622
19623 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19624
19625         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
19626         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
19627         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
19628         by Bulgarian). 
19629
19630 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
19631
19632         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
19633         Fix a reference to window_private->destroyed.   
19634
19635         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
19636         (ugly) setting of an internal GdkWindow member to use
19637         a _slightly_ cleaner macro.
19638
19639         * gdk/gdkprivate.h: Split GdkWindowPrivate into
19640         GdkDrawablePrivate and GdkWindowPrivate.
19641         Add extra macros for accessing GDK_DRAWABLE_ components.
19642
19643         * *.[ch]: Massive adjustments for the above, use the
19644         new macros in a lot of places.
19645
19646 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
19647
19648         * gdk/gdktypes.h: Make GdkDrawable the base type,
19649         not GdkWindow.
19650
19651 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
19652
19653         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
19654
19655 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
19656
19657         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
19658
19659 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
19660
19661         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
19662         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
19663
19664         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
19665
19666         * docs/gtk-config.1: Now autogenerated.
19667         * docs/Changes-1.4.txt: started
19668         
19669 1999-10-03  Tor Lillqvist  <tml@iki.fi>
19670
19671         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
19672         to #ifdef also here.
19673
19674         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
19675         Owen did to the X11 backend.
19676
19677         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
19678         ScrollWindowEx when blitting inside a window, it can't be correct
19679         in the general case.
19680
19681         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
19682         WM_GETMINMAXINFO is easier.
19683
19684         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
19685         depth equal to the bitspixel value, not the visual's depth.
19686
19687         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
19688         to 24 even if the bitspixel value is 32.
19689
19690         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
19691         need to check for depth==32 when bpp==32, depth will always be 24.
19692
19693 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
19694
19695         * docs/Changes-1.4.txt: Started
19696         
19697         * gtk/Makefile.am (gdk_headers): Include all the new headers.
19698
19699         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
19700         
19701         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
19702         into C file.
19703         
19704         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
19705         header to gdkinputprivate.h.
19706
19707         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
19708         unused since before 1.2.
19709
19710 1999-09-30  Tor Lillqvist  <tml@iki.fi>
19711
19712         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
19713         expand possible hex escapes in the font family (put there by
19714         logfont_to_xlfd if the font name isn't a legal XLFD font family,
19715         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
19716         On Win32, add hex escapes here, too.
19717
19718 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
19719
19720         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
19721         to #ifdef GDK_WINDOWING_X11.
19722
19723 [ Merges from gtk-1-2 ]
19724
19725 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
19726
19727         * configure.in: fixed "GNU Make" check to pass with new make version
19728         3.77.95.
19729
19730 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
19731
19732         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
19733         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
19734         AM_PATH_GTK() macros don't get confused by the -pre1.
19735
19736 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19737
19738         * configure.in (REBUILD): Change check for perl5
19739           to check explicitely for v >= 5.002. (5.001
19740           does not work with our scripts.)
19741
19742 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
19743
19744         * configure.in: evaluate $PERL for the perl version check. added
19745         --disable-rebuilds to give the user an option to completely disable
19746         any source autogeneration rules.
19747
19748 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
19749
19750         * configure.in: evaluate $ac_make when checking for GNU Make.
19751
19752 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19753
19754         * docs/Makefile.am: added generation.txt.
19755
19756         * Makefile.am: require automake 1.4, build README from README.in and
19757         INSTALL from INSTALL.in in dist-hook.
19758         
19759         * README.in:
19760         * INSTALL.in: new files to autogenerate README and INSTALL from.
19761
19762         * configure.in: figure whether we have GNU Make
19763
19764         * docs/generation.txt: minor additions/corrections.
19765
19766 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19767
19768         * docs/gtkfaq.sgml: FAQ Update
19769
19770 July 30, 1999 Elliot Lee <sopwith@redhat.com>
19771         
19772         * configure.in: Fix autoconf warnings about cross compilation by
19773         trying to provide sane defaults for AC_TRY_RUN.
19774
19775 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
19776
19777         * ltconfig
19778         * ltmain.sh: upgrade to libtool 1.3.3
19779
19780 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
19781
19782         * INSTALL: Indicate that the --with-glib= configure
19783         time flag is unsupported.
19784
19785 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
19786
19787         * docs/generation.txt: Added a file that gives
19788         documenation about the autogeneration process for
19789         various autogenerated files.
19790         
19791 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
19792
19793         * configure.in (LIBS): Look for libgmodule in the
19794         right location.
19795
19796 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
19797
19798         * docs/gtk_tut.sgml: Removed references to
19799         code examples in my directory on gtk.org as
19800         they should all be in the tutorial now.
19801
19802         * docs/gtk_tut.sgml: Added sources for dial-test
19803         and scribble-xinput programs that were previously
19804         missing.
19805
19806 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
19807
19808         * TODO: Added entry about menu keyboard navigation, removed
19809         some finished items.
19810
19811 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
19812
19813         * acinclude.m4: Standardize on func_dgettext
19814         not func_gettext, so that the checks for dgettext
19815         actually are paid attention to.
19816
19817 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
19818
19819         * configure.in (LIBS): Add $INTLLIBS into $LIBS
19820         directly, rather than repeating the checks for
19821         gettext.
19822
19823         * INSTALL: Added information about gettext and
19824         NLS support.
19825
19826         * acinclude.m4 (LIBM): Check for dgettext, not
19827         just gettext. This should hopefully fix things wrt
19828         systems with old versions of GNU gettext installed.
19829
19830 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
19831
19832         * configure.in (LIBS): Look for libgmodule in the
19833         right location.
19834
19835 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19836
19837         * autogen.sh: add --enable-maintainer-mode
19838
19839         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
19840
19841 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
19842
19843         * docs/gtk-config.1.in:
19844           docs/Makefile.am:
19845           configure.in: gtk-config is now generated.
19846
19847         * docs/gtk-config.1: Removed, now generated.
19848
19849 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
19850
19851         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
19852         handle CreateNotify itself, still put out a debuging message for
19853         --gdk-debug=events. made the ReparentNotify debugging message more
19854         verbose.
19855         wrap xcoords translation for ConfigureEvents into an error trap,
19856         a destroy event may already be pending, and in that case, the
19857         actuall coordinate values are not at all critical.
19858
19859 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
19860
19861         * gdk/gdkcc.c: Stop leaking the color_hash all over
19862         the place. Simplify and improve the logic.
19863
19864 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
19865
19866         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
19867         for prototypes and function implementations consistent (reported
19868         by Tomas Ogren).
19869
19870 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
19871
19872         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
19873         send_event set in debugging output.
19874         (gdk_compress_exposures): default initialize the event so we don't
19875         operate on bogus values (namely send_event).
19876
19877 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19878
19879         * gdk/gdkwindow.c: When we receive an unexpected
19880         destroy notify on one of our windows, don't just
19881         warn about it, also mark our windows as destroyed.
19882
19883 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
19884
19885         * gdk/gdkfont.c (gdk_font_hash_insert): Add
19886           name => font and name => fontset hashes. The 
19887           name => fontset hash is a _big_ win since we
19888           weren't previously caching fontsets at all and loading
19889           fontsets is expensive. The name => font hash
19890           is less of a win, but it does save us from doing
19891           repeated XQueryFont calls on the same font.
19892
19893         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
19894           list so we can remove font/fontset from hash.
19895
19896 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19897
19898         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
19899           and slightly confusing test. [ XInternAtom (,,TRUE)
19900           will never return None ].
19901
19902 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
19903
19904         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
19905           gdk/gdkwindow.c (gdk_window_set_hints):
19906
19907         Don't omit setting the properties if flags == 0 -
19908         there may be an existing set of properties there
19909         already. (Very old bug. Would it be better to
19910         delete the property instead?)
19911
19912         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
19913           spelling error in comment.
19914
19915 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
19916
19917         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
19918           to avoid stomping over gdk_error_warnings.
19919
19920         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
19921           as (bits_per_pixel + 7) / 8. This gives the same
19922           result as before for multiples of 8, but actually
19923           a "reasonable" value for 1bit or 4bit displays.
19924
19925 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19926
19927         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
19928         GNU Make.
19929
19930 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19931
19932         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
19933         discarding configure events.
19934
19935 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
19936
19937         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
19938         refcount is greater than zero.
19939
19940         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
19941
19942         * gdk/gdkfont.c (gdk_font_unref): Likewise.
19943
19944         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
19945
19946         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
19947
19948 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
19949
19950         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
19951         that format 32 => sizeof(item) == 4. It really is
19952         sizeof(long).
19953
19954 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
19955
19956         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
19957         core dump at all on X IO errors, only core dump
19958         if --enable-debug for X errors.
19959
19960 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
19961
19962         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
19963         unknown window:" message. disabled ConfigureNotify discarding code,
19964         because it led to events being processed out of order.
19965
19966 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
19967
19968         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
19969
19970         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
19971         we export this function, supress error warnings and don't reset the
19972         error code in the first half of this function.
19973
19974         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
19975         code (instead of just -1) so gdk_error_trap_pop() reveals something
19976         actually informative about the error that happened.
19977
19978         * gdk/*.c:
19979         don't rely on gdk_error_code being -1 if an error occoured, but just
19980         gdk_error_code != 0.
19981
19982 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
19983
19984         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
19985         pointer *before* invoking the filter function, so we at least don't
19986         crash if a filter is removed that is currently executed. window filters
19987         *really* need to be made truely reentrant at some point.
19988
19989 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
19990
19991         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
19992         PropertyNotify debug messages.
19993
19994 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
19995         
19996         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
19997         
19998         * gdk/gdkim.c: Fix cut-and-paste errors for 
19999         x/y and PreeditAttributes/StatusAttributes.
20000
20001 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20002
20003         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
20004         G_MAXINT to 2^16 to alleviate overflow problems in
20005         various window managers.
20006
20007 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
20008
20009         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
20010         for fontsets.
20011
20012 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
20013
20014         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
20015         Initialize size_hints.x and size_hints.y because kwm
20016         brokenly pays attention to them.
20017         (Bug #1181 -  Lars Heete <hel@admin.de>)
20018
20019 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
20020
20021         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
20022         return value of gdk_list_visuals(). 
20023         (Bug #1193 - Morten Welinder <terra@diku.dk>)
20024
20025 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
20026
20027         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
20028         XSetIMValues to (void *) when comparing to NULL, to workaround
20029         the problem of some compilers barfing since older X headers don't
20030         have the prototype for it.
20031
20032 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
20033
20034         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
20035         for pseudocolor where colormap->colors was double
20036         allocated.
20037
20038         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
20039         color value in the hash table with the pixel filled
20040         in so when we do later hash table lookups, the color
20041         value is correct.
20042         
20043 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
20044
20045         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
20046         making the call
20047
20048 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
20049
20050         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
20051         pointed out by Morten Welinder <terra@diku.dk>.
20052
20053 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20054
20055         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20056           default filter from the list
20057
20058 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20059
20060         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20061           default filter from the list
20062
20063 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
20064
20065         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
20066
20067         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
20068         g_strdup_printf instead of calcing the length separately
20069
20070 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
20071
20072         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
20073         that we don't do in many other places. (Fixing duplicate 
20074         #include of config.h)
20075
20076         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
20077         Otherwise, #ifndef XINPUT_NONE check in the latter
20078         doesn't work. (Bug #546)
20079
20080 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
20081
20082         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
20083         "None" case insensitive.
20084
20085 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
20086
20087         * gdk/gdkselection.c: 
20088         Add error traps so if the other end of the connection
20089         dies, we survive.
20090
20091 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20092
20093         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
20094         dest_xid field into two fields - one for the window
20095         to send in messages, one to indicate the last looked
20096         up window for caching purposes. This is needed, so
20097         that Leave messages get the correct window.
20098
20099 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
20100
20101         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
20102         Fix warning created by people mucking around
20103         with the gsource API.
20104
20105         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
20106         Change mapping between GIOCondition and GdkInputCondition
20107         to match the way the Linux kernel does it. This should
20108         fix problems where closed pipes were no longer signalling
20109         GDK_INPUT_READ on systems with a native poll().
20110
20111 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
20112
20113         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
20114         explicitly for the string "None" - it is in the XPM
20115         spec and some servers treat unknown colors in odd ways
20116         (like asking the user!)
20117
20118 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
20119
20120         * gdk/gdkevents.c: made "->" into a "." of previous change so
20121         it compiles
20122
20123 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
20124
20125         * gdk/gdkevents.c (gdk_compress_exposures): Set the
20126         window field of the event structure before calling
20127         user filters.
20128
20129 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
20130
20131         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
20132         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
20133
20134 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
20135
20136         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
20137         intermediate text property - prevents major memory
20138         leak when gdk_use_mb.
20139         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
20140
20141 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
20142
20143         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
20144         gtk-a-higuti-990322-[0-3]
20145
20146         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
20147         sizeof(wchar_t) != sizeof (GdkWChar)
20148
20149         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
20150         that was causing -DX_LOCALE not to work.
20151
20152         * gtk/gtkrc.c (gtk_rc_init):
20153         X_LOCALE will never have LC_MESSAGES defined
20154
20155         * gdk/gdk.c (gdk_init_check):
20156         Remove --xim-preedit and --xim-status from argv properly.
20157
20158         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
20159         that the client window is present on the X server
20160         before we pass it to the input method.
20161
20162 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
20163
20164         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
20165         if --display is specified on the command line, than
20166         the drag window will not be created on that display.
20167         
20168 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
20169
20170         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
20171         lookups with only_if_exists == TRUE were inserting
20172         bogus values into the atom cache.
20173
20174 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
20175
20176         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
20177         then reset it to NULL.
20178
20179         * gdk/gdkcolor.c:
20180         (gdk_colors_free): 
20181         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
20182         key for g_hash_table_remove() in both functions, this prevents us
20183         from accessing possibly uninitialized portions of a GdkColor structure
20184         where we are only interested in its pixel value.
20185
20186 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20187
20188         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20189         font hash table, if we have a GdkFontPrivate entry for this font
20190         already, simply increment its reference count, provided by Olaf Dietsche
20191         <olaf.dietsche+list.gtk@netcologne.de>.
20192
20193 1999-09-21  Tor Lillqvist  <tml@iki.fi>
20194
20195         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
20196         just to be sure.
20197
20198         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
20199         unused variables, leftovers from the X11 version.
20200
20201         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
20202
20203         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
20204         downcase fields on X11.
20205
20206 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
20207         
20208         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
20209         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
20210
20211 1999-09-17  Tor Lillqvist  <tml@iki.fi>
20212
20213         * gdk/win32/gdk.def: Add gdk_threads_mutex.
20214
20215         * gtk/makefile.msc: Correct path to libintl.
20216
20217         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
20218         use of gint vs. int, and gint vs. gboolean in headers and
20219         definitions. Use GtkType for the *_get_type functions. Note that
20220         these changes preserve binary compatibility.
20221
20222         * gdk/gdk.c
20223         * gdk/win32/gdk.c
20224         * gdk/gdk.h: Fix inconsistencies: gint vs int.
20225
20226         * gtk/gtkmain.c
20227         * gtk/gtkclist.c
20228         * gtk/gtkmenufactory.c
20229         * gtk/gtknotebook.c
20230         * gtk/gtkwidget.c: Fix inconsistencies, also gint
20231         vs. gboolean.
20232
20233         * gtk/gtkcolorsel.[ch]
20234         * gtk/gtkcombo.[ch]
20235         * gtk/gtkdrawingarea.[ch]
20236         * gtk/gtkgamma.[ch]
20237         * gtk/gtkhandlebox.[ch]
20238         * gtk/gtkhpaned.[ch]
20239         * gtk/gtkhruler.[ch]
20240         * gtk/gtkplug.[ch]
20241         * gtk/gtkpreview.[ch]
20242         * gtk/gtkruler.[ch]
20243         * gtk/gtksocket.[ch]
20244         * gtk/gtkstatusbar.[ch]
20245         * gtk/gtktoolbar.[ch]
20246         * gtk/gtkvbbox.[ch]
20247         * gtk/gtkvpaned.[ch]
20248         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
20249         functions.
20250
20251         * gtk/gtkgamma.h: Fix bug, missing () in call of
20252         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
20253
20254 1999-09-14  Tor Lillqvist  <tml@iki.fi>
20255
20256         * gdk/gdkcolor.c (gdk_colormap_new)
20257         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
20258         colormap->colors was allocated twice.
20259
20260         * gdk/win32/gdk.c: Remove some unused stuff.
20261
20262         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
20263         colormap.
20264
20265         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
20266         * gtk/gtklabel.h (gtk_label_get_type)
20267         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
20268         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
20269         in a couple of places, not guint.
20270
20271 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
20272
20273         * configure.in,po/et.po: added Estonian language file
20274
20275 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
20276
20277         * configure.in,po/da.po: added Danish file
20278
20279 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
20280
20281         * docs/gtkfaq.sgml: Minor FAQ Update
20282
20283 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
20284
20285         * docs/gtkfaq.sgml: FAQ update
20286
20287 1999-08-27  Tor Lillqvist  <tml@iki.fi>
20288
20289         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
20290         way to get window contents continually refreshed while resizing. I
20291         didn't like the effects myself, so it's not on by default.
20292
20293         * gdk/win32/gdkprivate.h: New flag variable
20294         gdk_event_func_from_window_proc, FALSE by default.
20295
20296         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
20297         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
20298         are passed --gdk-event-func-from-window-proc.
20299
20300         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
20301         and we have am event_func, call it instead of enqueing the event.
20302
20303 1999-08-23  Tor Lillqvist  <tml@iki.fi>
20304
20305         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
20306         Kelley: Set expose_count in GdkEventExposes correctly.
20307
20308         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
20309         MULTIPLE_WINDOW_CLASSES).
20310
20311         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
20312         for bug in NT, apparently NT *does* draw the end pixel, too, in
20313         LineTo with a one-pixel pen, so we don't have to do it ourselves.
20314
20315 1999-08-21  Tor Lillqvist  <tml@iki.fi>
20316
20317         Improvements by Hans Breuer: 
20318
20319         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
20320
20321         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
20322         CS_?REDRAW flags as they cause lots of (late) redraws when "show
20323         window contents while dragging" is turned on. Allocate at least
20324         one unique class for every GdkWindowType. If support for single
20325         window-specific icons is ever needed (eg. Dialog specific), every
20326         such window should get its own class.
20327
20328 1999-08-19  Tor Lillqvist  <tml@iki.fi>
20329
20330         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
20331         error that caused crashes.
20332
20333 1999-08-17  Tor Lillqvist  <tml@iki.fi>
20334
20335         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
20336         window, use ScrollWindowEx, and call UpdateWindow. This prevents
20337         bugs when for instance part of the window was outside the
20338         display. Thanks to Philippe Colantoni for finding and fixing this.
20339
20340 1999-08-16  Tor Lillqvist  <tml@iki.fi>
20341
20342         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
20343         endpoint calculations which were totally wrong. (A little RTFMing
20344         helps a lot ;-)
20345
20346         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
20347         from a separate directory, not from gettext, because of licensing
20348         issues (we want to use the LGPL version).
20349
20350         * README.win32: Mention the intl from glibc vs from gettext issue.
20351
20352 1999-08-13  Tor Lillqvist  <tml@iki.fi>
20353
20354         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
20355         in the key event handling: Now AltGr chars work again. Also,
20356         now Alt-digits are passed up as well as Control-digits.
20357         Pass keypad plus and minus as normal plus and minus.
20358
20359 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
20360
20361         * docs/gtkfaq.sgml: FAQ Update
20362
20363 1999-07-25  Tor Lillqvist  <tml@iki.fi>
20364
20365         * README.win32
20366         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
20367         the Wintab SDK.
20368
20369         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
20370         OK, but getting closer. Guard against bogus tilt data from Wacom
20371         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
20372         enable easier building without Wintab.
20373
20374         * gdk/win32/gdkinput.h
20375         * gdk/win32/gdkevents.c 
20376         * gdk/win32/gdkwindow.c: Minor changes related related to above.
20377         
20378         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
20379         code. As we have just one visual on Win32, no sense to have it in a
20380         table, and no need for the hash table.
20381
20382         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
20383         better on white background.
20384
20385 1999-07-21  Tor Lillqvist  <tml@iki.fi>
20386
20387         * README.win32: Update gcc build instructions. Mention gettext is
20388         GPL.
20389
20390         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
20391         supported cursor size with GetSystemMetrics.
20392
20393         * gdk/win32/gdkfont.c
20394         * gtk/gtkfontsel.c: Guard against some font weight and charset
20395         symbols being undefined (in mingw32 headers).
20396
20397         * gdk/win32/makefile.cygwin
20398         * gtk/makefile.cygwin
20399         * gtk/gtkthemes.c: No longer need to have differently named
20400         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
20401
20402 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
20403
20404         * docs/gtkfaq.sgml: Long awaited FAQ update.
20405
20406 1999-07-15  Tor Lillqvist  <tml@iki.fi>
20407
20408         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
20409         it. Obscure bit manipulation needed.
20410
20411         * gdk/win32/gdkevents.c: Logging.
20412         
20413         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
20414         style (file name include compiler name) for theme engines.
20415
20416 1999-07-13  Tor Lillqvist  <tml@iki.fi>
20417
20418         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
20419
20420         * gdk/win32/gdkevents.c: Fix long-standing bug in key
20421         events. The key.string wasn't zero-terminated, still we strdup'ed
20422         it in gdk_event_copy(). Synthesize crossing events for button
20423         events before possible propagation.
20424
20425         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
20426
20427         * gdk/win32/makefile.cygwin
20428         * gtk/makefile.cygwin: Use new DLL naming style for the
20429         GCC-compiled ones.
20430
20431         * gdk/win32/makefile.msc
20432         * gtk/makefile.msc: Cosmetics mostly.
20433
20434         * gtk/gtk.def: Add missing entry points.
20435
20436         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
20437
20438 1999-07-09  Tor Lillqvist  <tml@iki.fi>
20439
20440         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
20441         or height is zero. Don't print a warning if Pie or Arc fails, they
20442         always fail (?) for very narrow ellipses.
20443
20444         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
20445         the part or the destination window corresponding to source area
20446         outside of the source drawable's boundary.
20447
20448         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
20449         anything if less than two points.
20450
20451         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
20452         return NULL. Gtk cut-and-paste inside a single program works
20453         better this way. (It always gets the clipboard contents from
20454         Windows, not from its own copy, which is cleared anyway. I can't
20455         say I fully understand what happens... Emulating the X selection
20456         and property stuff is a bit of a mess.)
20457
20458         * gdk/win32/gdkevents.c
20459         * gdk/win32/gdkproperty.c: A bit more verbose logging.
20460
20461         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
20462         that never got deleted). Revamp gdk_region_shrink.
20463
20464         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
20465         after use.
20466
20467         * gtk/gtk.def: Add some missing entry points.
20468
20469         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
20470         component.
20471
20472 1999-07-04  Tor Lillqvist  <tml@iki.fi>
20473
20474         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
20475         Control-digits specially.
20476
20477 1999-07-03  Tor Lillqvist  <tml@iki.fi>
20478
20479         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
20480
20481 1999-06-28  Tor Lillqvist  <tml@iki.fi>
20482
20483         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
20484         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
20485         finding this.)
20486
20487 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
20488
20489         * gtk+.spec.in: Corrected some typos in files section.
20490         
20491 1999-06-15  Tor Lillqvist  <tml@iki.fi>
20492
20493         * README.win32: Mention using GNU gettext.
20494         * config.h.win32: Enable NLS stuff.
20495         * gtk/makefile.msc: Use GNU gettext.
20496         * gdk/win32/gdkdnd.c: Minor header reorg.
20497         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
20498         cosmetics.
20499         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
20500         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
20501
20502 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
20503
20504         * acinclude.m4
20505         * config.guess
20506         * config.status
20507         * ltconfig
20508         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
20509
20510 1999-05-30  Tor Lillqvist  <tml@iki.fi>
20511
20512         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
20513         SafeAdjustWindowRectEx. Don't override all calls to
20514         AdjustWindowRectEx by it, but use it only in two places: When
20515         creating a new top-level window and when moving a top-level
20516         window.
20517
20518         Use screen coordinate rectangle, not client rectangle, in
20519         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
20520         when we try to place a window so that the decoration (mainly,
20521         title bar) isn't visible.
20522
20523         These changes fix the bug that showed up for instance as the
20524         GIMP's saved top-level windows moving right and down (by an amount
20525         equal to the window decoration) for each session. This bug showed
20526         up also in testgtk's "Saved Position".
20527
20528         gdk_window_resize also redone a bit.
20529
20530 1999-05-25  Tor Lillqvist  <tml@iki.fi>
20531
20532         * gtk/testgtkrc: Add (commented out) Windows-style theme
20533         include line.
20534
20535         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
20536
20537 1999-05-18  Tor Lillqvist  <tml@iki.fi>
20538
20539         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
20540         gdkx.h to a gdk subdirectory, so that applications can include
20541         these with <gdk/*.h> without trouble.
20542
20543         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
20544         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
20545         have their bitmap destroyed.
20546
20547         * gdk/win32/gdk.def: Add gdk_root_parent.
20548
20549 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
20550
20551         * configure.in
20552           gtk-config.in
20553           ltconfig
20554           ltmain.sh     
20555           gtk/Makefile.am: changes to compile nicely (with xlib) 
20556           on BeOS
20557
20558 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
20559
20560         * acinclude.m4
20561         * config.guess
20562         * config.sub
20563         * ltconfig
20564         * ltmain.sh: upgrade to libtool 1.3
20565
20566 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
20567
20568         * gtk/gtkclist.c:
20569         * gtk/gtkctree.c: merges from gtk-1-2
20570
20571 1999-04-25  Tor Lillqvist  <tml@iki.fi>
20572
20573         Support added for building using a GNU toolchain on Win32,
20574         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
20575
20576         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
20577         * config.h.win32: Changes for gcc.
20578         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
20579         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
20580         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
20581         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
20582         Protect shl stuff unavaiilable with mingw32 headers.
20583         * gdk/win32/gdkevents.c: Fix typo.
20584         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
20585         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
20586         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
20587         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
20588         the mingw32 headers.
20589         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
20590         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
20591         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
20592         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
20593         Test for NATIVE_WIN32, not _MSC_VER.
20594         * gtk/gtkmain.c: No use warning about developer version on Win32,
20595         there aren't any non-developer versions anyhow.
20596         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
20597         * gtk/makefile.msc: Use pthread from another directory. Minor other
20598         changes. 
20599
20600 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20601
20602         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20603           default filter from the list
20604
20605 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
20606
20607         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
20608          when gtk_widget_grab_default() is called for a widget that
20609          is not within a GtkWindow.
20610
20611 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
20612
20613         * docs/gtk_tut.sgml, examples/clist.c: use a
20614           scrolled window in the clist example. Minor
20615           tutorial fixes.
20616
20617 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
20618
20619         * docs/gtk_tut.sgml: Style check from David King
20620           <dking@youvegotmail.net>
20621
20622 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
20623
20624         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
20625         compile with unknown value of GDK_WINDOWING
20626
20627 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
20628
20629         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
20630         after the rule is fired.
20631         (install-exec-local): Install gdkconfig.h only if the contents are
20632         different from the currently installed gdkconfig.h.
20633
20634 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
20635
20636         * gdk/Makefile.am (configexecincludedir): Rename from 
20637         configincludedir so that gdkconfig.h will be installed 
20638         as part of `make install-exec'. 
20639
20640 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
20641
20642         * acinclude.m4
20643         * config.guess
20644         * config.sub
20645         * ltconfig
20646         * ltmain.sh: upgrade to libtool 1.2f
20647
20648         * autogen.sh: libtool is not required to autogen gtk+
20649
20650         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
20651         needed)
20652
20653 1999-03-18  Tor Lillqvist  <tml@iki.fi>
20654
20655         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
20656         declaring gdk variables exported/imported from the DLL. New image
20657         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
20658         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
20659         GDK_DRAG_PROTO_OLE2.
20660
20661         * gdk/gdk.h: Merge in Win32 version: Two new functions,
20662         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
20663         declared only for the Win32 version, but could be in the X11
20664         version as well. (Needed for a Xlib-less gdk_imlib.)
20665         gdk_color_hash should have only one parameter. Declare
20666         gdk_threads_mutex with GDKVAR.
20667         
20668         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
20669         just one parameter.
20670
20671         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
20672         per pixel, not bits.
20673
20674         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
20675         Fetch bpp (which means bits-per-pixel here) from another place on
20676         Win32. Accept also depth==32 (which we might get on Win32) with
20677         bpp==32.
20678
20679         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
20680         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
20681         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
20682         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
20683         in the backend-dependent directory, not in the common gdk
20684         directory.
20685
20686         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
20687         headers.
20688
20689 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
20690
20691         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
20692         want to use the Gtk+ devel version (which is true, and yes - even i am
20693         currently working with the 1.2.x branch). so everyone reading this, you
20694         probably want to issue
20695         cvs checkout -r glib-1-2 glib
20696         and
20697         cvs checkout -r gtk-1-2 gtk+
20698         as your next two comands.
20699
20700 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
20701
20702         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
20703         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
20704
20705         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
20706         file. strongly deprecated the GTK_HAVE_* macros, we provide
20707         GTK_CHECK_VERSION() for people that need to check for certain
20708         Gtk+ versions.
20709
20710         * gtk/gtkcompat.h: removed this from CVS.
20711         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
20712         idea right from the start, it just didn't seem like that back then.
20713
20714 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
20715
20716         * merges from gtk-1-2:
20717
20718 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
20719
20720         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
20721         item factory class has been created.
20722         (gtk_item_factory_parse_rc): likewise.
20723
20724         * gtk/gtkmenu.c:
20725         keep proper references for old_active_menu_item.
20726         (gtk_menu_reparent): unset the usize of the new parent,
20727         so the menu can sanely be size requested and we don't get nasty screen
20728         artefacts upon next reparentation.
20729         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
20730         enter notify. only synthesize enter notifies if the pointer really is
20731         inside the event window.
20732         (gtk_menu_popdown): use gtk_menu_shell_deselect().
20733         (gtk_menu_popup): move the background setting stuff into
20734         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
20735
20736         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
20737         gtk_menu_shell_select_item() to select the new item.
20738         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
20739         do the right thing for deselection as well.
20740
20741 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
20742
20743         * gtk/gtkwidget.[hc]:
20744         (gtk_widget_accelerators_locked): return whether a widget's accelerators
20745         are locked.
20746
20747         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
20748         existing accelerators if the widget's accelerators are locked.
20749
20750 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
20751
20752         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
20753
20754         * gtk/gtkmenu.c: truely forward key press and key release events to
20755         the menu widget from the toplevel or tearoff window. we can't simply
20756         connect to that, we need to stop further processing of the events as
20757         well.
20758
20759 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
20760
20761         * gtk/gtkmenu.c:
20762         (gtk_menu_key_press): pass event->keyval, event->state to
20763         gtk_accelerator_valid, instead of event->keyval twice.
20764         refuse to install single letter accelerators for menus that use
20765         single letter shortcuts.
20766
20767         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
20768         gtk_menu_ensure_uline_accel_group().
20769
20770         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
20771         which will always return an uline accel group, made
20772         gtk_menu_get_uline_accel_group() return NULL if the group isn't
20773         yet created.
20774
20775 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
20776
20777         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
20778
20779         * gtk/gtkclist.c (gtk_clist_column_title_passive):
20780         Leave button sensitive, trap  button_press, button_release,
20781         motion_notify, enter_notify and leave_notify events instead.
20782         (gtk_clist_column_title_active): disconnect event handler.
20783         (gtk_clist_drag_data_get): fixed memory leak. Reported by
20784         Guillaume Laurent <glaurent@worldnet.fr>
20785
20786 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
20787
20788         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
20789         width/height mixups.
20790
20791         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
20792         if needed.
20793
20794 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
20795
20796         * gtk/testgtk.c (create_item_factory): unref the item factory after
20797         window's destruction.
20798
20799         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
20800         count on the menu shell around the menu item's activation, since the
20801         signal emission may cause menu shell destruction.
20802
20803         * gtk/gtkitemfactory.c:
20804         the previous code leaked one accel group per menu. we use
20805         gtk_menu_get_uline_accel_group() now to fix that, and with that
20806         also create the underline accelerator group of the menus only if
20807         required (i.e. an underline accelerator has been specified).
20808         (gtk_item_factory_construct):
20809         (gtk_item_factory_create_item): removed code that would create an
20810         extra accel group for the menu (and leak references).
20811         (gtk_item_factory_create_item): adapted the underline accelerator
20812         installation code to properly feature gtk_menu_get_uline_accel_group().
20813
20814         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
20815         menu->accel_group, this may return NULL if the accelerator group
20816         hasn't been set yet.
20817         added gtk_menu_get_uline_accel_group() to retrive the underline
20818         accelerator group of the menu, this will be created on demand
20819         and proper care is taken about its reference count.
20820
20821         * gtk/gtkitemfactory.h:
20822         * gtk/gtkitemfactory.c:
20823         dumped the approach of keeping a widgets by action list on the
20824         factory since the factory<->widget destroy negotiation didn't work
20825         and would be hard to get going at all. instead we keep a list of
20826         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
20827         persistant throughout a program's life time).
20828         also, i removed the static const gchar *key_* variables, and made
20829         them inline strings (they weren't actually used anyways).
20830         (gtk_item_factory_add_item): update ifactory->items.
20831         (gtk_item_factory_destroy): destroy ifactory->items (and remove
20832         the item factory pointer from the remaining ifactory widgets).
20833         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
20834         list to find the widget.
20835         (gtk_item_factory_get_item): new function that works around
20836         gtk_item_factory_get_widget() limitations, this function will only
20837         return menu items, even for <Branch> entries.
20838
20839 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20840
20841         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20842         font hash table, if we have a GdkFontPrivate entry for this font
20843         already, simply increment its reference count, provided by Olaf Dietsche
20844         <olaf.dietsche+list.gtk@netcologne.de>.
20845
20846         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
20847         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
20848
20849 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
20850
20851         * gtk/gtkcontainer.c:
20852         (gtk_container_add_with_args):
20853         (gtk_container_addv):
20854         (gtk_container_add): before adding a child to a conatiner, make sure
20855         it is (default) constructed, this is neccessary because under certain
20856         circumstances the child will get relized and mapped immediatedly, in
20857         which case it has to be constructed already.
20858
20859 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
20860
20861         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
20862         values > 1 as TRUE also.
20863
20864 1999-03-16  Tor Lillqvist  <tml@iki.fi>
20865
20866         * README.win32: New file.
20867                 
20868         * configure.in: Check for lstat.
20869
20870         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
20871         completeness.
20872
20873         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
20874
20875         * gtk/gtk.def: Removed CRs.
20876
20877         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
20878         ..\gdk\win32).
20879
20880         * gdk/win32/makefile.msc: Correct upwards relative paths.
20881         
20882 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
20883
20884         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
20885           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
20886           it was connecting a void function to expose_event and the int
20887           returning function to the draw signal
20888
20889 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
20890
20891         * configure.in:
20892         Use correct path to libgmodule.la when ref'ing uninstalled copy
20893         of glib.  (Already in stable branch, Bug #417)
20894
20895 1999-03-15  Tor Lillqvist  <tml@iki.fi>
20896
20897         Win32 merge and general portability stuff:
20898                 
20899         * acconfig.h,configure.in: Check for <sys/time.h>.
20900
20901         * gdk/win32: New directory (actually, been there for a while).
20902         
20903         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
20904         NATIVE_WIN32, and use these. Always case fold on Win32. No
20905         backslashed escapes on native Win32.
20906
20907         * gtk/{gtk.def,makefile.msc}: New files.
20908
20909         * gtk/Makefile.am: Add above new files.
20910         
20911         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
20912         instead of <strings.h>.
20913
20914         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
20915         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
20916         <unistd.h> appropriately.
20917
20918         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
20919         Use ABS() (from <glib.h>) instead of abs().
20920         
20921         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
20922         of gtk (and thus glib) headers, so that WIN32 will be
20923         defined. With MS C, include <direct.h> for mkdir prototype.
20924
20925         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
20926         some casts, needed by MS C.
20927
20928         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
20929         implemented).
20930
20931         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
20932         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
20933         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
20934
20935         * gtk/gtkmain.h: Mark variables for export/import on Win32.
20936                 
20937         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
20938         the event is not a hint, or its window is not the slider. Needed
20939         on Win32, at least.
20940
20941         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
20942         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
20943         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
20944         a subdirectory of the Windows directory as gtk system
20945         configuration directory.
20946
20947         * gtk/gtkselection.c: No chunks on Win32.
20948
20949         * gtk/gtksocket.c: Not implemented on Win32.
20950
20951         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
20952
20953         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
20954
20955         * gtk/maketypes.awk: Declare variables with a macro that expands to
20956         necessary export/import magic in the case of Win32.
20957                 
20958         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
20959
20960 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
20961
20962         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
20963         since those were meant only for gdki18n.h.  
20964         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
20965         for widechar tests.
20966         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
20967
20968 1999-03-13  Tor Lillqvist  <tml@iki.fi>
20969
20970         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
20971         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
20972
20973         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
20974         installed) to CFLAGS.
20975
20976         * gdk/Makefile.am: Add rules for gdkconfig.h.
20977
20978         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
20979         APIs.
20980
20981         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
20982         gdkx.h anyway when compiling for X11.
20983         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
20984         general): Merge in Win32 version.
20985         
20986         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
20987         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
20988         expansion (if we don't have HAVE_PWD_H), allow for drive
20989         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
20990         included code from Craig Setera's port to Win32 (the one that uses
20991         X11, and the cygwin dll), even if it probably will be abandoned.
20992
20993         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
20994         the user entered one herself.  This way one can complete *.h and
20995         don't get matches on any .help files, for instance.
20996         
20997 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20998
20999         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21000         font hash table, if we have a GdkFontPrivate entry for this font
21001         already, simply increment its reference count, provided by Olaf Dietsche
21002         <olaf.dietsche+list.gtk@netcologne.de>.
21003
21004         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
21005         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
21006
21007 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
21008
21009         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
21010         the number of calls to gdk_draw_point() (and thus to X) by
21011         clipping the points by hand.
21012
21013         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
21014         the clip parameter.
21015         (gtk_handle_box_paint): Only paint the handle if the expose area
21016         intersects it.
21017
21018 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
21019
21020         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
21021
21022 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
21023
21024         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
21025         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
21026
21027 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
21028
21029         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
21030          textmode (O_TEXT) for OS/2 version.
21031
21032 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
21033
21034         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
21035         GtkSpinButton, "input" and "output", to make the output more flexible.
21036         The user has to provide a mapping between adjustment->value and the
21037         output string (and vice versa, if the spin button is editable). 
21038         See testgtk for examples.
21039
21040 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
21041
21042         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
21043         new one.
21044         
21045         * configure.in: set gtk+ version to 1.3.0.