]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-10
Make a GtkCellEditable (get_widget_window_size): Change to let it honor
[~andy/gtk] / ChangeLog.pre-2-10
1 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
2
3         * gtk/gtkentry.c: Make a GtkCellEditable
4         (get_widget_window_size): Change to let it honor size_allocate
5         when a CellEditable.
6
7         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
8         editable changes.
9         (gtk_tree_view_set_cursor): Now you can set the cursor
10         horizontally, as well as start editing.
11
12         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
13         code to look more like the other check buttons.
14
15         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
16         Change the way we calculate cell size.
17
18         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
19
20         * demos/gtk-demo/sizegroup.c: Add mnemonics.
21
22         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
23         Fix logic.
24
25         * gtk/gtkcellrenderertext.c: Change to be editable.
26
27         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
28
29         * test/testtreesort.c: Fix misspelling
30
31         * test/testreecolumns.c: Add mnemonics.
32
33         * test/testreeedit.c: New test program.
34
35 2001-09-25  Havoc Pennington  <hp@pobox.com>
36
37         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
38         etc. docs about how these are not going to do what you want for 
39         the X/win32 ports. Futile attempt to avoid a FAQ...
40
41 2001-09-24  James Henstridge  <james@daa.com.au>
42
43         * gtk/gtkmarshal.list (VOID): add marshal function types.
44
45         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
46         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
47         GTK_TYPE_POINTER.
48         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
49         with no-op copy/free functions.
50
51         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
52         GtkCTreeNode get_type function.
53
54 2001-09-24  Havoc Pennington  <hp@redhat.com>
55
56         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
57         gtktextlayout.c:
58         Get rid of the newline-that-could-not-be-deleted; buffers may 
59         now be zero-length. Much easier to fix than expected, once 
60         I figured out the right way to do it. However, there are 
61         various subtle bugs introduced by this that will have to get 
62         sorted out. Please use bugzilla.
63
64 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
65
66         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
67         response back from the window manager if our size hasn't changed 
68         since we won't get a response back from the window manager;
69         there was code in there to do this, but it was in the wrong
70         place so if the hints change and the size didn't we'd expect
71         a response.
72
73         Also, optimize the position-only-changed case by running
74         the resize queue immediately, and clean up some comments
75         for the changes.
76
77 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
78
79         * gtk/gtknotebook.h: Add a compat macro that got lost.
80
81         * gtk/gtktreestore.c: Doc fixes.
82
83         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
84         leak for windows that receive events after being destroyed.
85         (#60863, Joshua N. Pritikin)
86
87         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
88         rather than gtk_container_queue_resize().
89
90         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
91         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
92         gtk_container_child_composite_name. (#60217.)
93
94 2001-09-22  Hans Breuer  <hans@breuer.org>
95
96         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
97
98 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
99
100         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
101         weight value should be an int
102
103 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
104
105         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
106         to gtk_menu_scroll_item_visible(). Only call
107         gtk_menu_scroll_item_visible() if the menu widget has been
108         realized. Fixes bug #55310.
109
110 2001-09-21  Havoc Pennington  <hp@redhat.com>
111
112         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
113         key press to IM context if cursor isn't in an editable location;
114         bug #58425, patch from Hidetoshi Tajima
115
116 2001-09-21  Havoc Pennington  <hp@redhat.com>
117
118         Bug #60862
119         
120         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
121         (_gtk_text_btree_unref): fix up mark memory management
122
123         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
124
125 2001-09-20  Havoc Pennington  <hp@redhat.com>
126
127         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
128         try to handle alignment here, because it's done by PangoLayout
129         after we set the layout width. Fix from Dov.
130
131 2001-09-21  Hans Breuer  <hans@breuer.org>
132
133         * gdk/gdk.def :
134         * gtk/gtk.def : updated externals
135
136         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
137         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
138         Also handle that Win32 pathes cann't be hard-coded      
139
140         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
141         module, themes etc directory calculations
142
143         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
144         >16 bit right. The size limit within Win9x appears _not_ to be 32767
145         but slightly smaller ...
146
147         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
148         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
149
150         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
151
152         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
153         handling. I'm not sure if it is better now, but at least not worse
154
155         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
156
157         * gdk/win32/gdkwin32.h : reflect recent API restrictions
158
159 2001-09-21  Matt Wilson  <msw@redhat.com>
160
161         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
162         radio_menu_item->group to NULL after removing it from the list, as
163         it is no longer in the group. (#60869)
164
165         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
166
167 2001-09-20  Havoc Pennington  <hp@pobox.com>
168
169         * configure.in (PANGO_REQUIRED_VERSION)
170         (ATK_REQUIRED_VERSION): add variables and checks for specific 
171         versions of dependencies. Previously we didn't verify the 
172         Pango or ATk versions.
173
174 2001-09-09  Havoc Pennington  <hp@pobox.com>
175
176         * gtk/gtktextiter.c: fool with indentation
177         (gtk_text_iter_in_range): add g_return_if_fail
178
179 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
180
181         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
182         ref count on new tag to be 1.  Update doc.  (#60836)
183
184 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
185
186         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
187         call to gdk_image_new_bitmap().
188
189 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
190
191         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
192         day, as well as the current month and year.
193
194 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
195
196         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
197         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
198         
199 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
200
201         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
202
203         (build_option_menu): add func argument, connect ::changed
204         signal to option menu instead of connecting the ::activate
205         signal to the menu items,
206
207         (toplevel): get rid of RADIOMENUTOGGLED macro,
208
209         (list_toggle_sel_mode), (clist_toggle_sel_mode),
210         (ctree_toggle_line_style), (ctree_toggle_expander_style),
211         (ctree_toggle_justify), (ctree_toggle_sel_mode),
212         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
213         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
214
215         (notebook_type_changed): merged standard_notebook(),
216         notabs_notebook(), scrollable_notebook() and borderless_notebook()
217         into notebook_type_changed()
218
219         (create_list), (create_ctree), (create_notebook),
220         (create_progress_bar): changed OptionMenuItem arrays into
221         gchar * arrays. Removed "Extended" item where used.
222
223         Fixes bug #59885
224
225 2001-09-20  Sven Neumann  <sven@gimp.org>
226
227         * configure.in
228         * gdk/Makefile.am
229         * gtk/Makefile.am
230         * gtk/gtkselection.c
231         * gtk/gtktreeview.c
232         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
233
234 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
235
236         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
237         a missing pango_layout_iter_free ().
238
239 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
240
241         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
242         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
243
244         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
245         the function definition so we don't accidentally rely on
246         the compat #define from gtk_radio_menu_item_group.
247         (#60782, Jeff Franks)
248
249 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
250
251         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
252         incorrect values for top, right and bottom due to cut-and-paste
253         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
254
255 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
256
257         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
258         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
259         window, not just on the client leader. (#58463)
260
261 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
262
263         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
264
265         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
266         non-public _gtk_menu_item_set_placement.
267
268         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
269
270 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
271
272         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
273           gdk/linux-fb/gdkcolor-fb.c:
274         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
275         (#59723)
276
277 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
278
279         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
280         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
281         #59723)
282
283 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
284
285         Patch from Frank Belew #59037 for Solaris compilation.
286
287         * gtk/maketypes.awk: Change syntax slightly for a call
288         to sub(), apparently making awk on Solaris happier.
289
290         * gtk/gtktreeview.c: Remove C++ comments.
291
292 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
293
294         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
295         to handle '99% of the time. (#60473, reported by Christian Rose)
296
297         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
298         which no longer exists. (#60379, reported by Vitaly Tishkov)
299
300 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
301
302         * Released 1.3.8.
303
304         * gdk/Makefile.am: kill EXTRA_DIST clearing.
305         
306 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
307
308         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
309         as its broken in automake 1.4, add explicit object rule to
310         generate this.
311         
312         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
313         get rid of uneccessary stamps, group stuff more logically, and build
314         sources due to object rules. fix srcdir!=builddir.
315
316 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
317
318         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
319         incorrect parameter to compute_double_length
320         (#58680, patch from Matthias Clasen)
321
322         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
323
324         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
325
326         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
327         for GDK_RELEASE_MASK to avoid warnings with Forte.
328
329         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
330         break; statements.
331
332 2001-09-18  Alex Larsson  <alexl@redhat.com>
333
334         * gtk/gtkcheckbutton.c:
335         * gtk/gtkradiobutton.c:
336         Don't draw with GTK_STATE_ACTIVE.
337
338         * gtk/gtkclist.c:
339         * gtk/gtkctree.c:
340         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
341
342         * gtk/gtktextdisplay.c:
343         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
344         unfocused with base_gc [GTK_STATE_ACTIVE].
345         
346         * gtk/gtkentry.c:
347         Add select all menu-item.
348         Default cursor color is red.
349         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
350         unfocused with base_gc [GTK_STATE_ACTIVE].
351
352         * gtk/gtklabel.[ch]:
353         Add keynav + menu to selectable lables.
354         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
355         unfocused with base_gc [GTK_STATE_ACTIVE].
356
357         * gtk/gtkfilesel.c:
358         Add drag and drop support.
359
360         * gtk/gtkstyle.c:
361         (This was checked in earlier)
362         New default values for text/base SELECTED and ACTIVE
363         
364 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
365
366         * configure.in: up version to 1.3.8, interface age 0,
367         binary age 0, depend on glib 1.3.8.
368
369         * NEWS: 1.3.8 updates.
370
371 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
372
373         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
374         the editing code
375
376         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
377         reason to call it beyond emiting the two signals.
378
379         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
380         to GtkEntry.
381
382 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
383
384         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
385           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
386         PangoFontDescription.
387
388         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
389         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
390         structure.
391   
392         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
393
394         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
395         direct access to style->font. Deprecate gtk_style_ref/unref.
396   
397         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
398         Remove gtk_style_ref/unref with g_object_ref/unref.
399   
400         * gtk/gtkcalendar.c: Remove leftover macros accessing
401         style->font.
402   
403         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
404         variable.
405   
406         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
407         style->font.
408
409 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
410
411         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
412         "can_activate" properties in favor of
413         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
414         and GTK_CELL_RENDERER_MODE_EDITABLE
415
416 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
417
418         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
419         editable widgets.  This function is private, and should only be
420         used by GtkTreeView.
421
422 2001-09-18  Matt Wilson  <msw@redhat.com>
423
424         * docs/Makefile.am (EXTRA_DIST): don't use += before =
425
426         * docs/faq/Makefile.am (EXTRA_DIST): likewise
427
428         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
429         
430         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
431         (EXTRA_HEADERS): likewise
432
433         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
434         (EXTRA_HEADERS): likewise
435         (EXTRA_DIST): likewise
436         (CLEANFILES): likewise
437
438         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
439
440         * tests/Makefile.am (EXTRA_DIST): likewise
441         
442         * Makefile.am (install-data-local): changed to use
443         install-data-hook, which runs after install-pkgconfigDATA, so that
444         the pkgconfigdir will have been created and populated first.
445
446 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
447
448         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
449         be the last big GtkTreeView API change.
450
451         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
452         replace with "activate" and "start_editing".  Also, added a
453         "can_activate" and "can_edit" property.
454
455         * gtk/gtktreeviewcolumn.c: modify to use above.
456
457 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
458
459         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
460
461 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
462
463         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
464         icon instead of one with ugly white background.
465
466 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
467
468         * demos/gtk-demo/stock_browser.c (id_to_macro): make
469         the uppercasing work. (#59550)
470
471 2001-09-14  Jakub Steiner <jimmac@ximian.com>
472
473         * gtk/stock-icons/dialog_error.png:
474         * gtk/stock-icons/dialog_question.png: more road signs
475
476 2001-09-13  Jakub Steiner <jimmac@ximian.com>
477
478         * gtk/stock-icons/dialog_question.png:
479         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
480           like a road sign.
481
482 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
483
484         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
485         signals to make them more clear.  Also, change ::range_changed to
486         ::row_changed.
487         * gtk/gtktreemodel.c: Adjust to interface change
488         * gtk/gtktreemodel.h: ditto
489         * gtk/gtktreemodelsort.c: ditto
490         * gtk/gtktreestore.c: ditto
491         * gtk/gtkliststore.c: ditto
492         * gtk/gtktreeview.c: ditto
493         * tests/testtreecolumns.c: ditto
494         * gtk/gtkmarshal.list: Actually remove a marshaller!
495
496 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
497
498         * gtk/gtktextview.c
499         Add support for Ctrl+Up/Down arrow to move cursor to beginning
500         of previous/next paragraph. If within a paragraph cursor moves to
501         beginning of that paragraph.
502
503 2001-09-12  Jakub Steiner <jimmac@ximian.com>
504
505         * gtk/stock-icons/dialog_question.png: replacing the shaky
506           question mark with a sans-serif one.
507         * gtk/stock-icons/stock_top.png, stock_bottom.png,
508      stock_first.png, stock_last.png: using the new style arrows
509         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
510      colors.
511         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
512      color.
513         * gtk/stock-icons/stock_zoom*: anti-aliased
514         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
515      '-' with a '_', removed the wrong files
516
517 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
518  
519         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
520  
521         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
522         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
523         than in gtk-2.0/major.minor.micro/<type>/. This
524         works better for a search path for modules.
525  
526         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
527         gtk_binary_version variable holding major.minor.(micro-binary_age).
528  
529         * modules/input/Makefile.am (moduledir): Fix installation
530         directory to match change in lookup location.
531  
532         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
533         suffixes. Needs to be handled in g_module_build_path().
534
535         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
536         appropriate.
537  
538 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
539
540         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
541         causing RC properties not to work.
542
543 2001-09-11  Jakub Steiner <jimmac@ximian.com>
544
545         * gtk/stock-icons/dialog-error.png: less drastic
546         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
547           "STOP" is international enough.
548         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
549         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
550
551 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
552
553         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
554         (add|remove)_selection_clipboard symmetric. (bug #59836)
555
556         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
557         Avoid SEGV for empty tree. (bug #60243)
558
559 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
560
561         * tests/testgtk.c (create_idle_test): slight fix for
562         g_object_set() not usable for nesting anymore.
563
564         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
565         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
566         properties, supply ::shadow_type properties instead as most
567         other widgets do.
568
569 2001-09-10  Alex Larsson  <alexl@redhat.com>
570
571         * demos/gtk-demo/stock_browser.c:
572         * gdk/gdkcolor.c:
573         * gdk/gdkfont.c:
574         * gdk/gdkcursor.c:
575         * gdk/gdkevents.c:
576         * gdk/gdkrectangle.c:
577         * gtk/gtktypeutils.c:
578         Update to use the new g_boxed_type_register_static API.
579
580 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
581
582         * gtk/gtktreestore.c:
583         Fix looping in gtk_tree_store_init() waiting for zero random int.
584
585 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
586
587         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
588         behaviour which havoc broke. they have to default to 1.0 for
589         expand behaviour.
590
591         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
592
593 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
594
595         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
596         Amend previous change to avoid runtime error in g_param_spec_ref()
597
598 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
599
600         * gtk/gtkrc.c (insert_rc_property): Fix blank line
601         in the wrong place.
602
603 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
604
605         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
606         do a lookup immediately after creating style->property_cache,
607         since bsearch crashes on zero length for Solaris.
608         (Found by Padraig O'Briain.)
609
610 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
611
612         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
613         Really return NULL if not set.
614         (gtk_widget_init): Remove unused varaible.
615         
616 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
617
618         * configure.in:
619         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
620         in cvs.
621
622 2001-09-08  Havoc Pennington  <hp@pobox.com>
623
624         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
625         people might want to use
626
627 2001-09-08  Havoc Pennington  <hp@pobox.com>
628
629         * gtk/gtkalignment.c (gtk_alignment_class_init): default
630         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
631
632         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
633
634         * gtk/gtktextiter.c: fix docs
635         (gtk_text_iter_spew): get rid of this
636
637         * gtk/gtklayout.c: docs
638
639         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
640         to center image and label together, instead of having image on
641         left and label centered, patch/suggestion from Jacob
642
643         * gtk/gtkdialog.c: docs
644
645 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
646
647         * gtk/gtkliststore.c: Write documentation
648         * gtk/gtktreestore.c: Write documentation
649
650 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
651
652         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
653         with GArray and bsearch(), to remove dependency on a still
654         evolving interface that we want to keep private to glib/gobject. 
655
656 2001-09-08  Havoc Pennington  <hp@pobox.com>
657
658         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
659         docs fixes
660
661         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
662
663         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
664
665         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
666
667         * gtk/gtkscrolledwindow.h: docs fixes
668
669         * gtk/gtkimage.c (gtk_image_new): docs fixes
670
671 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
672
673         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
674         false alarm  constness warning with a cast.
675
676         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
677         for the inside-gdk case.
678
679 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
680
681         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
682         remove g_print.
683
684         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
685         change models, #59899
686
687 2001-09-07  Havoc Pennington  <hp@pobox.com>
688
689         * gtk/gtkmain.c: move some docs inline
690
691 2001-09-07  Havoc Pennington  <hp@pobox.com>
692
693         * gtk/gtk.h: tsk tsk, jrb broke the build
694
695 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
696
697         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
698         Removed 'fill' attribute.  It was silly b/c that was a property of
699         the cell renderer, anyway.
700         (gtk_tree_view_column_render): Actually render the packed
701         renderers.
702         * doc/tree-column-sizing.txt: initial devel documentation.
703         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
704         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
705
706         * tests/testtreefocus.c: fix up to reflect above changes.
707         * tests/testtreeview.c: ditto
708         * demos/gtk-demo/stock_browser.c: ditto
709
710 2001-09-07  Alex Larsson  <alexl@redhat.com>
711
712         * gdk/linux-fb/gdkcolor-fb.c:
713         Removed unused function.
714         
715         * gdk/linux-fb/gdkdrawable-fb2.c
716         * gdk/linux-fb/gdkfont-fb.c:
717         Use PangoLanguage functions.
718
719         * gdk/linux-fb/gdkinput.c:
720         * gdk/linux-fb/gdkselection-fb.c:
721         Fix const warnings.
722         
723         * gdk/linux-fb/gdkwindow-fb.c:
724         Fix warning. Implement gdk_window_set_icon_list() and
725         gdk_window_get_frame_extents(). (No icon support yet though.)
726
727         * gtk/gtkwindow.c (gtk_window_get_position):
728         If window->frame is set get the extents of it instead.
729         
730 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
731
732         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
733         Make the default default colormap the GdkRGB colormap,
734         not the system colormap.
735
736         * gtk/gtkinvisible.c (gtk_invisible_init) 
737           gtk/gtkwindow.c (gtk_window_init): Set the current
738         colormap, as returned by _gtk_widget_peek_colormap()
739         on the widget.
740
741         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
742         to GTK+. Make it return %NULL instead of the default
743         colormap if no colormap has explicitely been pushed.
744
745         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
746         colormaps on ancestral widgets before defaulting the
747         the system default colormap.
748
749         * docs/Changes-2.0.txt: explain colormap changes.
750
751 2001-09-07  Havoc Pennington  <hp@redhat.com>
752
753         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
754         #57424
755
756 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
757
758         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
759         make gdk_set_use_xshm a noop. Remove --no-xshm command line
760         option. If we aren't autodetecting properly, we need
761         to fix the problem, or at least make it an environment
762         variable setting, to avoid problems with propagating
763         to embedded children, plugins, etc.
764
765         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
766
767         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
768         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
769         New function to render a pixmap and mask for a particular colormap.
770
771         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
772         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
773         of internal implementation of the same.
774
775 2001-09-07  Havoc Pennington  <hp@redhat.com>
776
777         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
778         debug code that seems to have caused a breakpoint in valid cases
779         
780         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
781         pointer on the first view when adding the second view, fixes
782         crash when closing gtk-demo text test with active selection
783
784         * gtk/gtktextbuffer.c
785         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
786         clipboards in the list of clipboards - probably fixes #59836
787
788 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
789
790       Make gdkx.h the only installed header from gdk/x11.
791       All structures in gdk/x11 are opaque.
792
793         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
794         Don't install gdk{drawable,pixmap,window}-x11.h.
795
796         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
797         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
798         GdkVisualClass into C files.
799
800         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
801
802         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
803         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
804         Add public functions to replace previously exported direct
805         structure access.
806         gdk_x11_colormap_get_{xdisplay,xcolormap} 
807         gdk_x11_cursor_get_{xdisplay,xcursor},
808         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
809         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
810         gdk_x11_gc_get_{xdisplay,ximage}
811         
812         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
813         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
814
815       Fix a number of variables and functions that were exported
816       "accidentally" from GDK.
817
818         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
819         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
820         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
821         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
822         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
823         gdk_event_queue_find_first, gdk_event_queue_remove_link,
824         gdk_event_queue_append, gdk_event_button_generate,
825         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
826
827         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
828            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
829         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
830         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
831         gdk_use_xshm, gdk_input_ignore_core.
832
833         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
834         #defines to namespace functions into the private _gdk_ 
835         namespace.
836
837         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
838         to replace gdk_parent_root exported variable. Adjust and
839         deprecate GDK_ROOT_PARENT().
840
841         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
842         GDK_ROOT_PARENT usage, remove includes of port-specific
843         headers.
844
845         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
846         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
847         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
848
849         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
850         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
851         gdk_wm_delete_window functions, gdk_wm_take_focus, 
852         use gdk_atom_intern() instead.
853
854         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
855           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
856           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
857           gtk/gtkselection.c 
858         Unexport gdk_selection_property, just use 
859         gdk_atom_intern ("GDK_SELECTION").
860
861         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
862         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
863         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
864         GdkVisualprivate, gdk_x11_gc_flush.
865
866       Make a number of public exports of variables into functions
867       to increase encapsulation.
868
869         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
870         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
871         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
872
873         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
874         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
875         gdk_error_warnings.
876
877         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
878           docs/Changes-2.0.txt: 
879         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
880         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
881         Add gdk_x11_get_default_xdisplay().
882
883         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
884         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
885         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
886         Don't export gdk_progclass, move --class command line
887         option and handling to common portion of GDK.
888
889       Miscellaneous fixes:
890
891         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
892         g_return_val_if_fail that should have been g_return_if_fail.
893
894         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
895         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
896
897         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
898         X11 dependency.
899
900         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
901         Remove unused gdk_key_repeat_disable/restore.
902
903         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
904         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
905         Remove unused gdk_null_window_warnings variable.
906
907         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
908         it can be retrieved from the repository; it is too far
909         from functional to be worth having people check out;
910         it would be easier to start from scratch, I suspect.
911
912         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
913
914         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
915         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
916         Fix some accidentally global variables and unused global variables.
917
918         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
919         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
920         Fix some accidentally global variables and unused global variables.
921
922       Add some space for future expansion to multihead.
923
924         * gdk/gdkdrawable.h: Add four reserved function pointers
925         for future expansion of GdkDrawableClass.
926
927         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
928         where we can put a GdkScreen * later.
929
930 2001-09-07  Havoc Pennington  <hp@redhat.com>
931
932         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
933         adjustments after validating destination yrange; fixes #53918
934         (This may cause other issues, but I hope it won't)
935         
936 2001-09-05  Havoc Pennington  <hp@redhat.com>
937
938         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
939         line into start line, update the character counts in parent nodes; 
940         caused a bug when end and start line had different parent nodes.
941
942 2001-08-30  Havoc Pennington  <hp@redhat.com>
943         
944         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
945         assertion that tag is in a table
946
947 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
948
949         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
950         g_strcasecmp on NULL strings. (#59058)
951
952 2001-09-06  Alex Larsson  <alexl@redhat.com>
953
954         * gtk/gtkbin.c:
955         * gtk/gtkfontsel.c:
956         * gtk/gtkspinbutton.c:
957         * gtk/gtktipsquery.c:
958         Use GtkType/GType instead of uint.
959
960 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
961
962         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
963         sort column.
964
965         * gtk/gtktreestore.c (gtk_list_store_init): ditto
966
967         * gtk/gtktreesortable.c: add docs.
968
969 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
970
971         * Version 1.3.7
972
973         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
974         docs for gtk-config
975
976         * modules/input/Makefile.am (install-data-local): Don't
977         run gtk-query-immodules if DESTDIR is set.
978
979         * NEWS: Various additions.
980
981 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
982
983         * NEWS: updates for 1.3.7 release.
984
985 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
986
987         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
988         handle default sort feature
989
990         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
991         new function to handle default sort.
992         (gtk_tree_sortable_has_default_sort_func): check if default sort
993         is set.
994
995         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
996         handle default sort feature
997
998 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
999
1000         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
1001         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
1002         #59731
1003
1004 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
1005
1006         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
1007         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
1008         time, #59727
1009
1010         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
1011         correctly.
1012
1013 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
1014
1015         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
1016         so that we don't eternally update the keymap after we
1017         get a change notification.
1018
1019         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
1020         incorrect cast.
1021
1022 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
1023
1024         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
1025         it working. It mostly works now, although there're still a few issues
1026         to be worked out.
1027
1028         * tests/testtreesort.c (main): changes to have a better test
1029         application for the GtkTreeModelSort.
1030
1031 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
1032
1033         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
1034         fix for bug #59222.
1035
1036         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
1037         gpointer search_data argument to function definition and
1038         prototype, to match GtkTreeViewSearchEqualFunc typedef.
1039
1040 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
1041
1042         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
1043         per jrb's request.
1044
1045 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
1046
1047         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
1048
1049         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
1050
1051 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
1052
1053         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
1054         Instead of always mirroring the selection to a single PRIMARY
1055         selection, allow it to be mirrored to any number of clipboards.
1056
1057         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
1058         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
1059
1060         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
1061         GtkClipboard argument, and for paste_clipboard, the
1062         @override_location argument from @paste_primary.
1063
1064         * gtk/gtktextview.c: Adapt to above change.
1065         
1066 2001-08-30  Havoc Pennington  <hp@redhat.com>
1067
1068         * gtk/gtktextview.c (invalidated_handler): put validate idle at
1069         resize - 2 just for flexibility
1070
1071 2001-08-30  Havoc Pennington  <hp@redhat.com>
1072
1073         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
1074         object from the empty-child-anchor case by drawing a little box.
1075         
1076         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
1077         if the child anchor has no anchored widgets - fixes #59328.
1078
1079         Also, remove bizarre deletion of preedit string that seems to have
1080         gotten in here somehow.
1081
1082 2001-08-30  Havoc Pennington  <hp@redhat.com>
1083
1084         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
1085         to #58420 from Hidetoshi Tajima and Matthias Clasen
1086
1087 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
1088
1089         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
1090         change color when the GtkTreeView loses focus.
1091
1092         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
1093         ditto.
1094         
1095         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
1096
1097 2001-08-28  Havoc Pennington  <hp@pobox.com>
1098
1099         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
1100
1101 2001-08-28  Havoc Pennington  <hp@pobox.com>
1102
1103         * demos/gtk-demo/main.c (setup_default_icon): add default icon
1104
1105         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
1106         warning fix
1107         (gtk_radio_button_new_with_label): warning fix
1108
1109         * gtk/gtkdnd.c: used some random GtkImage private structs, 
1110         update to reflect GtkImage changes
1111
1112         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
1113         whether the hint is supported, just always set the icon. A task
1114         list might want to use it even if the WM doesn't, and the WM may
1115         change over time. Also, XDeleteProperty() if list == NULL.
1116
1117         * gtk/gtkwindow.c (gtk_window_set_icon_list)
1118         (gtk_window_get_icon_list)
1119         (gtk_window_set_icon)
1120         (gtk_window_get_icon)
1121         (gtk_window_set_default_icon_list)
1122         (gtk_window_get_default_icon_list):
1123         new functions
1124
1125         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
1126
1127         * gtk/gtkimage.c: Implement property support, bug #59408
1128
1129         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
1130         on reparent-without-removing-first a bit more helpful.
1131         Let's just destroy this FAQ.
1132
1133 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
1134
1135         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
1136         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
1137
1138 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
1139
1140         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
1141         of use_text_format to the end of the function. (#56447)
1142
1143 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
1144
1145         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
1146         only in response to an area_prepared signal.
1147
1148 2001-08-28  Alex Larsson  <alexl@redhat.com>
1149
1150         * gtk/gtkwidget.c (gtk_widget_class_init):
1151         Make unrealize GTK_RUN_LAST.
1152
1153 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
1154
1155         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
1156         with_label and with_mnemonic should create radio buttons, not
1157         check buttons
1158
1159 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
1160
1161         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
1162         * tests/treestoretest.c (make_window): ditto
1163         * demos/gtk-demo/main.c (create_tree): ditto
1164         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
1165
1166 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
1167
1168         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
1169         GTK selection types rather than GtkTreeSelectionMode.
1170
1171         * docs/Changes-2.0: Add comment about selection change.
1172
1173 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
1174
1175         * gtk/gtkenums.h (GtkSelectionMode): deprecate
1176         GTK_SELECTION_EXTENDED.
1177
1178         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
1179         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
1180
1181         * gtk/gtkctree.c: ditto
1182
1183         * gtk/gtklist.c: ditto
1184
1185         * gtk/gtktree.c: ditto
1186
1187 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
1188
1189         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
1190         of typos in compat macros. (#59624, Skip Montaro)
1191
1192 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
1193
1194         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
1195         macro.
1196
1197          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
1198  
1199         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
1200         interface to be a standard setter from gtk_menu_item_right_justify.
1201         (gtk_menu_item_get_right_justified): a getter to go with the setter
1202
1203         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
1204         gtk_menu_item_right_justify.
1205
1206         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
1207         gtk_menu_item_set_right_justified.
1208  
1209 2001-08-27  Jens Finke <jens@gnome.org>
1210
1211         * gtk+.spec.in: Updated to match gpp requirements, reworked the
1212         files section to make it work with 1.3.x releases.
1213
1214 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
1215
1216         * gtk/gtkbutton.[ch]:
1217         Add properties for labels, mnemonics and stock items.
1218         Added C accessor functions for the properties.
1219         Removed deprecated button->child.
1220
1221         * gtk/gtkradiobutton.c:
1222         * gtk/gtktogglebutton.c:
1223         Update to use the functions in GtkButton.
1224
1225         * gtk/gtkcheckbutton.c:
1226         Update to use the functions in GtkButton.
1227         Changed size allocation of child. Now only gets as much
1228         space as it requests.
1229
1230         * gtk/gtkclist.c:
1231         Don't use GtkButton->child
1232
1233         * gtk/gtklabel.c:
1234         Fixed typo in docs
1235         
1236 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
1237
1238         * tests/testgtk.c:
1239         * tests/Makefile.am:
1240         Ressurect the properties test.
1241         I don't care if it is inferior, I just want to test my property code.
1242
1243 2001-08-25  Chema Celorio  <chema@celorio.com>
1244
1245         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
1246         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
1247         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
1248
1249 2001-08-24  Havoc Pennington  <hp@pobox.com>
1250
1251         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
1252         these are already in gtkmenu.h, and the copies
1253         here were broken.
1254
1255         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
1256
1257         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
1258         special-case bitmaps to allow no colormap
1259         (bitmap1): implement no-colormap bitmap-getting
1260         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
1261         alpha
1262         (rgb8): indentation
1263         (rgb1a, rgb1): change the way we read the data out of the image, 
1264         old way didn't seem to work quite right.
1265
1266         I'm pretty sure a lot of the rgbconvert code is still broken.
1267         
1268         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
1269         above position constraint (I really intended to do this before,
1270         don't know what's up with that)
1271         (gtk_XParseGeometry): shut up gcc
1272
1273         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
1274         and "0" should have been. remove the attempted 4-bytes-at-once
1275         optimization, it was totally broken.
1276
1277 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
1278
1279         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
1280         on push to buttons (based on patch from Soeren Sandmann, #54720)
1281
1282           - Add child_displacement_x/y style properties to control how far the
1283             child moves when the button is depressed.
1284
1285           - Add non-exported function _gtk_button_set_depressed to clean
1286             up the handling of the in/out shadow and separate it frmo
1287             widget->state.
1288
1289           - Lots of code cleanup and simplification of state handling
1290             for GtkButton/GtkToggleButton.
1291  
1292         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
1293         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
1294
1295 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
1296
1297         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
1298         and make gtk_image_new() take no arguments. The compiler will
1299         catch it, and it is vastly more useful than having
1300         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
1301
1302         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
1303         to add tearoff-title property (#51319, Lee Mallabone)
1304
1305 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
1306
1307         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
1308         gtk_menu_item_configure(). (#58925)
1309
1310 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
1311
1312         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
1313         "use_align" to give people the option to just make a cell visible.
1314
1315         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
1316         we were scrolling past the end of the tree.
1317
1318         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
1319         rename gtk_tree_view_column_pack_start_cell_renderer to
1320         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
1321
1322 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
1323
1324         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
1325         a stray g_object_ref() left over from gtk_object_ref/sink.
1326         (Pointed out by Josh Pritikin.)
1327
1328 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
1329
1330         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
1331         to gtk_container_get_children. Added deprecated compatibility
1332         macro. (Suggested by Vitaly Tishkov, #59051)
1333
1334         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
1335         calls.
1336
1337 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
1338
1339         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
1340         gtk_menu_bar_append/prepend/insert, forgot to do this
1341         when we deprecated gtk_menu_append/prepend/insert.
1342
1343         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
1344         compat macros.
1345
1346         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
1347         renamed by compat macro.
1348
1349         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
1350         gtk_font_selection_dialog_get_font(). (Suggested by
1351         Vitaly Tishkov, #59383)
1352
1353 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
1354
1355         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
1356         Rename from gtk_text_tag_table_size(). (#59366)
1357
1358 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
1359
1360         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
1361         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
1362         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
1363         (#59173).
1364
1365 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
1366
1367         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
1368         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
1369         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
1370
1371 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
1372
1373         [ Patch from Sebastian Wilhelmi, 52790 ]
1374
1375         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
1376
1377         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
1378         Move compatibility macros from g[dt]kcompat.h to within 
1379         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
1380
1381         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
1382
1383         * demos/Makefile.am demos/gtk-demo/Makefile.am 
1384           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
1385           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
1386
1387         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
1388                  testpixbuf.c}: Fix usages of deprecated functions.
1389
1390 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
1391
1392         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
1393         when changing models.
1394
1395 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
1396
1397         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
1398         We check the current event for modifiers rather than try to trap
1399         all presses.
1400
1401 2001-08-22  Anders Carlsson  <andersca@gnu.org>
1402
1403         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
1404         It's LIST_STORE, not LISTSTORE.
1405
1406 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
1407
1408         * gtk/gtk.h: Remove commented out gtkpacker reference.
1409
1410 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1411
1412         * configure.in (all_loaders): Add tga loader, 
1413         patch by Nicola Girardi. (#56067)
1414
1415 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
1416
1417         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
1418         a little.  More needs to be done tomorrow.
1419
1420 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
1421
1422         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
1423
1424 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
1425
1426         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
1427         reported by Kristian Rietveld <kristian@planet.nl> to handle row
1428         == NULL.
1429         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
1430         <kristian@planet.nl> to change destroy order.
1431
1432 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
1433
1434         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
1435         correct marshaller.
1436
1437 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
1438
1439         * gtk/gtkliststore.c: Fix up warnings, #58928.
1440
1441         * gtk/gtktreeselection.h: Change signal prototype, #58647
1442
1443         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
1444         #59221.
1445
1446         * gtk/gtkstyle.c: Actually prelight arrow, #50981
1447         
1448 2001-08-18  Hans Breuer  <hans@breuer.org>
1449
1450         * gdk/gdk.def : updated externals
1451
1452         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
1453         is required to get (at least) visible in entry fields. Some selections
1454         are really handled now - even on win32 - but copying via middle
1455         mouse button into a different app needs to wait ... 
1456
1457         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
1458         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
1459
1460         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
1461         handling. I'm not sure if it is better now, but at least not worse
1462
1463         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
1464         with SetWindowPos () which allows more fine-tuning backing-store wise
1465
1466         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
1467         Also changed move/resize to be more like the X version.
1468
1469         * gtk/gtk.def : updated externals
1470
1471 2001-08-19  Sven Neumann  <sven@gimp.org>
1472
1473         * gtk/gtktooltips.c
1474         * tests/testtreesort.c
1475         * tests/treestoretest.c: inserted some casts to get rid of compiler
1476         warnings.
1477
1478 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
1479
1480         * gtk/gtktreeviewcolumn.c
1481         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
1482
1483         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
1484         (_gtk_tree_view_find_node): If *node is NULL,
1485         *tree should be NULL too.
1486
1487         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
1488         column/renderers.
1489         * tests/testtreecolumns.c: ditto
1490         * tests/testtreefocus.c: ditto
1491         * tests/testtreesort.c: ditto
1492         * tests/testtreeview.c: ditto
1493         * tests/treestoretest.c: ditto
1494
1495 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
1496
1497         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
1498         signals; is_expander/is_expanded.
1499
1500         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
1501         pixbufs.
1502
1503         * gtk/gtktreeview.c: set above properties.
1504
1505 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
1506
1507         * gtk/gtkwidget.h: Really remove set_default_style().
1508
1509         * docs/Changes-2.0.txt: added a note about
1510         gtk_widget_push/pop/set_default_style.
1511
1512 2001-08-18  Havoc Pennington  <hp@pobox.com>
1513
1514         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
1515         hints_changed in addition to the other cases.
1516         (gtk_window_move_resize): include last position from configure
1517         notify in debug spew
1518
1519 2001-08-18  James Henstridge  <james@daa.com.au>
1520
1521         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
1522         second argument to the weak ref notify, cleaning up some uglyness.
1523         (gtk_accel_group_attach): remove and add the weak notifier when
1524         changing the accel groups slist.
1525         (gtk_accel_group_detach): same here.
1526
1527 2001-08-17  Darin Adler  <darin@bentspoon.com>
1528
1529         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
1530         missing parameters to utf8 functions to make it compile.
1531
1532 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
1533
1534         * gtk/gtktreeprivate.h:
1535         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
1536         (gtk_tree_view_init), (gtk_tree_view_set_property),
1537         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
1538         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
1539         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
1540         (gtk_tree_view_set_destroy_count_func),
1541         (gtk_tree_view_set_enable_search),
1542         (gtk_tree_view_get_enable_search),
1543         (gtk_tree_view_get_search_column),
1544         (gtk_tree_view_set_search_column),
1545         (gtk_tree_view_get_search_equal_func),
1546         (gtk_tree_view_set_search_equal_func),
1547         (gtk_tree_view_search_dialog_destroy),
1548         (gtk_tree_view_search_position_func),
1549         (gtk_tree_view_interactive_search),
1550         (gtk_tree_view_search_delete_event),
1551         (gtk_tree_view_search_button_press_event),
1552         (gtk_tree_view_search_key_press_event),
1553         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
1554         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
1555         * gtk/gtktreeview.h:
1556         Add heavily modified patch from Kristian Rietveld to handle
1557         interactive searching.
1558
1559 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
1560
1561         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
1562         string parameter.
1563
1564         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
1565         GtkMenuShell::selection_done, now that we have it, instead of 
1566         ::deactivate so we're not tearing the menu apart and notify
1567         the user prematurely.
1568
1569 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
1570
1571         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
1572         window, clear window->need_default_position to avoid infinite loops.
1573         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
1574
1575 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
1576
1577         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
1578         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
1579         (gtk_tree_view_set_property): don't cast possible NULL objects.
1580         (gtk_tree_view_destroy): reset the model to NULL.
1581
1582         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
1583         parent_class handler.
1584
1585 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1586
1587         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
1588
1589 2001-08-17  Anders Carlsson  <andersca@gnu.org>
1590
1591         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
1592         point numbers so that the result will be floating point.
1593
1594 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1595
1596         * tests/testgtk.c (create_handle_box): 
1597         (create_toolbar): Replace gtk_window_set_policy calls by
1598         gtk_window_set_resizable.
1599
1600 2001-08-16  Jakub Steiner <jimmac@ximian.com>
1601
1602         * gtk/stock-icons/dialog_info.png: new style bulb
1603         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
1604         * gtk/stock-icons/dialog_warning.png: need a hand?
1605         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
1606           the aa border gets chopped off ok
1607         * gtk/stock-icons/stock_colorselector.png: using the new hand
1608         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
1609           this one is for, but the old icon was butt ugly.
1610         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
1611         * gtk/stock-icons/stock*_insert_object.png: "
1612         * gtk/stock-icons/stock_index.png: using new hand icon
1613         * gtk/stock-icons/stock*_new.png: the document template being used 
1614           elsewhere too
1615         * gtk/stock-icons/stock*_print*.png: new print and print preview 
1616           icons (panel/menu)  
1617         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
1618           icons based on Tuomas' floppy image.
1619         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
1620         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
1621         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
1622         * gtk/stock-icons/stock*_undelete.png: "
1623         * gtk/stock-icons/stock_preferences.png: I have a version with a 
1624           document base if the sliders are no good.
1625         * gtk/stock-icons/stock_properties.png: properties 
1626         
1627
1628         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
1629           (tigert@ximian.com) clipboard icons
1630         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
1631         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
1632         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
1633           little bigger IMHO
1634
1635 2001-08-16  Sven Neumann  <sven@gimp.org>
1636
1637         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
1638
1639 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
1640
1641         * gtk/gtkcellrenderertext.c:
1642         Avoid warning when specifying NULL for "attributes" property
1643
1644 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1645
1646         * docs/debugging.txt: Add a warning about --enable-debug=no,
1647         some editorial changes.
1648
1649 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1650
1651         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
1652         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
1653         debugging info, remove unused debug flags. (#58330)
1654
1655 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
1656
1657         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
1658         (gtk_tree_selection_select_all): Remove strict checking for rows.
1659
1660 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1661         
1662         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
1663         Don't remove the tooltip window when the tip text changes. (#15891)
1664
1665 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
1666
1667         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
1668         $(srcdir).
1669
1670 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
1671
1672         * Makefile.am (EXTRA_DIST): Fix problem with trying to
1673         dist files from intl/, which is no longer there.
1674
1675 2001-08-11  Hans Breuer  <hans@breuer.org>
1676
1677         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
1678           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
1679           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
1680           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
1681           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
1682           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
1683
1684         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
1685           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
1686         GDK_TYPE_EVENT signals
1687
1688         * gtk/gtkalignment.c : removed 'direct allocation bug',
1689         which Tim discovered while reading the patch
1690
1691 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
1692
1693         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
1694         compat macros for push/pop/set_visual that were supposed
1695         to be added a long time ago, but got dropped. 
1696
1697 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
1698
1699         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
1700         property notifies.
1701
1702 2001-08-07  Havoc Pennington  <hp@pobox.com>
1703
1704         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
1705
1706         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
1707         some fixage is needed here, but nothing simple. Owen understands
1708         it. ;-)
1709
1710         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
1711         sizing and positioning.  Also, fix bug in compute_geometry_hints
1712         (width/height confusion for setting min size). 
1713         (gtk_window_move): new function
1714         (gtk_window_resize): new function
1715         (gtk_window_get_size): new function
1716         (gtk_window_get_position): new function
1717         (gtk_window_parse_geometry): new function
1718         
1719         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
1720         (gtk_widget_get_size_request): new function
1721         (gtk_widget_get_usize): delete, that was a short-lived function
1722         ;-)
1723         (gtk_widget_set_usize): deprecate
1724         (gtk_widget_set_uposition): deprecate, make it a trivial 
1725         gtk_window_move() wrapper
1726         (gtk_widget_class_init): remove x/y/width/height properties,
1727         add width_request height_request
1728         
1729         * demos/*: update to avoid deprecated functions
1730         
1731         * gtk/gtklayout.c: add x/y child properties
1732
1733         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
1734         uses of "gint16"
1735
1736         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
1737         sizing test
1738
1739         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
1740         configure events on toplevel windows are always in root window
1741         coordinates, following ICCCM spec that all synthetic events 
1742         are in root window coords already, while real events are 
1743         in parent window coords. Previously the code assumed that 
1744         coords of 0,0 were parent window coords, which was 
1745         really broken.
1746   
1747         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
1748         warning
1749  
1750         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
1751         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
1752         hints in gtk_window_parse_geometry()
1753  
1754         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
1755         new USER_POS USER_SIZE hints    
1756
1757 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1758
1759         * tests/prop-editor.c (properties_from_type): Use 
1760         g_object_class_list_properties to get the param specs 
1761         for a given type. (#58609)
1762
1763 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1764
1765         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
1766         free the text_aa parts. (#57549)
1767
1768 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1769
1770         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
1771         not the foreground color. (#57621)
1772
1773 2001-08-09  Alexander Larsson <alexl@redhat.com>
1774
1775         * gdk/win32/gdkfont-win32.c:
1776         Update to the new pango win32 api.
1777
1778 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
1779
1780         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
1781         COMPOUND_TEXT instead of TEXT
1782         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
1783         interpret the return value of g_string_to_compound_text()
1784         (#55152)
1785
1786 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1787
1788         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
1789         fail if iter is NULL. (#58347)
1790
1791 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1792
1793         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
1794         some off-by-one issues, fixing selection of line-ends. (#50323)
1795
1796 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
1797
1798         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
1799         functions in order to make mouse operation work again in the
1800         color wheel. (#58604)
1801
1802 2001-08-07  James Henstridge  <james@daa.com.au>
1803
1804         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
1805         the accelerator when the accel object is changed.  Fixes bug
1806         #58628.
1807
1808 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
1809
1810         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
1811         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
1812         (gnome bugzilla #58202)
1813
1814 2001-08-06  Havoc Pennington  <hp@pobox.com>
1815  
1816         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
1817         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
1818         it was expecting a GdkWindow, not a GdkWindowImplX11.
1819  
1820         Also, we were getting the window rect in screen coords 
1821         and the screen rect in window coords then intersecting 
1822         them; instead, get window rect in window coords.
1823  
1824         Finally, there were codepaths that resulted in a stuck server grab
1825         (when the window was fully onscreen, or on gdk_image_new()
1826         failure); make the server ungrab thing a bit more
1827         robust/consistent.
1828
1829 2001-08-06  Sven Neumann  <sven@gimp.org>
1830
1831         * gdk/gdkpango.c (gdk_pango_context_destroy): 
1832         check if info->colormap != NULL before unref'ing it. It might have
1833         been set to NULL using gdk_pango_context_set_colormap().
1834
1835 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
1836
1837         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
1838         Fix conversion from float to int so that we don't get
1839         skew in the int => float => int roundtrip. 
1840         (#58120, reported by Vitaly Tishkov). Also fix problem
1841         where if no alpha was set, the returned alpha
1842         from (say) set_current_alpha() was returned as 1, not 65535.
1843
1844 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
1845
1846         * gtk/gtklist.c (gtk_list_clear_items): Fix
1847         problem with selecting a new focus child.
1848
1849         * gtk/gtklist.c (gtk_list_clear_items): Clear 
1850         list->undo/list_focus_child after unparenting
1851         child, since unparenting the child can result
1852         in list->last_focus_child being set. (#58024)
1853
1854         * Makefile.am (SUBDIRS): Add target specific pc
1855         files to DISTCLEANFILES.
1856
1857         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
1858         (58327, Matthias Clasen)
1859
1860 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
1861
1862         * tests/testgtk.c: Patch from Hans (with various modifications),
1863         to add the ability to use testgtk as a rough-and-ready
1864         benchmark. Try, 'testgtk --bench all:5' (if you want decent
1865         numbers, run without a window manager)
1866
1867 2001-08-04 Alexander Larsson <alexl@redhat.com>
1868
1869         * gdk/win32/gdkinput.c:
1870         Add #ifdef HAVE_WINTAB around wintab.h include.
1871
1872         * gtk/gtk.def:
1873         Removed marshals that have been moved to glib.
1874         Commented out plug and socket. They didn't compile for me 
1875         on win32.
1876
1877 2001-08-04  Hans Breuer  <hans@breuer.org>
1878
1879         * gtk/stocks-icons/makefile.msc : new file
1880         * gtk/makefile.msc.in : use it
1881
1882         * gtk/gtkstyle.c : not all platforms do provide M_PI and
1883         friends, but luckily there is G_PI
1884
1885         * gtk/gtk.def : updated
1886
1887         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
1888         windows WS_POPUP, but only those without a parent. This fixes the 
1889         mis-alignment between the selectable (temp, input only) window and 
1890         the window text of GtkLabel.
1891
1892         (gdk_window_show) : respect private->state when actually showing
1893         the window.
1894
1895         (gdk_window_set_transient_for) : Implementation from Wolfgang 
1896         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
1897         error handling. Should fix #50586.
1898
1899         * gdk/win32/gdkevents-win32.c : beautify log output
1900
1901 2001-08-04  Michael Natterer  <mitch@gimp.org>
1902
1903         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
1904         Need to show the image after adding it to the GtkImageMenuItem.
1905         This used to work without in testgtk because of the
1906         gtk_widget_show_all() at the end of the function.
1907         (Closes #54978).
1908
1909 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
1910
1911         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
1912         (gtk_notebook_set_child_property): fix finding of child's page,
1913         since we have to validly deal with labels and menus here as well.
1914         (gtk_notebook_get_child_property): fix warning.
1915         (gtk_notebook_class_init): property tab_pack is of type
1916         GTK_TYPE_PACK_TYPE (enum) not boolean.
1917         (gtk_notebook_find_child): don't always warn, we might be looking
1918         for a label or menu child.
1919         (gtk_notebook_map): fix mapping of panel.
1920
1921         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
1922         widget's mapped state, regardless of the value being set equals
1923         old settings, since things like REALIZED(parent) or MAPPED(parent)
1924         may have changed since the old value was set. make it an error to
1925         invoke this function on a toplevel widget.
1926
1927 2001-07-31  Darin Adler  <darin@bentspoon.com>
1928
1929         * gdk/gdkprivate.h:
1930         * gdk/x11/gdkx.h:
1931         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
1932
1933         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
1934         GTK_OBJECT.
1935
1936 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
1937
1938         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
1939         scoping error pointed out by matthiasc@poet.de.
1940
1941 2001-07-31  Sven Neumann  <sven@gimp.org>
1942
1943         * demos/gtk-demo/appwindow.c
1944         * demos/gtk-demo/item_factory.c
1945         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
1946
1947 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
1948
1949         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
1950         argument order for g_signal_has_handler_pending.
1951
1952 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
1953
1954         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
1955         instead of long deprecated g_scanner_stat_mode().
1956
1957 2001-07-29  Hans Breuer  <hans@breuer.org>
1958
1959         * gdk/makefile.msc : build in the backend dir after
1960         auto-generating files
1961
1962         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
1963         with code from win32-production-branch.
1964
1965         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
1966         before calling DestroyWindow, which indirectly calls 
1967         gdk_window_destroy_notify ()
1968
1969         (performance patch merged from win32-production-branch)
1970         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
1971         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
1972         R2_COPYPEN rop). It is claimed to be much faster.
1973
1974 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
1975
1976         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
1977         add an "attributes" property to the text renderer for ATK.
1978
1979 2001-07-26  Alex Larsson  <alexl@redhat.com>
1980
1981         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
1982         Initialize image->bits_per_pixel from the drawable, not from
1983         the root window.
1984
1985         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
1986         Fix cast. argument is an IMPL already.
1987
1988 2001-07-15  James Henstridge  <james@daa.com.au>
1989
1990         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
1991         (gtk_window_remove_accel_group): same here.
1992         (gtk_window_key_press_event): same here.
1993
1994         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
1995         (gtk_widget_remove_accelerator): same here.
1996         (gtk_widget_remove_accelerators): same here.
1997
1998         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
1999
2000         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
2001         instead of GtkObject.
2002
2003         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
2004         now takes GObjects.
2005
2006         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
2007         pass a GObject to gtk_accel_group_entries_from_object.
2008         (gtk_item_factory_create_item): s/accel_widget/accel_object/
2009
2010         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
2011
2012         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
2013
2014         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
2015         GObjects can have accelerators set now.  Add compatibility
2016         defines.
2017
2018         * gtk/gtkmarshal.list: add missing marshallers.
2019
2020         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
2021         accelerators on plain GObjects.  gtk_accel_group_object_destroy
2022         has been converted into a weak reference, and
2023         gtk_accel_group_delete_entries is now a destroy notify for that
2024         piece of data.
2025
2026 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
2027
2028         * gdk/gdkdraw.c: Added a check on the colormap depth to
2029         gdk_drawable_set_colormap()
2030         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
2031         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
2032         for pixmaps without visuals (more specifically, bitmaps)
2033         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
2034         doesn't set a colormap with the wrong depth
2035
2036
2037 2001-07-22  Anders Carlsson  <andersca@gnome.org>
2038
2039         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
2040         expander_height and expander_width properties with a single
2041         property, expander_size.
2042         (gtk_tree_view_init): Set the tab_offset to expander_size
2043         plus some padding.
2044         (gtk_tree_view_unrealize): Remove the expand/collapse
2045         timeout if it exists.
2046         (coords_are_over_arrow): Fix a small bug.
2047         (gtk_tree_view_motion_draw_column_motion_arrow): Use
2048         expander_size.
2049         (gtk_tree_view_draw_focus): Use "treeview" instead of
2050         "add-mode" as detail when drawing the focus.
2051         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
2052         instead of "add-mode" as detail when drawing the focus.
2053         (gtk_tree_view_deleted): If we have a node currently being
2054         expanded or collapsed, remove the timeout and set the node 
2055         to NULL.
2056         (gtk_tree_view_queue_draw_arrow): New function that just
2057         redraws the arrow of a node.
2058         (gtk_tree_view_draw_arrow): Use expander_size instead of
2059         expander_width/expander_height, also pass a different
2060         expander_style to gtk_paint_expander depending on the 
2061         state of the node being drawn.
2062         (expand_collapse_timeout): New function for expanding 
2063         or collapsing a node depending on the previous state.
2064         (gtk_tree_view_real_expand_row): Add timeout and set 
2065         correct state for node being expanded.
2066         (gtk_tree_view_real_collapse_row): Add timeout and set
2067         correct state for node being collapsed.
2068
2069         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
2070         information about the node currently being expanded or
2071         collapsed, and also a timeout id.
2072
2073         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
2074         with expander_style for draw_expander.
2075
2076         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
2077         expander_style.
2078         (create_expander_affine): New function for creating an 
2079         expander affine.
2080         (apply_affine_on_point): New function for applying an 
2081         affine to a point.
2082         (gtk_default_draw_expander): Modified to take expander_style
2083         instead of is_open, and to draw the rectangle rotated differently
2084         depending on the expander style.
2085         (gtk_paint_expander): Replace is_open with expander_style.
2086
2087         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
2088
2089         * gtk/gtkenums.h: Add expander style enum.
2090
2091 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
2092
2093         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
2094         value from gtk_tree_model_get_iter, the model might be empty.
2095
2096 2001-07-20  Hans Breuer  <hans@breuer.org>
2097
2098         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
2099         gdk/gdkinput.c like the other backends
2100
2101         * gdk/win32/gdkinput-win32.h :
2102         * gdk/win32/gdkinput.c :
2103         * gdk/win32/gdkvisual-win32.c :
2104         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
2105         GdkVisual GObjectification. UNTESTED for pen-devices because
2106         I simply have none.
2107
2108         * gdk/gdk.def :
2109         * gtk/gtk.def : updated externals
2110
2111         * gtk/gtkiconfactory.c :
2112         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
2113         before passing &error to functions to avoid strange crashes
2114         
2115         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
2116
2117         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
2118
2119         * gtk/makefile.msc.in : updated
2120
2121 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
2122
2123         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
2124         Add property support. (#51858)
2125
2126 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
2127
2128         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
2129         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
2130         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
2131
2132 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
2133
2134         * gtk/gtkcolorsel.c: Add propery support (roughly
2135         based on patch from Lee Mallabone, #51014)
2136
2137         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
2138         deprecated, since we already g_warning() on it.
2139
2140 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
2141
2142         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
2143         typo that sometimes caused selection not to work properly.
2144
2145         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
2146         entry when tabbing in. (#57743)
2147         
2148         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
2149         user drags up above or down below the entry, move
2150         to the end or the beginning of the entry. (Suggestion
2151         from Jay Cox, #50940)
2152
2153         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
2154         a current selection, then when moving by chars or
2155         words, move to the end of the selection rather than
2156         from entry->current_pos. (Suggestion from Jay Cox,
2157         #50942)
2158         
2159 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
2160
2161         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
2162         set window->decorated. (Patch from Hidetoshi Tajima,
2163         #55846)
2164
2165 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
2166
2167         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
2168         the widget/child realization/mapping invariants.
2169
2170         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
2171         gtk_widget_[get/set]_child_visible() to control
2172         whether visible children of a mapped window are
2173         mapped.
2174
2175         * docs/widget_system.txt: Updated for changes in
2176         container contract, and addition of GTK_CHILD_VISIBLE.
2177
2178         * gtk/gtkcontainer.c: Add generic map()/unmap()
2179         functions that work for almost all containers.
2180
2181         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
2182         gtk_widget_set_child_visible() where necessary.
2183
2184         * gtk/*.c: Remove excess map(), unmap(), and 
2185         realization/mapping invariant enforcing code
2186         from many containers.
2187
2188 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
2189
2190         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
2191         Get the foreground color from 'text', nor 'fg'. (#57568)
2192
2193 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
2194
2195         * gtk/*.c: Patch from Matthias Clasen to remove remove
2196         all instances of g_return_if_fail (foo != NULL); that are
2197         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
2198         since the second check catches the NULL anyways.
2199
2200 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
2201
2202         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
2203         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
2204         GDK_THREADS_ENTER()/LEAVE() pairs.
2205
2206         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
2207         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
2208         pairs. (Problem found by M. Meeks)
2209
2210 2001-07-18  Darin Adler  <darin@bentspoon.com>
2211
2212         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
2213         that we don't get a g_warning message every time we register a new
2214         icon size.
2215
2216         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
2217         using pixel variable of the correct type.
2218         
2219 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
2220
2221         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
2222         so that using X functions on a GdkWindow is possible, if
2223         a little hairy.
2224
2225         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
2226         and ts_origin of a GC, so that external parties can offset/restore
2227         a GC, when using gdk_window_get_internal_paint_info().
2228
2229 2001-07-17  Darin Adler  <darin@bentspoon.com>
2230
2231         * .cvsignore: Ignore the sgml directory made by gtkdoc.
2232         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
2233         instead of the deprecated gtk_window_set_policy.
2234         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
2235         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
2236         function to get rid of warning and some code too.
2237         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
2238         missing const.
2239         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
2240         unused local.
2241         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
2242         const.
2243         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
2244         (gdk_utf8_to_compound_text): Add missing const.
2245         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
2246         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
2247         cast and get rid of an unnecessary one.
2248         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
2249         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
2250         local.
2251         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
2252         Remove unused local.
2253         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
2254         missing const.
2255         * tests/testsocket.c: (add_child): Add cast so the printf format
2256         doesn't make us implicitly depend on what integer type
2257         gtk_socket_get_id returns.
2258         * tests/testtextbuffer.c: Add missing const.
2259         * tests/testtreefocus.c: (main): Remove unused local.
2260         * tests/treestoretest.c: (iter_remove): Remove unused local.
2261         (uppercase_value): Remove unused function.
2262         (make_window): Add statement to quiet the compiler's uninitialized
2263         variable warning.
2264
2265 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
2266
2267         * gtk/gtkrange.c:
2268         (second_timeout): 
2269         (initial_timeout): 
2270         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
2271         (gtk_range_calc_layout): compute the new layout based on an
2272         adjustment->value being passed in as argument.
2273         (gtk_range_button_press): for button2 slider warps, first recalc
2274         the layout, then adjust the value. also, use update_slider_position()
2275         for adjusting the value, so we keep pixel quantisation at which we
2276         usually operate (upon motion or button releases). the reason for this
2277         is that, we can't change the adjustment upon button2 presses to a non
2278         quantised value and upon button2 release re-quantise the value since
2279         that'd alter the value even if we didn't get any motion events (causing
2280         unexpected scroll area warps upon release and/or slider pixel-jitter).
2281         (gtk_range_motion_notify): update the slider position from queried
2282         coordinates, not event coordinates.
2283
2284 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
2285
2286         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
2287         the default gc values are: width=0, CapBut, JoinMiter.
2288
2289 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
2290
2291         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
2292         into account the xpad and ypad when calculating the width and the
2293         height of the pixbuf cel.
2294
2295 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
2296
2297         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
2298         Rename to gtk_radio_menu_item_get_group(), add deprecated
2299         alias. (#57044)
2300
2301         * gtk/gtkfilesel.c: Indentation fix.
2302
2303 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
2304
2305         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
2306         Hasselmann to fix warnings in compat macros. 
2307         (#56773)
2308
2309         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
2310         stupid wrong cast added in last patch.
2311
2312 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
2313
2314         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
2315         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
2316
2317 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
2318
2319         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
2320         missing cast.
2321
2322         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
2323         NULL/FALSE return value confusion.
2324
2325         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
2326         problem when scrollbar completely fills range. (Patch
2327         from  Matthias Clasen, #57047)
2328
2329 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
2330
2331         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
2332         clean up when handling events for move-resize emulation.
2333         (Problem traced down by Matthias Clasen, #57271)
2334
2335 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
2336
2337         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
2338           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
2339           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
2340           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
2341           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
2342           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
2343           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
2344         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
2345
2346 2001-07-09  Peter Williams  <peterw@ximian.com>
2347
2348         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
2349         for when srcdir != builddir
2350
2351 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
2352
2353         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
2354         gtk_tree_model_get_iter_root.
2355
2356         * gtk/gtkliststore.c: Add a bunch of g_return statements.
2357         (gtk_list_store_iter_n_children): Fix up.
2358
2359         * gtk/gtktreestore.c: Add a bunch of g_return statements.
2360
2361 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
2362
2363         * gtk/gtkwidget.c (gtk_widget_class_init):
2364         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
2365         restore some workingness.
2366
2367         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
2368         handle of window type for input-only windows.
2369
2370 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
2371
2372         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
2373         Patch from Gregory Merchan to add 
2374         gtk_button_box_set_secondary(), which separates
2375         the child into a separate group from the normal
2376         buttons. (#56331)
2377
2378         * gtk/gtkdialog.c: Make help buttons secondary by
2379         default.
2380
2381         * gtk/gtkbbox.c: Added a child property "secondary".
2382
2383         * gtk/testgtk.c: Turn on the help button for the 
2384         color selector to check that it properly appears
2385         as secondary.
2386
2387 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
2388  
2389         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
2390         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
2391         Add gdk_set_pointer_hooks() to allow pointer-querying to
2392         be hooked by an event record/playback system like GERD.
2393         (#56914)
2394         
2395 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
2396
2397         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
2398         in the right value of initial_emission to
2399         gtk_widget_set_style_internal (#57091)
2400
2401 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
2402
2403         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
2404         Make compile.
2405
2406         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
2407         with calling gtk_widget_set_style_internal() with
2408         the old style, not the new style. (#56989)
2409
2410 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
2411
2412         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
2413           gtk/gtkwidget.c:
2414         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
2415         not GTK_WIDGET_GET_ANCESTOR ... see 
2416         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
2417         Indicate the best practice in the docs for gtk_widget_get_toplevel().
2418
2419         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
2420         so GtkPlug can give the correct signals when transforming
2421         from a child to a toplevel.
2422         
2423         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
2424         reparentation correctly.
2425
2426         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
2427         Propagate the previous_toplevel argument down properly.
2428
2429         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
2430         of wrong atr list.
2431
2432         * gtk/gtkplug.[ch]: Add an "embedded" signal.
2433
2434         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
2435         signals.
2436
2437         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
2438         functions gtk_plug_get_id(), gtk_socket_get_id(),
2439         to avoid the user having to worry about realization,
2440         and gdkx.h.
2441
2442         * tests/testsocket.c: Extend to try out the new signals
2443         and gtk_plug/socket_get_id().
2444
2445         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
2446         setting of underline attributes.
2447
2448         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
2449         DestroyNotify events from SubstructureNotifyMask
2450
2451         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
2452         Switch GDK_WINDOW_TYPE (window) as needed.
2453
2454         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
2455         allow creation of toplevel windows as children of
2456         foreign windows.
2457
2458         * gtk/gtkplug.c: Remove hacks involving changing private
2459         fields of GdkWindow.
2460
2461         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
2462         exactly the same signals and notification
2463         be emitted for local embedding as for inter-process
2464         embedding.
2465
2466 2001-07-04  James Henstridge  <james@daa.com.au>
2467
2468         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
2469
2470 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
2471
2472         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
2473         XEMBED embedding add a _XEMBED_INFO property to the
2474         client with version number and a "mapped" flags.
2475         Use the mapped flag instead of the racy MapRequestEvent
2476
2477         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
2478         code to reliably set things (when the child is a passive
2479         embedder participating in the XEMBED protocol) intead
2480         of just being a hack for embedding non-participating
2481         programs. Fix various bugs and race conditions.
2482         
2483         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
2484         work by simply making the GtkSocket the gtk parent
2485         of the GtkPlug. Set a flag in this case and make
2486         the GtkPlug work like a normal container by overriding
2487         methods such as check_resize and "chaining past" GtkWindow
2488         to GtkBin.
2489
2490         * gtk/gtkentry.c (gtk_entry_real_activate)
2491           gtk/gtkmain.c (gtk_propagate_event): 
2492         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
2493         
2494         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
2495         gtk_widget_get_ancestor):
2496         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
2497         might not give the expected result and recommend
2498         an alternative.
2499
2500         * tests/testsocket.c tests/testsocket_child.c
2501         tests/testsocket_common.c tests/Makefile.am: Extended
2502         to test different type of adding plugs to sockets
2503         (local,active,passive), and to test mapping/unmapping
2504         the plug.
2505
2506         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
2507         mark the window as destroyed until after we
2508         called _gdk_windowing_window_destroy().
2509         (_gdk_windowing_window_destroy() may use GDK functions
2510         on the window.)
2511
2512         * gdk/x11/gdkinput.c: Remove the check for finalization - 
2513         devices can be finalized under some circumnstances.
2514  
2515         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
2516         small problem with GDK_TYPE_DEVICE.
2517  
2518 2001-07-02  Havoc Pennington  <hp@pobox.com>
2519
2520         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
2521         use constants not atoms.
2522
2523 2001-07-02  James Henstridge  <james@daa.com.au>
2524
2525         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
2526         PANGO_TYPE_TAB_ARRAY.
2527
2528         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
2529         for PANGO_TYPE_TAB_ARRAY.
2530
2531         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
2532         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
2533
2534         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
2535         the file.  Remove Pango types from defs -- they are now defined in
2536         libpango.
2537
2538 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
2539
2540         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
2541
2542         * gtk/gtkobject.c (gtk_object_destroy): invoke
2543         g_object_run_dispose().
2544
2545         * gtk/gtkwindow.c: 
2546         * gtk/gtkwidget.c: 
2547         * gtk/gtkobject.c:
2548         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
2549         method.
2550
2551 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
2552
2553         * gtk/gtktypeutils.c (gtk_type_class): Remove
2554         change check for GTK_TYPE_OBJECT derivation to
2555         G_TYPE_OBJECTS - it's Tim-approved to use this 
2556         for arbitary objects.
2557
2558         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
2559         prefix gtk_container_dequeue_resize_handler().
2560
2561         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
2562         to the hierarachy_changed signal, since you otherwise
2563         have to always keep that around.
2564
2565         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
2566         for extra argument to hierarchy_changed.
2567
2568 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
2569
2570         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
2571         for style to mean "revert to default style"
2572
2573         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
2574           gtk_widget_restore_default_style): Make this functions
2575         deprecated aliases for gtk_widget_set_style (widget, NULL).
2576
2577         * gtk/gtkwidget.[ch]: Remove:
2578            gtk_widget_set_default_style ()
2579            gtk_widget_push_style ()
2580            gtk_widget_pop_style ()
2581         These functions interact are overriden by RC files, and
2582         thus virtually useless, and complicated.
2583
2584 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
2585
2586         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
2587         most of the previous global variables in gtkrc.c. This is
2588         in preparation for multi-head, since each screen can
2589         have different GtkSettings and RC information.
2590
2591         * gtk/gtkrc.[ch]: 
2592
2593         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
2594         GtkSettings parameter to GtkRcStyle::parse.
2595
2596         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
2597         Add two new settings gtk-theme-name, gtk-key-theme-name,
2598         for RC files that are loaded by name after reading
2599         the default RC files.
2600         
2601         * gtk/gtkrc.c: Allow priorities for styles, as wll as
2602         bindings.
2603
2604         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
2605         and use it by default for RC files loaded via 
2606         gtk-theme-name, gtk-key-theme-name.
2607
2608         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
2609         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
2610         tests/testgtkrc: Require pathnames to be absolute.
2611
2612         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
2613         the source when parsing, since the operation of looking up a
2614         pixmap from an RC file depends on the parsing context.
2615
2616         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
2617         reset RC styles on all widgets when files are reparsed.
2618
2619         * tests/testgtk.c (create_rc_file) 
2620           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
2621         Simplify, now that gtk_rc_reparse_all() resets styles on
2622         all widgets itself.
2623
2624         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
2625         return value.
2626
2627         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
2628         GtkSettings argument.
2629
2630         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
2631         gtk_settings_get_global().
2632
2633         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
2634         to get the appropriate GtkSettings for a widget. (For now,
2635         just gets the default GtkSetttings.) 
2636
2637         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
2638           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
2639         changes.
2640
2641         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
2642         getting a style for a path without actually having a widget.
2643         (Allows using a style for a subpart of a widget, for
2644         example.)
2645
2646         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
2647         the RC files to be reloaded for just one GtkSettings
2648         (not sure how useful this really is.)
2649
2650         * gtk/gtkrc.h: Deprecate
2651         gtk_rc_add_widget_name/widget_class/class_style
2652
2653 2001-06-30  Alex Larsson  <alexl@redhat.com>
2654
2655         * gdk/linux-fb/gdkinput-none.c:
2656         * gdk/linux-fb/gdkinput.c:
2657         * gdk/linux-fb/gdkinputprivate.h:
2658         Convert GdkDevice to a GObject.
2659
2660         * linux-fb/gdkprivate-fb.h:
2661         * linux-fb/gdkvisual-fb.c:
2662         Convert GdkVisual to a GObject.
2663
2664 2001-06-29  Alex Larsson  <alexl@redhat.com>
2665
2666         * gdk/gdkvisual.h:
2667         * gdk/gdkcolor.c:
2668         * gdk/x11/gdkx.h:
2669         * gdk/x11/gdkvisual-x11.c:
2670         Convert GdkVisual to a GObject.
2671
2672         * gdk/gdkinput.h:
2673         * gdk/gdkevents.c:
2674         * gdk/x11/gdkinputprivate.h:
2675         * gdk/x11/gdkinput-gxi.c:
2676         * gdk/x11/gdkinput-none.c:
2677         * gdk/x11/gdkinput-x11.c:
2678         * gdk/x11/gdkinput-xfree.c:
2679         * gdk/x11/gdkinput.c:
2680         Convert GdkDevice to a GObject.
2681
2682 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
2683
2684         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
2685         to just plain new, fixing the number of columns, and column types
2686         at creation time.
2687
2688         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
2689
2690         * gtk/gtkcellrenderertext.c
2691         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
2692         height to a specific font.
2693
2694         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
2695
2696         * tests/*c: change to work with new store models.
2697
2698 2001-06-29  Havoc Pennington  <hp@redhat.com>
2699
2700        * Throughout: fixes to compile with G_DISABLE_COMPAT
2701         (s/g_signal_connectc/g_signal_connect/,
2702         s/g_signal_newc/g_signal_new/,
2703         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
2704
2705 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
2706
2707         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
2708         add path argument to selection callbacks.
2709
2710 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
2711
2712         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
2713         walk through a model in a depth first manner, with the option to
2714         break out.
2715
2716 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
2717
2718         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
2719         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
2720         column and follow it when draged, rather than a location in the
2721         view. "expander_column" property and drawing functions changed
2722         accordingly.  Fixes bug #55942.
2723
2724         (gtk_tree_view_{set,get}_expander_column): Now works with a
2725         GtkTreeViewColumn* instead of int.
2726
2727 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
2728
2729         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
2730
2731 2001-06-28  Havoc Pennington  <hp@pobox.com>
2732
2733         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
2734         image data to the screen, using a server grab to avoid race
2735         conditions.
2736
2737         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
2738         check for NULL return from gtk_image_new_from_stock(), it never
2739         returns NULL.
2740         (gtk_item_factory_create_item): fix bug where we parsed the stock
2741         ID as an inline pixbuf
2742
2743         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
2744
2745         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
2746         support (should be using binding set here)
2747
2748         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
2749         support (should be using binding set here)
2750
2751         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
2752         support
2753
2754         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
2755
2756         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
2757
2758         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
2759
2760         * gtk/gtkimcontextsimple.c
2761         (gtk_im_context_simple_filter_keypress): keypad
2762
2763         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
2764
2765         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
2766
2767         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
2768
2769         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
2770         should be binding-setted)
2771
2772         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
2773
2774         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
2775
2776         * gtk/gtkcalendar.c: numeric keypad fixes
2777
2778         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
2779         support
2780
2781         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
2782         screwup
2783
2784         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
2785         clip the render area to the drawable's clip region in advance,
2786         so we don't get data from the server that we don't need.
2787
2788         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
2789         check return value of gdk_pixbuf_get_from_drawable(), fall back 
2790         to bilevel alpha if we can't get the pixbuf to composite against.
2791
2792         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
2793
2794         * gdk/gdkimage.c (gdk_image_get_colormap): add
2795         gdk_image_set_colormap, gdk_image_get_colormap
2796
2797         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
2798         take a region of the image, instead of converting the entire
2799         image.
2800
2801         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
2802         keybinding signal. Add default bindings for it. Add default
2803         handler for show_help that shows the tooltip for the widget.
2804
2805         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
2806         "close" keybinding signal, remove key press handler.
2807
2808         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
2809         it's not our usual practice to leave a deprecated function around
2810         with a runtime warning, plus we don't want it to appear in docs,
2811         plus if we make them yellow no one will want to change them
2812         anyhow.
2813
2814 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
2815
2816         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
2817         GTK_WIDGET_REALIZE() for resize queueing.
2818
2819         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
2820         GTK_WIDGET_REALIZE() for post event delivery destruction upon
2821         GDK_DESTROY.
2822         
2823         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
2824         sompensate for former (pre-2.0) connect_after() facility.
2825         (gtk_widget_send_expose): 
2826         (gtk_widget_event): assert the widget is realized, since event delivery
2827         to non-realized widgets is essentially a bug. event handlers should
2828         be able to unconditionally rely on widget->window (unless they
2829         emit events on their own which can trigger widget destruction).
2830         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
2831         logic. event delivery happens as follows:
2832         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
2833         b) if !was_handled in (a) and the widget is still realized, emit event-
2834            specific signal (RUN_LAST handler). returns was_handled.
2835         c) emission of GtkWidget::event-after for notification if the widget is
2836            still realized (regardless of was_handled from previous stages, no
2837            class handler). no return value.
2838         d) was_handled gets passed on to caller, to determine further
2839            propagation. if the widget got unrealized meanwhile, was_handled
2840            is returned as TRUE.
2841
2842         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
2843         gdk_event_get_coords().
2844
2845 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
2846
2847         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
2848         age 0, binary age 0. depend on glib 1.3.7.
2849
2850         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
2851
2852         * gtk/gtkmenubar.c: same here.
2853         
2854         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
2855
2856         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
2857
2858         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
2859         
2860         * gtk/gtkmenubar.c (add_to_window): likewise.
2861         
2862         * gtk/gtktextbtree.c: and here...
2863         
2864         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
2865         
2866         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
2867         
2868         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
2869         
2870         * gtk/gtktreeviewcolumn.c:
2871         (_gtk_tree_view_column_set_tree_view): yet again.
2872
2873         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
2874         signal connections without g_signal_connect_data().
2875         
2876         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
2877         demo of the matter.
2878         
2879         * demos/testpixbuf.c (main): running out of equality phrases for the
2880         ChangeLog, but had to adapt connections here as well.
2881         
2882         * demos/testanimation.c (progressive_timeout): and for the fun of it,
2883         tackled this the same way.
2884         
2885         * tests/testtext.c (create_view): ok, it's becoming a pain at this
2886         point, but had enough enery for one more fix.
2887
2888         * tests/testtreecolumns.c (main): stand up man, do your work!
2889
2890         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
2891         fix, either that's been all of it or CVS gtk is broken yet again.
2892         
2893 2001-06-29  James Henstridge  <james@daa.com.au>
2894
2895         The following changes correspond to bug #56812
2896
2897         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
2898         code for GdkDevice.
2899
2900         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
2901         GdkCursor.
2902
2903 2001-06-19  Havoc Pennington  <hp@pobox.com>
2904
2905         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
2906         for mapping a window without fooling with stacking order, but
2907         updating the "withdrawn" flag
2908
2909         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
2910         filtering as soon as possible, moving move resize and wmspec_check
2911         handling after the event filter.  Make default filter apply to all
2912         events, not just those with no GdkWindow wrapped around the X
2913         window. Fix a FIXME about how the window could be a pixmap using 
2914         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
2915
2916         Also, be robust against events not on a known GdkWindow.
2917
2918         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
2919         gdk_x11_ungrab_server): export reference-counted server grabs, so
2920         other people can grab server over a GDK function that also does
2921         so.
2922
2923 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
2924
2925         * gtk/gtktreeviewcolumn.c
2926         (gtk_tree_view_column_pack_start_cell_renderer): New function to
2927         reflect that you can (hypothetically) pack cell renderers into a
2928         column.
2929         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
2930         (gtk_tree_view_column_cell_is_visible): Move more functionality to
2931         the column.
2932         (gtk_tree_view_column_cell_can_focus): Move more functionality to
2933         the column.
2934
2935         * gtk/gtktreeview.c: Move to use new column-packing code.
2936         (gtk_tree_view_real_expand_row): remove totally braindead code.
2937         (gtk_tree_view_real_collapse_row): ditto.
2938
2939 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
2940
2941         * gtk/gtktreeviewcolumn.c: Fix a typo.
2942         
2943 2001-06-26  Joel Becker  <jlbec@evilplan.org>
2944
2945         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
2946           at the end of the file
2947
2948 2001-06-26  Havoc Pennington  <hp@redhat.com>
2949
2950         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
2951
2952 2001-06-26  Havoc Pennington  <hp@redhat.com>
2953
2954         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
2955         property
2956
2957 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
2958
2959         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
2960         stupid missing statement
2961
2962         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
2963         private function for ATK.  It notifies you of how many _visible_
2964         children are deleted when a node is deleted.  Should be used by
2965         atk only.
2966
2967 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
2968
2969         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
2970         Use new pango_context_get_metrics() to fix problems
2971         with font lists in descriptions. (#56184, reported by
2972         Jonas Borgström)
2973
2974 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
2975
2976         * gtk/gtkiconfactory.c:
2977         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
2978         item factory so inlined pixbufs actually work.
2979
2980 2001-06-25  Havoc Pennington  <hp@redhat.com>
2981
2982         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
2983         s/RESIZEABLE/RESIZABLE/
2984
2985         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
2986
2987 2001-06-25  Alexander Larsson  <alexl@redhat.com>
2988
2989         * configure.in:
2990         Added --enable-fbmanager. This is some experimental code
2991         that lets several GtkFB apps coordinate their access to the
2992         framebuffer.
2993         
2994         * acconfig.h:
2995         Added ENABLE_FB_MANAGER.
2996
2997         * gdk/linux-fb/Makefile.am:
2998         Added gdkfbmanager and gdkfbswitch.
2999
3000         * gdk/linux-fb/gdkkeyboard-fb.c:
3001         * gdk/linux-fb/gdkmouse-fb.c:
3002         * gdk/linux-fb/gdkprivate-fb.h:
3003         Split device init and open so that
3004         they can be opened and closed while switched
3005         away.
3006
3007         * gdk/linux-fb/gdkmain-fb.c:
3008         Add the basic manager communication.
3009
3010         * gdk/linux-fb/gdkrender-fb.c:
3011         Don't update to the shadow fb if we're
3012         blocked by the fb manager.
3013
3014 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
3015
3016         * docs/Changes-2.0.txt: Add note about child property
3017         changes.
3018
3019 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
3020
3021         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
3022         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
3023
3024         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
3025         with un'reffing wrong list reported by Jeff Franks.
3026
3027         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
3028
3029         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
3030         for the default icon. Remove inline XPM.
3031
3032         * gtk/gtkstock.h gtk/gtkiconfactory.c:
3033         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
3034         is used for GTK_STOCK_DND, but it is a bit too small.)
3035
3036         * gtk/stock-icons/stock_dnd_multiple.png
3037         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
3038
3039         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
3040         TRUE when starting a drag. In other cases, we are
3041         just observing. (#52995)
3042
3043         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
3044         function to set the icon for a drag from a GdkPixbuf
3045         or stock ID.
3046
3047         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
3048         Likewise, for drag sources.
3049
3050         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
3051         (Now should be done using the stock system.)
3052
3053 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
3054
3055         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
3056         Removed - didn't work and not particularly useful anyways
3057         if it did. 
3058
3059 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
3060
3061         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
3062         introduced last night that was making things decidedly not work.
3063
3064         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
3065         so that we have getter/setter pairing everywhere it makes
3066         sense. (#55767)
3067
3068         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
3069         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
3070         deprecated compat macro. (#55516)
3071
3072         * gtk/gtklabel.[ch]: Add functions
3073         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
3074         gtk_label_set_label(), which mirror the property API for GtkLabel.
3075         Make gtk_label_get_attributes() only reflect the attributes
3076         set by gtk_label_set_attributes.
3077
3078         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
3079         from gtk_notebook_set_page().
3080
3081 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
3082
3083         * configure.in: Fix tests for XShm.h.
3084
3085         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
3086         gdk_image_new() by use of goto, properly use g_object_unref().
3087
3088 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
3089
3090         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
3091         calls, as GdkImage is an object. these should be g_obejct_unref()
3092         instead but that won't work because of the g_error() statement
3093         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
3094         to spot these places.
3095
3096 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
3097
3098         * modules/input/gtkimcontextxim.c: Fixup some problems with 
3099         text length handling in error cases.
3100
3101         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
3102         a bit to make test actually warn on attempt to allocation
3103         a negative size. (#56101, Matthias Clasen)
3104
3105 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
3106
3107         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3108         noticed by Brian Cameron.
3109         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
3110         Cameron.
3111
3112 2001-06-22  Hans Breuer  <hans@breuer.org>
3113
3114         * gdk/gdk.def : updated externals
3115
3116         * gdk/win32/gdkdrawable-win32.c : corrected some casts
3117         in GDK_NOTEs
3118
3119         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
3120         to translate coordinates to the internal > 16 bit system
3121         Try to handle WM_WINDOWPOSCHANGED to get better performance for
3122         when moving/resizing
3123
3124         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
3125         and gdk_keymap_get_direction (). The latter is untested for
3126         the RTL case
3127
3128         * gtk/gtk.def : updated externals
3129
3130         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
3131         from pango_language_from_string (), not an already freed pointer
3132
3133         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
3134         binary (-kb) to be useable on windoze
3135  
3136 2001-06-21  Alexander Larsson  <alexl@redhat.com>
3137
3138         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
3139         Update to new PangoLanguage changes.
3140         
3141         * gtk/gtkwindow-decorate.c:
3142         * gtk/gtkwindow.[ch]:
3143         Added setting argument to gtk_window_set_has_frame ()
3144         
3145 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
3146
3147         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
3148         the case without XKB properly.
3149
3150         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
3151         unused gtk_rc_auto_parse variable.
3152
3153         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
3154         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
3155         longer needed with GdkPixbuf.
3156
3157         * gtk/gtkrc.c (_gtk_rc_init): Make private.
3158
3159 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
3160
3161         * gtk/gtkentry.h: Mark deprecated functions with
3162         GTK_DISABLE_DEPRECATED.
3163
3164 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
3165
3166         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
3167
3168         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
3169
3170         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
3171           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
3172           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
3173           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
3174           to recent changes in Pango.
3175
3176         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
3177           to test whether the basic engine honors them.
3178
3179 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
3180
3181         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
3182         gtk_container_child_get_property().
3183
3184 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
3185
3186         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
3187         (gtk_tree_view_move_cursor_page_up_down): implement.
3188
3189 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
3190
3191         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
3192         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
3193         don't use automatic fixed size buffer for printf-ing floats, doubles
3194         can expand to really _huge_ strings, use g_strdup_printf() instead.
3195
3196 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
3197
3198         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
3199         construct property in 1.2 and still needs to be.
3200
3201         * gtk/gtkwidget.c: "composite_child" is not a settable property.
3202
3203 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
3204
3205         * gtk/gtkliststore.c (gtk_list_store_clear): 
3206         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
3207         clear a model.
3208
3209 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
3210
3211         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
3212
3213         * gtk/Makefile.am:
3214         * gtk/gtk.h: disabled GtkPacker compilation.
3215
3216         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
3217
3218         * gtk/gtknotebook.c:
3219         * gtk/gtktable.c:
3220         * gtk/gtkbox.c: ported this over to child properties.
3221
3222         * gtk/gtksettings.c: fetch class properties via
3223         g_object_class_list_properties().
3224
3225         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
3226         child arg interface. use gobjectnotifyqueue.c for child property
3227         notification.
3228
3229         * gtk/gtkwidget.[hc]: provide necessary means for container child
3230         properties, i.e. ::child_notify signal,
3231         gtk_widget_freeze_child_notify(),
3232         gtk_widget_child_notify(),
3233         gtk_widget_thaw_child_notify().
3234
3235         * tests/testgtk.c: removed inferior property handling code, for
3236         property editing, a generic module should be used, and GLE
3237         coincidentally fullfills that purpose.
3238
3239         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
3240         needs to be adapted to g_object_class_list_properties() before this
3241         builds again.
3242
3243 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
3244
3245         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
3246         test if a node is expanded.
3247
3248 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
3249
3250         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
3251         where collapsing a selected row would result in the cursor/anchor
3252         getting screwed up.
3253
3254 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
3255
3256         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
3257         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
3258         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
3259         Now I can really reorder/sort all Store widgets.  treesorttest
3260         seems to just work now.
3261         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
3262         testtreesort worked through a big coincidence all this time.
3263         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
3264         code.
3265         * tests/testtreecolumns.c: Big 'ol warning at the top letting
3266         people know that this code should never ever ever be copied.
3267
3268 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
3269
3270         * gtk/gtkwindow.h: Fixed a small typo, it should be
3271         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
3272         on line 134.
3273
3274 2001-06-14  Havoc Pennington  <hp@redhat.com>
3275
3276         Docs fixups, and:
3277         
3278         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
3279         GTK_DISABLE_DEPRECATED
3280
3281 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
3282
3283         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
3284         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
3285         finish it off tonight, though it basically works now when it's a
3286         list.  Also, I have a sinking feeling neither GtkTreeStore or
3287         GtkListStore actually resort when adding a new item.  I'll look
3288         into it.
3289
3290 2001-06-14  Havoc Pennington  <hp@redhat.com>
3291
3292         * demos/gtk-demo/main.c (load_file): fix bug identified by
3293         warnings I just added to gtktextbuffer
3294
3295 2001-06-14  Havoc Pennington  <hp@redhat.com>
3296
3297         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
3298
3299         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
3300
3301         * gtk/gtktextbtree.c: don't leak node data all over the place.
3302
3303         * demos/gtk-demo/main.c (main): create fontify tags for the right
3304         buffer
3305
3306         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
3307         to mention tags in the same table can't have the same name,
3308         suggested by Skip Montanaro
3309
3310 2001-06-11  Havoc Pennington  <hp@redhat.com>
3311
3312         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
3313         for trying to add two tags with same name to the tag table
3314
3315         * demos/gtk-demo/main.c (main): fix colors ;-)
3316
3317 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
3318
3319         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
3320         that allows grouping together multiple windows so that grabs
3321         within that set of windows only affect those windows.
3322
3323         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
3324         signal for notification when a widget becomes shadowed
3325         by a grab or is no longer shadowed by a grab.
3326
3327         * gtk/gtkwidget.c (gtk_widget_propagate_state)
3328           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
3329         insenstive widgets to maintain a grab.
3330
3331 2001-06-14  Alexander Larsson  <alexl@redhat.com>
3332
3333         * docs/README.linux-fb:
3334         Add some example config files that can be used with the URW fonts.
3335         
3336         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
3337         Set up the color ramps for DirectColor mode.
3338
3339 2001-06-11  Havoc Pennington  <hp@redhat.com>
3340
3341         * Release 1.3.6
3342          
3343 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3344
3345         * gdk/linux-fb/gdkwindow-fb.c:
3346         Unify shaped window code and make it repaint the area that used
3347         to be part of the shape, but isn't anymore.
3348
3349 2001-06-11  Havoc Pennington  <hp@redhat.com>
3350
3351         * NEWS: Updates
3352
3353         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
3354
3355         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
3356         
3357 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3358
3359         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
3360         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
3361         passes zero instead, so do we.
3362         
3363 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
3364
3365         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
3366         Deep copy dash_list too.
3367         (_gdk_fb_gc_new): Set default cap_style before
3368         setting values.
3369
3370 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
3371
3372         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
3373         gdk_keymap_get_direction): New functions.
3374
3375 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
3376
3377         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
3378         gtk_tree_model_get_flags by adding a second flag for atk.
3379
3380         * gtk/gtktreemodel.c: make cursor behavior interact better with
3381         mouse presses.
3382
3383 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
3384
3385         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
3386         expand_row/collapse_row to be 2 signals each -- test_expand_row
3387         and row_expanded as well as test_collapse_row and row_collapsed.
3388
3389 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
3390
3391         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
3392         signal name to be changed instead of selection_changed.
3393
3394 2001-06-08  Havoc Pennington  <hp@redhat.com>
3395
3396         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
3397         "scroll_offset" property for notification when the layout offsets
3398         may have changed
3399         (gtk_entry_adjust_scroll): add notify for scroll_offset
3400         (gtk_entry_layout_index_to_text_index): function to compensate for
3401         preedit string when doing coordinate stuff on the entry's layout
3402         (gtk_entry_text_index_to_layout_index): inverse function
3403         (gtk_entry_get_layout_offsets): hook to get current position of
3404         the layout      
3405         (gtk_entry_get_layout): hook to get the layout itself.
3406
3407         * gtk/gtklabel.c (gtk_label_get_layout): new function
3408
3409 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
3410
3411         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
3412         keybinding.
3413         (gtk_tree_view_focus): Fix merge conflict.
3414
3415 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
3416
3417         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
3418         clean up cursor handling.
3419
3420 2001-06-08  Havoc Pennington  <hp@redhat.com>
3421
3422         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
3423         function
3424
3425         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
3426         this function
3427
3428 2001-06-08  Alex Larsson  <alexl@redhat.com>
3429
3430         * gtk/gtkcompat.h.in:
3431         Added compat macros for all old GTK_TYPE_GDK_xxx types.
3432         Fixes bug #52892
3433
3434 2001-06-08  Havoc Pennington  <hp@redhat.com>
3435         
3436         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
3437         parent still
3438
3439 2001-06-08  Havoc Pennington  <hp@redhat.com>
3440
3441         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
3442         don't call g_list funcs on GSList
3443
3444         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
3445         gtk_container_focus(), since some widgets have focusable locations
3446         which are not other widgets. These widgets should not have to be 
3447         containers just to manage the focus. For example, GtkHSV is
3448         currently a container for no good reason. Also, this cleans
3449         up the "if (is_container && is_sensitive && is_drawable)
3450         container_focus ()" mess in widget implementations.
3451
3452         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
3453         function, and have it just call gtk_widget_child_focus().
3454
3455         * gtk/gtkhsv.c: derive from widget not container
3456         
3457         Throughout: fix to reflect GtkContainer::focus change
3458         
3459 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
3460
3461         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
3462         range.  Fix bug #55921
3463
3464         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
3465         (#55920).
3466
3467 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
3468
3469         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
3470         and gdk_keymap_get_current_direction().
3471
3472         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
3473           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
3474         the current locked group, use it to set the keymap
3475         direction.
3476
3477         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
3478         to determine whether we draw a split cursor or use
3479         a jumping cursor based on the current direction.
3480
3481         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
3482         Obey the split cursor setting. 
3483
3484 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
3485
3486         * gtk/gtkimmulticontext.c (activate_cb): Only activate
3487         when toggling on, not when toggling off... (#55906)
3488
3489 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
3490
3491         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
3492         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
3493         in docs. (#55812, Vitaly Tishkov)
3494
3495 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
3496
3497         * demos/gtk-demo/main.c (create_tree): Changed signal name from
3498         selection_changed to changed in signal connection to GtkTreeSelection,
3499         also used g_signal_connectc since GtkTreeSelection is now a GObject.
3500
3501 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
3502
3503         * gtk/gtktreeselection.c: Now it's a GObject instead of a
3504         GtkObject.  The GtkTreeSelection::selection_changed signal is now
3505         the GtkTreeSelection::changed signal.
3506
3507         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
3508         object.
3509
3510         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
3511         object.
3512
3513 2001-06-07  Havoc Pennington  <hp@redhat.com>
3514
3515         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
3516
3517 2001-06-07  Havoc Pennington  <hp@redhat.com>
3518         
3519         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
3520         (not tested yet because with absolute path to srcdir I can't build
3521         atk, but it was broken anyway so this may help) 
3522
3523 2001-06-07  Havoc Pennington  <hp@redhat.com>
3524
3525         * configure.in: output m4macros/Makefile
3526         
3527 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
3528
3529         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
3530         buttons.  Fixes #55460 reported by matthiasc@poet.de.
3531
3532 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
3533
3534         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
3535         expansion/collapsing so it only happens in one place.
3536         (gtk_tree_view_real_expand_row): ditto.
3537
3538 2001-06-07  Havoc Pennington  <hp@redhat.com>
3539
3540         * tests/Makefile.am: add missing -I flag
3541
3542         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
3543
3544         * configure.in: use pkg-config to see if GModule is
3545         supported; fix to properly turn on included loaders 
3546         when GModule isn't supported; don't use AC_CHECK_LIB 
3547         when libs are not installed yet
3548
3549         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
3550
3551         * Makefile.am (SUBDIRS): add m4macros subdir
3552
3553         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
3554         dependencies also.
3555
3556 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
3557
3558         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
3559         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
3560
3561 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
3562
3563         * gtk/gtktreeview.c
3564         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
3565         bindings to expand and collapse rows.
3566         (gtk_tree_view_real_select_cursor_parent): New key binding.
3567         (gtk_tree_view_real_toggle_cursor_row): New key binding.
3568
3569         * gtk/gtkmarshal.list: new
3570         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
3571
3572 2001-06-06  Havoc Pennington  <hp@redhat.com>
3573
3574         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
3575
3576         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
3577         Down to move visually rather than logically, since it confuses 
3578         people. Add -/+ and Ctrl--/+ bindings for logical movement.
3579
3580 2001-06-06  Alex Larsson  <alexl@redhat.com>
3581
3582         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
3583         Fix up error messages.
3584
3585 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
3586
3587         * gtk/gtktooltips.h: Include gtkwidget.h 
3588         (#55798, Karl Nelson)
3589
3590         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
3591         a valid latin-1 character. (Marc Lehmann, #35467)
3592
3593         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
3594         (Marc Lehmann, #35467)
3595         
3596 2001-06-05  Alex Larsson  <alexl@redhat.com>
3597
3598         * demos/gtk-demo/appwindow.c (do_appwindow):
3599         Don't swap the order of the args to gtk_widget_destroyed.
3600
3601         * tests/testgtk.c (destroy_properties):
3602         Don't crash when the properties window is destroyed.
3603
3604         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
3605         Use with_mnemonics to handle the case of stock items with
3606         underscores in them.
3607
3608 2001-06-05  Havoc Pennington  <hp@redhat.com>
3609
3610         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
3611         gtk_text_iter_reorder
3612
3613 2001-06-05  Havoc Pennington  <hp@redhat.com>
3614
3615         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
3616
3617 2001-06-05  Havoc Pennington  <hp@redhat.com>
3618
3619         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
3620         to the range that was set
3621
3622         * gtk/gtkrange.c: add value_changed signal, primarily 
3623         intended for use with GtkScale
3624         (gtk_range_set_increments): new function
3625         (gtk_range_set_range): new function with weird name
3626         (gtk_range_set_value): new function
3627         (gtk_range_get_value): new function
3628
3629         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
3630         from gtk_spin_button_get_value_as_float(). Compat #define
3631         added for get_value_as_float.
3632
3633         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
3634
3635         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
3636
3637 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
3638
3639         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
3640
3641 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
3642
3643         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
3644
3645         * tests/testgtk.c (create_tooltips): Remove usage of
3646         gtk_widget_set().
3647
3648 2001-06-05  Havoc Pennington  <hp@redhat.com>
3649
3650         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
3651
3652         Applying patch from Jeff Franks, with function docs added.
3653         
3654         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
3655         remove call to set_mnemonic_widget, change docs a bit.  
3656
3657         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
3658         new function
3659
3660         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
3661         new function
3662
3663         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
3664
3665         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
3666         function
3667         (gtk_radio_button_new_with_mnemonic_from_widget): new function
3668
3669         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
3670         new function
3671
3672         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
3673         function        
3674
3675         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
3676         auto-selection of mnemonic widget.
3677
3678 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
3679
3680         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
3681         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
3682         (gtk_tree_view_column_set_min_width): ditto.
3683
3684 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
3685
3686         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
3687         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
3688
3689 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
3690
3691         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
3692         gtk_clist_thaw().
3693
3694 2001-06-04  Havoc Pennington  <hp@pobox.com>
3695
3696         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
3697         releases for buttons 6, 7
3698
3699 2001-06-04  Havoc Pennington  <hp@redhat.com>
3700
3701         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
3702         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
3703         #55562
3704
3705 2001-06-04  Havoc Pennington  <hp@redhat.com>
3706
3707         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
3708         where text_view->layout == NULL by assuming its size is 0, 
3709         i.e. same as if we haven't done any reflow. Reported by 
3710         Hidetoshi Tajima #55448 
3711
3712 2001-06-04  Havoc Pennington  <hp@redhat.com>
3713
3714         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
3715         and 7 for scroll left/right, from Thomas Broyer
3716
3717 2001-05-10  Havoc Pennington  <hp@redhat.com>
3718
3719         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
3720         we need to parse the xsetting as if it were an RC file string.
3721
3722         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
3723         value of palette from settings, not from static variable
3724
3725         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
3726         xsettings translation table
3727
3728         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
3729         hardcoding the toolbar style conflicts with new customizable 
3730         toolbar style philosophy
3731         (gtk_toolbar_class_init): add settings for default toolbar style;
3732         these are used unless the app specifically forces a toolbar style
3733
3734         * gtk/gtksettings.c (settings_install_property_parser): only
3735         return at the start if we warn and parser == NULL
3736
3737         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
3738         palette changed handler so we don't notify dead color selections
3739
3740         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
3741         xthickness/ythickness of 0 or 1 properly 
3742         (gtk_default_draw_resize_grip): clear the background behind the
3743         resize grips, and align to bottom right if we square the 
3744         area to be drawn.
3745
3746         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
3747         statusbar label to 1, so it doesn't make toplevels resize oddly
3748         (gtk_statusbar_size_request): add grip size to request
3749         (gtk_statusbar_size_allocate): hack so the hbox still works with 
3750         the grip size in the request
3751
3752         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
3753         bug where showing all on a toplevel makes the toolbar 
3754         button text appear despite the toolbar mode
3755
3756         * gtk/gtkmenubar.c: add internal padding style property
3757
3758         * gtk/gtktoolbar.c: Add internal padding style property; add
3759         shadow type style property
3760
3761         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
3762         state; and put Container::border_width outside the frame
3763
3764         * gtk/gtktextview.c: don't draw focus rectangle if we're in
3765         interior focus mode, we just use blinking cursor
3766
3767 2001-06-04  Havoc Pennington  <hp@redhat.com>
3768
3769         * configure.in: Make gdk-pixbuf have same version number as GTK
3770
3771 2001-06-04  Havoc Pennington  <hp@redhat.com>
3772
3773         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
3774         digits greater than 6. If there actually are limits (which there
3775         likely aren't), should clamp to them not warn.
3776         (gtk_spin_button_new_with_range): don't take log of 0
3777         (gtk_spin_button_size_request): use digits to compute size
3778         request, rather than step increment.
3779
3780         * tests/testgtk.c (create_spins): test larger values of digits
3781         
3782         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
3783         font on map not expose, so we don't get weirdness during scrolling
3784
3785 2001-06-04  Havoc Pennington  <hp@redhat.com>
3786
3787         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
3788         Sam Solon, bug #54577, update value even if not drawable.
3789
3790 2001-06-04  Havoc Pennington  <hp@redhat.com>
3791
3792         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
3793         SCROLL_LEFT, reported by Thomas Broyer.
3794
3795 2001-06-04  Havoc Pennington  <hp@redhat.com>
3796
3797         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
3798         Process updates immediately, to prevent funny lag effect
3799         when scrolling, at some mild potential efficiency cost.
3800
3801 2001-06-04  Havoc Pennington  <hp@redhat.com>
3802
3803         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
3804         slider on the click.
3805
3806 2001-06-03  Havoc Pennington  <hp@pobox.com>
3807
3808         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
3809         hscale/vscale details, so we can use it for scrollbar as well.
3810
3811         * tests/testgtk.c (reformat_value): honor digits from GtkScale
3812
3813         * gtk/gtkenums.h (GtkTroughType): Remove this enum
3814         (GtkScrollType): add START and END from GtkTroughType
3815
3816         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
3817         its x/y arguments
3818
3819         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
3820         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
3821         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
3822         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
3823         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
3824
3825         Notable changes in the process:
3826          
3827         - stepper_size style property is the height for vertical 
3828           ranges, width for horizontal; the other dimension matches
3829           the trough size
3830         - add ability to do NeXT-style steppers (and several other styles
3831           that don't make any sense)
3832         - added min_slider_length, fixed_slider_length properties to
3833           GtkScrollbar
3834         - cleaned some private (or at least useless) functions out of
3835           gtkscale.h    
3836         - moved bindings to GtkScale from subclasses, even arrow keys,
3837           since blind users don't know scale orientation.
3838         - change move_slider action signal to use new GtkScrollType,
3839           remove GtkTroughType argument
3840         - digits rounds the values a range will input to the given 
3841           number of decimals, but will not try to force adjustment 
3842           values set by other controllers. That is, we no longer
3843           modify adjustment->value inside a value_changed handler.
3844         - added getters for GtkScale setters
3845         - middle-click begins a slider drag
3846         
3847 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
3848
3849         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
3850         getting the focus code to work.
3851         (gtk_tree_view_class_init): Add a bunch of keybindings.
3852
3853         * gtk/gtktreeviewcolumn.c
3854         (gtk_tree_view_column_set_cell_data_func):
3855         s/GtkCellDataFunc/GtkTreeCellDataFunc.
3856         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
3857         of "properties_changed" to help justify the death of the latter
3858         signal. (-:
3859
3860         * tests/testtreefocus.c (main): Let some columns be focussable to
3861         test focus better.
3862
3863 2001-06-01  Havoc Pennington  <hp@redhat.com>
3864
3865         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
3866         
3867         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
3868         overwrite in overwrite mode if we already deleted the selection
3869         and replaced it with new text.  
3870
3871         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
3872         selection to an empty range, clear the clipboard if we owned it.
3873         (gtk_label_set_selectable): give up selection if we become
3874         unselectable.
3875         (gtk_label_state_changed): override state changed to unselect text
3876         when insensitive
3877         (get_text_callback): add paranoia check that indexes aren't
3878         outside of label->text
3879         (gtk_label_select_region): make -1 for start_offset mean "end of
3880         label," for consistency with GtkEditable
3881
3882         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
3883         GTK_DIALOG_NO_SEPARATOR flag
3884
3885 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
3886
3887         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
3888         notifications on non-existant "enable_arrow_keys".
3889         (#53753, Skip Montanaro)
3890
3891 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
3892
3893         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
3894         GDK_TYPE_RECTANGLE.
3895
3896         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
3897         of allocation argument be GDK_TYPE_RECTANGLE.
3898
3899 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
3900
3901         * gtk/gtkoptionmenu.c: Account for the fact that the border
3902         width is _outside_ the window. (Fixes #54585, bug found
3903         by Bastien Nocera.)
3904
3905 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
3906
3907         * gtk/gtksettings.c (gtk_settings_get_property): Validate
3908         value from GDK settings against parameter spec.
3909
3910         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
3911         to temporary values and use g_value_transform(), since
3912         thinking that GValue was going to be easy or efficient
3913         to use was, of course, a mistake.
3914
3915         * gtk/gtksettings.c: Add cursor blink setting.
3916         
3917         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
3918
3919         * gtk/gtkentry.c: Add cursor blinking.
3920
3921         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
3922         cursor blink global settings.
3923
3924         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
3925         for :text_position in places where it is missing.
3926
3927 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
3928
3929         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
3930
3931 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
3932
3933         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
3934         not pkg-config. (#51032)
3935
3936         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
3937         (fixes #51952, James Henstridge)
3938         
3939 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
3940
3941         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
3942         Rename to the more correct gtk-go-up.
3943
3944         * gtk/stock-icons/stock_menu_sort_ascending.png:
3945         Added new file.
3946         
3947         * gtk/stock-icons/stock_menu_sort_descending.png:
3948         Changed to show descending instead of ascending.
3949
3950         * gtk/gtkiconfactory.c:
3951         Added menu size icon to sort ascending.
3952
3953         * gtk/stock-icons/Makefile.am:
3954         Added stock_menu_sort_ascending.png.
3955         
3956         * gtk/gtkseparatormenuitem.c:
3957         Use correct typenames.
3958
3959 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
3960
3961         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
3962         gulong as in GSignal.
3963
3964 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
3965
3966         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
3967         instances of GtkCellRenderer in code (all but dnd icon code).
3968         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
3969         there, and I can do multiple Cells per column.
3970
3971         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
3972
3973         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
3974         when model was unreffed prior to removing the row reference.
3975
3976 2001-05-25  Havoc Pennington  <hp@redhat.com>
3977
3978         * gtk/gtkiconfactory.c: fix so that default icons are created if 
3979         you call gtk_stock_list_ids()
3980
3981         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
3982         in list
3983
3984 2001-05-25  Havoc Pennington  <hp@redhat.com>
3985
3986         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
3987         set can render without falling back to missing image icon
3988
3989         * gtk/gtktextview.c (gtk_text_view_size_request): request full
3990         size of text, instead of random values
3991
3992         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
3993         size of tree view, instead of random values
3994
3995         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
3996         image in an appropriate size
3997
3998         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
3999         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
4000
4001         Throughout: fix GTK_STOCK_BUTTON_ instances
4002         
4003         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
4004         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
4005         Add a bunch of new stock items/icons
4006
4007         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
4008         new function, convenience for inserting columns with a data func
4009
4010         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
4011         (_gtk_icon_factory_list_ids): use list of all factories to
4012         generate a list of all known IDs
4013
4014         * gtk/gtkstock.c (gtk_stock_list_ids): replace
4015         gtk_stock_list_items() with a function that returns all IDs known
4016         including those for GtkIconFactory.
4017
4018 2001-05-25  Hans Breuer  <hans@breuer.org>
4019
4020         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
4021         work -> check boxes and radio buttons are drawn now, even on win9x.
4022         Improved line settings a bit, still no clue how to get really dotted
4023         lines on win9x, on NT it's PS_ALTERNATE.
4024
4025         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
4026         GDK_HINT_MIN_SIZE as well
4027
4028         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
4029
4030         * gtk/gtk.def : updated
4031
4032         * gtk/gtktreeprivate.h : change column_drop_func to be a function
4033         pointer not a function pointer pointer
4034
4035         * tests/testdnd.c : include <stdlib.h> for putenv prototype
4036
4037         * tests/testsocket.c : made it compile on win32 again
4038
4039         * tests/makefile.msc : one more test-app uses prop-editor.obj
4040
4041 2001-05-22  Havoc Pennington  <hp@pobox.com>
4042
4043         * gtk/gtkbin.c (gtk_bin_get_child): New function
4044
4045 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
4046
4047         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
4048         to ignore when doing compose processing.
4049
4050 2001-05-22  Joe Shaw  <joe@ximian.com>
4051
4052         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
4053         Simplify as suggested by Havoc. Just get the last iter and work
4054         backward to the tag instead of getting a line and working back from
4055         there. Fixes passing in an invalid offset to
4056         iter_init_from_byte_offset().
4057
4058 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
4059
4060         * gtk/gtktreeview*.h: 
4061         * gtk/gtkcell*.h:
4062         * gtk/gtk*store.h:
4063         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
4064         macros to all objects.
4065
4066 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
4067
4068         * gtk/gtkcellrenderertext.c
4069         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
4070         with very large (TM) amounts of text.  May be moved to
4071         GtkCellRenderer in the future, though I'm not sure it wants to be
4072         this accessible.
4073
4074         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
4075         More sanity brought to this class.  I like it.
4076
4077         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
4078         case.  Kids, don't try this at home.
4079
4080         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
4081         convenience function.
4082
4083         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
4084
4085 2001-05-21  Alexander Larsson  <alexl@redhat.com>
4086
4087         * gtk/gtkfontsel.c:
4088         Added properties. Based on patch by Lee Mallabone.
4089
4090         * gtk/gtkruler.c:
4091         * gtk/gtkhruler.c:
4092         * gtk/gtkvruler.c:
4093         * gtk/gtktext.c:
4094         * gtk/gtktextview.c:
4095         Converted GtkArg to GParam. Based on patches by John Margaglione.
4096
4097         * tests/Makefile.am:
4098         * tests/testtext.c:
4099         Add a property editor to testtext.
4100         
4101 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
4102
4103         * gtk/gtk{h,v,}paned.c: Only show the separator if 
4104
4105         * configure.in: Fixed reversed conditional causing all image
4106         libraries to be linked in.
4107
4108 2001-05-21  Joe Shaw  <joe@ximian.com>
4109
4110         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
4111         that top_y needs to be >= 0.
4112
4113 2001-05-11  Havoc Pennington  <hp@pobox.com>
4114         
4115         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
4116         losing connection to the X server.
4117
4118 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
4119
4120         * configure.in: Start checks for X from pangox/pangoxft
4121         CFLAGS to avoid duplicate libraries.
4122
4123         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
4124
4125         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
4126         to include gobject.
4127         
4128 2001-05-18  Alexander Larsson  <alexl@redhat.com>
4129
4130         * gtk/gtkspinbutton.c:
4131         Convert GtkArgs to GParams. Based on patch by John Margaglione.
4132         Also do size request reasonable for MAXDOUBLE. Previously it printed
4133         the limits to a buffer and overran it. Instead do it using log10() and
4134         limit the width to 10 digits.
4135         
4136         * gtk/gtkwidget.c (gtk_widget_get_property):
4137         Correctly handle setting the parent property to NULL.
4138
4139 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
4140
4141         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
4142         style attributes even if the widget isn't realized.
4143
4144         * demos/gtk-demo/main.c: Use a slightly smaller font.
4145
4146 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
4147
4148         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
4149         This is something that only a widget writer would ever want
4150         to change.
4151
4152         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
4153         gtk_signal_emit_by_name().
4154
4155         * gtk/gtkviewport.c: Fix some warnings.
4156
4157         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
4158         allowing the requisitions of multiple widgets to be grouped
4159         together.
4160
4161         * tests/testgtk.c: Add GtkSizeGroup test
4162
4163         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
4164
4165         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
4166         warnings.
4167
4168         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
4169
4170 2001-04-28  Martin Baulig  <baulig@suse.de>
4171
4172         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
4173         to gtk_image_menu_item_set_icon() and made it work if there's already
4174         an image.
4175         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
4176         (gtk_image_menu_item_new_with_label): New function.
4177
4178 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
4179
4180         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
4181         highlighting code!!!!  The result is okay so long as you don't try
4182         to stress it.  It also highlights a bug in the TextView so it's in
4183         an unproportional font right now until it's fixed.
4184
4185         *demos/gtk-demo/*.c: Clean up code a bit to make it
4186         ugly-parser(TM) friendly. (-:
4187
4188 2001-05-17  Joe Shaw  <joe@ximian.com>
4189
4190         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
4191         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
4192         if it is only partially onscreen.
4193
4194 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
4195
4196         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
4197         not by characters.
4198
4199         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
4200         are not zero or one; that is, when graphemes of multiple characters
4201         are involved.
4202
4203         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
4204         FIXME.
4205
4206 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
4207         
4208         * gtk/gtkbbox.c:
4209         Add properties, based on patch by Lee Mallabone.
4210
4211         * gtk/gtknotebook.c:
4212         * gtk/gtktoolbar.c:
4213         Convert from GtkArg to GParam, based on patch by John Margaglione.
4214         
4215         * gtk/gtkhscale.c:
4216         * gtk/gtkvscale.c:
4217         * gtk/gtkhscrollbar.c:
4218         * gtk/gtkvscrollbar.c:
4219         * gtk/gtkrange.c:
4220         Move adjustment property to GtkRange.
4221
4222         * gtk/gtklabel.c:
4223         Setup mnemonics on property changes
4224
4225         * gtk/gtkwidget.c (gtk_widget_get_property):
4226         GdkExtensionMode is an enum, not a flag. Set it with
4227         g_value_set_enum ().
4228
4229         * tests/prop-editor.c:
4230         Better propery editor.
4231
4232         * tests/testgtk.c:
4233         Add new property test. Pass zero to the property editor to
4234         get properties from all derived types.
4235         
4236 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
4237
4238         * autogen.sh (have_automake): Require libtool-1.4,
4239         automake-1.4p1.
4240
4241         * acinclude.m4: Remove libtool macros.
4242
4243         * gdk-pixbuf/Makefile.am: Add dependencies to loade
4244         modules.
4245
4246         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
4247         for libgdk.
4248
4249         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
4250         libgdk.la for libgtk.
4251
4252         * modules/input/Makefile.am: Make modules have full
4253         dependencies.
4254
4255 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
4256
4257         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
4258         #54699 where paths weren't being checked for correctness.
4259
4260 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
4261
4262         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
4263         in any order you wan, whether or not the column is added to the
4264         tree, or the tree is realized.  Yay!
4265
4266         * gtk/gtktreeviewcolumn.c
4267         (gtk_tree_view_column_setup_sort_column_id_callback): handle
4268         sorting columns a lot saner
4269
4270         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
4271         new function to actually set wether or not a column is
4272         reorderable.
4273
4274         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
4275         if we have 'em.
4276
4277         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
4278         Fix nasty bug where we were showing the button just before
4279         realizing it.  As a result, the parent window was
4280         tree_view->window instead of tree_view->priv->header_window.
4281
4282         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
4283         to let you easily reorder a list or tree.
4284
4285 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
4286
4287         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
4288         from args to properties.
4289
4290 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
4291
4292         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
4293         from args to properties. (#51957)
4294
4295         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
4296         calls to after ->set_property call.
4297
4298 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
4299
4300         * tests/prop-editor.c: Block against redundant changes.
4301
4302         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
4303         properties.
4304
4305 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
4306
4307         * gdk/gdkpixmap.h: Remove creative formatting.
4308
4309 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
4310
4311         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
4312         property API. (#51669)
4313
4314         * gtk/gtkscale.c: Patch from John Margaglione converting to
4315         property API. (#51891)
4316
4317         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
4318         to property API. (#50985)
4319
4320 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
4321
4322         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
4323         buffering state across expose event, so we still call end_paint().
4324
4325 2001-05-11  Alexander Larsson  <alexl@redhat.com>
4326
4327         * gtk/gtkhsv.c (paint_triangle):
4328         Expose the ring in the triangle at the correct place when
4329         exposing just a part of the triangle.
4330
4331         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
4332         Return FALSE, or window focusing will not work.
4333
4334 2001-05-11  Havoc Pennington  <hp@pobox.com>
4335
4336         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
4337         #54144
4338
4339         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
4340         bug #54330
4341
4342 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
4343
4344         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
4345         propagate exposes to NULL child.
4346
4347         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
4348         against not having one of the scrollbars.
4349
4350         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
4351         we don't keep a mnemonic window if we have no mnemonic installed.
4352
4353 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
4354
4355         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
4356         it has the _important_ side effect of initializing a class.
4357
4358 2001-05-10  Alexander Larsson  <alexl@redhat.com>
4359
4360         * gdk/linux-fb/gdkprivate-fb.h:
4361         Make sure you can compile out the implementation/wrapper assert
4362         macros.
4363
4364         * gdk/linux-fb/gdkdrawable-fb2.c:
4365         Check implementation/wrappers, initialize type for pixmap dummys.
4366
4367         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
4368         Hide the cursor if reading from the screen.
4369
4370         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4371         Fix sign bug in tiling code.
4372
4373         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
4374         Handle background pixmaps.
4375
4376 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
4377
4378         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
4379         function to let user control where columns are dragged.
4380
4381         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
4382         Escape is pressed.
4383
4384 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
4385
4386         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
4387         "columns_changed" signal.
4388         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
4389         motion code to draw arrows to the side if indicator is outside the
4390         widget.
4391         (gtk_tree_view_map_expanded_rows): Implement.
4392
4393 2001-05-07  Alexander Larsson  <alexl@redhat.com>
4394
4395         * demos/testpixbuf-save.c: 
4396         * demos/testpixbuf-drawable.c:
4397         Include gdkfb.h on linux-fb.
4398
4399 2001-05-07  Alexander Larsson  <alexl@redhat.com>
4400
4401         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
4402         New function for getting toplevel window at position.
4403         (gdk_drag_find_window): Use get_toplevel_window () instead
4404         of gdk_window_get_pointer(). (gdk_drag_status): Use
4405         correct context for getting window.
4406
4407         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
4408         g_strdup the atom name.
4409
4410         * gdk/linux-fb/gdkwindow-fb.c:
4411         Costmetic fix.
4412
4413         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
4414         Add code for changing cursor on linux-fb backend (same as
4415         win32).
4416
4417 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
4418
4419         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
4420         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
4421         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
4422         report was not for the development branch of GTK+, but it applies
4423         anyways).
4424
4425 2001-05-04  Havoc Pennington  <hp@redhat.com>
4426
4427         * configure.in: fix some shell typos
4428
4429         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
4430
4431         * gtk/gtkimage.c: handle animations
4432
4433         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
4434         border_width * 2, not just border_width
4435
4436         * gtk/gtkscale.c: add "format_value" signal to allow people
4437         to override the way values are drawn.
4438         (gtk_scale_get_value_size): fix width/height mistake,
4439         and compute size from actual displayed text, not 
4440         from made-up text.
4441
4442         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
4443         signal registration
4444
4445         * tests/testtext.c: Add "Remove all tags" menu item for testing
4446
4447         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
4448
4449         * demos/gtk-demo/main.c (main): add hack so we can find modules
4450         without installing gtk
4451
4452         * demos/gtk-demo/textview.c (insert_text): demo font scaling
4453
4454         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
4455         factor)
4456         (gtk_cell_renderer_text_set_property): remove some bogus
4457         g_object_notify
4458
4459         * gtk/gtktexttag.c: add "scale" property which is a font scaling
4460         factor
4461
4462         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
4463         to layout
4464
4465         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
4466         gtk_text_iter_is_first
4467
4468 2001-01-06  Hans Breuer  <hans@breuer.org>
4469
4470         * gdk/gdk.def : updated exports
4471
4472         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
4473         gdk won't compile anymore
4474  
4475         * gdk/win32/gdkevents-win32.c : initialize ret_val when
4476         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
4477         Improved gdk_flush () to not only do pending drawing operations
4478         but also process all currently pending events. This should make
4479         the behaviour more similar to the X11 version.  
4480
4481         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
4482         option needs to be set even if there is no GDK_GC_BACKGROUND.
4483         (gdk_win32_hdc_get) : use predraw_set_background () independent
4484         of value_mask. This allows to draw dashed lines leaving the original
4485         background intact.
4486
4487         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
4488         after processing, because we can't reuse it as the X11 version does.
4489
4490         * gtk/gtk.def : updated exports
4491
4492         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
4493         would like to get rid of this file again, and use straight
4494         makefile.msc again, as the other Gtk+ subdirs do)
4495
4496         * test/makefile.msc (new file) : build the test apps here
4497
4498 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
4499
4500         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
4501         strike-through setting
4502         (gdk_draw_layout_line_with_colors): Render strike-through
4503
4504 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
4505
4506         * Release 1.3.5
4507
4508         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
4509
4510         * NEWS: Updated
4511
4512         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
4513         Makefile breakage.
4514
4515 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
4516
4517         * demos/gtk-demo/images.c (progressive_timeout): Fix
4518         typo in filename.
4519
4520         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
4521         out FIXME warning; just too annoying.
4522
4523 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
4524
4525         * gdk/linux-fb/gdkcolor-fb.c:
4526         Better error messages.
4527
4528         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
4529         Initialize abs_x and abs_y.
4530         
4531         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
4532         Correct handling of stipple offset.
4533
4534         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
4535         Treat directcolor framebuffers as truecolor.
4536         
4537 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
4538
4539         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
4540         dependency on Atk for accessibility support.
4541
4542         * configure.in **/Makefile.am: Major reworking of substituted
4543         variables for CFLAGS/LIBS to make a lot more sane and 
4544         keep the the compile/link lines a bit shorter.
4545
4546         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
4547
4548 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
4549
4550         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
4551         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
4552         use _gtk_boolean_handled_accumulator.
4553
4554 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
4555
4556         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
4557         to fix things so clicking inside selection leaves cursor
4558         at point where clicked. (#50324)
4559
4560         * gtk/gtksettings.c (gtk_settings_class_init): Restore
4561         sane value for default double click time.
4562
4563         * tests/testtext.c (test_init): Really path to input modules.
4564
4565 2001-05-03  Sven Neumann  <sven@convergence.de>
4566
4567         * demos/testpixbuf-save.c: include target-specific headers as
4568         done in testpixbuf-drawable.c
4569
4570 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
4571
4572         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
4573         new_text_length appropriately when we run into the 
4574         size limit for the entry. (#53445, reported by Jeff Franks)
4575
4576         * tests/testgtk.c (create_entry): Remove most of the
4577         property toggle buttons. Replace with a "Props" button
4578         that brings up a property editor.
4579
4580         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
4581         Split the property editor code out for reuse, improve.
4582
4583 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
4584
4585         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
4586         trap errors around calls to XSetInputFocus since we have
4587         no way of knowing reliably whether we are viewable or
4588         not. (#53947)
4589
4590 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
4591
4592         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4593         fix bug in dropping columns.  Moving columns now basically works
4594         modula some fine tuning.
4595
4596 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
4597
4598         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
4599         autoscroll support.  It mostly works, but could use some fine
4600         tuning.
4601         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
4602         Actually move the column.
4603
4604 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
4605
4606         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
4607           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
4608           New default theme! A slighly improved version of the 2.0 Raleigh
4609           theme, with Windows-esque focus/drawing default. 
4610           (GtkWidget::interior_focus defaults to TRUE.)
4611
4612         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
4613
4614 2001-04-30  Havoc Pennington  <hp@pobox.com>
4615
4616         * tests/testtext.c (line_numbers_expose): fix to work with
4617         gtk_paint_layout change
4618
4619 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
4620
4621         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
4622           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
4623           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
4624           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
4625
4626         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
4627           with GtkWidget::interior_focus = TRUE better.
4628
4629         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
4630         ::default_outside_border for more flexibility.
4631
4632         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
4633         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
4634         change that had to be made with g_object_get.
4635
4636 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
4637
4638         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
4639         (gtk_tree_view_move_column_after): Clean up interface. 
4640
4641 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
4642
4643         * gtk/gtkpacker.h:
4644         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
4645          to gtkenum.h.
4646
4647         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
4648         handled in switch).
4649
4650         * gtk/Makefile.am:
4651         (gtk.defs): generate enum portions with  glib-mkenums.
4652         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
4653         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
4654         
4655         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
4656         addition.
4657
4658         * docs/Changes-2.0.txt: keep a note on signal handlers now
4659         not getting emitted during the emission they were connected within.
4660
4661 2001-04-28  Havoc Pennington  <hp@pobox.com>
4662
4663         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
4664
4665 2001-04-24  Havoc Pennington  <hp@redhat.com>
4666
4667         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
4668         (gtk_text_layout_move_iter_to_next_line): fix these two for
4669         invisible text, lots of other stuff still hosed.
4670
4671         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
4672         new function, replaces the get/set palette stuff. This function 
4673         is intended for use by libgnomeui which should set the hook to a
4674         thing which sets the palette in GConf, and we need the
4675         GConf-to-xsettings proxy which will result in the change being
4676         propagated back to the GTK app.
4677
4678         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
4679         about unusable signals that it may be because the signal has 
4680         parameters.
4681
4682         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
4683         style, otherwise gtkrc.c won't know to create a new GtkStyle for
4684         it.
4685         (gtk_widget_modify_color_component): call
4686         gtk_widget_modify_style() so the rc style will get copied.
4687         (gtk_widget_modify_font): ditto
4688
4689         * gtk/gtkrc.c: make a couple variables static
4690
4691         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
4692         help button by default, since it does nothing
4693
4694         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
4695         around with UI
4696
4697         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
4698         so we can have tooltips
4699
4700         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
4701         can have tooltips
4702
4703         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
4704         GDK_ENABLE_BROKEN, because its memory behavior is completely
4705         hosed.
4706
4707         * gtk/gtknotebook.c: remove key press handler, replace with
4708         binding set, add numeric keypad support
4709
4710         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
4711
4712         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
4713
4714         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
4715         addition to plain Delete
4716
4717         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
4718         GDK_KP_Enter in addition to GDK_Return
4719
4720         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
4721         activate on entry instead of key press
4722         (gtk_font_selection_on_clist_key_press): get
4723         rid of this signal handler, not needed with new font sel.
4724
4725         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
4726         no-longer-needed emit_stop_by_name(), just return TRUE
4727
4728         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
4729         cruft, this widget is no longer focusable.
4730
4731         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
4732         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
4733         move_slider action signal, add binding set for vscale/hscale, in
4734         the process support numeric keypad
4735
4736         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
4737         make GDK_Return and GDK_KP_Enter activate the entry via 
4738         binding set, instead of hardcoded.
4739
4740 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
4741
4742         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
4743         code.  Some documentation added.
4744
4745 2001-04-27  Havoc Pennington  <hp@redhat.com>
4746
4747         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
4748
4749         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
4750
4751         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
4752         line/para separators
4753         (gtk_entry_create_layout): set single paragraph mode on the layout
4754
4755         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
4756         spacing between the image and label; instead, inside a button box 
4757         the button will get extra space that will go there, but if people 
4758         configure button box for 0 chubbiness, then there's no spacing.
4759
4760         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
4761         and min/max size style properties, so people can tune their
4762         chubbiness.
4763
4764         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
4765         functions
4766
4767         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
4768         space_style, and button_relief into style properties, remove
4769         functions for setting them
4770         
4771         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
4772         it back down
4773
4774         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
4775         types from gtk_widget_style_get
4776
4777         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
4778         with a style property.
4779
4780         * gdk/x11/gdkevents-x11.c: namespace the settings
4781
4782         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
4783
4784         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
4785         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
4786         be used. Also, translate doc strings for settings. Also, namespace
4787         the double-click-time property. Also, remove bell properties crap.
4788
4789 2001-04-27  Sven Neumann  <sven@gimp.org>
4790
4791         * Makefile.am: before creating links, check if pkg-config files
4792         exist for the default target. Otherwise link to the pkg-config files
4793         that got installed with this build.
4794
4795 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
4796
4797         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
4798         dragging code.  Revealed some (potential) GdkWindow bugs.
4799
4800         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
4801         _gdk_window_init_position to the end of reparent to fix the case
4802         of reparenting when new_x != old_x and new_y != old_y.
4803
4804 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
4805
4806         * gtk/gtkentry.c (strstr_len): Fix optimization that
4807         was correct for the use here, but completely incorrect
4808         in general.
4809
4810 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
4811
4812         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
4813         until patch adding gtk_window_set_size() is recommitted. 
4814
4815         * **Makefile.am configure.in gdk/x11/gdkim-11.c
4816           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
4817           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
4818           (#10784)
4819
4820 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
4821
4822         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
4823         window == NULL in a number of cases.
4824
4825         * tests/testdnd.c: Set module path for gdk-pixbuf.
4826
4827 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
4828
4829         * gtk/Makefile.am xembed.h: File containing #defines
4830         for XEMBED protocol.
4831
4832         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
4833
4834         - Change protocol from old plug/socket specific protocol
4835           to XEMBED draft
4836         - Various fixes to work with GTK+-2.0
4837
4838         Still quite a bit of work to do here to handle initiation
4839         from the socket side (as specified by XEMBED), to handle
4840         the more advanced features of XEMBED, and to figure out
4841         a good way to handle same-app embedding with less overhead
4842         than using full XEMBED.
4843
4844 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
4845
4846         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
4847         track of whether the toplevel has the focus; only send
4848         focus-in events to the focus widget when the window
4849         actually has the focus.
4850
4851 2001-04-25  Havoc Pennington  <hp@pobox.com>
4852
4853         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
4854         were still in the header
4855
4856 2001-04-24  Alexander Larsson  <alexl@redhat.com>
4857
4858         * gtk/gtkclist.[ch]:
4859         * gtk/gtkctree.c:
4860         When there is a row highlighted for D'n'D it must alse
4861         be painted hightlighted on exposes. Otherwise exposes from
4862         the icon being dragged will mess up the hightlight.
4863
4864         * gtk/gtkfontsel.c:
4865         Don't recenter selected font when exposing the font family
4866         clist. This means you can now actually scroll the font family
4867         list.
4868
4869         * gtk/gtknotebook.c:
4870         Fix focus movement on scrolling tabs that are placed on the left
4871         and right.
4872
4873 2001-04-21  Havoc Pennington  <hp@pobox.com>
4874
4875         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
4876         empty/invisible lines.
4877
4878         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
4879         (gtk_text_iter_set_visible_line_index): new functions to set
4880         indexes excluding invisible text
4881
4882         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
4883         index
4884
4885         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
4886         (gtk_text_iter_get_visible_line_offset): new functions to 
4887         get indexes excluding invisible text
4888
4889         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
4890         bunch of extra padding that served no purpose
4891
4892         * gtk/gtkdialog.c: Make all the spacings configurable via style
4893         properties, for chubbiness configuration in themes
4894
4895         * tests/testtext.c: fix path to the immodules.
4896         
4897 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
4898
4899         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
4900         got munched by #endif.
4901
4902         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
4903
4904         * gtk/gtktreeview.c: Refactored code to clean up a number of
4905         events.
4906
4907         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
4908         values to make consistent with other functions.  Spotted by Jeff
4909         Franks <jcf@tpg.com.au>.
4910
4911         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
4912         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
4913
4914 2001-04-23  Sven Neumann  <sven@gimp.org>
4915
4916         * gtk/Makefile.am
4917         * gtk/gtkplug.c
4918         * gtk/gtksocket.c: on request of Owen, reverted my last change 
4919         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
4920
4921 2001-04-23  Sven Neumann  <sven@gimp.org>
4922
4923         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
4924         compile for non-X11 targets again
4925
4926 2001-04-20  Alexander Larsson  <alexl@redhat.com>
4927
4928         * gtk/gtkcolorsel.[ch]:
4929         API Change. Take GdkColor arguments instead of gdouble *.
4930         Leave the old gtk_color_selection_set_color for compatibility,
4931         but marked deprecated.
4932         Do correct rounding when converting RGB <-> HSV.
4933         
4934         * gtk/gtkcolorseldialog.c:
4935         * tests/testgtk.c:
4936         Use new GtkColorSelection API.
4937
4938         * gtk/gtkhsv.c:
4939         Fix problem selecting colors in triangle when Hue is 330.
4940         Fix some black dots around the HSB triangle.
4941         
4942         * gtk/gtkfilesel.c:
4943         return FALSE from the focus_in_event handler to fix focus problems.
4944
4945 2001-04-18  Havoc Pennington  <hp@redhat.com>
4946
4947         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
4948         set, so keybindings are configurable    
4949         (gtk_window_activate_default): Change to activate the focus widget
4950         instead if there's a focus widget, to be consistent with the
4951         behavior that previously existed in key_press_event
4952
4953 2001-04-18  Havoc Pennington  <hp@redhat.com>
4954
4955         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
4956
4957 2001-04-18  Havoc Pennington  <hp@redhat.com>
4958
4959         Close bug #50615:
4960         
4961         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
4962         the layout
4963
4964         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
4965
4966         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
4967
4968         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
4969         
4970         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
4971         to blue for base, in addition to bg
4972         
4973 2001-04-18  Havoc Pennington  <hp@redhat.com>
4974
4975         * tests/testgtk.c (create_image): allow shrinking the image window
4976         to test that we clip to allocation.
4977
4978         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
4979         #9845
4980
4981         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
4982
4983 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
4984
4985         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
4986         mode on shm segments to 0600. We'll see who complains.
4987
4988         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
4989         _gdk_windowing_window_destroy() AFTER recursing through
4990         children.
4991
4992         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
4993         testsocket_child on X.
4994
4995         * tests/testsocket[_child].c: Fix uses of
4996         gtk_window_get_default_accel_group().
4997
4998         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
4999
5000         * gdk/gdkimage.c: (gdk_image_get):
5001         Deal with the possibility that XGetImage() might return NULL.
5002         Allocate the GdkImagePrivate structure only after XGetImage()
5003         succeeds in order not to dereference a NULL ximage pointer.  This
5004         prevents a core dump when XGetImage() fails - which is unlikely,
5005         but can happen due to race conditions accessing the geometries of
5006         drawables.  An x error will still be triggered, but the gdk image
5007         wrapper at least wont seg fault.
5008         
5009 2001-04-18  Havoc Pennington  <hp@redhat.com>
5010
5011         * gtk/gtkimage.c: fix to properly queue resizes when the image is
5012         set
5013
5014         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
5015         if the insertion point isn't editable
5016
5017         * demos/gtk-demo/images.c: Added a GtkImage demo
5018
5019         * demos/gtk-demo/drawingarea.c: drawing area demo
5020         
5021         * demos/gtk-demo/menus.c (create_menu): cleanups
5022
5023 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
5024
5025         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
5026           gdk/x11/gdkevents-x11.c: Introduce an extra child
5027         of toplevel windows that serves to hold the focus to
5028         avoid events being delivered to embedded windows.
5029
5030         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
5031         some extra variables to clean up code and reduce the
5032         number of casts.
5033
5034         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
5035         guint for 1 bit bit fields, not gboolean.
5036
5037 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
5038
5039         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
5040         not TRUE. (Fixes #52925)
5041
5042 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
5043
5044         * Released 1.3.4
5045
5046         * NEWS: Updated
5047
5048         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
5049         use GTK_TYPE_ENUM.
5050
5051 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
5052
5053         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
5054
5055         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
5056         names to compatibility #defines so docs work.
5057
5058         * gtk/gtkenums.h: Remove GtkMenuFactoryType
5059
5060         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
5061
5062         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
5063
5064         * tests/testgtkrc: No magenta cursors, please.
5065
5066         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
5067
5068         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
5069         
5070 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
5071
5072         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
5073         grabs, since they are no longer necessary.
5074
5075         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
5076         by signal_connect() and call gtk_button_pressed() rather
5077         than signal_connect_after().
5078
5079         * tests/testgtk.c: Restore radio menu items to combos 
5080         since they'll look OK with Raleigh, and it is easier
5081         than finishing the process of removing them that was
5082         started earlier.
5083
5084 2001-04-16  Hans Breuer  <hans@breuer.org>
5085
5086         * gdk/gdk.def :
5087         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
5088
5089         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
5090         we are interested in the functions return value not the function address
5091         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
5092
5093         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
5094
5095 2001-04-14  Hans Breuer  <hans@breuer.org>
5096
5097         * gdk/gdk.def :
5098         * gdk/makefile.msc : updated
5099
5100         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
5101         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
5102         (the testgtk::text backgound pixmap is drawn again)
5103         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
5104         Win32 Pango change
5105         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
5106
5107         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
5108         Not sure if the returned settings have the right unit, because I couldn't
5109         find any docs for the X version ...
5110
5111         * gtk/gtk.def :
5112         * gtk/makefile.msc.in : updated
5113
5114 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
5115
5116         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
5117         wording problems. (Compared to version from Johannes Stezenbach to
5118         check correctness.)
5119
5120 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
5121
5122         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
5123         this to compile.
5124
5125 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
5126
5127         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
5128         not pixbufpos.
5129
5130         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
5131
5132         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
5133         are unsigned insts, therefore use g_value_set_uint.
5134         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
5135
5136 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
5137
5138         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
5139
5140         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
5141         GTK_TYPE_STRING.
5142
5143         * gtk/gtktreeview.c: New functions to allow initial column
5144         dragging work.
5145
5146         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
5147
5148         * tests/testtreefocus.c: give dave some love.
5149
5150         * tests/testtreesort.c: Modify test to check really long samples.
5151
5152 2001-04-11  Alexander Larsson  <alexl@redhat.com>
5153
5154         * gtk-2.0.m4: Pass pkg-config options
5155         before the other args so it works even if
5156         POSIXLY_CORRECT is set.
5157
5158 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
5159
5160         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
5161         0, interface 0).
5162
5163 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
5164
5165         * gtk/gtkcalendar.c (gtk_calendar_button_press):
5166         check for action_func != NULL
5167
5168 2001-04-04  Sven Neumann  <sven@gimp.org>
5169
5170         * tests/testgtk.c (test_init): corrected path to gtk.immodules
5171
5172 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
5173
5174         * Released Gtk+-1.3.3.
5175
5176 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
5177
5178         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
5179
5180 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
5181
5182         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
5183         files to/from source dir. (if we don't stay in builddir, we
5184         can't reach make-inline-pixbuf.
5185
5186         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
5187         deps.
5188
5189         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
5190         ages 0).
5191
5192 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
5193
5194         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
5195         moved to the GtkTreeSortable interface.
5196
5197         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
5198         Make more efficient (fixes #50262).
5199
5200 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
5201
5202         * NEWS: Updated.
5203
5204         * configure.in: Remove support for uninstalled glib.
5205
5206         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
5207         so as not to stop emission.
5208
5209         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
5210         is no longer supported.
5211
5212         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
5213         into tests, change build order to build modules before
5214         gtk/.
5215
5216         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
5217         to here.
5218
5219 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
5220
5221         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
5222         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
5223         GPatternSpec. this is actually unlikely to cause breakage in
5224         third-party apps since except for gle, pretty much ever caller
5225         passes NULL here.
5226
5227         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
5228
5229         * *.c: use g_pattern_*() API.
5230
5231         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
5232
5233         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
5234         directions aren't passed in.
5235
5236         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
5237         functionality to be usable from gtkstyle.c as well, give precedence
5238         for conversion to user-supplied parsers.
5239         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
5240
5241         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
5242         _gtk_settings_parse_convert() for rcporperty value conversion.
5243
5244 2001-04-03  Alexander Larsson  <alexl@redhat.com>
5245
5246         * gdk/linux-fb/gdkevents-fb.c:
5247         Add empty gdk_setting_get().
5248
5249 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
5250
5251         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
5252         variable names.
5253         
5254         * gtk/makeenums.pl: touch this so enum files get remade.
5255
5256 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
5257
5258         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
5259         work again when not sorted.
5260
5261         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
5262         and "expand_row" signal, closing bug 52578.
5263
5264         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
5265         support.
5266
5267         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
5268         support.
5269
5270 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
5271
5272         * gdk/gdkevents.h: Add GdkEventSetting event for notification
5273         of changes to system settings, gdk_setting_get() to retrieve
5274         a single system setting.
5275
5276         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
5277         to the draft XSETTINGS mechanism.
5278
5279         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
5280         XSETTINGS.
5281
5282         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
5283         of GDK settings changes to the GtkSettings object.
5284
5285         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
5286         double-click-timeout property to GDK.
5287
5288         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
5289         Define GDK boxed types here.
5290
5291         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
5292         gdk/gdkenumtypes.[ch] for enum definitions.
5293
5294         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
5295         * gtk/gtk-boxed.defs: Comment out GDK types
5296         * gtk/gtktypeutils.h: Remove GDK types
5297         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
5298
5299 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
5300
5301         * Applied patch from Ron Steinke to add signal accumulators
5302         so that signals with the convention 'TRUE return means
5303         handled' stop emission on a TRUE return.
5304
5305         * gtk/gtkmain.[ch]: Add private accumulator 
5306         _gtk_boolean_handled_accumulator, used throughout GTK+.
5307         
5308         * gtk/gtkspinbutton.c: Add accumulator for ::output.
5309
5310         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
5311         
5312         * gtk/gtkwidget.c: Add accumulators for event signals,
5313         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
5314         for ::mnemonic-activate.
5315
5316         * gtk/gtkwindow.c: Add accumulator for ::frame_event
5317
5318 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
5319
5320         * gtk/gtkwidget.c: Add missing include.
5321
5322 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
5323
5324         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
5325         marshaller.
5326
5327         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
5328         "changed" signal to "range_changed".
5329
5330         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
5331         removing a tree from one model would remove all trees from that
5332         model.
5333         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
5334         changed signal instead.
5335
5336 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
5337
5338         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
5339         chaining up to parent impl, since we have a INPUT_ONLY
5340         window.
5341
5342         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
5343         foreground color for the cursor.
5344
5345 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
5346
5347         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
5348         param spec when caching property values, since we unref it
5349         later when we free the style.
5350
5351         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
5352         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
5353
5354 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
5355
5356         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
5357         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
5358         stupidity.
5359
5360 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
5361
5362         [ First pass at adding style properties. Still needs some definite
5363         fine-tuning. ]
5364
5365         * gtk/gtkbutton.c: Add ::default_spacing style property.
5366          
5367         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
5368         ::indicator_spacing style properties.
5369
5370         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
5371         style properties.
5372
5373         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
5374         rather than a normal property.
5375
5376         * gtk/gtkwidget.c: Add an ::interior_focus style property to
5377         draw focus inside buttons, in the Windows/Java Metal/etc. style.
5378
5379         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
5380         Honor ::interior_focus.
5381         
5382         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
5383         TRUE.
5384
5385         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
5386         Add ::slider_width, ::trough_border, ::stepper_size,
5387         ::stepper_spacing style properties.
5388
5389         * gtk/gtkscale.[ch] Add ::slider-length style property.
5390
5391 2001-04-02 Alexander Larsson   <alexl@redhat.com>
5392
5393         * gdk/linux-fb/gdkwindow-fb.c:
5394         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
5395         warnings that were spewed on startup.
5396
5397         * gtk/gtkwindow-decorate.c:
5398         gtk_window_reposition -> _gtk_window_reposition
5399
5400 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
5401
5402         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
5403         Add boxed type for GtkRequistion. Use it for ::size-request.
5404
5405         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
5406         Add a new GtkBorder structure useful for geometry properties
5407         for widgets. Add corresponding GTK_TYPE_BORDER.
5408         
5409         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
5410         Support automatic parser selection like
5411         gtk_settings_install_property_parser().
5412
5413         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
5414         functionality for use by gtk_widget_class_install_style_property.
5415         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
5416
5417 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
5418
5419         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
5420         g_param_spec_unichar(). 
5421
5422 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
5423
5424         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
5425         _NET window managers.
5426
5427         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
5428
5429 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
5430
5431         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
5432         bad needs to be nuked, not just deprecated.
5433
5434         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
5435         gtk_widget_popup().
5436
5437         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
5438         
5439         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
5440         widget.
5441         
5442         * docs/Changes-2.0.txt: updates.
5443         
5444 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
5445
5446         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
5447         for (i = 0; i < 100; i ++)
5448           g_print ("I will confirm it compile before committing\n");
5449
5450 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
5451
5452         * gtk/gtktreestore.c: Initial work on implementing the
5453         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
5454
5455 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
5456
5457         * gtk/gtkwidget.c: fixed a bunch of notifications, added
5458         reference counts around emissions where the widget is used afterwards.
5459         added freeze/thaws around multiple properties being notified.
5460         (_gtk_widget_get_aux_info): cleanups.
5461         
5462         * gtk/gtksettings.c (gtk_settings_install_property): provide
5463         default parsing functions for gdkcolor, enums and flags.
5464
5465         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
5466         applied by owen.
5467         backed out gtk_window_get_location(), gtk_window_set_location(),
5468         gtk_window_get_size() and gtk_window_set_size(), these
5469         have to be sorted out wrg x/y/width/height/default_with/default_height
5470         properties.
5471         kept a flag in GtkWindowGeometryInfo to handle user
5472         resetting default sizes.
5473         cleaned up ZVT comments.
5474         bunch of assorted bug fixes, notification fixes.
5475         (_gtk_window_reposition): make this a really internal function.
5476         
5477         * gtk/testgtk.c: fixups.
5478         
5479 2001-03-31  Hans Breuer  <hans@breuer.org>
5480
5481         * config.h.win32.in : disable USE_MMX for msvc build cause
5482         the assembler doesn't fit and is out of my scope. Disable
5483         USE_GMODULE for msvc build as wel. The right way to share
5484         binaries on win32 would be to use libtiff.dll etc. To reduce
5485         installation hassles IMO it's better to include all fileformats
5486         builtin to gdk-pixbuf
5487
5488         * gdk-pixbuf/makefile.msc : new file
5489
5490         * gdk/gdk.def : updated
5491
5492         * gdk/win32/gdkevents-win32.c : don't erase the background if
5493         .no_bg is set. It improves the scrolling (e.g. of testgtk main
5494         buttons
5495         * gdk/win32/gdkgeometry-win32.c : added comment about the above
5496
5497         * gdk/win32/gdkwindow-win32.c : added three new functions like
5498         the X version. Only one is implemented, because the other two
5499         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
5500         be default behaviour on win32 anyway ...
5501
5502         * gtk/gtk.def : updated
5503
5504         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
5505         from where it was built and add an additional rule to automagically
5506         build gtkmarshal.[hc]
5507
5508         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
5509         before array access for the current entry isn't finished
5510
5511         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
5512         use g_return_val_if_fail
5513
5514         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
5515         for the static array, but let the compiler calculate it. It
5516         makes me wonder if gcc isn't capable to catch bugs like this ...
5517
5518 2001-03-31  James Henstridge  <james@daa.com.au>
5519
5520         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
5521         constant "-1" in the aux info structure.
5522
5523 2001-03-30  Alexander Larsson  <alexl@redhat.com>
5524
5525         * gtk/gtkbutton.c (gtk_button_get_property):
5526         * gtk/gtklabel.c:
5527         Remove leaks.
5528         
5529         * gtk/gtkcontainer.c:
5530         * gtk/gtkhscale.c:
5531         * gtk/gtkhscrollbar.c:
5532         * gtk/gtklayout.c:
5533         * gtk/gtkmisc.c:
5534         * gtk/gtkprogress.c:
5535         * gtk/gtkprogressbar.c:
5536         * gtk/gtkrange.c:
5537         * gtk/gtktable.c:
5538         * gtk/gtkviewport.c:
5539         * gtk/gtkvscale.c:
5540         * gtk/gtkvscrollbar.c:
5541         * gtk/gtkwidget.c:
5542         Property patches, based on patches from John Margaglione and Lee Mallabone.
5543
5544 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
5545
5546         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
5547         adjustment. Cleaned redundant preconditions (spin != NULL). Added
5548         inline API function docs.
5549         (gtk_spin_button_new_with_range): New convenience constructor.
5550         (gtk_spin_button_set_increments): New adjustment helper.
5551         (gtk_spin_button_set_range): New adjustment helper.
5552
5553         * gtk/testgtk.c : added test of the new convenince constructor and
5554         value_changed signals.
5555
5556 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
5557
5558         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
5559         listen to the reorder signal.
5560
5561 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
5562
5563         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
5564         to get the aux info structure fo the widget.
5565
5566         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
5567         above function.
5568
5569         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
5570
5571         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
5572         to get the size of the window manager frame, basically the same
5573         code that gdk_window_get_root_origin() had
5574         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
5575
5576         * gtk/gtkwindow.c (gtk_window_set_default_size): use
5577         gdk_window_resize() if the window is realized and resizeable
5578
5579         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
5580         typo so that setting gravity works
5581
5582         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
5583         allocation if auto_shrink is on, even if the default size
5584         has not changed.
5585
5586         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
5587         g_return_if_fail
5588
5589 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
5590
5591         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
5592         reordering/sorting work.  Now pretty much works.
5593
5594         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
5595         reorder mostly work.  Still need to get the parity correct.
5596
5597         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
5598         signal, so I can listen for the sort_column_changed signal so I
5599         can change my "sort_indicator" property.  Cool.
5600
5601 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
5602
5603         [ Patch from Havoc Pennington, hp@redhat.com ]
5604
5605         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
5606         Add functions gdk_window_begin_resize_drag/begin_move_drag
5607         to start resizing or moving a toplevel window. This
5608         is done either using the _NET_WM_MOVERESIZE protocol,
5609         or, if that isn't present, by emulation.
5610
5611         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
5612         to export the above to GTK+-land.
5613
5614         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
5615         
5616         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
5617         Move this function into gdkwindow, since we need it
5618         when implementing fallback resizing.
5619
5620         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
5621         Fix typo when setting gravity.
5622
5623         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
5624         Add an optional (but on by default) resize grip for resizing 
5625         the parent window.
5626
5627 01-03-29  Alexander Larsson  <alexl@redhat.com>
5628
5629         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
5630         Don't return TRUE from the event handler, that blocks all
5631         event signals on the tooltip widget. Now you can press buttons
5632         in toolbars again.
5633
5634 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
5635
5636         * gtk/testtext.c (create_buffer): Add missing NULL on
5637         valist.
5638
5639         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
5640         c-n-p problem with INCONSISTENT property.
5641
5642         [ Patch from Havoc Pennington  <hp@redhat.com> ]
5643
5644         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
5645         hook.
5646
5647         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
5648         signal as a hook for extending the default popup menu
5649
5650         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5651         use radio menu items for the input method menuitems
5652
5653         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
5654         inserted unicode from Ctrl-Shift-hex input method
5655
5656         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
5657         validatation here, already done at GtkTextBuffer level.
5658
5659         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
5660         popup_menu run action signal and Shift+F10 and Menu keybindings.
5661
5662         * gtk/gtkentry.c: implement a default handler for popup_menu
5663
5664         * gtk/gtktextview.c: implement a default handler for popup_menu
5665
5666         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
5667         from a key event
5668         
5669         * gtk/gtklabel.c: remove "trailer" cruft
5670
5671 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
5672
5673         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
5674         handle reordering of trees.  Seems to mostly work w/ the exception
5675         of the parity flag.
5676
5677         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
5678         signal.
5679
5680 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
5681
5682         * gtk/gtkwidget.h: c++ fixes.
5683
5684 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
5685
5686         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
5687         memory.
5688
5689 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
5690
5691         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
5692         Nils Barth fixing event return values. (#51041)
5693
5694         * gtk/gtkwidget.c: Fix some return values for default
5695         functions.
5696
5697         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
5698         return values for trough_keys functions.
5699
5700         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
5701         value for add_accelerator (shoudl have been a void
5702         return.)
5703
5704         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
5705         Fix return type of EVENT.
5706
5707         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
5708         signal return a boolean.
5709
5710 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
5711
5712         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
5713         reordered signal.
5714
5715         * tests/testtreesort.c (main): fix spelling.
5716
5717 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
5718
5719         * gtk/gtkliststore.c: More work on implementing sortable
5720         interface.
5721
5722 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
5723
5724         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
5725         reference the widgets in the resulting list. (#11821)
5726         This makes this consistent with gtk_container_children.
5727
5728         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
5729         uses of gtk_window_list_toplevels.
5730
5731 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
5732
5733         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
5734         a virtual function to set whether the IM context should use 
5735         the preedit string. (#51922)
5736         
5737 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
5738
5739         * gdk/gdkpango.h: Remove stale FIXME comment.
5740
5741 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
5742
5743         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
5744         Fixed bug that returned NULL if a filename was selected.
5745
5746 2001-03-24  Havoc Pennington  <hp@pobox.com>
5747
5748         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
5749         to contain the word "theme"
5750
5751 2001-03-24  Havoc Pennington  <hp@pobox.com>
5752
5753         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
5754         slower but finer-grained
5755         (gtk_hsv_focus): get initial focus on the ring or triangle 
5756         according to tab direction
5757
5758         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
5759
5760 2001-03-23  Havoc Pennington  <hp@pobox.com>
5761
5762         * gtk/gtkhsv.c: make this somewhat key-navigable
5763
5764         * gtk/gtkfontsel.c: mnemonics
5765
5766         * gtk/gtkgamma.c: mnemonics
5767
5768         * gtk/gtkcolorsel.c: add mnemonics to labels
5769
5770 2001-03-22  Havoc Pennington  <hp@pobox.com>
5771
5772         Applied big patch from Seth Lytle to fix event handler return
5773         values, slightly modified.
5774
5775         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
5776         handled.
5777         (gtk_calendar_key_press): return TRUE for GDK_space triggers
5778         select_day
5779
5780         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
5781         (gtk_clist_button_release): return TRUE if handled
5782
5783         * gtk/gtkcolorsel.c (mouse_release):
5784         (palette_activate): 
5785         (palette_press): 
5786         (palette_new): 
5787         (mouse_press): 
5788         (get_screen_color): 
5789         fixed return type (void to gboolean), return TRUE,
5790         added GTK_SIGNAL_FUNC cast
5791
5792         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
5793         (void to gboolean), and return TRUE
5794         (gtk_combo_button_release): changed return value to TRUE after
5795         gtk_grab_add on combo->popwin
5796
5797         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
5798         collapse or expand
5799
5800         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
5801         button/motion
5802
5803         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
5804         press/release and motion that trigger act
5805
5806         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
5807
5808         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
5809         for GDK_Return
5810         
5811         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
5812         (gtk_list_button_release): return TRUE if selection
5813
5814         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
5815         press
5816
5817         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
5818         (gtk_menu_shell_button_release): chain parent_menu_shell retval
5819
5820         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
5821         nothing triggered
5822         (gtk_notebook_button_release): return TRUE if we do anything
5823
5824         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
5825         (gtk_spin_button_button_release): return TRUE or chained retval
5826
5827         * gtk/gtktext.c (gtk_text_button_press): 
5828         (gtk_text_button_release): return TRUE
5829         (gtk_text_key_press): remove redundant retval code
5830         
5831         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
5832         and sensitive
5833         (gtk_tree_item_subtree_button_click): changed type to gint, and return
5834         TRUE if sensitive
5835
5836         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
5837         return TRUE
5838
5839 2001-03-23  Havoc Pennington  <hp@redhat.com>
5840
5841         * gtk/testgtk.c: fix warnings
5842
5843         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
5844
5845         * gtk/gtktextview.c: fix warnings
5846
5847         * gtk/gtktext.c (find_cursor_at_line): fix warning
5848
5849         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
5850
5851         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
5852         of this function
5853
5854         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
5855         fix warning
5856
5857         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
5858
5859         * gtk/gtkfontsel.c: fix warning
5860
5861         * gtk/gtkcolorsel.c: fix warnings
5862
5863 2001-03-23  Havoc Pennington  <hp@redhat.com>
5864
5865         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
5866
5867         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
5868
5869         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
5870         and deprecated gtk_check_menu_item_set_show_toggle().
5871         
5872         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
5873
5874         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
5875
5876         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
5877
5878 2001-03-23  Havoc Pennington  <hp@redhat.com>
5879
5880         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
5881         some docs
5882
5883 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
5884
5885         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
5886         this.
5887
5888         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
5889         set_cell to set_value
5890
5891         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
5892         set_cell to set_value
5893
5894 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
5895
5896         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
5897         fix braino.
5898         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
5899         support.
5900
5901         * gtk/gtktreeview.c: Addition of initial sortable support.
5902
5903         * gtk/gtktreestore.c: Addition of initial sortable support.
5904
5905         * gtk/gtkliststore.c: Addition of initial sortable support.
5906
5907         * gtk/gtkmarshal.list: yet another marshaller.
5908
5909         * gtk/gtktreedatallist.[ch]: shared code between the store models
5910         for handling sorting headers.
5911
5912 2001-03-22  Havoc Pennington  <hp@redhat.com>
5913
5914         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
5915         (gtk_container_unset_focus_chain): Add ability to override the 
5916         focus chain for a container explicitly
5917
5918 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
5919
5920         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
5921         added PROP_MNEMONIC_WIDGET.
5922
5923         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
5924         (gtk_window_remove_mnemonic): 
5925         (gtk_window_add_mnemonic): fixed assertions.
5926         (gtk_window_activate_mnemonic): constrain modifier checks to those
5927         permitted by gtk_accelerator_get_default_mod_mask().
5928         got rid of gtk_window_get_default_accel_group().
5929
5930         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
5931         activatable widgets either by focussing or a warning.
5932         added a signal accumulator to ::activate_mnemonic which stops the
5933         emission once a handler returned TRUE.
5934
5935 2001-03-22  Havoc Pennington  <hp@pobox.com>
5936
5937         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
5938         the stock item label
5939
5940         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
5941
5942         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
5943
5944         * demos/gtk-demo/*.c: Add mnemonics all over the place
5945
5946         * gtk/gtklabel.h: mark parse_uline deprecated
5947
5948 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5949
5950         * gtk/gtkitemfactory.[ch]:
5951         Add support for stock and normal imagemenuitems.
5952         
5953         * gtk/testgtk.c:
5954         Add some tests for mnemonics, stock toolbars, stock
5955         and image menuitems in itemfactory and gdk_window_scroll.
5956
5957 2001-03-21  Alexander Larsson  <alexl@redhat.com>
5958
5959         * gtk/gtkbutton.[ch]:
5960         * gtk/gtkdialog.c:
5961         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
5962         removed accel_group argument. Renamed gtk_button_new_accel() to
5963         gtk_button_new_with_mnemonic() and removed accel_group argument.
5964
5965         * gtk/gtkcheckbutton.[ch]:
5966         New function gtk_check_button_new_with_mnemonic().
5967
5968         * gtk/gtkentry.c:
5969         Override activate_mnemonic and just grab focus.
5970
5971         * gtk/gtkitemfactory.c:
5972         Don't add menu uline accel group, instead use mnemonics support.
5973
5974         * gtk/gtklabel.[ch]:
5975         New support for mnemonics.
5976
5977         * gtk/gtkmarshal.list:
5978         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
5979
5980         * gtk/gtkmenu.[c]:
5981         * gtkmenushell.c:
5982         Use mnemonics instead of accel groups for uline
5983         support in menu items.
5984         Removed gtk_menu_get_uline_accel_group() and
5985         gtk_menu_ensure_uline_accel_group().
5986
5987         * gtk/gtkmenuitem.c:
5988         Override activate_mnemonic to handle switching between
5989         menu items if there are collisions.
5990         
5991         * gtk/gtknotebook.c:
5992         Connect to activate_mnemonic on the tab_label, so that
5993         activating it switches to that notebook page.
5994
5995         * gtk/gtkwidget.[ch]:
5996         Add activate_mnemonic signal. New function
5997         gtk_widget_activate_mnemonic() to emit it.
5998         Default implementation does activate/grab_focus.
5999
6000         * gtk/gtkwindow.[ch]:
6001         Add support for mnemonics in windows.
6002         New functions:
6003         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
6004         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
6005
6006         * gtk/testgtk.c:
6007         Update to function name changes.
6008         
6009 2001-03-21  Alexander Larsson  <alexl@redhat.com>
6010
6011         * gtk/gtkimagemenuitem.[c]:
6012         Add gtk_image_menu_item_new_from_stock()
6013
6014 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
6015
6016         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
6017         Fix buglet in meeting.
6018
6019 2001-03-19  Havoc Pennington  <hp@redhat.com>
6020
6021         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
6022         add a bunch of accessor functions. This is because we have
6023         reasonable expectations of extending what fields it contains in
6024         the future.
6025
6026         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
6027         changes
6028
6029         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
6030         GtkIconSource   
6031
6032 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
6033
6034         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
6035         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
6036
6037         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
6038           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
6039           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
6040           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
6041         Change float to double everywhere with the exception of 0<->1.0 alignment
6042         and GtkCurve.
6043
6044 2001-03-19  Tor Lillqvist  <tml@iki.fi>
6045
6046         * gdk/win32/gdkdrawable-win32.c
6047         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
6048         output.
6049
6050         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
6051         gdkwin32.h.
6052
6053 2001-03-18  Tor Lillqvist  <tml@iki.fi>
6054
6055         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
6056         print_event_state, print_event): Use preprocessor macro to make
6057         code more compact. Print also GDK_WINDOW_STATE events.
6058         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
6059         
6060         * gtk/gtk.def
6061         * gtk/makefile.mingw.in: Update.
6062
6063         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
6064         to catch also Cygwin.
6065
6066 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
6067
6068         * gtk/gtkspinbutton.[hc]: added rc-style argument
6069         GtkSpinButton::shadow_type.
6070         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
6071         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
6072         rc-style settings.
6073
6074         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
6075
6076         * gtk/gtkwidget.c: quark cleanups.
6077
6078         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
6079         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
6080         to create_rc_style() (we don't do cloning in standard OO sense).
6081         added per rc style properties.
6082         
6083         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
6084         property values and for caching those. some cleanups.
6085         
6086         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
6087         
6088         * gtk/gtksettings.[hc]: new file for global rc-file properties
6089         (at least currently, should get extended to support X properties
6090         and other communication mechanisms).
6091         
6092         * gtk/gtkwidget.[hc]: added style property support:
6093         (gtk_widget_class_install_style_property_parser): install style
6094         property pspec with parser function for rc-file values other
6095         than LONG, DOUBLE or STRING.
6096         (gtk_widget_class_install_style_property): same as above without
6097         parser (parsers are going to be needed quite infrequently).
6098         (gtk_widget_style_get_property): retrive style property value.
6099         (gtk_widget_style_get_valist): same as above with varargs support,
6100         has NOCOPY semantics.
6101         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
6102
6103 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
6104
6105         * demos/gtk-demo/main.c (row_activated_cb): modified to use
6106         "row_activated" signal.
6107
6108         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
6109         stupidity.  Lets actually pass in the row with this signal...
6110
6111 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
6112
6113         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
6114
6115         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
6116
6117         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
6118         everything into the ::destroy function, and freed a lot more.
6119
6120 2001-03-16  Havoc Pennington  <hp@redhat.com>
6121
6122         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
6123         instead of gint16, to avoid overflow issues, since sizes > 16-bit
6124         are now allowed.
6125
6126 2001-03-16  Havoc Pennington  <hp@redhat.com>
6127
6128         * Applied patch from Nils Barth (bug # 51041) to 
6129         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
6130         in various places.
6131
6132 2001-03-15  Havoc Pennington  <hp@redhat.com>
6133         
6134         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
6135         for properties to set on the tag.
6136
6137         * gtk/testtext.c: fixups to reflect create_tag change
6138         
6139         * gtk/gtktexttag.c (gtk_text_tag_set_property):
6140         background/foreground stipple are objects, not boxed.
6141
6142         * demos/gtk-demo/textview.c: intellihancing
6143
6144 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
6145
6146         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
6147         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
6148
6149 2001-03-16  Alexander Larsson  <alexl@redhat.com>
6150
6151         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
6152         Fix sign error with queued region translations.
6153
6154 2001-03-15  HideToshi Tajima  <tajima@happy>
6155
6156         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
6157         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
6158         * gtk/gtkentry.c (update_im_cursor_location): 
6159         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
6160         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
6161         set_cursor_pos to set_cursor_location in GtkInputContext class
6162
6163 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
6164
6165         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
6166         the location of the cell relative to its area.
6167         * gtk/gtkcell*: modified for above change
6168         * gtk/gtktreeview.c: modified for above change.
6169
6170 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
6171
6172         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
6173          (gtk_tree_view_finalize): actually unref the model.  Thanks to
6174         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
6175
6176 2001-03-14  Havoc Pennington  <hp@redhat.com>
6177
6178         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
6179         
6180         * gtk/gtk.h: remove gtkdata.h
6181
6182         * gtk/Makefile.am: remove gtkdata
6183         
6184         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
6185         not "disconnect" on the adjustments.
6186         
6187         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
6188         GtkData
6189
6190         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
6191         not GtkData
6192
6193         * configure.in: handle case where X render exists, but Pango lacks
6194         Xft support.
6195
6196 2001-03-15 Alexander Larsson  <alexl@redhat.com>
6197
6198         * gtk/gtktoolbar.[ch]:
6199         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
6200         to add stock items to toolbars.
6201
6202         * gtk/Makefile.am:
6203         Remove ../gdk/gdkim.h from gdk_headers.
6204
6205 2001-03-15  Sven Neumann  <sven@gimp.org>
6206
6207         * gdk/gdkim.h: removed
6208         
6209         * gdk/gdkprivate.h
6210         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
6211
6212 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
6213
6214         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
6215         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
6216         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
6217         set_cursor_pos() virtual method
6218
6219         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
6220         (gtk_im_context_xim_set_cursor_pos): add implementation for
6221         set_cursor_pos() method
6222
6223         * gtk/gtkentry.c (recompute_idle_func): set current cursor
6224         position to input methods
6225
6226 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
6227
6228         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
6229         code a lot.
6230
6231         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
6232         g_mem_chunk.
6233         (_gtk_tree_data_list_alloc): use g_mem_chunk.
6234         (_gtk_tree_data_list_node_to_value): Fix to switch on
6235         G_TYPE_FUNDAMENTAL.
6236         (_gtk_tree_data_list_value_to_node): Fix to switch on
6237         G_TYPE_FUNDAMENTAL.
6238         (_gtk_tree_data_list_node_copy): Fix to switch on
6239         G_TYPE_FUNDAMENTAL.
6240
6241 2001-03-12  Havoc Pennington  <hp@redhat.com>
6242
6243         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
6244         to convert to new property API. Also, change default_width and
6245         default_height get_property to return 0 as the flag value for
6246         "unset"; -1 is not a valid value for these fields.
6247
6248 2001-03-12  Havoc Pennington  <hp@redhat.com>
6249
6250         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
6251         enum with registration for icon sizes, instead of strings.
6252
6253         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
6254         gtkwidget.c: Fix to reflect GtkIconSize
6255         
6256 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6257
6258         Make GtkFB compile and link.
6259         
6260         * gdk/linux-fb/gdkdrawable-fb2.c:
6261         window->mapped to GDK_WINDOW_IS_MAPPED(). 
6262         
6263         * gdk/linux-fb/gdkwindow-fb.c:
6264         window->mapped to GDK_WINDOW_IS_MAPPED(). 
6265         Added gdk_window_shape_combine_region.
6266         Added assorted placeholders for unimplemented new GdkWindow API calls.
6267
6268 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6269
6270         * gtk/gtkfilesel.c:
6271         Add more test when converting filenames from/to utf-8.
6272         Don't allow entering text in the filename entry which isn't allowed in
6273         a filename. Just beep instead.
6274
6275 2001-03-12  Alexander Larsson  <alexl@redhat.com>
6276
6277         * gtk/gtkclist.c:
6278         Scroll using gdk_window_scroll(). Don't wait for exposes.
6279         Move the column headers in an order that makes them flash less.
6280
6281 2001-03-10  Hans Breuer  <hans@breuer.org>
6282
6283         * gdk/gdk.def : updated
6284
6285         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
6286         to offseting the clip_mask at the right place
6287
6288         * gdk/win32/gdkwindow-win32.c : don't create background brushes
6289         for all the gdkClasses, especially not for the input_only case.
6290         Otherwise flickering wont be avoidable, because we don't get
6291         WM_ERASEBKGND message for these windows.
6292
6293         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
6294         and fixed massive redraw problems apparently triggered by Alexanders 
6295         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
6296         but it seems to work quite well :-)
6297
6298         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
6299         prototype
6300
6301 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
6302
6303         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
6304         (gtk_list_store_set_cell): Fix a stupid typo.
6305
6306 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
6307
6308         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
6309         select_all not work if you're in SINGLE mode (it doesn't make that
6310         much sense, anyway.)
6311
6312         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
6313         handle types more sanely.
6314         (_gtk_tree_data_list_value_to_node): handle types more sanely.
6315         (_gtk_tree_data_list_node_copy): handle types more sanely.
6316
6317         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
6318         GValue better. Converts the type as well.
6319
6320         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
6321         GValue better. Converts the type as well.
6322
6323 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
6324
6325         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
6326         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
6327         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
6328         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
6329
6330         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
6331         gdk_im/gdk_ic.
6332
6333 2001-03-09  Hans Breuer  <hans@breuer.org>
6334
6335         * gdk/gdk.def : updated
6336
6337         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
6338         for their palette
6339
6340         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
6341         removing
6342
6343         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
6344         removing and implemented Havoc's GdkWindow state functions; 
6345         stick/unstick only as no-op, cause I don't know how to emulate 
6346         on win32 ...
6347
6348         * gtk/gtk.def : updated
6349
6350         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
6351
6352         * gtk/gtktypeutils.c : #include <string.h>
6353
6354         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
6355
6356 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
6357
6358         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
6359         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
6360         not a boxed.
6361
6362 2001-03-09  Alexander Larsson  <alexl@redhat.com>
6363
6364         * docs/Changes-2.0.txt:
6365         Document expose event->region change and that gtk_widget_event
6366         doesn't allow passing expose events.
6367
6368         * gdk/gdkevents.h:
6369         Add region to expose event.
6370         
6371         * gdk/gdkevents.c:
6372         Handle event->region in gdk_event_copy() and gdk_event_free().
6373
6374         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
6375         Generate expose_event->region when creating expose events.
6376
6377         * gdk/x11/gdkevents-x11.c:
6378         Generate expose events with regions when translating X events.
6379
6380         * gtk/gtkcontainer.[ch]:
6381         Default expose handler that propagates expose events to NO_WINDOW
6382         children. New function gtk_container_propagate_expose()
6383
6384         * gtk/gtkwidget.[ch]:
6385         Moved gtk_widget_event implementation to gtk_widget_event_internal.
6386         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
6387         expose events. New function gtk_widget_send_expose() to send expose
6388         events. New function gtk_widget_region_intersect() to calculate
6389         window/region intersections.
6390         
6391         * gtk/gtkmain.c (gtk_main_do_event):
6392         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
6393         Use gtk_widget_send_expose() to send expose events.
6394         
6395         * gtk/gtkbin.c:
6396         * gtk/gtkbox.c:
6397         * gtk/gtkfixed.c:
6398         * gtk/gtkimagemenuitem.c:
6399         * gtk/gtklist.c:
6400         * gtk/gtkpacker.c:
6401         * gtk/gtktable.c:
6402         * gtk/gtktree.c:
6403         Remove expose handler, using the default container implementation
6404         instead.
6405         
6406         * gtk/gtkbutton.c:
6407         * gtk/gtkcheckbutton.c:
6408         * gtk/gtkeventbox.c:
6409         * gtk/gtkfixed.c:
6410         * gtk/gtkhandlebox.c:
6411         * gtk/gtklayout.c:
6412         * gtk/gtklistitem.c:
6413         * gtk/gtkmenu.c:
6414         * gtk/gtkmenubar.c:
6415         * gtk/gtkmenuitem.c:
6416         * gtk/gtknotebook.c:
6417         * gtk/gtkoptionmenu.c:
6418         * gtk/gtkpaned.c:
6419         * gtk/gtkscrolledwindow.c:
6420         * gtk/gtktogglebutton.c:
6421         * gtk/gtktoolbar.c:
6422         * gtk/gtktreeitem.c:
6423         * gtk/gtkviewport.c:
6424         Chain expose handler to parent class handler. Use
6425         gtk_container_propagate_expose() to propagate exposes.
6426
6427         * gtk/gtkclist.c (check_exposures):
6428         * gtk/gtktext.c (process_exposes):
6429         Use gtk_widget_send_expose instead of gtk_widget_event.
6430
6431 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
6432
6433         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
6434
6435 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
6436
6437         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
6438         unref the nodes.   Fixes bug #50058.
6439
6440         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
6441         "::ref_iter" to "::ref_node".
6442         (gtk_tree_model_unref_node): change "::unref_iter" to
6443         "::unref_node". Fixes bug #50064.
6444
6445 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
6446
6447         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
6448         support for invisible cells.
6449          (gtk_tree_view_bin_expose): ditto
6450
6451 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
6452
6453         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
6454         on gobjects.
6455
6456         * tests/testtreefocus.c (main): New test file.
6457
6458         * tests/testtreeview.c: update to latest glib changes.
6459
6460         * tests/testtreecolumns.c: update to latest glib changes.
6461
6462 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
6463
6464         * gtk/testgtk.c: re-enabled event watcher emission hooks.
6465
6466 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
6467
6468         * *.c: added accumulator data argument to g_signal_newc()
6469         functions.
6470
6471         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
6472         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
6473         * gtk/treestoretest.c (make_window):
6474         s/g_signal_connect/g_signal_connectc/.
6475
6476         * gtk/gtktextbuffer.c: completed signal arg fixups,
6477         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
6478
6479 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
6480
6481         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
6482         G_CONST_RETURN.
6483
6484         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
6485         ::hierarchy-changed signal when a widget changes
6486         from anchored to unanchored or vice versa.
6487         (anchored means 
6488          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
6489         Use a private flag to keep track of this efficiently.
6490
6491 2001-03-07  Havoc Pennington  <hp@redhat.com>
6492
6493         * gtk/testgtk.c (create_spins): uglify so that size request gets
6494         tested.
6495
6496         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
6497         request on values for upper/lower, completes #6152
6498
6499 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
6500
6501         * Makefile.am: Remove gtk-config-2.0 again.
6502         (Grrrr, pkg-config. And stops make loops.)
6503
6504 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
6505
6506         * gtk/gtksignal.[hc]: removed old emission hook API.
6507         
6508         * docs/Changes-2.0.txt: fixed sections.
6509         
6510         * gtk/gtktextbuffer.c: signal arg fixups.
6511
6512 2001-03-07  Havoc Pennington  <hp@redhat.com>
6513
6514         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
6515
6516         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
6517         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
6518         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
6519         validation and the redraw which is higher priority than the
6520         validation.
6521
6522 2001-03-07  Havoc Pennington  <hp@redhat.com>
6523
6524         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
6525         (gtk_entry_set_property): remove trailer
6526
6527         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
6528         (gtk_entry_get_width_chars): new functions, to set size request to 
6529         a given number of characters
6530
6531         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
6532
6533         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
6534         (gtk_dialog_get_has_separator): new function
6535         (run_delete_handler): fix to not emit "response" signal
6536         because we already did in the delete event handler installed
6537         at dialog creation time.
6538         
6539         * gtk/gtkdialog.h: add a has_separator property,
6540         add GTK_DIALOG_NO_SEPARATOR flag
6541
6542 2001-03-07  Havoc Pennington  <hp@redhat.com>
6543
6544         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
6545         off decorations for a window.
6546
6547         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
6548         changes
6549
6550         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
6551         to get location of PangoLayout inside the label, closes #51198
6552
6553         * gtk/testgtk.c (create_bbox): fix up button box usage
6554
6555         * gtk/testcalendar.c (create_calendar): fix up button box usage
6556
6557         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
6558
6559         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
6560
6561         * gtk/gtkhbbox.h: deprecations
6562
6563         * gtk/gtkvbbox.h: deprecations
6564
6565         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
6566         emulate deprecated gtk_button_box_get_spacing
6567
6568         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
6569         the "set global default" functions
6570         (struct _GtkButtonBox): remove "spacing" field, use the one from 
6571         GtkBox base class
6572
6573         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
6574
6575         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
6576         render the icon, return the missing image icon.
6577
6578         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
6579         image icon if the load fails.   
6580
6581         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
6582         when no image is found; should be the Netscape "missing image"
6583         icon eventually but for now is a random image
6584
6585         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
6586         role for the session manager
6587
6588         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
6589
6590         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
6591         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
6592
6593         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
6594
6595 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
6596
6597         * gtk/*.c: marshaller fixes.
6598         
6599         * gtk/gtkmarshal.list: extreme cleanup.
6600
6601         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
6602         param spec for now.
6603
6604         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
6605         where appliable.
6606
6607         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
6608         special cased autogenerated boxed types from gtktypebuiltins_ids.c
6609         which are not reference counted:
6610         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
6611         PangoFontDescription, GtkTreeIter and GtkTreePath.
6612
6613 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
6614
6615         * gtk/gtktreeselection.h: 
6616         * gtk/gtktreemodel.c:
6617         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
6618         file should be included directly, and gobject/gmarshal.h
6619         as well as gtk/gtkmarshal.h even can't be included directly.
6620
6621         * Makefile.am: grr, install gtk-config-2.0.
6622
6623         * gtk/testgtk.c:
6624         * gtk/simple.c:
6625         * gtk/gtkmenu.c:
6626         * gtk/gtkitemfactory.c: use g_object_connect() instead of
6627         passing "*signal*::*" args to gtk_widget_set().
6628         
6629         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
6630         
6631         * gtk/*.c: removed trailer arg from property setters and getters.
6632         macro fixups.
6633
6634 2001-03-07  Alexander Larsson  <alexl@redhat.com>
6635
6636         * gtk/gtklabel.c (set_markup): Removed warning
6637
6638 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
6639
6640         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
6641         field to allow you to hide cell renderers.
6642
6643         * gtk/gtkcellrenderer.c: Add support for invisible cells.
6644
6645         * gtk/gtktreeview.c: Add support for invisible cells.
6646
6647 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
6648
6649         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
6650         Add "clicked" signal back to columns.
6651
6652         * ChangeLog: remove conflict markers.
6653
6654 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
6655
6656         * gtk/gtkbutton.c: Add animation of activation by, on 
6657         activate, pressing the button, and adding a timeout that 
6658         releases the button after 250ms or on key release and
6659         emits ::clicked. (#51501)
6660
6661         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
6662         action area, we connect to ::clicked instead of ::activate
6663         so the dialog stays up through the animation.
6664
6665 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
6666
6667         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
6668         check the ignore_enter flag for the menu shell that
6669         the item is actually a child of, not for attached
6670         submenus. (#51536)
6671
6672 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6673
6674         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6675         special key-press grab handling for widgets within
6676         GtkWindows. Otherwise, fall through to normal case.
6677
6678         This prevents key events being sent twice to GtkInvisible
6679         widgets, which can cause all sorts of mischief.
6680
6681 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6682
6683         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6684         widget is in effect, give the grab widget a first
6685         crack at KEY_PRESS/RELEASE events. (#424)
6686
6687 2001-03-06  James Henstridge  <james@daa.com.au>
6688
6689         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
6690         offset for the window_state_event to point at window_state_event
6691         rather than no_expose_event.
6692
6693 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
6694
6695         * gtk/gtkimmodule.h: fix busted /* comment */
6696
6697 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
6698
6699         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
6700         object properties.
6701
6702 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
6703
6704         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
6705         add object properties.
6706
6707         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
6708         to add object properties.
6709
6710         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
6711         object properties.
6712
6713         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
6714         add object properties.
6715
6716         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
6717         object properties.
6718
6719 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
6720
6721         * gtk/gtktreemodel.c: renamed "child_toggled" to
6722         "has_child_toggled".
6723
6724         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
6725         handle new signal name.
6726
6727         * gtk/gtktreestore.c: Updated to handle new signal name.
6728         * gtk/gtklisttore.c: Updated to handle new signal name.
6729         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
6730
6731 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6732
6733         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
6734         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
6735
6736 2001-03-05  Michael Natterer  <mitch@gimp.org>
6737
6738         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
6739         pixbuf-engine coincidentially also failed to make one of it's
6740         parent_class pointers static, causing overwriting of GtkLabel's
6741         parent_class pointer in pixbuf_style_class_init().
6742         (Will commit the fix to the pixbuf-engine too).
6743
6744 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6745
6746         * gdk/gdkwindow.h:
6747         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
6748         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
6749         gdk_window_set_icon_list for net wmspec functionality.
6750
6751         * gdk/x11/gdkwindow-x11.c:
6752         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
6753         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
6754         gdk_window_set_icon_list.
6755         Added gdk_wmspec_change_state helper function and used it in the code.
6756         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
6757
6758         * gtk/gtkdialog.c (gtk_dialog_init):
6759         Set GDK_WINDOW_TYPE_HINT_DIALOG.
6760
6761         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
6762         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
6763
6764         * gtk/gtkwindow.c:
6765         new function gtk_window_set_type_hint.
6766         On realize, set type hint and modal hint.
6767
6768         * gtk/gtkwindow.h:
6769         Added type_hint field and gtk_window_set_type_hint.
6770
6771 2001-03-05  Alexander Larsson  <alexl@redhat.com>
6772
6773         * gtk/gtklabel.[ch]:
6774         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
6775         New function gtk_label_get_accel_keyval () to get the underline accelerator
6776         of the label. Setting the label pattern overrides other attributes.
6777
6778 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
6779
6780         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
6781         Added missing initializers to gtk_rc_style_init().
6782
6783 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
6784
6785         * gtk/gtktextview.c: fixed bug #51097 about setting 
6786         gtk_text_view_set_border_window_size() if the widget is 
6787         already realized.
6788
6789 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
6790
6791         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
6792
6793         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
6794         comment. Won't do to have duplicated doc comments between
6795         the platform subdirs.
6796
6797 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
6798
6799         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
6800           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
6801
6802         Detectable auto-repeat - make a repeating key generate
6803         press/press/press/release instead of press/release pairs.
6804
6805         If we have Xkb and XkbSetDectableAutoRepeat supports
6806         that, we do it that way. Otherwise, when we get
6807         a release event, we check ahead with XPending to see
6808         if the next key is a KeyPress with the same keycode
6809         and timestamp. (Not 100% reliable, but pretty close.)
6810           
6811 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
6812         
6813         * gtk/gtkmain.c (gtk_propagate_event): Only do special
6814         special key-press grab handling for widgets within
6815         GtkWindows. Otherwise, fall through to normal case.
6816  
6817         This prevents key events being sent twice to GtkInvisible
6818         widgets, which can cause all sorts of mischief.
6819  
6820 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
6821  
6822         * gtk/gtkmain.c (gtk_propagate_event): When a grab
6823         widget is in effect, give the grab widget a first
6824         crack at KEY_PRESS/RELEASE events. (#424)
6825  
6826 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
6827
6828         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
6829         to extend the selection. (Roughly based on patch
6830         from Jay Cox, #50939)
6831
6832         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
6833         to properly handle previous GDK_BUTTON_PRESS. 
6834         (Patch from Jay Cox, #50938)
6835
6836         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
6837         '\0' back along with the deleted text. (#51148)
6838
6839 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
6840
6841         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
6842         the group when extracting it from the X keyboard event.
6843
6844         * modules/input/Makefile.am modules/input/imipa.c: 
6845         Simple module for entering IPA. (Do we need a 
6846         gtk-stupid-input-tricks CVS module?)
6847
6848 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
6849
6850         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
6851         const.
6852
6853         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
6854
6855         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
6856         is no focus widget for the dialog currently, grab the focus as well
6857         as the default.
6858
6859         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
6860         the action area's children to iterate through, not the
6861         dialog's children.
6862
6863 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
6864
6865         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
6866         Add plug-socket tests. (Won't work worth a darn until I commit
6867         the rest of the plug-socket changes, but no reason these
6868         can't go into CVS now.)
6869
6870 2001-03-02  Havoc Pennington  <hp@redhat.com>
6871
6872         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
6873         _gdk_region_get_xrectangles()
6874
6875         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
6876
6877         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
6878
6879         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
6880         function, contributed by Ron Steinke    
6881
6882         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
6883         gdk_net_wm_supports
6884
6885         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
6886         New function, contributed by Ron Steinke
6887
6888         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
6889         used to line up the text in the entry when using the entry for
6890         editable sheet cell hacks
6891
6892         * gtk/testgtk.c (create_entry): test the activate_default setting
6893         on GtkEntry
6894
6895         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
6896         cause the entry to activate the default button for a dialog when 
6897         activated
6898         (gtk_entry_get_activates_default): new function
6899
6900 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
6901
6902         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
6903         Hwang to move call to sync_selection() up a few lines
6904         to before the row list is modified, to fix crash when
6905         removing rows in the undo_selection list.
6906
6907         (Test case provided by Daniel Elstner:
6908
6909         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
6910
6911 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
6912
6913         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
6914         of tree->root_tree in parent_set rather than _map(), 
6915         fixing #50892 in a bit better manner.
6916
6917 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
6918
6919         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
6920
6921 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
6922
6923         * gtk/gtkstyle.c : Remove duplicate fwd decl for
6924         gtk_default_draw_shadow.
6925
6926 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
6927
6928         * gdk/gdkimage.c (gdk_image_new): Remove excess 
6929         warning, make warnings more verbose, treat a error
6930         in shmat as permanent, and don't try again.
6931         (#51163, Ed Randall.)
6932
6933 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
6934
6935         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
6936         delay for the first click before starting to scroll.
6937         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
6938
6939         * gtk/gtktext.c: GtkText should have I-beam cursor. 
6940         (based on gtk-enf-990513-1.patch, Eric Fisher.)
6941
6942 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
6943
6944         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
6945         cleanup to remove some references to unused
6946         ->xoffset, ->yoffset.
6947
6948 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
6949
6950         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
6951         mask. (#51039, fix from Martin Maierhofer)
6952
6953 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
6954
6955         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
6956         for unshifted + and shifted = for non-us keyboards.
6957         Make <Control>+ and <Control>- work as well as 
6958         <Control>KP_Plus, <Control>KP_Minus for recursive
6959         open/close.  (#2682, René Seindal)
6960
6961 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
6962
6963         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
6964         the active menu item before deactivating the menu,
6965         so gtk_menu_popdown doesn't change the history. (#50964)
6966         
6967 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
6968
6969         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
6970         draw lines with text_gc rather than black_gc.
6971         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
6972
6973 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
6974
6975         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
6976         Move handling of buttons fully in gtktreeviewcolumn.  This code is
6977         less interrelated then it was, but it still requires the
6978         GtkTreeView to map it.
6979
6980         * test/testtreecolumn.c: Now I can add a column to one view,
6981         remove it, add it to the another view, remove it, then re-add it
6982         to the first.  Nifty.
6983
6984 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
6985
6986         * docs/tutorial/gtk-tut.sgml: Minor corrections
6987
6988 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
6989
6990         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
6991         GtkRowReference.
6992
6993 2001-02-28  Havoc Pennington  <hp@redhat.com>
6994
6995         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
6996         draw_default
6997         (gtk_widget_draw_focus): remove this function; we could instead
6998         make it just gtk_widget_draw(), but in most cases I think the
6999         result would be broken user code, so think it's better to have
7000         that code not compile and get fixed
7001         (gtk_widget_draw_default): ditto
7002
7003         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
7004         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
7005         
7006         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
7007         widgets lose/get the default, instead of calling draw_default
7008         
7009         * docs/Changes-2.0.txt: note about all this
7010
7011         Then fixed every widget in GTK, I won't list all the filenames.
7012
7013 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
7014
7015         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
7016         _gtk_tree_row_reference_deleted.
7017         (inserted_callback): Proxy out to
7018         _gtk_tree_row_reference_inserted.
7019         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
7020         get around signal emission ordering problem.
7021
7022         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7023         fix to work with SINGLE 
7024         (_gtk_tree_selection_internal_select_node): Major sanitization on
7025         selections.  SINGLE now seems to work.
7026
7027         * tests/Makefile.am: add testtreecolumn.c:
7028
7029         * tests/testtreecolumn.c: New test.  Mostly points out selection
7030         bugs currently, but will test columns later.
7031
7032         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
7033         selection bug.  I hate touching this code -- it's scary.
7034
7035 2001-02-26  Havoc Pennington  <hp@redhat.com>
7036
7037         * gtk/testgtk.c: test the window state stuff
7038
7039         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
7040         window come to the user's attention as if it were just created
7041         (gtk_window_iconify): new function
7042         (gtk_window_deiconify): new function
7043         (gtk_window_stick): new function
7044         (gtk_window_unstick): new function
7045         (gtk_window_maximize): new function
7046         (gtk_window_unmaximize): new function
7047
7048         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
7049
7050         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
7051
7052         * gdk/x11/gdkevents-x11.c: create window state events when
7053         appropriate
7054         (gdk_wmspec_supported): new function
7055
7056         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
7057         iconification before showing the window
7058         (gdk_window_deiconify): new function
7059         (gdk_window_stick): new function
7060         (gdk_window_unstick): new function
7061         (gdk_window_maximize): new function
7062         (gdk_window_unmaximize): new function
7063
7064         * gdk/gdkwindow.c: store the window state in the window; 
7065         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
7066         window->mapped.
7067         (gdk_window_get_state): return the current window state
7068
7069         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
7070         (gdk_event_get_state): handle GDK_WINDOW_STATE
7071         (gdk_synthesize_window_state): function to create the window state
7072         events
7073
7074         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
7075         event, for changes to "window state" such as maximized, sticky, 
7076         etc.
7077         
7078         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
7079         focuses a window
7080
7081         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
7082         finds out if we support a given WM spec hint
7083
7084 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
7085
7086         * docs/faq/gtk-faq.sgml: New question re memory leaks.
7087
7088 2001-02-25  Hans Breuer  <hans@breuer.org>
7089
7090         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
7091         cause we want to loose those prototypes only in the latter case
7092
7093         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
7094         GdkPixmapImplWin32 because it itsn't derived from it. Use the
7095         impl member variable instead
7096
7097         * gtk/gtk.def : updated
7098
7099         * gtk/gtklist.c : 
7100         * gtk/gtkmenus.c : include <string.h> for memset ()
7101
7102         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
7103         for everthing built here, but for gtk-x.x.dll only. This solves
7104         problem of indifferent gtk type definitions
7105
7106 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
7107
7108         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
7109
7110 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
7111
7112         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
7113         column that is exposed.
7114
7115         (_gtk_tree_view_update_size): Changed name from set_size, and
7116         changed function to do more work, and not force people calling it
7117         to figure out the size.  Simplifies a lot of code elsewhere.
7118
7119 2001-02-23  Alexander Larsson  <alexl@redhat.com>
7120
7121         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
7122         return solid masks for xpms that have no transparent color.
7123         This makes the ..._create_from_xpm... API backwards
7124         compatible.
7125
7126 2001-02-23  Tor Lillqvist  <tml@iki.fi>
7127
7128         * README.win32: Update. Mention the gtk-1-3-win32-production
7129         branch.
7130
7131         * gdk/win32/bdfcursor.c: New file. A program that generates
7132         xcursors.h. Thanks to Stefan Ondrejicka.
7133
7134         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
7135         compact format.
7136
7137         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
7138
7139         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
7140         function, uses xcursors.h.
7141         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
7142         cursor from inline data instead of using LoadCursor() to generate
7143         it from a resource.
7144
7145         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
7146         event, must check the Windows message for mouse button state, as
7147         the GDK event state might not have been built if it is
7148         undelivered. Remove one goto.
7149
7150         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
7151         SetCursor() if the current cursor as returned by GetCursor() is
7152         the window's previous cursor. The ChildWindowFromPoint() test
7153         apparently didn't work correctly.
7154
7155         * gdk/win32/rc/*.cur: Remove.
7156
7157         * gdk/win32/rc/gdk.rc.in: Remove cursors.
7158
7159         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
7160
7161         * gtk/makefile.{mingw,msc}.in: Updates.
7162
7163 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
7164
7165         * gtk/gtktreemodel.h: add functions for signal emission.
7166
7167         * gtk/gtktreestore.c: move to use above functions instead of
7168         g_signal_emit.
7169
7170         * gtk/gtkliststore.c: ditto
7171
7172 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
7173
7174         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
7175         GObject instead of GtkObject.
7176
7177         * gtk/gtkliststore.c: ditto.
7178
7179         * gtk/gtktreemodelsort.c: ditto.
7180
7181         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
7182         GtkTreeModelIface, instead of in each model.
7183
7184 2001-02-21  Havoc Pennington  <hp@redhat.com>
7185
7186         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
7187         unbreak this function
7188
7189         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
7190         properties
7191
7192         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
7193         properties
7194
7195         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
7196         properties
7197
7198         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
7199         mean unset the max length
7200
7201 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
7202
7203         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
7204         Changed name to be set_cell_data_func to make it clear what
7205         the functino does.  Close bug #51069.
7206
7207 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
7208
7209         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
7210         have memory actually freed.  Keeps box running longer.
7211
7212 2001-02-21  Alexander Larsson  <alexl@redhat.com>
7213         
7214         * gtk/gtkseparatormenuitem.[ch]:
7215         Added new menu separator item. The drawing and size handling
7216         is still done in GtkMenuItem, but the API is a bit more sane.
7217         
7218         * gtk/Makefile.am:
7219         Add gtkseparatormenuitem.[ch].
7220
7221         * gtk/gtk.h:
7222         Add gtkseparatormenuitem.h.
7223         
7224         * gtk/gtkentry.c:
7225         * gtk/gtkmenufactory.c:
7226         * gtk/gtktextview.c:
7227         Use the new API for menu separators.
7228         
7229         * demos/gtk-demo/menus.c (create_menu):
7230         Add some GtkSeparatorMenuItem demo code.
7231
7232 2001-02-20  Havoc Pennington  <hp@redhat.com>
7233
7234         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
7235         Lee Mallabone
7236
7237         * gtk/gtkarrow.c: Convert to new property API, patch from 
7238         Lee Mallabone
7239
7240 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
7241
7242         * tests/testtreeview.c (toggled_callback): fix to reflect change
7243         in GtkTreeModelStore.
7244
7245 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
7246
7247         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
7248         function to create an icon set from a pixbuf.
7249
7250 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7251
7252         * gtk/gtkcellrenderertext.[ch]:
7253         Add a "markup" property.
7254
7255         * gtk/treestoretest.c:
7256         Use the markup property, remove some leftover stuff from
7257         GtkTreeModelMapping.
7258
7259 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7260
7261         * gtk/gtklabel.c (gtk_label_set_selectable):
7262         Queue a redraw if the selectable setting was changed.
7263
7264 2001-02-20  Alexander Larsson  <alexl@redhat.com>
7265
7266         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
7267         Actually copy the whole gc, not just the public parts.
7268         
7269         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
7270         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
7271         labels.
7272
7273 2001-02-19  Havoc Pennington  <hp@pobox.com>
7274
7275         * gdk/gdkwindow.c: docs
7276
7277         * gdk/gdkrgb.c: docs
7278
7279         * gdk/gdkregion-generic.c: docs
7280
7281         * gdk/gdkgc.c (gdk_gc_set_values): docs
7282
7283         * gdk/gdkdraw.c: docs
7284
7285         * gdk/gdkdrawable.h: deprecate drawable get/set data
7286
7287 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
7288
7289         * demos/gtk-demo/dialog.c: Add simple new demo.
7290
7291 2001-02-19  Havoc Pennington  <hp@redhat.com>
7292
7293         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
7294         insert_child_anchor signal, bug #50245
7295
7296         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
7297         from create_child_anchor, so the anchor is passed in
7298
7299         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
7300         (_gtk_widget_segment_new): have the child anchor object passed in, 
7301         instead of creating it.
7302
7303         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
7304         to gtk_text_buffer_get_modified
7305
7306 2001-02-19  Havoc Pennington  <hp@redhat.com>
7307
7308         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
7309         changed GLib without fixing GTK
7310
7311         * gtk/gtkrange.h: Rename all the stupid implementation detail 
7312         functions to have an underscore in front. Most of them should 
7313         probably just go away, but for starters don't export them.
7314         Bug #50482
7315
7316 2001-02-19  Havoc Pennington  <hp@redhat.com>
7317
7318         * gdk/gdkcolor.h: test was backward, so deprecated functions were
7319         excluded by default
7320
7321         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
7322         clean up the old code a bit
7323
7324         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
7325         inconsistent state
7326
7327         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
7328         draw inconsistent state
7329
7330         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
7331         (create_menu): add inconsistent test
7332
7333         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
7334         new function
7335         (gtk_check_menu_item_get_inconsistent): new function
7336         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
7337         state (using etched in for now)
7338
7339         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
7340         draw inconsistent state
7341
7342         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
7343         function, used when the user has selected a range of stuff in
7344         different states
7345         (gtk_toggle_button_get_inconsistent): accessor for that
7346         (gtk_toggle_button_paint): draw inconsistent state (etched in?
7347         don't know what else to do)
7348
7349 2001-02-19  Hans Breuer <hans@breuer.org>
7350
7351         * gtk/gtk.def : updated exported symbols
7352
7353         * gtk/makefile.msc.in : updated
7354
7355         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
7356         a colormap, when invoked from testgtk::entry. I'm not sure where
7357         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
7358         avoids immediate crashing ...
7359
7360         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
7361         any objections ?
7362
7363         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
7364         0 parameter. At least msvc doesn't like macros with var args. 
7365         I simply removed the extra 0, was it a feature or a typo ?
7366
7367         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
7368         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
7369         because the value assignment to the internal struct wasn't working.
7370         I'm not absolutely sure. The problem could have been resolved by
7371         changing the "func" declartion in the struct, but was the pointer
7372         to the function pointer intended ?
7373
7374         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
7375
7376         * gdk/gdk.def : updated exported symbols
7377
7378         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
7379         only use SetDIBitsToDevice if there is a palette at the drawable
7380         and the image is GDK_VISUAL_PSEUDO_COLOR
7381
7382         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
7383
7384         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
7385
7386         * gdk/*/makefile.msc : updated
7387
7388 2001-02-19  Havoc Pennington  <hp@redhat.com>
7389
7390         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
7391         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
7392
7393         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
7394         (gdk_key_repeat_restore): nuke
7395
7396         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
7397         (gdk_init_check): no atexit func
7398
7399         * gdk/gdkrgb.h: mark some stuff deprecated
7400
7401         * gdk/gdkcolor.h: mark some stuff deprecated
7402         
7403         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
7404
7405         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
7406
7407 2001-02-16  Havoc Pennington  <hp@redhat.com>
7408
7409         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
7410         scroll steps.
7411
7412         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
7413         steps, and add Ctrl-arrow shortcuts for paging visually as with
7414         HScale, since Page Up and Page Down move logically.
7415
7416         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
7417         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
7418         
7419         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
7420         steps
7421         (gtk_range_scroll): handle the visual steps
7422
7423         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
7424         scroll steps
7425
7426         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
7427         steps, not the logical ones.
7428
7429         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
7430         (scroll_vertical): handle up/down steps
7431
7432 2001-02-19 Alexander Larsson  <alexl@redhat.com>
7433
7434         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
7435         Copy data and free data with free().
7436
7437         * gdk-pixbuf/gdk-pixbuf.c:
7438         * gdk-pixbuf/io-jpeg.c:
7439         * gdk-pixbuf/io-png.c:
7440         Use g_try_malloc/g_free instead malloc/free.
7441         
7442         * gdk-pixbuf/test-gdk-pixbuf.c:
7443         Must... initialize... gobject...
7444         
7445         * gdk-pixbuf/pixops/timescale.c:
7446         * gtk/gtkcalendar.c:
7447         Use g_malloc instead of malloc.
7448         
7449 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
7450
7451         * gtk/testgtkrc:
7452         Comment out property assignments, these don't work yet.
7453
7454 2001-02-17  Havoc Pennington  <hp@pobox.com>
7455
7456         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
7457         bit.
7458
7459 2001-02-17  Havoc Pennington  <hp@pobox.com>
7460
7461         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
7462         shadowed variables that had broken size request in some cases,
7463         leading to bogus tooltips (#50996)
7464
7465 2001-02-06  Jon K Hellan  <hellan@acm.org>
7466
7467         Implement fast browsing of tooltips, bug #50619
7468         
7469         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
7470         and last_popdown
7471         
7472         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
7473         use_sticky_delay and last_popdown.
7474         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
7475         time of popdown.
7476         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
7477         is NULL.
7478         (gtk_tooltips_recently_shown): New static function.  Return true
7479         if < sticky_delay has elapsed since last popdown.
7480         (gtk_tooltips_event_handler): Display window after sticky_delay
7481         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
7482         since last popdown.
7483         
7484 2001-02-17  Havoc Pennington  <hp@pobox.com>
7485
7486         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
7487         instead of (). #6394
7488
7489         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
7490         G_CONST_RETURN, make it return by reference, #50473
7491         
7492 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
7493
7494         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
7495         generated ENTER_NOTIFY event with 0, otherwise not explicitely
7496         setup fields contain garbage (e.g. subwindow, breaking
7497         gdk_drawable_ref() upon event copy).
7498         (gtk_menu_stop_navigating_submenu_cb): same here.
7499
7500         * gtk/gtklist.c (gtk_list_vertical_timeout): 
7501         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
7502         * gtk/gtkclist.c (vertical_timeout): 
7503         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
7504         default-zero-intialization for unions to memset(,0,), as unions are
7505         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
7506         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
7507
7508         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
7509         g_closure_sink() warning.
7510
7511         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
7512         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
7513         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
7514         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
7515         
7516 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
7517
7518         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
7519         gtk_*_store_get, and moved to GtkTreeModel.
7520
7521         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
7522
7523         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
7524
7525         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
7526
7527         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
7528         set the func.
7529
7530         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
7531         freeze/thaw notify between setting all the properties for a cell.
7532
7533         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
7534
7535 2001-02-15  Havoc Pennington  <hp@redhat.com>
7536
7537         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
7538         the X coordinates so they're with respect to the line, rather than 
7539         with respect to the layout.
7540
7541         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
7542         Mallabone
7543
7544         * gtk/testgtk.c (create_range_controls): add vscale tests, 
7545         and inverted test
7546
7547         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
7548         #50806
7549
7550         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
7551
7552         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
7553         gtk_text_iter_is_end
7554
7555         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
7556         rename gtk_text_buffer_get_end_iter
7557
7558         * gtk/testgtk.c (create_labels): Add test for selectable
7559
7560         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
7561         the selection stuff. This code is kind of broken since it doesn't 
7562         use the theme engine.
7563
7564         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
7565         fix infinite loop and y offset problem
7566         (gdk_draw_layout_line_with_colors): fix foreground color handling
7567
7568         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
7569         that makes the label selectable.
7570         
7571         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
7572         layout when the style is set, since fonts etc. could have changed.      
7573
7574 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
7575
7576         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
7577
7578         * gtk/gtktreemodelsimple.[ch]: removed.
7579
7580 2001-02-16  Alexander Larsson  <alexl@redhat.com>
7581
7582         * gtk/gtktreemodelmapping.[ch]:
7583         New files. Implement GtkTreeModelMapping.
7584         
7585         * gtk/Makefile.am:
7586         Add gtktreemodelmapping.[ch].
7587         
7588         * gtk/gtk.h:
7589         Add gtktreemodelmapping.h
7590
7591         * gtk/treestoretest.c:
7592         Test the GtkTreeModelMapping
7593
7594 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
7595
7596         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
7597         have a demo, we might as well pass in real values.  Thanks to
7598         clahey for pointing this out.
7599
7600 2001-02-14  Havoc Pennington  <hp@pobox.com>
7601
7602         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
7603         "static" to a private function
7604         (gtk_image_menu_item_class_init): remove destroy handler,
7605         add "image" object property
7606
7607 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
7608
7609         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
7610         Add a shortcut if the window and the current clip_region doesn't
7611         overlap. This is needed when there are a lot of windows in a
7612         window. The layout test in testgtk is a good test.
7613
7614         * gdk/linux-fb/gdkwindow-fb.c:
7615         Whitespace fix.
7616
7617 2001-02-13  Sven Neumann  <sven@convergence.de>
7618
7619         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
7620
7621 2001-02-13  Alexander Larsson  <alexl@redhat.com>
7622
7623         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
7624         Don't reference last_cursor if it is null. Fixes crash when rotating
7625         the screen before having moved the mouse.
7626
7627         * gdk/linux-fb/gdkcc-fb.c: Zapp!
7628
7629         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
7630
7631         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
7632         when using 90 or 270 degrees rotation.
7633
7634 2001-02-12  Havoc Pennington  <hp@pobox.com>
7635
7636         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
7637         it always set the foreground, even if we were only using
7638         a stipple.
7639         (gdk_draw_layout_line_with_colors): new function, allow
7640         override colors
7641         (gdk_draw_layout_with_colors): new function, allow override
7642         colors
7643         (gdk_pango_layout_line_get_clip_region): function to get the clip
7644         region for a logical text range
7645         (gdk_pango_layout_get_clip_region): get the clip region for a
7646         logical text range
7647
7648         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
7649         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
7650         the right number of arguments.
7651
7652         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
7653         enhance the function to check that node data corresponds to a 
7654         view still belonging to the tree.
7655
7656         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
7657         GtkTreePath
7658         (gtk_tree_view_inserted): ditto
7659         (gtk_tree_view_child_toggled): ditto
7660
7661         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
7662         simplify this code.
7663
7664         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
7665         a PangoAttrList
7666
7667         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
7668
7669         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
7670
7671         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
7672         size in the size request 
7673         (gtk_menu_bar_size_allocate): consider toggle size here
7674
7675         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
7676         that displays a widget in the toggle slot
7677
7678         * gtk/testgtk.c: test GtkImageMenuItem
7679
7680         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
7681         
7682         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
7683         request and allocation
7684
7685         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
7686
7687         * gtk/gtkcheckmenuitem.c
7688         (gtk_check_menu_item_toggle_size_request): ditto
7689         
7690 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
7691
7692         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
7693         reference.
7694
7695         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
7696         and refuse to initialize GTK+ if they fail.
7697
7698 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
7699
7700         * configure.in: Add check for gtk-doc version.
7701
7702 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
7703
7704         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
7705         where the xpad/ypad was only being used on one side!
7706
7707 2001-02-11  Tor Lillqvist  <tml@iki.fi>
7708
7709         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
7710         function, copied from X11 version.
7711
7712         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
7713         DestroyCursor failures. The reason for the problem (despite the
7714         inconsistent messages from GetLastError()) was that
7715         DestroyCursor() cannot be called while a cursor is set in a
7716         window. Set the new cursor first and then destroy the old one.
7717         Thanks to jpe@archaeopteryx.com.
7718
7719         * gdk/win32/gdkcc-win32.c: Remove.
7720
7721         * gdk/win32/Makefile.am: Remove from here, too.
7722         
7723         * gdk/gdk.def
7724         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
7725
7726         * gtk/gtk.def
7727         * gtk/makefile.mingw.in: Updates.
7728
7729 2001-02-08  Havoc Pennington  <hp@redhat.com>
7730
7731         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
7732         add a widget to a bin that already has a child.
7733
7734         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
7735
7736         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
7737         
7738         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
7739
7740         * gdk/gdk.h: remove gdkcc.h
7741
7742         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
7743
7744         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
7745         GdkPixbuf, since the previous implementation was GdkColorContext
7746         dependent.
7747
7748         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
7749         
7750 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
7751
7752         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
7753         a sane value!
7754
7755 2001-02-08  Havoc Pennington  <hp@redhat.com>
7756
7757         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
7758         lighten them.
7759
7760 2001-02-08  Havoc Pennington  <hp@redhat.com>
7761
7762         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
7763         validation idle
7764
7765         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
7766         cell renderer
7767
7768         * demos/pixbuf-demo.c (timeout): remove deprecated
7769         gtk_widget_draw
7770
7771         * demos/testpixbuf-save.c (main): remove deprecated
7772         gtk_drawing_area_size
7773
7774         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
7775         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
7776         at the start of the allocation.
7777         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
7778         unsetup or NULL model.
7779
7780         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
7781         even/odd/sorted cells in the tree view.
7782
7783         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
7784         bugfixes
7785
7786         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
7787         backgrounds with draw_flat_box using different detail for even/odd
7788         rows.
7789
7790         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
7791         row, so we can draw the alternating colors thing
7792
7793         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
7794         property from a synonym property, notify for the synonym.
7795         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
7796         (gtk_text_tag_get_property): Always return the font, even if
7797         all its fields aren't set
7798
7799         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
7800         store the attr list; it leaves us with no way to change attributes
7801         in _render according to the render flags, and no way to implement
7802         get_property. Instead store all the specific text attributes. 
7803         Separate whether an attribute is enabled from its value. Sync all
7804         properties with GtkTextTag, make them all consistent, etc.
7805
7806         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
7807         renderers can highlight the sort row/column     
7808
7809         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
7810         accessor functions to get values; this has the side effect of
7811         showing up which accessor functions were missing. Added those.
7812
7813         * gtk/gtktreeviewcolumn.h: Replace set_justification with
7814         set_alignment, to be consistent with GtkLabel, GtkMisc
7815
7816         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
7817         arrow.
7818
7819         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
7820
7821         * gtk/gtktreesortable.h: updates in here
7822
7823 2001-02-07  Sven Neumann  <sven@convergence.de>
7824
7825         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
7826         pango dimensions after painting the background. We used to draw
7827         gigantic flat boxes here.
7828
7829 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
7830
7831         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
7832         error introduced with earlier commit) (pointed out by
7833         Ollie Lho)
7834
7835 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
7836
7837         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
7838         which are no longer necessary.
7839
7840 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
7841
7842         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
7843
7844 2001-02-04  Tor Lillqvist  <tml@iki.fi>
7845
7846         * gdk/gdk.def
7847         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
7848         Provide dummy implementations.
7849
7850 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
7851
7852         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
7853
7854         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
7855         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
7856         deprecated this function.
7857
7858         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
7859         argument.
7860
7861 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
7862
7863         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
7864
7865 2001-02-03  Havoc Pennington  <hp@pobox.com>
7866
7867         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
7868         Mikael Hermansson with patch from Mikael (if there was a toggle
7869         start one after the first character in the range, this function
7870         was broken). Bug #50380
7871
7872 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
7873
7874         * configure.in: Remove confusing comment about X11.
7875
7876 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
7877
7878         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
7879         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
7880         
7881 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
7882
7883         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
7884         it breaks things on BSD. If you want to compile GTK+ with
7885         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
7886         when configuring, since GTK+ simply can't be "pure ANSI" 
7887         in the header files it uses. (#8170, Greg Hudson)
7888
7889 2001-02-02  Havoc Pennington  <hp@redhat.com>
7890
7891         * gtk/gtkwindow.c: docs
7892
7893         * gtk/gtkwidget.c: docs
7894         (gtk_widget_set_colormap): add a reference to the colormap
7895         (gtk_widget_get_default_colormap): add a reference to the colormap
7896
7897         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
7898
7899         * gtk/gtktextiter.c: docs
7900
7901         * gtk/gtkmain.c (gtk_propagate_event): docs
7902
7903         * gtk/gtkpaned.c (gtk_paned_get_position): docs
7904         (gtk_paned_set_position): docs
7905
7906         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
7907         sort interface, no implementation yet.
7908
7909         * demos/testpixbuf.c (new_testrgb_window): replace
7910         gtk_drawing_area_size() with gtk_widget_set_usize()
7911
7912         * demos/testpixbuf-drawable.c (main): ditto
7913         
7914         * gtk/testgtk.c: remove use of GtkStatusbarMsg
7915
7916         * gtk/gtktextbuffer.c: docs
7917
7918         * gtk/gtkstock.c: docs
7919
7920         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
7921
7922         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
7923
7924         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
7925         
7926         * gtk/gtkimage.c: add some docs in here
7927         (gtk_image_size_request): change name of
7928         gtk_widget_render_stock_icon
7929         (gtk_image_get_icon_set): don't dup returned string
7930         (gtk_image_get_icon_set): don't dup returned string
7931
7932         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
7933         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
7934         and gtkiconfactory.h functions
7935
7936         * gtk/gtkiconfactory.c: add some docs in here
7937
7938         * gtk/gtkmain.c (gtk_get_default_language): document
7939         (gtk_get_current_event): document
7940         (gtk_get_current_event_state): document
7941         (gtk_get_event_widget): document
7942
7943         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
7944
7945         * gtk/gtkcontainer.c: Add some documentation
7946         (gtk_container_add): give a more explanatory warning on adding an
7947         already-parented widget, this is kind of a FAQ and also a common
7948         typo that's easier to debug with a nice warning 
7949
7950         * gtk/gtkcellrenderertoggle.c
7951         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
7952         adding this, it's useless
7953         (gtk_cell_renderer_toggle_set_active): remove
7954         (gtk_cell_renderer_toggle_get_radio): add
7955
7956         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
7957         the NULL cell renderer, that doesn't make any sense to me. 
7958
7959         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
7960         demo code should never use deprecated features.
7961
7962         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
7963         code should never use deprecated features.
7964
7965         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
7966         gtk_widget_queue_clear_area deprecated
7967
7968         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
7969         deprecated
7970
7971         * gtk/gtklabel.h: mark gtk_label_get() deprecated
7972
7973         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
7974         a GdkImage deprecated, replaced by new consistently-named
7975         functions       
7976
7977         * gtk/gtkmain.h: Mark gtk_exit() deprecated
7978
7979         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
7980
7981         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
7982         deprecated
7983
7984         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
7985         so it won't appear in docs and confuse people.
7986
7987         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
7988
7989         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
7990         macros deprecated. (can't mark the type itself deprecated, since
7991         GtkProgressBar is not deprecated and we need the type decl to use
7992         GtkProgressBar)
7993
7994         * gtk/gtkpixmap.h: Mark deprecated
7995
7996         * gtk/gtkoldeditable.h: Mark deprecated
7997
7998         * gtk/gtklist.h: Mark deprecated
7999
8000         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
8001         for anything anymore.
8002
8003         * gtk/gtkctree.h: Mark deprecated
8004
8005         * gtk/gtkclist.h: Mark deprecated
8006
8007         * gtk/gtkpreview.h: Mark deprecated
8008
8009         * gtk/gtkpacker.h: Mark deprecated
8010
8011         * gtk/gtktipsquery.h: Mark deprecated
8012
8013         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
8014
8015         * gtk/gtkvruler.h: Add comment that it will move out of GTK
8016
8017         * gtk/gtkhruler.h: Add comment that it will move out of GTK
8018
8019         * gtk/gtkruler.h: Add comment that it will move out of GTK
8020
8021         * gtk/gtkgamma.h: Add comment that it will move out of GTK
8022
8023         * gtk/gtkcurve.h: Add comment that it will move out of GTK
8024
8025 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
8026
8027         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
8028         gdk_colormap_sync private since it was never exported
8029         in a header file.
8030
8031         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
8032         colormap->colors[] for StaticGray, StaticColor colormaps.
8033
8034         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
8035         was being used as if it was image->bits_per_pixel.
8036
8037         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
8038         for the image in the GdkImage structure since it isn't
8039         reconstructable, and we need it to handle packed types
8040
8041         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
8042         the assumption that on Win32 image->bits_per_pixel == image->depth,
8043         always.
8044
8045         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
8046
8047         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
8048         warning message if no converter can be found. 
8049
8050 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
8051
8052         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
8053         chars to isupper() / tolower(). (#567)
8054
8055         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
8056         to clear up 64-bit warnings. (#567)
8057
8058 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
8059
8060         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
8061         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
8062
8063         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
8064         since some people set $(libdir) separately. (#1290, David Kaelbling)
8065
8066 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
8067
8068         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
8069         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
8070         MAXPATHLEN, but the code here depends on a fixed value.)
8071         (#4524)
8072
8073 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
8074
8075         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
8076         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
8077
8078 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
8079
8080         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
8081         viewable there is no way that moving the node will cause the 
8082         focus row to become not viewable, so omit check on the visibility
8083         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
8084
8085 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
8086
8087         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
8088         selection before inserting new text.
8089
8090 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
8091
8092         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
8093         Make the sensitivity of the reparented child track that of
8094         the original parent menu item. (#34218, David Hodson)
8095
8096         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
8097         the case where the current item is destroyed properly.
8098
8099         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
8100         some edge cases with child-less menuitems.
8101         
8102 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
8103
8104         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
8105         key pop down window. (#12074, Jon K Hellan)
8106
8107 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
8108
8109         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
8110         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
8111         The solution here isn't perfect - you get an extraneous
8112         emission of "toggle", which could conceivably confuse an app,
8113         but better than the current situation. LXR search seems to
8114         indicate that no apps in GNOME CVS connect to "toggle".
8115
8116 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
8117
8118         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
8119         gtk_public_h_sources to directly here to avoid warning when
8120         building srcdir != builddir. (#9656)
8121
8122 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
8123
8124         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
8125         handlers in gtkrange.c return the proper values (TRUE == handled)
8126         (#10316).
8127
8128         This is just the tip of the iceberg, but gtkrange.c is the
8129         most common place where the propagation is problematical,
8130         and also a place where it is almost certainly safe to change
8131         this in the stable branch.
8132
8133         (You don't want right click popups on a range control or anything...)
8134
8135 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
8136
8137         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
8138         area on focus out, even if a background pixmap isn't set.
8139         (#13941)
8140         
8141 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
8142
8143         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
8144         to deal with setting the shape properly when scrolling arrows are
8145         turned on, but not visible because there is sufficient space.
8146         (#13432)
8147
8148 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
8149
8150         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
8151         items with submenus, destroy the item along with the submenu.
8152         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
8153         properly.
8154
8155         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
8156         later.
8157
8158 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
8159
8160         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
8161         the focus widget sometimes wasn't drawn with the default if there
8162         was no default widget.
8163
8164         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
8165         unreference pixmaps. 
8166
8167         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
8168         for some extra safety.
8169
8170 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
8171
8172         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
8173         the text of a cell to the old pointer value better, by
8174         copying the new text before freeing the old text. Some code
8175         cleanup. (#8079, Karl Nelson)
8176
8177 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
8178
8179         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
8180         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
8181
8182 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
8183
8184         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
8185         item from a menu, check to see if it matches 
8186         menu->old_active_menu_item, and if so, unref and clear
8187         old_active_menu_item (Patch from Pavel Cisler)
8188
8189         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
8190         menu_shell->active_menu_item, if it is the child being
8191         removed. (Patch based on that of Gene Ragan, #50337)
8192
8193 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
8194
8195         * gdk/linux-fb/gdkselection-fb.c: 
8196         * gdk/linux-fb/gdkcolor-fb.c: 
8197         * gdk/linux-fb/gdkdrawable-fb2.c: 
8198         * gdk/linux-fb/gdkfont-fb.c: 
8199         * gdk/linux-fb/gdkim-fb.c: 
8200         * gdk/linux-fb/gdkinput.c: 
8201         * gdk/linux-fb/gdkkeyboard-fb.c: 
8202         * gdk/linux-fb/gdkmain-fb.c: 
8203         * gdk/linux-fb/gdkrender-fb.c: 
8204         A bunch of whitespace cleanup.
8205         
8206 2001-01-30  Havoc Pennington  <hp@pobox.com>
8207
8208         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
8209         #ifdef GTK_ENABLE_BROKEN.
8210
8211         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
8212         GTK_ENABLE_BROKEN just before including the broken headers.
8213         
8214         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
8215         deprecated types registered.
8216
8217         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
8218         we have to test the broken stuff.
8219
8220         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
8221         
8222 2001-01-30  Havoc Pennington  <hp@redhat.com>
8223
8224         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
8225         here where prev pointer was set to the wrong thing
8226
8227         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
8228         (gtk_tree_path_is_descendant): new function
8229
8230         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
8231         cached length
8232         (gtk_list_store_get_iter): don't modify iter if we can't get the
8233         path.
8234
8235         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
8236         
8237         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
8238         GtkTreeDragDest
8239
8240         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
8241         was causing segfault
8242
8243         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
8244         pointer to NULL
8245
8246         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
8247
8248         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
8249         on returning FALSE
8250         (gtk_list_store_iter_children): ditto
8251         (gtk_list_store_iter_nth_child): ditto
8252         (gtk_list_store_iter_nth_child): ditto
8253         (gtk_list_store_iter_parent): ditto
8254
8255         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
8256         on iter->user_data != NULL instead of silently accepting it.
8257         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
8258         we are returning TRUE.
8259         (gtk_tree_store_iter_children): ditto
8260         (gtk_tree_store_iter_nth_child): ditto
8261         (gtk_tree_store_iter_parent): ditto
8262         (gtk_tree_store_insert): remove handling of parent->user_data ==
8263         NULL, replace with parent == NULL       
8264
8265         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
8266         and a comment explaining things
8267
8268         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
8269         interface support to GtkTreeStore.
8270
8271         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
8272         FALSE if no prev, fix
8273
8274         * gtk/gtktreeview.c (set_source_row): use a row reference
8275         (set_dest_row): use a row reference
8276
8277 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
8278
8279         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
8280         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
8281         (gtk_tree_selection_select_iter): The same as above.
8282
8283 2001-01-26  Havoc Pennington  <hp@redhat.com>
8284
8285         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
8286         which holds a handle to a specific row (particular set of values
8287         in the model, i.e. pointer-identity row).
8288
8289         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
8290         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
8291         Still need to use it for the src/dest row saved on the drag context.
8292
8293 2001-01-26  Havoc Pennington  <hp@redhat.com>
8294
8295         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
8296
8297         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
8298         not offset by TREE_VIEW_HEADER_HEIGHT
8299         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
8300         TREE_VIEW_HEADER_HEIGHT
8301
8302         * configure.in (included_loaders): for me, --with-included-loaders
8303         generates the error "the specified loader yes does not exist",
8304         i.e. the arg defaults to "yes", so change test for value ""
8305         to test for value "yes", and include all loaders in that case.
8306
8307         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
8308
8309         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
8310         handle TREE_VIEW_VERTICAL_SEPARATOR
8311         (gtk_tree_view_bin_expose): fix to consider the row offset as
8312         pointing halfway into vertical separator.       
8313         (gtk_tree_view_draw_node_focus_rect): ditto
8314
8315         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
8316         --gtk-debug=updates, which causes gdk_window_set_debug_updates
8317         (TRUE) to be called.
8318
8319         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
8320         debug mode where the invalid region is colored in on invalidate,
8321         so you can see the flicker and know whether your redraw code is 
8322         doing a good job.
8323
8324         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
8325         tree window coordinates (clip rect is in tree window coords)
8326
8327         * gtk/Makefile.am: add gtktreednd.[hc]
8328
8329         * gtk/gtkliststore.c: implement gtktreednd interfaces.
8330
8331         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
8332         drag-and-drop data operations on a model (so we can set up tree
8333         drag-and-drop automatically)
8334
8335         * gtk/testgtk.c: Add a window to change sensitivity in the
8336         GtkLabel test; add a way to change the entry frame in GtkEntry
8337         test
8338
8339         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
8340         (gtk_entry_get_has_frame): new functions to remove the frame
8341         around an entry
8342         (gtk_entry_size_request): shrink requisition if no frame
8343         (gtk_entry_draw_focus): don't draw frame if no frame
8344
8345         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
8346         checks inside a cell renderer
8347         (gtk_default_draw_option): ditto for options
8348
8349         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
8350         children from the alignment, not the button
8351         (gtk_tree_view_column_init): ref/sink the column, to emulate
8352         GObject refcounting.
8353
8354         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
8355         
8356         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
8357         Use theme functions to draw the toggles 
8358
8359         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
8360
8361         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
8362         GdkPangoAttrEmbossed to use in rendering insensitive text
8363
8364         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
8365
8366         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
8367         using new GDK features
8368         
8369 2001-01-24  Alexander Larsson  <alexl@redhat.com>
8370
8371         * gtk/gtkimage.c:
8372         Splitted gtk_image_clear into gtk_image_clear() and
8373         gtk_image_reset(). Call gtk_image_clear() in ::destroy
8374         to avoid leaks.
8375
8376         * gtk/gtklabel.c (set_markup):
8377         Don't leak text.
8378
8379         * gtk/gtktextlayout.c:
8380         Always free display->shaped_objects.
8381
8382         * gtk/testgtk.c (create_clist):
8383         Don't leak custom style.
8384
8385 2001-01-23  Alexander Larsson  <alexl@redhat.com>
8386
8387         * gtk/gtkcolorsel.c (grab_color_at_mouse):
8388         Don't leak image. Simplify using gdk_colormap_query_color().
8389         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
8390
8391         * linux-fb/gdkcolor-fb.c:
8392         Implemented gdk_colormap_query_color.
8393
8394 2001-01-23  Alexander Larsson  <alexl@redhat.com>
8395
8396         * linux-fb/gdkcursor-fb.c:
8397         Don't leak built-in cursors.
8398
8399         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
8400         Don't leak tmp_points.
8401
8402         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
8403         Don't modify desc. Don't leak font if the PangoFont
8404         isn't found.
8405         
8406         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
8407         Free dash_list.
8408
8409         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
8410         Don't leak string.
8411         
8412 2001-01-20  Havoc Pennington  <hp@pobox.com>
8413
8414         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
8415         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
8416         me, matches Pango
8417
8418 2001-01-22  Havoc Pennington  <hp@redhat.com>
8419
8420         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
8421
8422         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
8423
8424         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
8425         Remove, move back to gdk-pixbuf
8426
8427         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
8428         to all the word functions
8429
8430         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
8431         before doing anything on NULL layout or if we don't have the focus
8432
8433         * gtk/testtext.c (fill_example_buffer): "justification"
8434
8435         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
8436         to be called "justification" not "justify"
8437
8438         * demos/gtk-demo/textview.c (create_tags): "justification"
8439         
8440         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
8441
8442 2001-01-22  Alexander Larsson  <alexl@redhat.com>
8443
8444         * gdk/gdkwindow.c (gdk_window_invalidate_region):
8445         Don't leak visible_region. Use visible_region instead of region.
8446         
8447         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
8448         Don't do extra gdk_drawable_ref(). This is not X.
8449         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
8450         gdk_fb_focused_window is ref:ed.
8451         (gdk_fb_window_send_crossing_events): Watch out for destroyed
8452         windows.
8453
8454 2001-01-22  Alexander Larsson  <alexl@redhat.com>
8455
8456         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
8457         Don't leak the PangoFontDescriptor.
8458
8459 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
8460
8461         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
8462         when not realized.
8463         (gtk_tree_view_scroll_to_cell): Make work when not realized.
8464         (gtk_tree_view_realize): add scroll_to support
8465         (gtk_tree_view_finalize): add a finalize method.  Populate.
8466         (gtk_tree_view_insert_column): ref and sink the column.
8467         (gtk_tree_view_append_column): ref and sink the column.
8468         (gtk_tree_view_queue_draw_node): New function to handle redrawing
8469         individual nodes.  Should make the code much more efficient, if
8470         actually used.
8471
8472 2001-01-19  Havoc Pennington  <hp@redhat.com>
8473
8474         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
8475         byte_offset variable was being used to mean both "offset into
8476         layout" and "offset into buffer line" which was no longer true
8477         with addition of preedit string; fix
8478
8479 2001-01-19  Havoc Pennington  <hp@redhat.com>
8480
8481         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
8482
8483         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
8484         function
8485
8486         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
8487         implement
8488
8489         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
8490         scroll_to_cell, matches TextView scroll functions better
8491         (gtk_tree_view_tree_to_widget_coords): new function
8492         (gtk_tree_view_widget_to_tree_coords): new function
8493         (gtk_tree_view_get_visible_rect): new function
8494         (gtk_tree_view_get_path_at_pos): accept negative coordinates
8495         (gtk_tree_view_draw_node_focus_rect): new function moved from
8496         draw_focus, also, use width of bin_window as width of the focus
8497         rect
8498         (gtk_tree_view_expand_row): fix bug where it didn't recognize
8499         already-expanded rows
8500         (gtk_tree_view_get_cell_rect): new function
8501         (gtk_tree_view_get_path_at_pos): return the click position
8502         relative to the passed-in cell
8503         (gtk_tree_view_set_expander_column): new function
8504
8505         * configure.in: remove gtk-config-2.0 chmod
8506
8507         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
8508         and properly handle drags with targets we don't understand
8509         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
8510         scrolling anyway
8511         (gtk_text_view_drag_drop): stop scrolling here though, and set the
8512         mark invisible
8513
8514         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
8515         function
8516         (gtk_drag_dest_get_target_list): new function
8517         (gtk_drag_dest_set_target_list): new function
8518         
8519         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
8520
8521         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
8522         related to drag-and-drop
8523
8524 2001-01-19  Alexander Larsson  <alexl@redhat.com>
8525
8526         * gdk/linux-fb/gdkprivate-fb.h:
8527         Define EMULATE_GDKFONT.
8528         Add extra pango_font stuff to GfkFontPrivate.
8529         
8530         * gdk/linux-fb/gdkdrawable-fb2.c:
8531         * gdk/linux-fb/gdkfont-fb.c:
8532         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
8533         emulation using PangoFont.
8534
8535 2001-01-17  Havoc Pennington  <hp@pobox.com>
8536
8537         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
8538         all the non-deprecated set_foo functions. Added missing object
8539         properties, and added g_object_notify() to setters. 
8540         Wrote docs.
8541         
8542 2001-01-18  Tor Lillqvist  <tml@iki.fi>
8543
8544         * gtk/gtkmain.c
8545         * gtk/gtkrc.c: (Win32) Use the new
8546         g_win32_get_package_installation_(sub)directory() functions.
8547
8548         * config.h.win32.in: New file.
8549         
8550         * config.h.win32: Removed.
8551
8552         * configure.in: Output config.h.win32.
8553
8554         * Makefile.am: Add it to EXTRA_DIST.
8555
8556         * gtk/gtk.def: Update.
8557
8558 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
8559
8560         * gtk/gtklabel.c (gtk_label_size_request): Set the
8561         attributes onto the PangoLayout even if they are newly
8562         created from label->pattern.
8563
8564 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
8565
8566         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
8567
8568         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
8569         structures in functions. Fixes bug where gtk_dataset_*
8570         was accidentally still being used in one place, causing
8571         every dest side event to be treated independently.
8572
8573         * gtk/gtkdnd.c: Remove last vestages of handling
8574         ::draw (fixes warning)
8575         
8576         * gtk/gtkentry.[ch]: Add drag and drop support.
8577
8578         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
8579         new function gtk_check_drag_threshhold() for checking
8580         to check if (dx,dy) has exceeded the threshhold for starting
8581         a drag and use it everywhere.
8582
8583 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
8584
8585         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
8586         add -I{includedir}/gtk-2.0.
8587
8588         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
8589         gdk/gdk-pixbuf.h: Doc fixups.
8590         
8591         * gtk/gtkobject.h: Remove trailing , from enum
8592
8593 2001-01-17 Alexander Larsson <alexl@redhat.com> 
8594
8595         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
8596         Doh! Mixed up x and y.
8597
8598         * gdk/linux-fb/gdkglobals-fb.c:
8599         Removed gdk_fb_pointer_grab_window_events,
8600         added _gdk_fb_pointer_grab_owner_events and
8601         _gdk_fb_keyboard_grab_owner_events.
8602
8603         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
8604         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
8605         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
8606         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
8607         Send crossing events after ungrab finished.
8608         (gdk_keyboard_grab): Set ..._owner_events
8609         (type_masks): Move out of function.
8610         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
8611         gdk_fb_keyboard_event_window): New functions, return the
8612         window an event should be targeted at. Handles grabs and
8613         event propagation. Can return NULL.
8614         (gdk_event_make): Remove event_mask checking. Now always
8615         returns an event.
8616                 
8617         * gdk/linux-fb/gdkkeyboard-fb.c:
8618         * gdk/linux-fb/gdkproperty-fb.c:
8619         * gdk/linux-fb/gdkselection-fb.c:
8620         Use new event_window/gdk_event_make() behaviour.
8621         
8622         * gdk/linux-fb/gdkmouse-fb.c:
8623         Use new event_window/gdk_event_make() behaviour.
8624         Only send motion events if in the same window.
8625         If grabbed, use cursor from window if sibling of grabbed
8626         window, and cursor from grabbed window otherwise.
8627
8628         * gdk/linux-fb/gdkprivate-fb.h:
8629         Update gdk_fb_window_send_crossing_events, gdk_event_make
8630         and grab varaible declarations. Add gdk_fb_*_event_window().
8631
8632         * gdk/linux-fb/gdkwindow-fb.c:
8633         Use new event_window/gdk_event_make() behaviour.
8634         Keep correct track of focus window.
8635         (gdk_window_set_events): Set all specific button motion masks
8636         if GDK_BUTTON_MOTION_MASK set.
8637
8638         * gtk/gtkdnd.c (gtk_drag_update):
8639         Free info->last_event if gdk_drag_motion returned FALSE.
8640
8641 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8642
8643         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
8644         Eliminate redraws when input-only windows are shown or
8645         hidden. Thanks to jpe@archaeopteryx.com.
8646
8647 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
8648
8649         * docs/faq/gtk-faq.sgml: FAQ update:
8650           - Update to bugzilla
8651           - Add GTK+ and security/SUID/SGID
8652           - Add DnD question
8653
8654 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
8655
8656         * gdk/linux-fb/gdkdnd-fb.c:
8657         Some cleanups.
8658         
8659 2001-01-15  Havoc Pennington  <hp@pobox.com>
8660
8661         * tests/testtreeview.c: add test stuff for CellRendererToggle
8662
8663         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
8664         accessor
8665
8666         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
8667         only toggle on button press (would do release like GtkButton, but
8668         we'd need implicit grab code for treeview cells)
8669
8670 2001-01-16  Tor Lillqvist  <tml@iki.fi>
8671
8672         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
8673
8674         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
8675         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
8676
8677         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
8678         to g_{locale,filename}_{to,from}_utf8 to match current API.
8679
8680         * gtk/makefile.msc.in (gtk_OBJECTS)
8681         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
8682
8683         * gtk/gtk.def: Update.
8684
8685 2001-01-15  Tor Lillqvist  <tml@iki.fi>
8686
8687         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
8688         implementaion that more closely mimics the events that an X server
8689         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
8690         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
8691         with nested preview widgets, for instance, more responsive when
8692         you move the mouse quickly into them.
8693         (find_window_for_pointer_event): Make it actually compile.
8694         (gdk_event_translate): Set send_event to the value of
8695         InSendMessage (). This doesn't really mean the same as X11's
8696         send_event flag, but is close enough, says jpe@archaeopteryx.com
8697
8698 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8699
8700         * gdk/linux-fb/gdkdnd-fb.c:
8701         Implemented drag and drop.
8702         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
8703         when it tries to free and then copy the same event (info->last_event).
8704         I am not sure about why this happens, but will continue looking.
8705
8706 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8707
8708         * gdk/linux-fb/gdkwindow-fb.c:
8709         Use gdk_window_invalidate_rect instead of
8710         gdk_window_invalidate_rect_clear to minimise flashing.
8711         When hiding windows you need to clear the root window though.
8712
8713 2001-01-15  Alexander Larsson  <alexl@redhat.com>
8714
8715         * gdk/linux-fb/gdkdrawable-fb2.c:
8716         For optization, add an full_shapes argument to gdk_fb_clip_region.
8717         If this is false, only the cliprects of the shapes are used.
8718
8719         * gdk/linux-fb/gdkprivate-fb.h:
8720         Export gdk_fb_window_peek_shape.
8721         Add full_shapes to gdk_fb_clip_region.
8722
8723         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
8724         When moving a window, don't clear everything under the it, just the
8725         root window. Makes stuff faster and flash less.
8726         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
8727         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
8728         offset of the shape.
8729         
8730
8731 2001-01-12  Havoc Pennington  <hp@redhat.com>
8732
8733         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
8734         current invalid region, fixes redraw bug while scrolling the 
8735         text widget
8736
8737         * gtk/gtktextview.c, gtk/gtktextview.h:
8738         Rearrange the scrolling/validation/etc. code in a major way, 
8739         so it seems to make sense to me. Probably isn't genuinely that
8740         much better, but...
8741
8742         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
8743         notifies
8744
8745         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
8746
8747 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
8748
8749         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
8750         Hide mouse pointer while rotation. Show it afterwards.
8751
8752 2001-01-12  Alexander Larsson  <alexl@redhat.com>
8753
8754         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
8755         windows in consideration when generating clip region.
8756
8757         * gdk/linux-fb/gdkfb.h:
8758         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
8759
8760         * gdk/linux-fb/gdkprivate-fb.h:
8761         Add shape to GdkWindowFBDatat.
8762         exported gdk_fb_window_get_abs_shape().
8763         removed gdk_fb_draw_lines declaration.
8764
8765         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
8766         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
8767         send focus changes when there is a grabbed window.
8768         (gdk_window_get_pointer): Handle shaped windows.
8769         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
8770         (gdk_fb_window_peek_shape): Returns the shape for a window,
8771         handles GDK_FB_USE_CHILD_SHAPE.
8772         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
8773         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
8774         (gdk_window_shape_combine_mask): Implement.
8775
8776         * gtk/gtkwindow-decorate.c:
8777         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
8778         setting the shape of a window makes the window transparent.
8779
8780 2001-01-11  Havoc Pennington  <hp@redhat.com>
8781
8782         * gtk/gtktreemodelsimple.h: Oops, broke some macros
8783
8784 2001-01-10  Havoc Pennington  <hp@redhat.com>
8785
8786         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
8787         add this function, bug 40251
8788
8789         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
8790         of type macro   
8791
8792 2001-01-11  Alexander Larsson  <alexl@redhat.com>
8793
8794         * acconfig.h:
8795         Added ENABLE_SHADOW_FB
8796
8797         * configure.in:
8798         Added --disable-shadowfb
8799
8800         * gdk/linux-fb/gdkcursor-fb.c:
8801         Update shadowfb when updating cursor
8802
8803         * gdk/linux-fb/gdkdrawable-fb2.c:
8804         Added wrappers for shadowfb that calls  the normal drawable
8805         methods, but calls gdk_shadow_fb_update(bounding box) when
8806         GdkWindows are drawed to.
8807         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
8808         which also returns the bounding box.
8809
8810         * gdk/linux-fb/gdkfb.h:
8811         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
8812
8813         * gdk/linux-fb/gdkgeometry-fb.c:
8814         Update shadowfb when scrolling window.
8815
8816         * gdk/linux-fb/gdkglobals-fb.c:
8817         Add _gdk_fb_screen_angle.
8818         
8819         * gdk/linux-fb/gdkkeyboard-fb.c:
8820         Test code for screen rotation. Shift-F2 in the xlate driver
8821         rotates the screen.
8822
8823         * gdk/linux-fb/gdkmain-fb.c:
8824         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
8825
8826         * gdk/linux-fb/gdkmouse-fb.c:
8827         Use fb_width/height instead of modeinfo.xres/yres.
8828
8829         * gdk/linux-fb/gdkprivate-fb.h:
8830         Added fb_men, fb_width, fb_height & fb_stride. When using
8831         shadow fb these can differ from the framebuffer stuff.
8832         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
8833         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
8834         _gdk_fb_screen_angle. Removed CM, RP.
8835
8836         * gdk/linux-fb/gdkrender-fb.c:
8837         Added code for shadowfb handling and screen rotation using
8838         shadowfb.
8839
8840         * gdk/linux-fb/gdkwindow-fb.c:
8841         Use fb_mem, fb_stride, fb_width, fb_height.
8842         Added recompute_rowstride to reset the rowstride of all windows.
8843         Added gdk_fb_recompute_all() which recomputes rootwindow size,
8844         window abs positions and window rowstrides. Usefull when the
8845         rotation has changed.
8846
8847 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
8848
8849         * docs/faq/gtk-faq.sgml: update to make web site updating easier
8850
8851 2001-01-10  Havoc Pennington  <hp@redhat.com>
8852
8853         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
8854         where sibling == iter
8855         (gtk_tree_store_insert_after): handle sibling == iter
8856         (gtk_tree_store_prepend): remove stamp checks
8857         (gtk_tree_store_insert_before): ditto
8858         (gtk_tree_store_append): ditto
8859         (gtk_tree_store_get_path): ditto
8860         (gtk_tree_store_get_value): ditto
8861         (gtk_tree_store_iter_has_child): ditto
8862         (gtk_tree_store_iter_n_children): ditto
8863         (gtk_tree_store_iter_nth_child): ditto
8864         (gtk_tree_store_insert_after): ditto
8865         (gtk_tree_store_is_ancestor): ditto
8866         (gtk_tree_store_iter_depth): ditto
8867         (gtk_tree_store_insert_before): assert that sibling's parent is
8868         the same as the passed-in parent
8869         (gtk_tree_store_insert_after): assert that sibling's parent is
8870         the same as the passed-in parent
8871
8872         
8873         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
8874         function to get the first iterator in a model
8875         
8876         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
8877         conventionally the "root" in this sense is just NULL afaict.
8878
8879         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
8880         where sibling == iter
8881         (gtk_list_store_insert_after): handle case where sibling == iter
8882
8883         * tests/testtreeview.c (run_automated_tests): fairly lame basic
8884         automated tests for ListStore, TreeStore
8885
8886         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
8887         (gtk_list_store_insert): update tail pointer, and fix it to work
8888         (gtk_list_store_insert_before): update tail pointer, and fix it to work
8889         (gtk_list_store_append): use tail to be faster
8890         (gtk_list_store_prepend): fix it, update tail pointer
8891         (gtk_list_store_insert_after): fix it, update tail pointer
8892
8893         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
8894         the list
8895
8896 2001-01-09  Havoc Pennington  <hp@redhat.com>
8897
8898         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
8899         is NULL due to a pending resize
8900
8901         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
8902         column width to values less than 1
8903
8904         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
8905         width to be between min/max width, and still set the width 
8906         even if autosize is turned on, so the tree view can use this 
8907         function in order to autosize.
8908         (gtk_tree_view_column_init): set initial width to 1 not 0
8909
8910         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
8911         setter function to modify column width, so we get notification
8912         (gtk_tree_view_insert_iter_height): ditto
8913         (gtk_tree_view_calc_size): ditto
8914         (gtk_tree_view_check_dirty): ditto
8915
8916         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
8917         properties to change all the interesting attributes of the tree
8918         view column.
8919         (gtk_tree_view_column_set_header_clickable): rename set_clickable
8920         (gtk_tree_view_column_get_clickable): add
8921         (gtk_tree_view_column_set_cell_renderer): don't unset the current
8922         attributes; assume a cell renderer with equivalent object
8923         properties has been swapped in. Do g_object_notify().
8924         (gtk_tree_view_column_set_visible): g_object_notify
8925         (gtk_tree_view_column_get_sizing): rename from get_col_type
8926         (gtk_tree_view_column_set_sizing): g_object_notify
8927         (gtk_tree_view_column_set_width): add g_object_notify
8928         (gtk_tree_view_column_set_min_width): ditto
8929         (gtk_tree_view_column_set_max_width): ditto
8930         (gtk_tree_view_column_set_title): ditto
8931         (gtk_tree_view_column_set_clickable): ditto
8932         (gtk_tree_view_column_set_widget): ditto
8933         (gtk_tree_view_column_set_justification): ditto
8934
8935 2001-01-09  Havoc Pennington  <hp@redhat.com>
8936
8937         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
8938         there are no rows in the model
8939
8940         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
8941         NULL, then return the start of the list
8942
8943         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
8944         if we can't get any rows from an empty model 
8945
8946         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
8947         extraneous * after function pointer typedef usage
8948
8949         * Makefile.am: don't specify full path to cp and rm
8950
8951         * gtk/gtkcellrenderertextpixbuf.c
8952         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
8953         NULL before dereferencing, fixes a segfault that happened from
8954         time to time
8955
8956         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
8957         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
8958         and reindent the function
8959         (gtk_cell_renderer_pixbuf_get_size): indentation
8960
8961         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
8962         we quit it
8963         (gtk_dialog_add_buttons_valist): add g_return_if_fail
8964         (gtk_dialog_set_default_response): New function, to set default
8965         button
8966         (gtk_dialog_set_response_sensitive): New function, to set 
8967         sensitivity of buttons
8968
8969         * gtk/gtkcellrendererpixbuf.c
8970         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
8971         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
8972
8973         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8974         handle any G_TYPE_OBJECT subclass, not just the base class, and 
8975         also boxed types.
8976         (_gtk_tree_data_list_value_to_node): ditto
8977
8978         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
8979         --gtk-debug=tree
8980
8981         * gtk/gtkmain.c: add GTK_DEBUG_TREE
8982
8983         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
8984
8985 2001-01-09  Tor Lillqvist  <tml@iki.fi>
8986
8987         * gdk/win32/gdkevents-win32.c: Implement better mouse
8988         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
8989         (find_window_for_pointer_event): New function.
8990         (gdk_event_translate): Use it when handling mouse events.
8991
8992 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
8993
8994         * configure.in:
8995         Added --with-included-loaders option
8996
8997         * gdk-pixbuf/Makefile.am:
8998         * gdk-pixbuf/gdk-pixbuf-io.c:
8999         Add support for including selected gdk-pixbuf loaders only.
9000
9001         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
9002         gtk_window_set_has_frame):
9003         Added inline documentation.
9004
9005         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
9006         * docs/reference/gdk/tmpl/windows.sgml:
9007         Added inline documentation.
9008
9009 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
9010
9011         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
9012         realizing buttons that have already been realized.
9013
9014 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
9015
9016         * tests/testtreeview.c (main): Show menu items before adding to
9017         option menu.
9018
9019         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
9020         around if we kill them.
9021
9022         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
9023         Return if we pass in a NULL model.
9024
9025 2001-01-08  Havoc Pennington  <hp@redhat.com>
9026
9027         * tests/testtreeview.c: hack on this some
9028
9029         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
9030         gtk_tree_store_set_valist, v is for arrays, valist for varargs
9031         list
9032         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
9033
9034         * gtk/gtkliststore.h: Add varargs set() and get() convenience
9035         functions
9036
9037 2001-01-08  Alexander Larsson  <alexl@redhat.com>
9038
9039         * gtk/gtkwindow-decorate.[hc]:
9040         * gtk/Makefile.am:
9041         New files. Contains an implementation of a minimal WM for
9042         linux-fb.
9043
9044         * gtk/gtkwindow.h:
9045         Add the possibility for GtkWindows to specify a frame. This
9046         is used for the window decoration code, but could concievably
9047         be used for X programs too (xmms style windows).
9048         GtkWindow->frame is the toplevel window if the window is framed.
9049         The signal frame_event gets all events that are targeted to
9050         GtkWindow->frame.
9051         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
9052         
9053         * gtk/gtkwindow.c:
9054         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
9055         Call out to gtkwindow-decorate.c for WM support in linx-fb.
9056
9057 2001-01-08  Alexander Larsson  <alexl@redhat.com>
9058
9059         * docs/README.linux-fb:
9060         Correct filename ~/.pangoft2_aliases
9061
9062         * gdk/gdkwindow.h:
9063         Added new function gdk_window_get_decorations.
9064
9065         * gdk/linux-fb/gdkfb.h:
9066         Removed _gdk_window_get_decorations declaration.
9067         Renamed _gdk_window_set_child_handler to
9068         gdk_fb_window_set_child_handler.
9069
9070         * gdk/linux-fb/gdkwindow-fb.c:
9071         Renamed _gdk_window_set_child_handler to
9072         gdk_fb_window_set_child_handler.
9073
9074         * gdk/x11/gdkwindow-x11.c:
9075         New function gdk_window_get_mwm_hints().
9076         Implemented gdk_window_get_decorations.
9077
9078         * docs/reference/gdk/tmpl/windows.sgml:
9079         * docs/reference/gdk/gdk-sections.txt:
9080         Added gdk_window_get_decorations docs.
9081         
9082 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
9083
9084         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
9085         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
9086         gdk_fb_window_send_crossing_events):
9087         Possibly send focus events when the mouse moves from one
9088         window to another.
9089
9090 2001-01-07  Tor Lillqvist  <tml@iki.fi>
9091
9092         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
9093         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
9094         to match current API.
9095
9096         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
9097         environment variable is set, don't call g_error when on a
9098         palettized (PseudoColor) display. Some people want to use GTK+ 
9099         in 256-colour mode even though works only partially.
9100
9101         * gdk/gdk.def
9102         * gtk/gtk.def
9103         * gtk/makefile.mingw.in: Update.
9104
9105 2001-01-05  Havoc Pennington  <hp@redhat.com>
9106
9107         * tests/testtreeview.c: hack on this a bit
9108
9109         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
9110         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
9111
9112         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
9113         was spelled incorrectly
9114         (GTK_IS_TREE_MODEL_SIMPLE): ditto
9115
9116         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
9117         from gtk_tree_view_set_headers_active   
9118
9119         * gtk/gtktexttag.c:
9120         (gtk_text_tag_get_property): handle PROP_DIRECTION
9121         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
9122         properties, bug 40235
9123
9124         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
9125         forward_to_line_end
9126
9127 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
9128
9129         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
9130         modules/input/gtkimcontextxim.c: Adapt to new prototypes
9131         for unicode,locale,filename conversion functions.
9132
9133 2001-01-05  Havoc Pennington  <hp@redhat.com>
9134
9135         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
9136         broken if called on the first position in the buffer.
9137
9138         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
9139         forward_to_delimiters to be called only if we aren't already at
9140         the delimiters.
9141
9142 2001-01-05  Havoc Pennington  <hp@redhat.com>
9143
9144         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
9145
9146 2001-01-05  Alexander Larsson  <alexl@redhat.com>
9147
9148         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
9149         colormap in here. Sync from X port.
9150         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
9151         Sync from X port.
9152         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
9153         This happens now and then, and i don't think it is a bug.
9154         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
9155         != endpoint.
9156         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
9157         GDK_LINE_SOLID.
9158
9159         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
9160         some of the fields filled in at least.
9161
9162         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
9163         miLineArcD is no more, remove it from the function definition.
9164
9165 2001-01-04  Havoc Pennington  <hp@redhat.com>
9166
9167         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
9168         this
9169
9170         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
9171         user_data instead of tree_node
9172
9173         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
9174         TREE_VIEW_COLUMN_SIZE
9175
9176         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
9177         "size" field to "width" finishes bug 40061
9178
9179         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
9180         for bitfields, bug 40268
9181
9182 2001-01-04  Havoc Pennington  <hp@redhat.com>
9183
9184         Rename some stuff:
9185         
9186         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
9187
9188         s/GtkModelSimple/GtkTreeModelSimple/g;
9189         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
9190         s/gtk_model_simple/gtk_tree_model_simple/g;
9191         s/gtkmodelsimple/gtktreemodelsimple/g;
9192
9193         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
9194
9195         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
9196         s/column_set_col_type/column_set_sizing/g;
9197
9198         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
9199         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
9200
9201         s/GtkCellRendererType/GtkCellRendererState/g;
9202         
9203         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
9204         (gtk_cell_renderer_toggle_class_init): change "state" property to
9205         "active", to match GtkToggleButton
9206         (gtk_cell_renderer_toggle_get_active): new function, bug
9207         40269
9208         (gtk_cell_renderer_toggle_set_active): new function
9209         (gtk_cell_renderer_toggle_set_property): route changes to toggle
9210         state through gtk_cell_renderer_set_active
9211
9212 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
9213
9214         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
9215         temporarily until they work again.  Brought up to date with
9216         changes in the model.
9217         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
9218         model.
9219
9220 2001-01-04  Havoc Pennington  <hp@redhat.com>
9221
9222         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
9223         equal to the line length, then position iterator before paragraph 
9224         separators. Fixes crash reported by Mikael Hermansson when
9225         pressing left arrow from the start of a line.   
9226
9227         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
9228         about byte indexes off the end
9229         (iter_set_from_char_offset): add g_error about char offsets
9230         off the end
9231
9232 2001-01-03  Havoc Pennington  <hp@redhat.com>
9233
9234         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
9235
9236         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
9237         of private functions; remove inclusion of private headers.
9238
9239         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
9240         function, so we don't need private functions in gtktextdisplay.c
9241
9242         * gtk/gtktextiterprivate.h: underscore-ification
9243
9244         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
9245         to instead say "only useful to implement widgets"
9246
9247         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
9248         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
9249         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
9250
9251         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
9252         This function was completely broken
9253
9254         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
9255
9256         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
9257
9258         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
9259
9260         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
9261
9262         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
9263
9264         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
9265
9266         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
9267         gtk_paint_layout
9268
9269         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
9270         gtk_paint_layout
9271
9272         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
9273         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
9274         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
9275         which were not implemented.     
9276
9277         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
9278         insert_pixbuf signal. Rename delete_text to delete_range since it
9279         also deletes pixbufs and child anchors. This almost closes bug
9280         40245 (still need to deal with child anchors)
9281
9282         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
9283         insert_pixbuf, change signal names as appropriate, change types of
9284         signals taking marks/tags to have the specific type, not just
9285         G_TYPE_OBJECT
9286         
9287         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
9288         closes bug 40051
9289
9290         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
9291         unnecessary remove_contents() call
9292         (gtk_option_menu_class_init): add a "changed" signal, closes
9293         bug 40039
9294         (gtk_option_menu_update_contents): emit "changed" if the 
9295         active menu item changes
9296
9297         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
9298         cast to GtkObject, reported by Jonas Borgstrom
9299         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
9300         we can't do stuff with side effects in finalize. Instead, spew a
9301         warning if the loader isn't closed.
9302
9303         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
9304         colormap in here, non-X ports probably need to sync to this change
9305
9306         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
9307         assertion that colormap != NULL, you can set the colormap to NULL
9308         if you like.
9309         
9310         * Makefile.am: remove gtk-config-2.0
9311
9312         * configure.in: Use pkg-config to locate GLib. Remove
9313         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
9314         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
9315         Use pkg-config to locate Pango. Output correct Pango libs to
9316         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
9317
9318         * Makefile.am (pkgconfig_DATA): install only target-specific pc
9319         files
9320         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
9321         X11 pc files
9322
9323         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
9324         unref from here
9325
9326 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
9327
9328         * configure.in:
9329         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
9330
9331 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
9332
9333         * gtk/gtktextlayout.c
9334         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
9335         variable when moving back onto a single line.
9336
9337 2001-01-01  Havoc Pennington  <hp@redhat.com>
9338
9339         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
9340
9341         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
9342
9343         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
9344         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
9345
9346 2001-01-01  Havoc Pennington  <hp@redhat.com>
9347
9348         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
9349
9350         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
9351         GtkTextAttributes
9352
9353         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
9354         #40246
9355         (gtk_text_attributes_copy_values): rename from 
9356         gtk_text_attributes_copy
9357         (gtk_text_attributes_copy): a more standard GTK copy function, 
9358         which returns a new object
9359
9360 2001-01-01  Havoc Pennington  <hp@redhat.com>
9361
9362         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
9363         
9364         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
9365         don't fill in tree_view->priv->selection, kind of an unexpected
9366         side effect
9367
9368         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
9369         gtkintl.h
9370         
9371         * gtk/gtkcellrenderer.c: Remove definition of _ and include
9372         gtkintl.h
9373         (gtk_cell_renderer_get_property): remove calls to g_value_init
9374
9375         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
9376         gtkintl.h
9377
9378         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
9379         and include gtkintl.h
9380         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
9381         property names
9382
9383         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
9384         GtkTreeSelection
9385         (_gtk_tree_selection_new_from_with_view): rename, return
9386         GtkTreeSelection
9387         (_gtk_tree_selection_set_tree_view): rename with uscore
9388         (gtk_tree_selection_get_selected): fill in the "model" out param
9389         first, so it gets filled in even if we return at the top of the 
9390         function
9391         (gtk_tree_selection_real_select_all): add a comment and an else{}
9392         to clarify this a bit
9393         (gtk_tree_selection_real_unselect_all): add the same else{}
9394
9395         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
9396         set_tree_view to have underscore prefixes, move them to the
9397         private header, fix return type of new_with_tree_view
9398         (struct _GtkTreeSelection): mark struct
9399         fields private  
9400
9401         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
9402         GtkTreeModelFlags, not a guint
9403         (gtk_tree_path_prev): return gboolean not gint
9404         (gtk_tree_path_up): return gboolean not gint
9405
9406         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
9407         return GtkTreeModelFlags, not a guint
9408
9409         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
9410         that child model is non-null before unrefing it
9411         (g_value_int_compare_func): make this a qsort compare func, not 
9412         a boolean predicate
9413
9414         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
9415         (add -umn to the end), and mark it unimplemented
9416         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
9417         I don't see what it's for - doesn't the model always sort itself?
9418         (gtk_tree_model_sort_set_compare): this had the wrong signature
9419
9420         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
9421         Fix the docs to say that it destructively replaces existing
9422         attributes (previously said that it added attributes).
9423         (gtk_tree_view_column_set_visible): canonicalize bool before
9424         equality testing. Also, check for realization before
9425         hiding/showing the tree_column->window; if this window could exist
9426         before realization, then it's busted and needs fixing, we can't 
9427         create GDK resources pre-realization. Also, remove
9428         superfluous queue_resize(), since set_size() does that for us.
9429         (gtk_tree_view_column_set_col_type): check realization before 
9430         using tree_column->window
9431
9432         * gtk/gtktreedatalist.c: fix filename in copyright notice
9433
9434 2000-12-31  Havoc Pennington  <hp@pobox.com>
9435
9436         * gtk/gtktextview.c: Rearrange all the
9437         scroll-while-dragging-or-selecting code to be different, not
9438         necessarily better. ;-)
9439         (gtk_text_view_scroll_to_mark): Change this
9440         function to take within_margin as a fraction instead of a pixel
9441         value, and to take alignment arguments (indicating where to align 
9442         the mark inside the visible area)
9443         
9444         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
9445         to GtkObject
9446
9447         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
9448         behavior so that offsets past the end of the line are not 
9449         allowed, and an offset equal to the line length moves the iterator
9450         to the next line
9451         (gtk_text_iter_set_line_index): make parallel change
9452         (gtk_text_iter_get_bytes_in_line): add this function
9453         
9454         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
9455         of byte indexes off the end of the line; byte index at the end of
9456         the line now returns FALSE and doesn't fill in the requested
9457         values, byte index past the end of the line is an error.  Also,
9458         don't allow -1 offset anymore, since its meaning is unclear.
9459
9460         This change exposes some bug in visual cursor motion, where we
9461         end up with a huge invalid byte index; needs fixing. Symptom of 
9462         bug is a crash when you hit up arrow.
9463         
9464         (_gtk_text_line_char_locate): match the change to byte_locate
9465
9466         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
9467         from start of line properly. fixes bug reported by Mikael
9468         Hermansson where backspace would delete all text before the
9469         cursor.
9470
9471 2000-12-30  Tor Lillqvist  <tml@iki.fi>
9472
9473         * gdk/win32/gdkwindow-win32.c
9474         (gdk_window_impl_win32_get_visible_region): New function, as in
9475         the X11 backend.
9476         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
9477         instead of duplicating the same code here.
9478
9479         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
9480         GDK_COLORMAP macro.
9481
9482         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
9483         destroy function.
9484         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
9485         access that.
9486
9487         * gtk/gtk.def: Update.
9488
9489         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
9490
9491 2000-12-30  Havoc Pennington  <hp@pobox.com>
9492
9493         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
9494         colormap on input only windows, to avoid special cases all over
9495         the code for these windows.
9496
9497 2000-12-26  Tor Lillqvist  <tml@iki.fi>
9498
9499         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
9500         we are on a palettized display ("PseudoColor" in X11), as the code
9501         for that doesn't work anyway, and never has.
9502
9503 2000-12-22  Alexander Larsson  <alexl@redhat.com>
9504
9505         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
9506         Don't use isprint() for chars > 255.
9507
9508 2000-12-21  Havoc Pennington  <hp@redhat.com>
9509
9510         * tests/testtreeview.c: more work
9511
9512 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9513
9514         * docs/README.linux-fb:
9515         Update the docs to the new pangoft2 way.
9516
9517 2000-12-21  Alexander Larsson  <alexl@redhat.com>
9518
9519         * configure.in:
9520         For linux-fb get the pangoft2 cflags and libs. This needs a recent
9521         pango version.
9522         Remove modules/linux-fb/Makefile.
9523
9524         * gdk/linux-fb/gdkdrawable-fb2.c:
9525         Render glyphs using freetype.
9526
9527         * gdk/linux-fb/gdkfb.h:
9528         Add new fb-specific functions needed for managing windows.
9529
9530         * gdk/linux-fb/gdkmain-fb.c:
9531         Remove gdk_font_init/fini() calls.
9532
9533         * gdk/linux-fb/gdkpango-fb.c:
9534         Remove old implementation. Use pangoft2 instead.
9535
9536         * gdk/linux-fb/gdkprivate-fb.h:
9537         Remove PangoFBFont and related stuff.
9538
9539         * gdk/linux-fb/gdkwindow-fb.c:
9540         Implement drawable->get_visible_region.
9541         Implement support for _gdk_window_set_child_handler () and
9542         _gdk_window_get_decorations().
9543
9544         * modules/Makefile.am:
9545         Remove linux-fb subdir.
9546
9547         * modules/linux-fb/*:
9548         Removed all.
9549         
9550 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
9551
9552         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
9553         calls, as they are no longer needed.
9554
9555         * gtk/gtktreemodelsort.c: Fix up the comparison code.
9556         
9557         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
9558         figure out how to emit a signal on an interface.
9559
9560 2000-12-20  Havoc Pennington  <hp@redhat.com>
9561
9562         * tests: new directory to contain tests, gtk/test* should move
9563         here sometime (with appropriate on-cvs-server hackery)
9564
9565         * tests/testtreeview.c, tests/Makefile.am: a test
9566         
9567         * configure.in (AC_OUTPUT): add tests/Makefile
9568
9569         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
9570         and "invisible_set" which were missing
9571
9572         * gtk/gtkrbtree.h: some cheesy indentation fix
9573         
9574 2000-12-20  Alexander Larsson  <alexl@redhat.com>
9575
9576         * gtk/gtkinvisible.c (gtk_invisible_realize):
9577         Attach the style to the window so that the style it is not
9578         leaked when unrealizing the window.
9579
9580 2000-12-18  Havoc Pennington  <hp@redhat.com>
9581
9582         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
9583         begin/end user action where appropriate
9584         (gtk_text_view_commit_handler): add begin/end user action
9585
9586         * gtk/gtktextbuffer.c: add begin/end user action signals, and
9587         bracket interactive operations with begin/end user action pair.
9588         
9589         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
9590         "interactive" arg from insert_text and delete_text signals.
9591         Add begin_user_action, end_user_action signals
9592         (gtk_text_buffer_begin_user_action): 
9593         (gtk_text_buffer_end_user_action): New functions to delimit 
9594         a user-visible action
9595
9596         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
9597         signals.
9598         
9599 2000-12-18  Havoc Pennington  <hp@redhat.com>
9600
9601         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
9602         was pretty non-working.
9603
9604         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
9605         by passing the length to g_utf8_validate().
9606
9607 2000-12-16  Havoc Pennington  <hp@pobox.com>
9608
9609         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
9610         Port to GObject, can go back in gdk-pixbuf after setting up 
9611         a gdk-pixbuf-marshal.h header over there.
9612
9613         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
9614         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
9615         args
9616         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
9617         set
9618         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
9619         here, do it when we create the buttons later
9620         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
9621         (gtk_tree_view_map): paranoia checks that column->button is shown 
9622         and unmapped
9623         (gtk_tree_view_size_request): only request visible children.
9624         Move header size calculation in here, for cleanliness, and 
9625         to maintain invariants for child widgets if we eventually 
9626         let users set different children inside the buttons
9627         (gtk_tree_view_map_buttons): factor out code to map buttons,
9628         since it was being called several times
9629         (gtk_tree_view_size_allocate_buttons): move_resize the drag
9630         windows instead of just moving them; their height may change 
9631         if we allow random widgets in there, or the theme changes.
9632         (gtk_tree_view_size_allocate): move button size allocation 
9633         above emitting the scroll signals, to ensure a sane state when we
9634         hit user code
9635         (gtk_tree_view_button_release): remove queue_resize after
9636         tree_view_set_size(), set_size() will handle any resize queuing
9637         that's needed
9638         (gtk_tree_view_focus_in): just queue a draw, don't fool with
9639         draw_focus goo
9640         (gtk_tree_view_focus): use gtk_get_current_event() and
9641         gdk_event_get_state()
9642         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
9643         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
9644         semicolon
9645         (gtk_tree_view_create_button): show the button here
9646         (gtk_tree_view_button_clicked): actually emit the clicked signal
9647         on the column
9648         (_gtk_tree_view_set_size): return right away if the size is
9649         unchanged, as a cheesy optimization
9650         (gtk_tree_view_setup_model): rename set_model_realized to 
9651         setup_model to match the flag that indicates whether we've 
9652         called it
9653         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
9654         exist, because set_scroll_adjustment does that and it shouldn't
9655         matter what order you call these in
9656         (gtk_tree_view_get_vadjustment): ditto
9657         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
9658         for paranoia
9659         (gtk_tree_view_set_headers_visible): call
9660         gtk_tree_view_map_buttons() instead of using cut-and-paste code
9661         (gtk_tree_view_append_column): clarify whether the return value
9662         is the count of columns before or after, and do the increment 
9663         separately from the return statement so you can tell from the code.
9664         (gtk_tree_view_remove_column): ditto
9665         (gtk_tree_view_insert_column): ditto
9666         (gtk_tree_view_get_column): remove g_return_if_fail for columns
9667         outside the existing range, the docs say that outside-range
9668         columns are allowed, so we handle them as documented. (Presumably
9669         this allows a nice loop with column != NULL as test.)
9670         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
9671         mean (left/right/center etc.).
9672         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
9673         (gtk_tree_view_expand_row): add docs
9674         (gtk_tree_view_collapse_row): add docs
9675
9676         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
9677         function to emit the clicked signal on a column
9678         
9679         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
9680         state of an event
9681         (gdk_event_get_time): don't treat GDK_SCROLL 
9682         as a button event, remove default case from switch so gcc 
9683         will whine if we don't explicitly handle all event types
9684
9685         * gtk/gtktreeselection.h: added some FIXME 
9686         
9687         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
9688         "columns" to "n_columns" and "column" to "columns" for clarity
9689
9690 2000-12-16  Havoc Pennington  <hp@pobox.com>
9691         
9692         * gtk/gtktextiter.c: General cleanup of the log attr iteration
9693         stuff. This should make e.g. the delete key work again in the
9694         text widget...
9695         (gtk_text_iter_forward_cursor_positions): handle negative count
9696         (gtk_text_iter_backward_cursor_positions): handle negative count
9697         (gtk_text_iter_forward_word_ends): handle negative count
9698         (gtk_text_iter_backward_word_starts): handle negative count
9699
9700         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
9701         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
9702         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
9703         GObject. No doubt will cause breakage.
9704
9705         * demos/gtk-demo/textview.c: remove hacks around
9706         non-GObject-ification of the text objects
9707
9708         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
9709         the text tag
9710         
9711 2000-12-14  Havoc Pennington  <hp@pobox.com>
9712
9713         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
9714         that we have Xrender
9715
9716 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
9717
9718         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
9719         Add two virtualized functions gdk_drawable_get_clip_region - to
9720         get the clip region when drawing.
9721         
9722         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
9723         use invalidate_region.
9724
9725         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
9726         region.
9727
9728         * acconfig.h configure.in: Check for Xft. For now, assume
9729         that if Xft is found, Pango was compiled with Xft support
9730         as well.
9731
9732         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
9733         gdk_colormap_query_color().
9734         
9735         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
9736         with Xft if appropriate.
9737
9738         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
9739         a pangoxft context if we have XFT and the environment
9740         variable GD_USE_XFT is set.
9741         
9742         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
9743         and also possibly an XftDraw structure.
9744
9745         * gtk/gtkfontsel.c: Handle the case where the font from the
9746         style doesn't match any of the fonts a bit better.
9747         
9748         * gtk/testgtk.c: Add tabs between directional segments for
9749         hebrew/arabic test. (Not really necessary, just a little
9750         prettier.)
9751
9752 2000-12-14  Havoc Pennington  <hp@redhat.com>
9753
9754         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
9755         reading a file
9756
9757 2000-12-14  Havoc Pennington  <hp@redhat.com>
9758
9759         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
9760         unused call to get_last_line()
9761
9762         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
9763         here until boxed is working (and maybe after that - we should
9764         really not gratuitously break old code)
9765
9766         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
9767         specific types for font_desc and tabs args, move them to
9768         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
9769         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
9770
9771         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
9772         use GTK_TYPE_POINTER for signal signatures as a hack-around
9773
9774         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
9775         PangoTabArray
9776
9777         * gtk/gtktextlayout.c (line_display_iter_to_index): 
9778         make static
9779         (line_display_index_to_iter): make static
9780
9781         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
9782         to marshal a string not a boxed
9783
9784         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
9785
9786         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
9787         since the UTF-8 isn't validated yet
9788
9789         * gtk/gtktextsegment.c (char_segment_check_func): don't require
9790         lines to end in '\n'
9791         
9792         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
9793         forward_to_delimiters, and grapheme boundaries
9794         (gtk_text_view_delete_from_cursor): properly handle non-newline
9795         delimiters, and grapheme boundaries
9796
9797         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
9798         to gtk_text_iter_forward_to_delimiters, and make it work properly
9799         if empty lines end with a character other than '\n'
9800
9801         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
9802         position
9803
9804 2000-12-15  Tor Lillqvist  <tml@iki.fi>
9805
9806         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
9807
9808         * gtk/gtk.def
9809         * gdk/gdk.def: Update.
9810
9811         * gdk/win32/gdkmain-win32.c
9812         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
9813         gdkmain-win32.c here.
9814
9815         * gdk/win32/makefile.mingw.in (all): No need to make
9816         gdk-win32res.o here, the makefile one step up will call us to make
9817         it.
9818
9819         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
9820         gdkkeys-win32.
9821
9822         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
9823
9824         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
9825         call to g_source_add().
9826
9827         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
9828         leak. Thanks to Andreas Kemnade.
9829
9830 2000-12-13  Havoc Pennington  <hp@pobox.com>
9831
9832         * gtk/gtktextbtree.h: Remove double _ in front of some functions
9833
9834         * gtk/gtktext*.[hc]: update accordingly
9835         
9836 2000-12-13  Havoc Pennington  <hp@pobox.com>
9837
9838         * gtk/gtktextbtree.h: Put _ in front of every function in this 
9839         header file
9840
9841         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
9842
9843 2000-12-13  Alex Larsson  <alexl@redhat.com>
9844
9845         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
9846         Add support for ps2 intellimouse.
9847
9848         * gdkkeyboard-fb.c:
9849         Move shift-F1 repaint handling to xlate handler only.
9850         
9851         * docs/README.linux-fb:
9852         Add imps2 to docs.
9853         Document the new refresh keys.
9854         
9855 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
9856
9857         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
9858
9859         * gtk/gtkbox.c: change property types from (u)long to (u)int for
9860         ::position and ::padding.
9861
9862         * gtk/gtkcontainer.c: make ::border_width an INT property.
9863
9864         * gtk/gtkpacker.c: make ::position an INT property.
9865
9866         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
9867         guard against NULL h/v scrollbars, since this is used at construction
9868         time.
9869
9870         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
9871         internal gtk_clist_constructor().
9872
9873         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
9874         gtk_ctree_constructor().
9875
9876         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
9877         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
9878
9879         * docs/reference/Makefile.am: fun stuff, disabled docs generation
9880         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
9881
9882         * gtk/gtkwidget.[hc]:
9883         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
9884         and gtk_widget_get().
9885         (gtk_widget_new): use g_object_new_valist().
9886         (gtk_widget_set): use g_object_set_valist().
9887
9888         * gtk/gtkobject.[hc]:
9889         removed gtk_object_arg_get_info(), gtk_object_getv(),
9890         gtk_object_query_args(), gtk_object_newv(),
9891         gtk_object_class_add_signals(),
9892         gtk_object_class_user_signal_new(),
9893         gtk_object_class_user_signal_newv(),
9894         gtk_object_arg_set(), gtk_object_arg_get(),
9895         gtk_object_args_collect(),
9896         gtk_object_default_construct(),
9897         gtk_object_constructed(),
9898         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
9899         removed nsignals, signals and n_args members from GtkObjectClass.
9900         (gtk_object_new): use g_object_new_valist().
9901         (gtk_object_set): use g_object_set_valist().
9902         (gtk_object_get): use g_object_get_valist().
9903         
9904         * gtk/gtkcompat.h: define gtk_object_default_construct().
9905         
9906         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
9907         g_object_new().
9908
9909         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
9910         fucntions, cleaned up method assignments (make sure your structures
9911         are setup properly before calling out). removed all GTK_CONSTRUCTED
9912         hacks ;)
9913
9914 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
9915
9916         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
9917         off-by-one error in checks. (Dave Lambert)
9918
9919 2000-12-12  Alexander Larsson  <alexl@redhat.com>
9920
9921         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
9922         Don't free gdk_fb_keyboard twice.
9923
9924 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
9925
9926         * gtk/testgtk.c:
9927         (create_tooltips): 
9928         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
9929         use GObject swapped_signal:: properties instead.
9930
9931         * gtk/gtkcellrenderertoggle.c: 
9932         * gtk/gtkcellrenderertextpixbuf.c: 
9933         * gtk/gtkcellrenderertext.c: 
9934         * gtk/gtkcellrendererpixbuf.c: 
9935         * gtk/gtkcellrenderer.c:
9936         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
9937         missing warnings for invalid property ids, install properties
9938         with g_object_class_install_property() now.
9939         
9940         * gtk/gtksignal.c:
9941         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
9942         
9943 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
9944         
9945         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
9946         to determine if a window is the focus widget within
9947         its toplevel.
9948
9949         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
9950         to be boolean.
9951
9952         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
9953         of the case where the container CAN_FOCUS to here instead
9954         of having it in each individual move-the-focus place.
9955
9956         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
9957         focusing to be geometric in a much more obvious sense. Arrowing
9958         around is still non-intuitive because it isn't perfect and
9959         because entries, etc, grab the arrow keys, but it at least
9960         usually will do what you expect now.
9961         
9962         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
9963         file.
9964
9965         * gtk/gtknotebook.c: Change tabs to be a single item in
9966         the focus chain. Make movement of focus on tabs with arrow
9967         keys wrap around.
9968         
9969         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
9970         CHECK_FIND_CHILD macro to give informative error messages
9971         instead of silent returns.
9972
9973         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
9974         flag since we handle GdkReturn on the tabs.
9975
9976         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
9977         windows rather than sending expose events directly.
9978
9979         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
9980         definition for GtkNotebookPage into .c file, since it is private.
9981
9982         * gtk/testgtk.c (create_notebook): Add option for 
9983         testing borderless notebook.
9984
9985         * gtk/testgtk.c (page_switch): Removed egregious poking
9986         around in GTK+ internals.
9987
9988         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
9989
9990         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
9991         properly through gtk_clist_focus. Make the title headers a
9992         single item in the tab-focus chain, and make left-right wrap
9993         around.
9994
9995         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
9996         focus method so that wrapping around works properly.
9997
9998         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
9999         that is handled for the widget now. 
10000
10001 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
10002
10003         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
10004         widgets as TOPLEVEL.
10005
10006         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
10007         TOPLEVEL widgets are containers.
10008
10009         * gtk/gtkinvisible.h: Remove useless include.
10010
10011 2000-12-11  Havoc Pennington  <hp@redhat.com>
10012
10013         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
10014         Handle chopping off \r\n and 0x2029 in addition to \n before
10015         passing to PangoLayout
10016
10017         * gtk/gtkimcontextsimple.c
10018         (gtk_im_context_simple_get_preedit_string): 
10019         return an empty string if no match is pending
10020
10021         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
10022         assertion that the returned preedit string was sane
10023
10024         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
10025         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
10026         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
10027
10028 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
10029
10030         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
10031         Fix up finalizer to chain to its parent.
10032
10033 2000-12-11  Alexander Larsson  <alexl@redhat.com>
10034
10035         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
10036         Clearified the difference between the keyboard types. Wrote a note
10037         about the magic sysrq key to get out of raw mode.
10038
10039 2000-12-09  James Henstridge  <james@daa.com.au>
10040
10041         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
10042         member to hold masks for detecting the start of a protocol packet.
10043         (mouse_devs): add packet start masks for ps2 and ms device types.
10044         Left the mask for fidmour blank, as I have no idea what it should
10045         be.
10046         (handle_mouse_io): skip bytes until we get to the start of a
10047         packet.  My Logitech mouse seems to be passing an extra NULL pad
10048         byte, and GPM does a similar thing here.
10049         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
10050         this is the ms mouse driver.
10051         (gdk_fb_mouse_ms_packet): fix up button handling, which was
10052         completely broken except for button1.  It was checking the wrong
10053         bit in the packet for the status of the right mouse button, and
10054         wrongly assuming right == button2 rather than 3.  I fixed that and
10055         also added support for middle button (button2).
10056
10057 2000-12-08  Havoc Pennington  <hp@redhat.com>
10058
10059         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
10060         that cause a segfault on text insertion
10061
10062         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
10063         warning
10064
10065         * gtk/gtktextiter.c (test_log_attrs): use
10066         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
10067
10068         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
10069         Get log attrs for a line, using a cache stored on the buffer
10070         
10071         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
10072         reported by Jeff Franks
10073
10074 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10075
10076         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
10077         /dev/ttyS0 -> /dev/mouse
10078
10079 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10080
10081         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
10082         Added dummy gdk_fontset_load.
10083
10084 2000-12-08  Alexander Larsson  <alexl@redhat.com>
10085
10086         * docs/README.linux-fb:
10087         * docs/Makefile.am:
10088         Initial GtkFB docs.
10089         
10090         * gdk/linux-fb/Makefile.am:
10091         Define GDK_DATA_PREFIX.
10092
10093         * gdk/linux-fb/gdkmain-fb.c:
10094         Fix typo.
10095         Change default display to /dev/fb0.
10096
10097         * gdk/linux-fb/gdkpango-fb.c:
10098         Add $(prefix)/share/fonts/ to font path.
10099         
10100 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
10101
10102         * gdk/linux-fb/gdkkeyboard-fb.c:
10103         New file containing the abstracted keyboard driver. Most code
10104         taken from gdkinput-ps2.c
10105
10106         * gdk/linux-fb/gdkinput-ps2.c:
10107         Removed file.
10108         
10109         * gdk/linux-fb/Makefile.am:
10110         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
10111
10112         * gdk/linux-fb/gdkcolor-fb.c:
10113         display->fb was renamed to display->fb_fd.
10114
10115         * gdk/linux-fb/gdkcursor-fb.c:
10116         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10117
10118         * gdk/linux-fb/gdkinput.c:
10119         Moved gdk_input_init here from gdkinput-ps2.c
10120
10121         * gdk/linux-fb/gdkmain-fb.c:
10122         display->fb was renamed to display->fb_fd.
10123         Now the tty and the console is opened here instead
10124         of in the keyboard driver. Also check GDK_VT to see what
10125         tty to open.
10126         Move gdk_beep () here from gdkinput-ps2.c
10127         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10128
10129         * gdk/linux-fb/gdkmouse-fb.c:
10130         Add header.
10131         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10132         Return correct keyboard modifiers.
10133         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
10134
10135         * gdk/linux-fb/gdkprivate-fb.h:
10136         Add tty and vt info to display.
10137         Add orignal modeinfo storage to display
10138         Update global functions
10139
10140         * gdk/linux-fb/gdkwindow-fb.c:
10141         Added gdk_fb_window_find_focus().
10142         gdk_mouse_get_info -> gdk_fb_mouse_get_info
10143
10144 2000-12-07  Havoc Pennington  <hp@pobox.com>
10145
10146         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
10147         function, noticed by Alex
10148
10149 2000-12-06  Elliot Lee  <sopwith@redhat.com>
10150
10151         * configure.in: Detect freetype properly
10152
10153         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
10154         above.
10155
10156 2000-12-06  Alexander Larsson  <alexl@redhat.com>
10157
10158         * gdk/linux-fb/Makefile.am:
10159         Add gdkmouse-fb.c
10160         
10161         * gdk/linux-fb/gdkmouse-fb.c:
10162         New file. Abstracted the mouse drivers a bit.
10163
10164         * gdk/linux-fb/gdkcursor-fb.c:
10165         The cursor hide/show functions was moved here from gdkinput-ps2.c.
10166
10167         * gdk/linux-fb/gdkinput-ps2.c:
10168         Removed old mouse handling code. Moved cursor handling code
10169         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
10170         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
10171         gdk_mouse_get_info.
10172
10173         * gdk/linux-fb/gdkmain-fb.c:
10174         Pass NULL pointers for x,y in gdk_mouse_get_info call.
10175
10176         * gdk/linux-fb/gdkprivate-fb.h:
10177         Removed public gdk_fb_find_common_ancestor, added and renamed
10178         functions for the new mouse handling code.
10179
10180         * gdk/linux-fb/gdkwindow-fb.c:
10181         Moved gdk_fb_window_send_crossing_events here. added global
10182         variable gdk_fb_window_containing_pointer. made
10183         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
10184         renamed to gdk_mouse_get_info.
10185
10186 2000-12-06  Alexander Larsson  <alexl@redhat.com>
10187
10188         * gdk/linux-fb/gdkevents-fb.c:
10189         Update to match latest gmain/gsource changes.
10190
10191         * gdk/linux-fb/gdkinput-ps2.c:
10192         Bogus gdk_keymap_get_entries_for_keycode implementation so that
10193         it links. Will be implemented later.
10194
10195 2000-12-03  Havoc Pennington  <hp@pobox.com>
10196
10197         * gdk/Makefile.am: add gdkkeys.[hc]
10198
10199         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
10200         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
10201
10202         * acconfig.h, configure.in: add checks and command line options
10203         for XKB
10204
10205         * gdk/x11/gdkkeys-x11.c: Implement the above functions
10206         
10207         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
10208         and group in the key event
10209
10210         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
10211         field with the low-level hardware key code, and a group
10212         field with the keyboard group
10213
10214         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
10215         and declare a couple globals used for keymap handling
10216         
10217         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
10218         hold down Shift-Control and type a hex number to get a Unicode 
10219         character corresponding to the hex number
10220         (gtk_im_context_simple_get_preedit_string): Fix cursor position
10221         (return bytes not chars)
10222
10223 2000-12-05  Elliot Lee  <sopwith@redhat.com>
10224
10225         * gdk/gdkcolor.h: Make GdkColor specify element sizes
10226         to avoid waste on 64-bit platforms.
10227
10228 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
10229
10230         * INSTALL: Fix link to PNG home, remove reference
10231         to fribidi.
10232
10233         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
10234         
10235         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
10236         tested.)
10237
10238         * gtk/gtkcheckmenuitem.c: Permanently turn on
10239         always_show_toggle.
10240
10241         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
10242         be NULL. (Vladimir Klebanov, #26545)
10243
10244         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
10245         some signed/unsigned comparison problems. (#6510,
10246         David Kaelbling)
10247
10248         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
10249         return type to boolean (Oskar Liljeblad, #18648)
10250
10251 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10252
10253         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
10254         Remove bogus colormap setting.
10255
10256 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10257
10258         * gdk/linux-fb/gdkcolor-fb.c:
10259         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
10260
10261         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
10262         Must set colormap.
10263         
10264 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
10265
10266         * docs/tutorial/gtk-tut.sgml: DND updates
10267
10268 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
10269
10270         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10271         Remove old debug g_warning().
10272         (gdk_fb_draw_drawable): The src argument can be either a wrapper
10273         or an implementation, just pass the implementation to draw_drawable_2.
10274         
10275         * gdk/linux-fb/gdkprivate-fb.h:
10276         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
10277
10278         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10279         clear and invalidate area when window is destroyed.
10280         (send_map_events): Remove old commented out code.
10281
10282 2000-12-05  Alexander Larsson  <alexl@redhat.com>
10283
10284         * gdk/linux-fb/gdkpango-fb.c:
10285         Use italic instead of oblique in font aliases.
10286         
10287         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
10288         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
10289         other unsupported functions.
10290
10291 2000-12-04  Havoc Pennington  <hp@redhat.com>
10292
10293         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
10294
10295         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
10296
10297         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
10298
10299         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
10300         hack to avoid infinite loops (synthetic expose event) - 
10301         Owen has more appropriate fixes in a branch he'll check in later.
10302
10303         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
10304         separator, CR, and CRLF as line ends
10305
10306         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
10307         into lines using pango_find_paragraph_boundary(); other bits of
10308         the widget are still going to be broken if the boundary isn't '\n'
10309         though
10310
10311 2000-12-04  Alexander Larsson  <alexl@redhat.com>
10312
10313         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
10314         multiply.
10315
10316         * gdk/linux-fb/gdkpango-fb.c:
10317         Copied some 26.6 scaling macros from pango to clean up the rounding.
10318         (pango_fb_font_get_glyph_info): Correct sign on x value.
10319
10320         * gdk/linux-fb/gdkprivate-fb.h:
10321         Removed unreferenced external functions.
10322
10323         * modules/linux-fb/Makefile.am: Use ` instead of '.
10324
10325         * modules/linux-fb/basic.c:
10326         Remove dead code. In particular the dummy lang engine which broke all
10327         pango layouts in GtkFB. Don't include tables-big.i anymore.
10328
10329         * modules/linux-fb/tables-big.i:
10330         Upgrade to latest version from pango. Left for reference, basic_ranges
10331         moved to basic.c.
10332         
10333 2000-12-04  Havoc Pennington  <hp@redhat.com>
10334
10335         Fix bugs Alex found:
10336         
10337         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
10338         to "draw"
10339
10340         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
10341
10342         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
10343
10344         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
10345         implementation in here, apparently the expose() implementation was
10346         dead code.
10347
10348 2000-12-04  Alexander Larsson  <alexl@redhat.com>
10349
10350         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10351         Return positive descent.
10352
10353 2000-12-02  Havoc Pennington  <hp@pobox.com>
10354
10355         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
10356         method and signal
10357         
10358         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
10359         calls gdk_window_process_updates() to push the exposes through
10360         (gtk_widget_class_init): No more draw signal, no
10361         gtk_widget_real_draw()  
10362         
10363         * gtk/gtkbin.c (gtk_bin_draw): remove
10364
10365         * gtk/gtkbox.c (gtk_box_draw): remove
10366
10367         * gtk/gtkbutton.c (gtk_button_draw): remove
10368
10369         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
10370
10371         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
10372
10373         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
10374
10375         * gtk/gtkclist.c (gtk_clist_draw): remove
10376
10377         * gtk/gtkentry.c (gtk_entry_draw): remove
10378
10379         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
10380
10381         * gtk/gtkfixed.c (gtk_fixed_draw): remove
10382
10383         * gtk/gtkframe.c (gtk_frame_draw): remove
10384
10385         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
10386
10387         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
10388
10389         * gtk/gtklayout.c (gtk_layout_draw): remove
10390
10391         * gtk/gtklist.c (gtk_list_draw): remove
10392
10393         * gtk/gtklistitem.c (gtk_list_item_draw): remove
10394
10395         * gtk/gtkmenu.c (gtk_menu_draw): remove
10396
10397         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
10398
10399         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
10400
10401         * gtk/gtknotebook.c (gtk_notebook_draw): remove
10402
10403         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
10404
10405         * gtk/gtkpacker.c (gtk_packer_draw): remove
10406
10407         * gtk/gtkrange.c (gtk_range_draw): remove
10408
10409         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
10410
10411         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
10412
10413         * gtk/gtktable.c (gtk_table_draw): remove
10414
10415         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
10416
10417         * gtk/gtktext.c (gtk_text_draw): remove
10418
10419         * gtk/gtktextview.c (gtk_text_view_draw): remove
10420
10421         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
10422
10423         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
10424
10425         * gtk/gtktree.c (gtk_tree_draw): remove
10426
10427         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
10428
10429         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
10430
10431         * gtk/gtkviewport.c (gtk_viewport_draw): remove
10432
10433         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
10434
10435         * gtk/gtkvscale.c (gtk_vscale_draw): remove
10436
10437         * gtk/gtkwindow.c (gtk_window_draw): remove
10438
10439 2000-20-01  Anders Carlsson  <andersca@gnu.org>
10440
10441         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
10442         a GtkToggleButton is both insensitive and active, it was being
10443         drawn by the GtkButton draw handler which doesn't check the
10444         state. Now it's calling gtk_toggle_button_paint instead.
10445         
10446 2000-12-01  Havoc Pennington  <hp@redhat.com>
10447
10448         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
10449         dangling pointers to the appearance attributes from the 
10450         line display
10451
10452         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
10453         width/height to mean "full width/height of drawable"
10454
10455         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
10456         click to select word/line
10457         
10458         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
10459         when getting log attrs. Get a slice, so that pixmaps and stuff
10460         are properly handled.
10461
10462         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
10463         paste into the selection (replaces selection now, previously
10464         crashed or added to selection). Reveals longstanding btree bug -
10465         select multiple lines, middle-click on the selection, boom. This
10466         isn't related to my changes though.
10467
10468         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
10469         PangoLogAttrs changes
10470         (gtk_entry_move_backward_word): ditto
10471
10472         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
10473         functions return bool whether the iter moved onto a
10474         dereferenceable position.
10475  
10476         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
10477         functions for motion in terms of display lines.
10478
10479         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
10480         get the buffer a mark is inside
10481         
10482 2000-12-01  Alexander Larsson  <alexl@redhat.com>
10483
10484         * gdk/linux-fb/Makefile.am:
10485         * modules/linux-fb/Makefile.am:
10486         Freetype 2 final uses freetype-config
10487
10488         * gdk/linux-fb/gdkpango-fb.c:
10489         Upgrade to use Freetype 2 final.
10490         More flexible support for font aliases, this also fixes a bug with
10491         GtkFontSelector, as the aliases must be visible in the font/family list,
10492         or GtkFontSelector reads uninitialized memory.
10493
10494 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
10495
10496         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
10497         XGetIMValues to properly terminate variable argument list, and do
10498         NULL return check for ic_values and xim_styles.
10499
10500         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
10501         Restore preedit state after XmbResetIC().
10502         
10503         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
10504         XvaCreateNestedList() should take XvaNestedList, but not
10505         XvaNestedList*.
10506
10507         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
10508         preedit_draw_callback, preedit_caret_callback): Match
10509         "preedit-changed" signal name to "preedit_changed" to be
10510         consistent to the spec.
10511
10512         * gtk/gtkimcontextsimple.c (check_table):
10513         Match "preedit-changed" to "preedit_changed" to be consistent
10514         to the spec.
10515
10516 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
10517
10518         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
10519         gc->clip_region == NULL>
10520
10521 2000-11-30  Tor Lillqvist  <tml@iki.fi>
10522
10523         Changes by Hans Breuer:
10524         
10525         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
10526         Dont't use negative width and height as max_hints. This fixes
10527         Owen's recent testgtk changes for win32.
10528
10529         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
10530         gdk_win32_hdc_release): These are exported and may be called with
10531         other drawable types than our GdkDrawableImplWin32 (?).
10532
10533         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
10534         so always #define USE_BACKING_STORE.
10535
10536         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
10537         of printf for debugging output.
10538
10539         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
10540         
10541         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
10542
10543         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
10544         declaration.
10545
10546         * gtk/gtktexttypes.h: Ditto.
10547
10548         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
10549         (GDK_VoidSymbol) also if in case of arg check failure.
10550
10551         * gtk/gtkimcontextsimple.c
10552         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
10553         position to the pointer, but to the variable it points to.
10554
10555         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
10556
10557         * gtk/gtk.def: Updates.
10558
10559 2000-11-29  Elliot Lee  <sopwith@redhat.com>
10560
10561         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
10562         GTK_TYPE_TREE_MODEL.
10563
10564 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10565
10566         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
10567         Set the size of the font from the description.
10568         (gdk_text_width): Gross hack that calculates the width
10569         of text by text_length * size/2. This is necessary because
10570         GtkLabel does some ugly gtk_string_width call to calculate
10571         an good size.
10572         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
10573
10574 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
10575
10576         * docs/tutorial/gtk-tut.sgml: DND updates
10577
10578 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10579
10580         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
10581         If you pass width or height == 0 to gdk_window_clear_area they
10582         should be calculated from the window size.
10583
10584 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10585
10586         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
10587         a grab, but no grab-cursor, use the cursor from the grabbed
10588         window. (gdk_fb_window_send_crossing_events): Send normal
10589         enter/leave notifications if grab and owner_events == TRUE.
10590
10591 2000-11-29  Alexander Larsson  <alexl@redhat.com>
10592
10593         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10594         Do implicit button grabs, even if the window doesn't
10595         want the event.
10596         (gdk_fb_window_send_crossing_events): If there is a
10597         grab, only the grabbed window gets normal enter/leave
10598         notifications. On ungrab go from grabbed window to current.
10599         Don't send any notification to b when propagating from c -> b.
10600         If setting a grab on window, don't set prev_window.
10601         (handle_mouse_input): Send enter/leave events to the window the
10602         mouse is over, not the grabbed one.
10603         
10604 2000-11-28  Elliot Lee  <sopwith@redhat.com>
10605
10606         * gdk/gdkregion-generic.c: Zap warning.
10607         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
10608         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
10609
10610 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
10611
10612         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10613         The cursor should be hidden if it is part of either the
10614         source or destination region. Not only if it is in both.
10615         (gdk_window_set_transient_for): Silence warnings.
10616
10617 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10618
10619         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
10620         The default mode in X is Pie Arcs, therefore that is
10621         what Gtk+ uses.
10622
10623 2000-11-28  Alexander Larsson  <alexl@redhat.com>
10624
10625         * gdk/linux-fb/gdkinput-ps2.c:
10626         Implement correct EnterNotify/LeaveNotify:
10627         (gdk_fb_window_send_crossing_events): New function that sends
10628         all GdkCrossingEvents from the last mouse-window to the specified
10629         destination.
10630         (gdk_fb_window_visibility_crossing): Removed function.
10631         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
10632         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
10633         instead of gdk_window_get_pointer() for better readability.
10634
10635         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
10636         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
10637
10638         * gdk/linux-fb/gdkprivate-fb.h:
10639         removed gdk_fb_window_visibility_crossing, added
10640         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
10641
10642         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
10643         New function that finds the least common ancestor of two windows.
10644         (gdk_window_show, gdk_window_hide):
10645         Use gdk_fb_window_send_crossing_events.
10646         (gdk_fb_window_move_resize): Send configure events to toplevel
10647         windows. Use gdk_fb_window_send_crossing_events.
10648
10649 2000-11-27  Havoc Pennington  <hp@redhat.com>
10650
10651         * gtk/gtkprivate.h (enum): Remove a trailing comma
10652
10653 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
10654
10655         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
10656         the "changed" callback of the adjustment.  We need to redraw the
10657         spin button's arrows when the adjustment's range changes.
10658         (adjustment_changed_cb): Draw the arrows.
10659         (gtk_spin_button_value_changed): Draw the arrows.
10660
10661 2000-11-23  Alexander Larsson  <alexl@redhat.com>
10662
10663         * gdk/linux-fb/gdkselection-fb.c:
10664         Initial selection implementation.
10665
10666         * gtk/gtkselection.c:
10667         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
10668         requestor in gtk_selection_request.
10669         
10670         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
10671         Added gdk_selection_property atom.
10672
10673         * gdk/linux-fb/gdkprivate-fb.h:
10674         Export _gdk_selection_window_destroyed.
10675         Removed mask_off_x/y from GdkCursorPrivateFB.
10676         Removed hbearing, added top, left to PangoFBGlyphInfo.
10677
10678         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
10679         Call _gdk_selection_window_destroyed
10680         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
10681         the root window has been created.
10682         (static_dx_hack, static_dy_hack, compare_draw_rects,
10683         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
10684         in region. They are already sorted. Instead just traverse them in
10685         reverse if draw_direction < 0.
10686         
10687         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
10688         Double-clicks must be sent after the normal button_press.
10689         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
10690         
10691         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
10692         Pass _gdk_fb_screen_gc instead of NULL.
10693
10694         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
10695         Initialize gdk_selection_property.
10696         (gdk_event_make): Remove unused code.
10697
10698         * gdk/linux-fb/gdkcursor-fb.c:
10699         Make the pixmap for the cursor the same size as the mask. Also remove
10700         the mask_off_x/y fields in GdkCursorPrivateFB and combine
10701         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
10702         Now the whole cursor is visible.
10703
10704         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
10705         Fix bug where xdest+height instead of ydest+height was used
10706         to calculate if the source and dest overlapped. This fixes the
10707         redraw bug when the main window in testgtk was scrolled when
10708         partially covered by a tall window.
10709         Copy rectangles in region in order depending on draw_direction.
10710         Also moved the draw_direction flipping of start_y and end_y into
10711         the gc functions, as this might not be what all of them want.
10712         (gdk_fb_draw_lines): Support dashed lines.
10713         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
10714         so that the text is positioned correctly (was 1 pixel high).
10715
10716         gdk/linux-fb/gdkgc-fb.c:
10717         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
10718         all lines were drawn a pixel to short. Also checked the default of
10719         the rest of the values, and they're the same as X now.
10720
10721         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
10722         Clean up pixel positioning of the glyphs. Just use bgy->top and
10723         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
10724         to all divisions to get correct rounding behaviour.
10725
10726         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
10727         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
10728         Moved start_y/end_y flip into draw_drawable implementations.
10729         Flip also x rendering when draw_direction < 0.
10730         Remove unneccesary multiply with draw_direction.
10731
10732 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
10733
10734         * docs/tutorial/gtk-tut.sgml:
10735           - get rid of gtk_toggle_button_toggled FUD
10736           - start DND section - needs work - based on:
10737                 http://wolfpack.twu.net/docs/gtkdnd/
10738
10739 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10740
10741         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
10742         Correct calculation of font metrics. Now GtkEntrys have sane
10743         size.
10744
10745 2000-11-22  Alexander Larsson  <alexl@redhat.com>
10746
10747         * gdk/gdktypes.h:
10748         Add new type GdkSpan
10749         
10750         * docs/reference/gdk/gdk-sections.txt,
10751         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
10752         gdk/gdkregion.h:
10753         Implement and document gdk_region_spans_intersect_foreach.
10754
10755         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
10756         Add new file gdkrender-fb.c which contains all core
10757         rendering code.
10758         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
10759         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
10760         (optimized rectangle fillers).
10761
10762         * gdk/linux-fb/gdkdrawable-fb2.c:
10763         Move all rendering code to gdkrender-fb.c.
10764         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
10765         Use the new span intersection functions in gdk_fb_fill_spans.
10766         gdk_fb_draw_rectangle() clips filled rectangles and calls
10767         gc->fill_rectangle with the result.
10768         gdk_fb_fill_spans() gets extra argument "sorted".
10769
10770         * gdk/linux-fb/gdkevents-fb.c:
10771         Remove unused includes and defines.
10772         New function gdk_fb_get_time() to get correct time for events.
10773
10774         * gdk/linux-fb/gdkinput-ps2.c:
10775         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
10776         Make sure to set the time of all events.
10777
10778         * gdk/linux-fb/gdkmain-fb.c:
10779         Use gdk_fb_get_time ().
10780
10781         * gdk/linux-fb/gdkprivate-fb.h:
10782         New virtual GC calls: fill_span & fill_rectangle.
10783         Export gdk_fb_get_time().
10784         gdk_fb_fill_spans() gets extra argument "sorted".
10785
10786         * gdk/linux-fb/mi*.c:
10787         Use GdkSpan instead of GdkRectangle.
10788         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
10789         from XFree 4 source)
10790         
10791 2000-11-22    <jrb@redhat.com>
10792
10793         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
10794         reversing the order in an if statement will do.  Doing so managed
10795         to make the treemodelsort half work.  Other half will follow after
10796         I get the insert function fully fixed.
10797
10798 2000-11-21  Elliot Lee  <sopwith@redhat.com>
10799         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
10800         more than 2 bits. Besides, I need to implement an evil hack. :)
10801
10802 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
10803
10804         * docs/tutorial/gtk-tut.sgml: minor corrections
10805
10806 2000-11-20  Jonathan Blandford <jrb@redhat.com>
10807         * gtk/gtktreemodelsort.h: Add convertion functions to let you
10808           convert to and from relative path's and iters.
10809
10810         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
10811           testing sorting functions a bit better.  Currently broken -- will
10812           fix in morning.
10813
10814 2000-11-20  Havoc Pennington  <hp@redhat.com>
10815
10816         * gtk/gtkwidget.c: Documented a bunch of functions in here
10817         (gtk_widget_realize): Warn if you try to realize
10818         a widget with no parent that isn't a toplevel
10819         (gtk_widget_intersect): return a gboolean
10820
10821 2000-11-20  Havoc Pennington  <hp@redhat.com>
10822
10823         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
10824         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
10825         scrolling to be implemented in GDK to finish. Also, right now
10826         we just size_allocate all children on every layout change,
10827         which is pretty lame. Test commented out of testtext.c, 
10828         until it works better.
10829
10830 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
10831
10832         * gdk/linux-fb/gdkdrawable-fb2.c:
10833         Removed unused arguments from gdk_fb_drawable_get_pixel().
10834
10835         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
10836         Renamed fidur specific mouse packet data in MouseDevice to
10837         generic. Used it in ps2 mouse handling code to avoid blocking
10838         reads.
10839
10840 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
10841
10842         * demos/gtk-demo/main.c: Changed to have the list become
10843         non-italic when the demo window is destroyed through an external
10844         event (like a close button).  Doing so found three bugs in the
10845         widget.
10846
10847         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
10848
10849         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
10850         we actually set the cell.
10851
10852         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
10853
10854         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
10855         free a leaked path.  Thanks memprof.
10856
10857 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
10858
10859         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
10860         off-by-one error when destroying allocated segments
10861         on failure. (Elliot)
10862
10863 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
10864
10865         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
10866         memleaks found by Evan Martin.
10867
10868 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
10869
10870         * Released 1.3.2
10871         
10872         * NEWS: Updates for 1.3.2
10873
10874 2000-11-17  Tor Lillqvist  <tml@iki.fi>
10875
10876         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
10877         but in general for window system specific events.
10878
10879         * gtk/gtk.def
10880         * gtk/makefile.mingw.in
10881         * gtk/makefile.msc.in: Update.
10882         
10883         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
10884
10885 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
10886
10887         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
10888         distribute gtk.immodules.
10889
10890         * gtk/Makefile.am (install-data-local): Don't install the
10891         gtk.immodules file created for the uninstalled modules;
10892         instead run gtk-query-immodules after install
10893
10894 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
10895
10896         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
10897         -rpath to the right install location.
10898
10899         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
10900         -export-dynamic.
10901
10902         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
10903         properly.
10904
10905 2000-11-15  Havoc Pennington  <hp@pobox.com>
10906
10907         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
10908         patch from Mikael Hermansson to temporarily stop blinking while
10909         the user is using the keyboard to type or navigate. 
10910
10911         Also, when blinking, stay on for longer than we stay off. Also,
10912         return from start_cursor_blink if !cursor_visible, to save
10913         checking that flag all over the place before we call
10914         start_cursor_blink.
10915
10916 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
10917
10918         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
10919         only contain a "fontset" line, which is now ignored.
10920
10921         * gtk/gtkentry.c (gtk_entry_button_release): Make 
10922         double-click-to-select-word work.
10923         
10924 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
10925
10926         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
10927         Don't move back one char when we are actually at the end of the 
10928         paragraph.
10929
10930 2000-11-15  Robert Brady  <robert@suse.co.uk>
10931
10932         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
10933         'o' < 'p'.
10934         
10935         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
10936         bind_textdomain_codeset.
10937
10938         (gtk_init_check): Make the warning about translating default:LTR
10939         sterner.
10940         
10941 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
10942
10943         * **/Makefile.am : remove unecessary rules for win32-specific
10944         config-substituted targets. If you want these rules, use
10945         --enable-maintainer-mode (called automatically by autogen.sh).
10946         Stops a lot of unneccessary make-time warnings.
10947
10948         * gtk/gtktext{layout,display}.c: Factor in total width as
10949         well as screen when figuring alignment for word-wrap as well as
10950         no wrap; this is necessary to handle lines that cannot be wrapped
10951         at all.
10952
10953 2000-11-15  Havoc Pennington  <hp@redhat.com>
10954
10955         * gtk/testtext.c: Implement essential color cycling feature
10956
10957 2000-11-15  Havoc Pennington  <hp@redhat.com>
10958
10959         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
10960         when we invalidate the main window.
10961
10962         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
10963         GtkTextView will now invalidate the side windows for us when text
10964         changes.
10965
10966 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
10967
10968         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
10969         unconditionally, since we may need to update the horizontal
10970         scrollbars even if the height didn't change.
10971
10972         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
10973         the extra attrs, since some of them affect size.
10974
10975         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
10976         x_offset correctly.
10977
10978 2000-11-15  Havoc Pennington  <hp@redhat.com>
10979
10980         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
10981         don't move the first line out into the margin, instead move the
10982         whole paragraph in order to make space for the first line within 
10983         the margin
10984
10985 2000-11-15  Havoc Pennington  <hp@redhat.com>
10986
10987         * gtk/gtktextview.c (changed_handler): offset redraw rect by
10988         xoffset in addition to yoffset, so horizontal scrolling doesn't
10989         break redraws
10990
10991 2000-11-15  Havoc Pennington  <hp@redhat.com>
10992
10993         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
10994         from the cursor
10995         (render_layout_line): fix reversed test that caused weird
10996         underlines to get drawn
10997
10998 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
10999
11000         * gdk/linux-fb/gdkprivate-fb.h:
11001         Fix debug macros.
11002         
11003 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
11004
11005         * gdk/linux-fb/gdkprivate-fb.h:
11006         Added virtual functions set_pixel, get_color,
11007         fill_span and draw_drawable to the GC.
11008         Added global _gdk_fb_screen_gc to use instead of
11009         NULL when drawing to the screen.
11010         Added _gdk_fb_gc_calc_state() prototype.
11011
11012         * gdk/linux-fb/gdkgc-fb.c:
11013         Call _gdk_fb_gc_calc_state() on any gc state change.
11014
11015         * gdk/linux-fb/gdkglobals-fb.c:
11016         Add _gdk_fb_screen_gc
11017                 
11018         * gdk/linux-fb/gdkdrawable-fb2.c:
11019         _gdk_fb_gc_calc_state() calculates best functions
11020         for the GC state and depth.
11021         Moved bpp specialized code to separate functions.
11022         Added optimized 24 bpp AA draw_drawable.
11023
11024         * gdk/linux-fb/gdkevents-fb.c:
11025         Silence gcc warning.
11026
11027         * gdk/linux-fb/gdkimage-fb.c:
11028         Use _gdk_fb_screen_gc
11029
11030         * gdk/linux-fb/gdkwindow-fb.c:
11031         Init and use _gdk_fb_screen_gc
11032
11033         * gdk/linux-fb/mitypes.h:
11034         Remove unused types.
11035
11036 2000-11-14  Havoc Pennington  <hp@pobox.com>
11037
11038         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
11039         to pixels
11040
11041 2000-11-14  Havoc Pennington  <hp@pobox.com>
11042
11043         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
11044
11045         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
11046         unknown char, no real reason we were using a variable. 
11047         Remove gtk_text_unknown_char variable. Fix all the text widget
11048         files accordingly.
11049
11050         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
11051         since the Unicode spec seems to prefer that character for our
11052         purposes.
11053
11054 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
11055
11056         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
11057         value of g_getenv() isn't freeable, so g_strdup it.
11058
11059         * modules/input/inuktitut.c: Inuktitut input method.
11060
11061         * modules/input/Makefile.am: Build this.
11062         
11063 2000-11-14  Elliot Lee  <sopwith@redhat.com>
11064
11065         * gtk/Makefile.am: Install gtk.immodules, needed for operation
11066         of gtk programs.
11067
11068 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
11069
11070         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
11071         reversed > that was causing Home to go to end of previous line.
11072
11073         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
11074         modified-keypresses (leave for bindings.)
11075
11076         * modules/input/Makefile.am: Remove useless -export-dynamic
11077         from module LDFLAGS.
11078
11079 2000-11-14  Havoc Pennington  <hp@redhat.com>
11080
11081         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
11082         higher.
11083
11084         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
11085         account. Also, render rise, underline, background, etc. for
11086         pixbufs as well as text. Also, draw underlines one pixel higher.
11087
11088         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
11089         PangoAttribute for the rise, so it gets drawn properly. Also,
11090         add the GtkTextAppearance attribute for pixbuf/widget segments
11091         as well; we should go ahead and have rise, underline, background,
11092         stipple work for those
11093
11094         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
11095         Pango
11096
11097 2000-11-15  Tor Lillqvist  <tml@iki.fi>
11098
11099         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
11100
11101         * gtk/gtk.def: Update.
11102
11103         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
11104         included.
11105         (gtk_rc_get_im_module_file): Use run-time installation directory
11106         on Win32.
11107
11108         * gdk/win32/rc/gdk.rc: Remove.
11109         * gdk/win32/rc/gdk.rc.in: New file.
11110         * gdk/win32/rc/Makefile.am: New file
11111         * gdk/win32/Makefile.am: Corresponding changes.
11112
11113         * gtk/gtk.rc: Remove.
11114         * gtk/gtk-win32.rc.in: New file.
11115         * gtk/Makefile.am: Corresponding changes.
11116
11117         * configure.in: Corresponding changes.
11118
11119         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
11120         has a built gtkcompat.h. Developers using CVS code on Win32 can
11121         hand-edit it from gtkcompat.h.in.
11122
11123         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
11124         gtkcompat.h from gtkcompat.h.win32.
11125
11126 2000-11-14  Havoc Pennington  <hp@redhat.com>
11127
11128         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
11129         to default to GDK_ACTION_MOVE if the drag is within a single
11130         widget. Defaults to GDK_ACTION_COPY between widgets.
11131
11132 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
11133
11134         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
11135
11136         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
11137
11138         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
11139         srcdir != builddir
11140
11141         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
11142
11143         * configure.in (GTK_VERSION): Up to 1.3.2
11144
11145         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
11146         gtkimcontextxim.h
11147
11148         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
11149         missing doc comment.
11150
11151 2000-11-14  Alexander Larsson  <alexl@redhat.com>
11152
11153         * modules/linux-fb/basic.c:
11154         Use the glib iconv wrappers.
11155
11156 2000-11-13  Havoc Pennington  <hp@pobox.com>
11157
11158         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
11159         still more bugs.
11160
11161         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
11162         scroll the GdkWindows before realization.
11163
11164 2000-11-13  Havoc Pennington  <hp@redhat.com>
11165
11166         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
11167         where GC didn't always get updated properly
11168
11169         * demos/gtk-demo/textview.c (create_tags): Use subattributes
11170         of fonts instead of setting the entire font
11171
11172         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
11173         setting entire font
11174
11175         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
11176
11177         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
11178         a bunch of individually-settable font attributes. You can still 
11179         use the "font" and "font_desc" args, they just set all the font
11180         attributes at once.
11181
11182 2000-11-13 Elliot Lee <sopwith@redhat.com>
11183
11184         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
11185
11186 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
11187
11188         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
11189         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
11190
11191         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
11192         work better.
11193
11194 2000-11-13  Havoc Pennington  <hp@redhat.com>
11195
11196         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
11197         the module file.
11198
11199         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
11200         dest->language
11201
11202         * gtk/testtext.c: Test pixels above/below/inside paragraphs
11203         settings
11204
11205         * gtk/gtktextview.c: Implement object args and setters/getters for
11206         all the aspects of the GtkTextAttributes that are not set from
11207         GtkWidget attributes. This is spacing, justification, margins,
11208         etc.
11209
11210         (gtk_text_view_set_arg)
11211         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
11212         args
11213         (gtk_text_view_class_init): Add args for justify, left_margin,
11214         right_margin, indent, and tabs
11215         
11216
11217         * gtk/gtktextlayout.c (set_para_values): fix to display indent
11218         attribute properly
11219
11220         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
11221         replace with indent attribute
11222
11223         * gtk/gtktextlayout.c (set_para_values): multiply indent by
11224         PANGO_SCALE
11225
11226         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
11227         rearranging code to do that
11228         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
11229         i.e. don't subtract the top_margin first, just to keep
11230         all margin-futzing in one place.
11231
11232         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
11233
11234         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
11235         special case of last line, Pango now handles this itself.
11236         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
11237         Y coordinate
11238         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
11239         (find_display_line_above): wasn't moving the byte index as it
11240         iterated over lines, so always returned byte 0. Also, port to use
11241         PangoLayoutIter.
11242         (find_display_line_below): same problem as
11243         find_display_line_above. Also, port to use PangoLayoutIter.
11244
11245 2000-11-13  Alexander Larsson  <alexl@redhat.com>
11246
11247         * gdk/linux-fb/*.[ch]:
11248         Massive reindent to gtk+ standard. My hands hurt.
11249
11250         * gdk/linux-fb/gdkcolor-fb.c:
11251         Move GdkColorPrivateFB from inherited to windowing_data
11252
11253         * gdk/linux-fb/gdkcursor-fb.c:
11254         _gdk_cursor_new_from_pixmap made static
11255
11256         * gdk/linux-fb/gdkdnd-fb.c:
11257         GdkDragContextPrivate moved to windowing_data
11258
11259         * gdk/linux-fb/gdkdrawable-fb2.c:
11260         Removed endian.h, use glib endianness macros instead
11261         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
11262         and GDK_DRAWABLE_IMPL_FBDATA
11263
11264         * gdk/linux-fb/gdkfont-fb.c:
11265         Add empty gdk_font_load(). Needed for linking of Gtk+.
11266
11267         * gdk/linux-fb/gdkimage-fb.c:
11268         Removed endian.h, use glib endianness macros instead
11269         Moved GdkImagePrivateFB to windowing_data
11270         gdk_image_new_bitmap didn't always allocate enough
11271         memory.
11272
11273         * gdk/linux-fb/gdkinput-ps2.c:
11274         Added semi-working support for MS serial mice.
11275
11276         * gdk/linux-fb/gdkprivate-fb.h:
11277         s/GdkWindowPrivate/GdkWindowObject/
11278         Removed GdkWindowPrivate typedef
11279         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
11280         Removed GDK_DRAWABLE_P
11281         Move GdkColorPrivateFB from inherited to windowing_data
11282         Moved GdkImagePrivateFB to windowing_data
11283
11284         * gdk/linux-fb/gdkvisual-fb.c:
11285         Removed some unused debug code.
11286
11287         * gdk/linux-fb/gdkwindow-fb.c:
11288         Use stock cursors instead of including X headers.
11289         s/GdkWindowPrivate/GdkWindowObject/
11290
11291         * gdk/linux-fb/mitypes.h:
11292         Removed unused types.
11293
11294         * modules/linux-fb/basic.c:
11295         Use the pango fribidi wrappers.
11296
11297 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
11298
11299         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
11300         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
11301         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
11302         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
11303         GEqualFunc where applicable.
11304         
11305         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
11306         pango_font_description_equal as changed in pango.
11307         
11308         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
11309
11310         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
11311
11312         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
11313
11314         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
11315
11316         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
11317
11318         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
11319
11320         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
11321         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
11322
11323         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
11324         gtk_rc_styles_compare -> gtk_rc_styles_equal.
11325
11326 2000-11-12  Havoc Pennington  <hp@pobox.com>
11327
11328         * demos/gtk-demo/Makefile.am (democodedir): change demo install
11329         dir to datadir/gtk+-2.0/demo
11330
11331         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
11332         sorts of text widget and Pango font bugs. Urgh.
11333
11334         * demos/gtk-demo/Makefile.am (demos): Add textview.c
11335
11336         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
11337         tree that you should double click to see the demo. Fix 
11338         types of variables to reflect changed return values from 
11339         GtkTreeStore and GtkTreeViewColumn constructors.
11340
11341         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
11342         newly-created buffer to prepare for GObject semantics
11343
11344         * gtk/testtext.c: don't leak the buffer with GObject semantics
11345
11346         * gtk/testtextbuffer.c: ditto
11347         
11348 2000-11-12  Havoc Pennington  <hp@pobox.com>
11349
11350         Rename this testgtk to gtk-demo to avoid confusion, and 
11351         install it so people can use it as a supplement to 
11352         the documentation.
11353         
11354         * demos/gtk-demo: Moved from demos/testgtk
11355
11356         * demos/testgtk: Removed
11357
11358         * configure.in: make Makefile in gtk-demo
11359         
11360         * demos/gtk-demo/Makefile.am: Install sample source to 
11361         datadir/gtk-demo (maybe there's a better place?), and 
11362         rename the binary to gtk-demo
11363         
11364         * demos/gtk-demo/main.c (load_file): Load installed sample
11365         source if source isn't found in pwd.
11366
11367 2000-11-09  Havoc Pennington  <hp@pobox.com>
11368
11369         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
11370         argument to set the char displayed when visibility == FALSE
11371         (gtk_entry_create_layout): If !entry->visible, replace 
11372         all chars with the "invisible char"
11373
11374         * gtk/testgtk.c: Test the invisible_char deal
11375         
11376 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
11377
11378         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
11379         can't get a native font in the right encoding.
11380
11381 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
11382
11383         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
11384         respectively.
11385
11386 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
11387
11388         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
11389         Fix warning when moving between paragraphs.
11390
11391         * gtk/gtkentry.[ch]: Change move => move_cursor, 
11392         delete => delete_from_cursor, insert => insert_at_cursor
11393
11394 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
11395
11396         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
11397
11398         * modules/input/imthai-broken.c: A Thai input method for use if
11399         Thai keys are really generating Latin1 keysyms.
11400
11401         * modules/input/Makefile.am: Build these.
11402
11403 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
11404
11405         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
11406         g_filename_{to,from}_utf8 now takes an extra parameter.
11407
11408         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
11409         strftime into UTF-8.
11410
11411         (column_from_x, gtk_calendar_paint_day_names): Support RTL
11412         calendars.
11413
11414         (gtk_calendar_paint_day_names): Draw day names in the right 
11415         place.
11416         
11417 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
11418
11419         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
11420         problem with using result of g_get_charset() backwards -
11421         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
11422
11423         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
11424         negative min_width/height and max_width/height to
11425         mean "requisition"; this allows setting a window
11426         to be user-resizable in only one direction easily.
11427
11428         * gtk/testgtk.c (create_main_window): Remove hard-coded
11429         usize - set a default size in the vertical direction.
11430
11431 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
11432
11433         * gtk/gtkrange.c: Add some missing casts. Support 
11434         2 and 3 button clicks on the arrows to mean 
11435         "move by pages" and "jump to end". (Like gtkspinbutton)
11436
11437 2000-11-12 Hans Breuer <Hans@Breuer.Org>
11438
11439         * gdk/win32/makefile.msc : reflect build module changes
11440
11441         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
11442         from GdkPixmap*, cast implementation member instead.
11443
11444         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
11445         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
11446         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
11447         more Gdi functions return value checking. 
11448         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
11449         GdkImagePrivateWin32 *.
11450
11451         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
11452         menus useable again. Add #pragma message to keep reminded on this issue.
11453         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
11454         windows. This allows to enable backing store on Win32!
11455
11456         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
11457         in drawable is of impl type. Correct specific type checks appropriate.
11458  
11459         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
11460         GDK_WINDOW_DESTROYED before allocating new resources.
11461
11462         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
11463
11464         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
11465         (gdk_window_foreign_new) initialize parent handle.
11466         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
11467
11468         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
11469         Let the GDI invalidate the window on MoveWindow call to fix scrolling
11470         problems (e.g. main buttons in testgtk). 
11471
11472 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
11473
11474         * gtk/gtkentry.c (gtk_entry_key_press): Call 
11475         gtk_widget_activate for GDK_Return.
11476
11477         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
11478         of preedit cursor position.
11479
11480 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
11481
11482         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
11483         static.
11484
11485 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
11486
11487         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
11488         out support for multiple locales; that simple doesn't
11489         work reliably with current Xlib
11490
11491         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
11492         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
11493         Add support for positioning the cursor within the preedit string.
11494
11495 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
11496
11497         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
11498         at XIM input method module.
11499
11500         * gtk/gtktextview.c: Check for bindings after passing
11501         events to im context filter.
11502
11503 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
11504
11505         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
11506         empty attribute lists properly.
11507
11508 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
11509
11510         * gtk/queryimmodules.c (main): Return non-zero exit
11511         status if errors were encountered querying any
11512         modules.
11513
11514         * modules/input/Makefile.am (moduledir): remove
11515         leftover bin program target.
11516
11517         * docs/make-todo: Fix typo in error message.
11518
11519 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
11520
11521         * configure.in: Add modules/input/Makefile
11522
11523 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
11524
11525         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
11526         don't include gtkthemes.h.
11527
11528         * gtk/testgtk.c gtk/testtext.c: Set environment variables
11529         to point
11530
11531         * gtk/Makefile.am: Add new .c and .h files, build 
11532         gtk-query-immodules and use it to create a gtk.immodules
11533         file for use of test programs.
11534
11535         * gtk/gtkpreview.c: remove extra blank line.
11536
11537 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
11538
11539         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
11540         Add the ability to add extra tables beyond the default
11541         one, and also the ability to have compose sequences 
11542         that are prefixes of other compose sequences. 
11543
11544         * gtk/gtkimcontextsimple.c: Export a preedit string which
11545         consists of possible candidates for keystrokes that have
11546         been entered but not yet committed.
11547
11548         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
11549         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
11550
11551         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
11552         Add a function to add input-method switching menu items
11553         to a menu.
11554
11555         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
11556         when switching input methods.
11557
11558         * gtk/gtkimcontextsimple.[ch]: Change the format of
11559         the compose table to allow compose tables of different
11560         lengths / sequence.
11561
11562 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
11563
11564         * gtk/gtkimmodule.[ch]: Support routines for loading
11565         GtkIMContext implementations dynamically at runtime.
11566
11567         * modules/input/imcyrillic-translit.c: A sample input
11568         method (based on GtkIMContextSimple with an extra table),
11569         which demonstrates preedit strings and the module
11570         system for input modules
11571
11572         * gtk/queryimmodules.c: Program to query the available
11573         input modules and write the results into a file.
11574          
11575         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
11576         extra config options "im_module_file" (cache file for
11577         input method modules), and "im_module_path" - path
11578         to look for modules when generating cache file.
11579
11580         This doesn't scale.
11581
11582 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
11583
11584         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
11585         generic code from gtkthemes into a new abstraction
11586         GtkModule which has the logic for implementing
11587         a loadable module which implements a number of 
11588         GObject types.
11589
11590 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
11591
11592         * gtk/gtkeditable.[ch]: Convert GtkEditable from
11593         a class into an interface  
11594         
11595         * gtk/gtkoldeditable.[ch]: Move the old editable
11596         implementation into here, so legacy widgets can
11597         still rely on the implemenation. GtkOldEditable
11598         exports GtkEditable. Make selection handling
11599         code use new text conversion functions (and
11600         handle UTF-8 as a side-effect). Use GtkClipboard
11601         for CLIPBOARD.
11602
11603         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
11604         Adopt to match above changes.
11605
11606         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
11607         avoid GtkOldEditable implementation. Restructure
11608         to reduce number of places that modify state directly.
11609         Move to GtkBindingSet. Display the preedit string.
11610         Queue recomputation of PangoLayout and scroll position
11611         to improve effiency of doing complex changes naively.
11612         Add a menu with cut/copy/paste and input method selection.
11613
11614 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
11615
11616         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
11617         to set preedit string and attributes; display preedit string by
11618         inserting string and attributes at cursor when creating the
11619         GtkTextLineDisplay.
11620
11621         * gtk/gtktextlayout.c: Move all conversions between byte
11622         positions in PangoLayout and GtkTextIter into new functions
11623         line_display_iter_to_index/index_to_iter that properly
11624         handle the preedit string.
11625
11626         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
11627         it to return const char * (eventually will end up
11628         as GCONST char *, most likely.)
11629
11630         * gtk/gtktextview.[ch]: Handle the preedit string, call
11631         gtk_im_context_reset() as necessary, add a menu to switch
11632         input methods.
11633         
11634         * gtk/gtktextlayout.[ch]: Remove useless
11635         gtk_text_layout_get_log_attrs() function.
11636
11637 2000-11-11  Tor Lillqvist  <tml@iki.fi>
11638
11639         * gdk/gdk.def
11640         * gtk/gtk.def: Update.
11641
11642         * gdk/win32/*.c: Add last argument to g_type_register_static()
11643         calls.
11644
11645         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
11646
11647         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
11648         generated by older wheel mouse drivers. Get the correct y
11649         coordinate from WM_MOUSEWHEEL messages.
11650
11651         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
11652         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
11653         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
11654         Debugging functions.
11655
11656         * gdk/win32/gdkprivate-win32.h: Declare them.
11657
11658         * gdk/win32/gdkinput-win32.h: Add declaration for
11659         gdk_input_window_destroy().
11660
11661         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
11662
11663 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
11664
11665         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
11666         function to help handle keeping things in sync.
11667
11668 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
11669
11670         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
11671         BOXED marshallers.
11672
11673         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
11674         (gtk_list_store_class_init): use the new BOXED marshallers.
11675
11676         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
11677         new_with_values to new_with_types.
11678         (gtk_tree_store_get_column_type): add this.
11679         (gtk_tree_store_class_init): use the new BOXED marshallers.
11680
11681         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
11682         mirror some POINTER marshallers.
11683
11684 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
11685
11686         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
11687         allow more interesting iterators.  Also, made the lifecycle of
11688         iterators more explicit.
11689
11690         * gtk/gtktreemodelsort.[ch]: New model for sorting.
11691
11692         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
11693         types.
11694
11695 2000-11-09  Alexander Larsson  <alexl@redhat.com>
11696
11697         * demos/testgtk/menus.c:
11698         Changes to make the new testgtk compile after
11699         gtk_menu_append was removed.
11700
11701         * gdk/linux-fb/gdkdrawable-fb2.c
11702         (gdk_fb_get_depth, gdk_fb_get_visual,
11703         gdk_drawable_impl_fb_class_init): Implement
11704         these drawable functions. Now GtkImages work again.
11705
11706         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
11707
11708         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
11709         
11710         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
11711         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
11712         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
11713         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
11714
11715 2000-11-08  Havoc Pennington  <hp@pobox.com>
11716
11717         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
11718         visible_set args, don't know where these had gone, I thought they
11719         used to be there
11720
11721         * gtk/testtext.c: Add a menu item to apply invisibility tag;
11722         now we can test the feature and see that it's totally broken.
11723
11724 2000-11-08  Havoc Pennington  <hp@pobox.com>
11725
11726         Make DND copy pixbufs and tags when source and target share a 
11727         tag table.
11728         
11729         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
11730         in-process GTK_TEXT_BUFFER_CONTENTS target
11731         (gtk_text_view_drag_data_received): Paste from
11732         GTK_TEXT_BUFFER_CONTENTS if we receive it.
11733
11734 2000-11-08  Alexander Larsson  <alexl@redhat.com>
11735
11736         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
11737         API changes.
11738
11739         * gtk/gtkmenu.c: Add support for scrolling menus.
11740         Remove gtk_menu_append/prepend/insert, these have been moved to
11741         gtkcompat.h as #defines.
11742
11743         * gtk/gtkcompat.h.in:
11744         Add compatibility #defines for gtk_menu_append/prepend/insert
11745
11746         * gtk/gtkmenu.h: Add data needed for scrolling menus.
11747         GtkMenuPositionFunc gets an extra argument push_in.
11748         gtk_menu_append/prepend/insert removed.
11749         
11750         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
11751         positioning behaviour to fit to scrolling menus.
11752
11753         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
11754         into menuitem->submeny. That is wrong, and broke torn
11755         off submenus of torn off menus, since they were unrealized
11756         when the first menu was unrealized.
11757
11758         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
11759         gtk_menu_shell_select_item() since these need to be overridden in
11760         GtkMenu.
11761
11762         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
11763         positioning behaviour to fit to scrolling menus.
11764         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
11765         the current item so that it is prelighted when the menu pops up.
11766         This is a workaround to the fact that the menu doesn't get the
11767         initial enter event (due to grabs).
11768
11769         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
11770         s/gtk_menu_append/gtk_menu_shell_append/
11771
11772         * gtk/gtknotebook.c:
11773         s/gtk_menu_insert/gtk_menu_shell_insert/
11774
11775         * gtk/testgtk.c (create_menu, create_menus):
11776         Create the first menu with 50 items so that menu scrolling
11777         can be tested.
11778         
11779         
11780         Patch from Jonathan Blandford  <jrb@redhat.com>
11781
11782         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
11783         system to handle size requests.  First, we ask what the size of
11784         the toggle is.  Then, when allocating the size, we allocate the
11785         toggle_size first.  This way we can have multiple menu-item
11786         classes w/o needing a seperate class for each.
11787
11788         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
11789         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
11790
11791         * gtk/gtkcheckmenuitem.c
11792         (gtk_check_menu_item_toggle_size_request): New function to handle
11793         the toggle size-request.
11794
11795 2000-11-07  Havoc Pennington  <hp@redhat.com>
11796
11797         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
11798         Half-ass somewhat fix this function, so that scrolling to the
11799         insertion point works. Pango hacking is in the future to really
11800         fix it.
11801
11802         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
11803         length of data, no longer used.
11804
11805         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
11806         method contents in here, get rid of destroy method
11807         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
11808         that were backward. Remove debug spew.
11809         (cut_or_copy): Make the clipboard work with insert_range to
11810         preserve tags and pixbufs, not just the primary selection.
11811
11812 2000-11-07  Havoc Pennington  <hp@redhat.com>
11813
11814         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
11815         to gtk_text_mark_get_visible
11816
11817         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
11818         bug that was generating an invalid iterator
11819
11820         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
11821         ensure_char_offsets() in front of code placing the iter in an
11822         invalid state.
11823
11824         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
11825         make override_location arg const
11826         (paste): Replace the selection if we paste into the 
11827         current selection
11828
11829         * gtk/gtkselection.h: Remove "GtkSelectioData"
11830         (struct _GtkSelectionData): move the definition here.
11831
11832         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
11833         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
11834
11835         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
11836
11837         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
11838         (gtk_text_buffer_insert_range_interactive): implement
11839         (gtk_text_buffer_get_tags): Remove, replaced by
11840         gtk_text_iter_get_tags()
11841
11842         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
11843         limit parameter, to avoid infinite linear scan.
11844         (gtk_text_iter_backward_search): Add search limit
11845         (gtk_text_iter_forward_find_char): Add search limit
11846         (gtk_text_iter_backward_find_char): Add search limit
11847
11848 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
11849
11850         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
11851         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
11852         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
11853         gdk/linux-fb/gdkwindow-fb.c:
11854         use g_object_new() instead of g_type_create_instance() which
11855         is a private function for fundamental type implementations.
11856
11857         * gdk/linux-fb/gdkinput-ps2.c:
11858         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
11859         instead just store the current modifier state. Add a (somewhat broken)
11860         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
11861         Rename exported function gdk_input_ps2_get_mouseinfo to
11862         gdk_input_get_mouseinfo.
11863
11864         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
11865         gdk/linux-fb/gdkwindow-fb.c:
11866         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
11867         
11868
11869 2000-11-02  Havoc Pennington  <hp@redhat.com>
11870
11871         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
11872         use stock buttons. Should be 100% source compatible, appropriate
11873         filesel fields now point to dialog->vbox and dialog->action_area.
11874         On the bizarre side, dialog->action_area and filesel->action_area
11875         are not the same widget.
11876         (gtk_file_selection_init): Put some padding around the selection
11877         entry, so it isn't touching the GtkDialog separator.    
11878
11879         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
11880         use stock buttons, etc. Should also be source compatible.
11881         Set the dialog default title in _init not _new().
11882         
11883         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
11884         Use stock buttons; don't put a button box inside the existing
11885         dialog button box. Don't bother with push/pop colormap anymore.
11886
11887         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
11888         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
11889         for message dialog, and necessary for the font selection and color
11890         selection with help and apply buttons.
11891         
11892         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
11893         to the created button widget. Set GTK_CAN_DEFAULT on the button.
11894         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
11895         between buttons, put less padding around the action area.
11896         (gtk_dialog_run): Exit on unmap rather than on destroy. 
11897         This will also exit the loop if the widget is hidden.
11898         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
11899         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
11900         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
11901         special-case delete event.
11902
11903         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
11904         formatting
11905         
11906 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
11907
11908         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
11909         button to temporarily disable position recording in the
11910         "saved position" test.
11911
11912 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
11913
11914         * gtk/gtkthemes.c: added compat code that temporarily implements
11915         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
11916         going to be revamped by owen's upcoming GtkModule patches, but
11917         untill then people want gtk to build, right? ;)
11918
11919 2000-11-04  Havoc Pennington  <hp@pobox.com>
11920
11921         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
11922         list
11923
11924         * docs/Changes-2.0.txt: Add note about
11925         gtk_container_get_toplevels()
11926
11927         * gtk/gtktextview.h: formatting
11928         
11929         * gtk/gtktextview.c: don't start descriptions with "Returns",
11930         confuses gtk-doc
11931
11932 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
11933
11934         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
11935         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
11936
11937 2000-11-03  Havoc Pennington  <hp@redhat.com>
11938
11939         * gtk/gtktexttagtable.c: Docs
11940         (gtk_text_tag_table_size): return a signed int
11941
11942         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
11943         (gtk_text_tag_event): make the event_object a GObject
11944
11945         * gtk/gtktextview.c: Write API docs for all functions.
11946
11947         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
11948         for gtk_text_view_get_window_type() called on one of the private
11949         windows.
11950
11951         * gtk/gtktextview.c: Instead of accessing text_view->buffer
11952         directly, call get_buffer() which demand-creates a default
11953         buffer. So gtk_text_view_new() can be used to create a view with a
11954         default buffer in it, if you just want an empty text box users can
11955         put data in. Useful for GUI builders also.
11956
11957 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
11958
11959         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
11960         the charset encodign portion MUST be in lowercase.
11961         * gtk/gtkrc.az: added file for Azeri language
11962
11963 2000-11-03  Havoc Pennington  <hp@redhat.com>
11964
11965         Get widgets working on the btree/buffer side. Display of them 
11966         still doesn't work.
11967         
11968         * gtk/gtktextview.c: start implementing child widget stuff
11969
11970         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
11971
11972         * gtk/gtktextlayout.c: handle embedded widgets
11973
11974         * gtk/gtktextdisplay.c: handle embedded widgets
11975
11976         * gtk/gtktextchild.c: Implement all the child anchor goo
11977
11978         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
11979         function
11980
11981         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
11982         (insert_pixbuf_or_widget_segment): abstract out common portions of 
11983         creating a child anchor or a pixbuf segment.
11984         (gtk_text_btree_create_child_anchor): new function
11985         (gtk_text_btree_unregister_child_anchor): new function
11986
11987         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
11988         allocate_child signal on GtkTextLayout
11989
11990         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
11991         values
11992         (gtk_text_iter_get_child_anchor): new function
11993
11994         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
11995         default handler for the changed signal, which calls
11996         gtk_text_buffer_set_modified(), instead of just always emitting
11997         changed then calling set_modified() manually. I guess this is
11998         maybe more flexible. It seems logical.
11999
12000 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
12001
12002         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
12003         now.
12004
12005         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
12006
12007 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
12008
12009         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
12010         been marked static.
12011
12012 2000-11-02  Havoc Pennington  <hp@redhat.com>
12013
12014         * gtk/testgtk.c (create_labels): had a test backward
12015
12016         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
12017         fields, so the dest GC ends up with the correct clip origin, 
12018         etc. Fixes a bug where colored labels didn't redraw 
12019         properly.
12020
12021 2000-11-02  Alexander Larsson  <alexl@redhat.com>
12022
12023         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
12024         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
12025         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
12026         Add last argument to t_type_register_static call.
12027         
12028         * gdk/linux-fb/gdkdrawable-fb2.c:
12029         Add last argument to t_type_register_static call.
12030         export the get_image drawable virtual function.
12031
12032         * gdk/linux-fb/gdkimage-fb.c:
12033         Add last argument to t_type_register_static call.
12034         rename gtk_image_get to _gdk_fb_get_image and
12035         export it for use by gdkdrawable-fb2.
12036
12037         * gdk/linux-fb/gdkprivate-fb.h:
12038         export _gdk_fb_get_image.
12039
12040         * gdk/linux-fb/gdkselection-fb.c:
12041         Add new api call stubs.
12042
12043         * gtk/Makefile.am:
12044         Missing ( in linux-fb part.
12045
12046         * modules/linux-fb/Makefile.am:
12047         Must link with gdk_pixbuf or get unresolved symbol.
12048
12049 2000-11-01  Havoc Pennington  <hp@pobox.com>
12050
12051         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
12052         GTK_TYPE_TEXT_ITER and BOXED marshallers
12053
12054         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
12055
12056         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
12057         
12058         * gtk/gtk-boxed.defs: add GtkTextIter
12059
12060         * gtk/gtkmarshal.list: Add marshallers for text widget that 
12061         properly use OBJECT and BOXED
12062
12063 2000-11-01  Havoc Pennington  <hp@redhat.com>
12064
12065         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
12066
12067         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
12068         before returning it. 
12069         
12070 2000-11-01  Havoc Pennington  <hp@redhat.com>
12071
12072         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
12073         Clip the rectangle to be rendered to the drawable, since
12074         get_from_drawable() requires a region within the drawable
12075
12076 2000-11-01  Havoc Pennington  <hp@redhat.com>
12077
12078         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
12079         from coordinates.
12080
12081 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
12082
12083         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
12084         it isn't NULL.
12085
12086 2000-11-01  Havoc Pennington  <hp@pobox.com>
12087
12088         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
12089         on a label
12090         (gtk_label_finalize): unref the attr list if any.
12091
12092         * gtk/testgtk.c (create_get_image): close test on second click
12093         (make_message_dialog): close dialog if it exists
12094
12095         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
12096
12097         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
12098         gdk-pixbuf
12099
12100         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
12101         from Pango markup format
12102         (gtk_label_set_markup_with_accel): ditto but with accelerator
12103         parsing
12104
12105         * gtk/gtkimage.c (gtk_image_expose): reformatting.
12106
12107         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
12108         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
12109         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
12110         call gdk_window_get_origin().
12111
12112         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
12113         implement GDK_PIXBUF_ALPHA_FULL
12114         
12115 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
12116
12117         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
12118         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
12119         g_signal_handlers_disconnect_matched to block/unblock and disconnect
12120         multiple handlers respectively, instead of only treating the
12121         first handler found (bug reported by owen).
12122
12123 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
12124
12125         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
12126
12127         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
12128
12129         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
12130         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
12131         gtk/gtktreeviewcolumn.h: Fixed inline docs.
12132
12133         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
12134         widget.  Needs writing someday.
12135
12136         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
12137         the docs.
12138
12139 2000-10-30  Havoc Pennington  <hp@redhat.com>
12140
12141         * gtk/gtktextview.h, gtk/gtktextview.c:
12142         Rename delete_at_cursor delete_from_cursor, and 
12143         move to move_cursor.
12144
12145 2000-10-30  Havoc Pennington  <hp@redhat.com>
12146
12147         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
12148         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
12149         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
12150         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
12151         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
12152         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
12153         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
12154         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
12155         gtktexttypes.h, gtktextview.c, gtktextview.h:
12156
12157         Massive reindentation and reformatting. Arg alignment and comments
12158         still need fixing in various places.
12159
12160 2000-10-30  Havoc Pennington  <hp@redhat.com>
12161
12162         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
12163         to be named insert_at_cursor and delete_at_cursor so C++ can
12164         handle them.
12165
12166 2000-10-28  Tor Lillqvist  <tml@iki.fi>
12167
12168         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
12169         to get a double directory separator in case the home directory
12170         ends with one. This would cause trouble especially on Windows,
12171         where the path will be confused with the syntax for an an UNC
12172         (network share) path \\server\share\path.
12173         (gtk_rc_add_initial_default_files): Ditto.
12174
12175 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
12176
12177         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
12178
12179         * gtk/gtktextview.c: Use correct marshallers.
12180
12181 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
12182
12183         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
12184         use new iter stuff, and added all the appropriate signals et al.
12185
12186         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
12187         code is internal to gtk only.
12188
12189 2000-10-28  Tor Lillqvist  <tml@iki.fi>
12190
12191         * gtk/gtk.def
12192         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
12193         glib-genmarshal etc.
12194
12195 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
12196
12197         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
12198         parallel builds.
12199
12200 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
12201
12202         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
12203
12204 2000-10-27  Robert Brady  <robert@suse.co.uk>
12205
12206         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
12207         en_GB (British), ia (Interlingua).
12208
12209 2000-10-26  Havoc Pennington  <hp@redhat.com>
12210
12211         * gtk/gtktextiter.c (my_strrstr): fix constness warning
12212
12213         Fixed output of:
12214         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
12215         
12216         * gtk/gtktextsegment.c (char_segment_new): rename
12217         (_char_segment_new_from_two_strings): rename
12218         (_toggle_segment_new): rename
12219         
12220         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
12221         (make_clipboard_widget): make it static
12222         (text_get_func): static
12223         (text_clear_func): static
12224
12225         * gtk/gtkcolorsel.c (adjustment_changed): make this function
12226         static
12227         (hex_changed): make it static
12228         (hsv_changed): make it static
12229         (opacity_entry_changed): make it static
12230
12231         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
12232         (toggle_segment_check_func): rename with _gtk
12233
12234         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
12235         (_widget_segment_new): rename
12236         (_widget_segment_add): rename
12237         (_widget_segment_remove): rename
12238         (_widget_segment_ref): rename
12239         (_widget_segment_unref): rename
12240
12241         * gtk/gtktextmark.c (_mark_segment_new): Rename
12242         _gtk_mark_segment_new   
12243
12244 2000-10-26  Havoc Pennington  <hp@redhat.com>
12245
12246         * gtk/gtkmarshal.list: add new marshallers used by the text widget
12247         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
12248         types
12249
12250         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
12251         marshaller types
12252
12253         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
12254         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
12255         license on these files.
12256
12257         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
12258         work.
12259
12260         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
12261         runtime random number different for each tree, instead of 
12262         a constant I made up.
12263
12264 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
12265
12266         * gtk/Makefile.am: buncha cleanups, kludged build sources
12267         dependencies with a Makefile: oldest-source-stamp dependancy
12268         for the moment. automake is really fighting us here, with
12269         intentionally not allowing user-defined rules or dependancies
12270         prior to it's -include $(DEP_FILES) statement. sucks rocks!
12271
12272         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
12273         to public headers. tehy have a comment stating that they are
12274         "semi-public" aren't included by gtk.h and if enums popup there,
12275         they can be /*< skip >*/-ed.
12276
12277         * gtk/gtktextlayout.h: 
12278         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
12279         added LGPL... <SIGH>
12280
12281 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
12282
12283         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
12284         GtkTreeIter.  Added iterators everywhere.
12285
12286         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
12287
12288         * gtk/gtktreeviewselection.c: Changed to use the iterators.
12289
12290         * gtk/gtktreestore.c: Changed to use the iterators.
12291
12292         * gtk/gtkliststore.c: Commented out the code.  Will convert to
12293         iterators tomorrow.
12294
12295         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
12296         iterators tomorrow.
12297
12298         * gtk/treestoretest.c: Changed to use iterators.
12299
12300         * demos/testgtk/main.c: Moved to use the new iterator system.
12301
12302 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
12303
12304         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
12305         localization misbehaviour.
12306
12307         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
12308         a useless type without copy/free.
12309
12310         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
12311         of GTK_TYPE_CTREE_NODE.
12312
12313 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
12314
12315         * gtk/gtksignal.c:
12316         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
12317         applicable.
12318
12319         * gtk/gtk-boxed.defs (GtkSelectionData): specify
12320         gtk_selection_data_copy and gtk_selection_data_free
12321         do GtkSelectionData work as params in signals.
12322
12323 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
12324
12325         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
12326         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
12327         couldn't they at least give it a non-standard name?
12328         
12329         * gtk/gtktextlayout.c: arg! yet another implementation of
12330         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
12331
12332         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
12333         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
12334         home. now i know this _is_ a conspiracy.
12335
12336         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
12337         ::state-changed.
12338
12339         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
12340         (gtk_accel_group_create_add): marshaller signature fixups.
12341
12342         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
12343         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
12344
12345         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
12346         anymore.
12347
12348 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
12349
12350         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
12351         due to the signal system changes, it wouldn't build currently. to
12352         be fixed soon.
12353
12354         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
12355
12356         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
12357         so it needs gtk_marshal_VOID__ENUM() instead of
12358         gtk_marshal_NONE__UINT().
12359
12360         * gdk/gdk*.c: adapted type registration functions.
12361
12362         * gtk/gtkbindings.c:
12363         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
12364         gone.
12365
12366         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
12367
12368         * gtk/gtkobject.c:
12369         (gtk_object_destroy):
12370         (gtk_object_shutdown): fixed recursion guards. basically we have to
12371         catch the case where any of GObject.shutdown() or gtk_object_destroy()
12372         is called during ::destroy, and avoid recursion there.
12373
12374         * gtk/gtktypeutils.c:
12375         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
12376         boxed_copy/boxed_free. this needs a more general solution based on a
12377         publically installed code-generator utility.
12378
12379         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
12380         glib's gobject has support for that now.
12381         define GtkSignalMarshaller in terms of GSignalCMarshaller.
12382
12383 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
12384
12385         * gtk/gtksignal.[hc]:
12386         * gtk/gtkmarshal.[hc]:
12387         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
12388         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
12389         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
12390         care of that.
12391
12392         * *.c: marshaller name fixups.
12393
12394         * gtk/gtkmarshal.list: added a comment briefing the format.
12395
12396 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
12397
12398         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
12399         compatibility macros here now. more specifically, most of
12400         the API is preserved (yes, _most_, nonwithstanding the
12401         following exceptions listed, the API is stil lHUGE ;)
12402         things that got removed completely:
12403         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
12404         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
12405         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
12406         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
12407         gtk_signal_remove_emission_hook().
12408         non-functional functions variants:
12409         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
12410         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
12411         not supported anymore.
12412         (gtk_signal_compat_matched): new internal function to aid
12413         implementation of the compatibility macros, it  provides
12414         functionality to block/unblock/disconnect handlers based
12415         on func/data.
12416
12417         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
12418
12419         * *.c: adaptions to new type registration API signatures.
12420
12421 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
12422
12423         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
12424
12425 2000-10-25  Robert Brady  <robert@suse.co.uk>
12426
12427         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
12428         gdk_property_delete): If window == NULL, assume the root window.
12429         (restoring the behaviour that was in 1.2).
12430         
12431         * gtk/testtext.c (save_buffer): Allow creation of new files when
12432         saving.
12433
12434         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
12435         calls to read().
12436
12437 2000-10-25  Tor Lillqvist  <tml@iki.fi>
12438
12439         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
12440
12441         * gdk/win32/gdkdrawable-win32.c
12442         * gdk/win32/gdkimage-win32.c
12443         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
12444         X11 backend.
12445
12446         * gdk/win32/gdkcc-win32.c
12447         * gdk/win32/gdkcolor-win32.c
12448         * gdk/win32/gdkfont-win32.c
12449         * gdk/win32/gdkinput-win32.c
12450         * gdk/win32/gdkmain-win32.c
12451         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
12452
12453 2000-10-24  Havoc Pennington  <hp@redhat.com>
12454
12455         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
12456         it a static function
12457
12458         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
12459         redraw text when a tag is applied to it.
12460
12461         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
12462         (gtk_text_tag_affects_nonsize_appearance): private functions to
12463         see if a tag requires various kinds of redraw/layout to be queued
12464         up.
12465
12466         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
12467
12468         * gtk/testtext.c (fill_example_buffer): Put the cursor 
12469         at the start of the buffer, so search works by default
12470
12471         * gtk/gtktextiter.c (lines_match): init match_start always
12472
12473         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
12474         function, get iter at a line + a byte index
12475
12476         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
12477         to set byte position within a line
12478         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
12479
12480 2000-10-23  Havoc Pennington  <hp@redhat.com>
12481
12482         * gtk/testtext.c: Re-enable the "find" dialog
12483
12484         * gtk/testgtk.c: Add test for gdk_drawable_get_image
12485         
12486         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
12487         the arguments to gdk_draw_drawable were in the wrong order
12488         (gdk_window_paint_init_bg): This function was ignoring the
12489         init_region, instead of clipping to it, so the entire backing
12490         pixmap was cleared on every begin_paint()
12491         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
12492         was in here again, the loop kept using the same GtkWindowPaint
12493         over and over.
12494         (gdk_window_begin_paint_region): Fix a bug where we had two
12495         x_offset instead of x_offset and y_offset
12496
12497         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
12498         before we get the image.
12499         (gdk_draw_drawable): get the composite before we draw the drawable.
12500         (gdk_drawable_real_get_composite_drawable): default
12501         get_composite_drawable implementation that returns the drawable 
12502         itself
12503
12504         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
12505         get_composite_drawable virtual function
12506
12507         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
12508         list-walking bug
12509
12510         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
12511         make this work if the source drawable is a GdkDrawableImplX11
12512         instead of a public drawable type. This is really broken; the
12513         problem is that GdkDrawable needs a virtual method get_xid(), but
12514         of course that doesn't work in practice. Enter RTTI.
12515
12516         Also, improve mismatched depth message.
12517
12518         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
12519         GdkPixmap
12520
12521         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
12522         install _gdk_x11_get_image as our implementation of get_image
12523         
12524         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
12525         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
12526
12527         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
12528         gdk_drawable_get_image
12529
12530         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
12531
12532         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
12533         get_image
12534
12535         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
12536         trailing semicolon after for loop
12537
12538 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
12539
12540         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
12541         where font_desc for widget's context lagged widget's font_desc by
12542         one step.
12543
12544 2000-10-22  Tor Lillqvist  <tml@iki.fi>
12545
12546         * gdk/win32/gdkgc-win32.c
12547         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
12548
12549         * gtk/makefile.mingw.in
12550         * gtk/gtk.def: Updates.
12551
12552         * gtk/testgtk.c: sleep() is called _sleep in MS's C
12553         library.
12554
12555         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
12556
12557         * gtk/makefile.msc: Remove
12558
12559         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
12560
12561         * gtk/Makefile.am: Add it.
12562
12563         * configure.in: Generate it.
12564
12565         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
12566         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
12567         something even if not implemented, to satisfy picky MSVC.
12568
12569         Patches by Hans Breuer:
12570         
12571         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
12572         SetBkMode() and SetTextAlign() before calling
12573         pango_win32_render().
12574
12575         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
12576         Set hcliprgn to NULL after destroying it.
12577         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
12578
12579         * gdk/win32/gdkgeometry-win32.c
12580         (_gdk_windowing_window_queue_antiexpose): More effective
12581         implementation.
12582
12583         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
12584         depth as default, not the visual's.
12585
12586         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
12587         against empty title.
12588
12589         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
12590         IMAGE_PRIVATE_DATA.
12591
12592         * gdk/win32/gdkimage-win32.c: Use it.
12593
12594 2000-10-22  Robert Brady  <robert@suse.co.uk>
12595
12596         * configure.in: Check for bind_textdomain_codeset
12597
12598         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
12599         present, make use of it.
12600
12601         Add a translatable string "default:LTR" which, if translated
12602         to "default:RTL", will cause the default direction to be
12603         Right-to-Left.
12604
12605         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
12606         direction if marked as flippable.
12607
12608         * gtk/gtkhscale.c: Mark widget as flippable.
12609         
12610 2000-10-04  Havoc Pennington  <hp@redhat.com>
12611
12612         * gtk/testgtk.c (create_buttons): create some stock buttons
12613         with the default accel group
12614         (create_image): test some new GtkImage features
12615         (make_message_dialog): test GtkMessageDialog
12616         (create_modal_window): fix someone's bizzarro indentation
12617
12618         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
12619         GTK_WIN_POS_CENTER_ON_PARENT. 
12620         Add "destroy with parent" setting, which means the window goes
12621         away with its transient parent.
12622         (gtk_window_get_default_accel_group): get the default accel group
12623         for the window.
12624         (gtk_window_set_destroy_with_parent): set/unset destroy with
12625         parent flag
12626         (gtk_window_read_rcfiles): invalidate icon set caches
12627         after reloading rcfiles 
12628
12629         * gtk/gtkenums.h (GtkWindowPosition): add
12630         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
12631         on its parent window when the dialog is mapped for the first time.
12632
12633         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
12634         a simple message dialog class
12635         
12636         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
12637         handler to emit response signal, and maybe later it would
12638         honor a hide_on_delete flag - though that isn't there yet.
12639         Set border width on the vbox to 2, so we get some padding.      
12640         Use a button box for the action area.
12641         (gtk_dialog_key_press): synthesize a delete event if Esc
12642         is pressed and the GtkWidget key press handler didn't 
12643         handle the escape key.
12644         (gtk_dialog_new_with_buttons): new function creates a dialog
12645         with some default buttons in it.
12646         (gtk_dialog_add_action_widget): add an activatable widget
12647         as a button in the dialog - you can also add a non-activatable
12648         widget by accessing the action area directly.
12649         (gtk_dialog_add_button): add a simple button - stock ID or 
12650         label - to the action area
12651         (gtk_dialog_response): emit response signal
12652         (gtk_dialog_run): block waiting for the dialog, return 
12653         the response. Override normal delete_event behavior, so that 
12654         delete_event does nothing inside gtk_dialog_run().
12655
12656         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
12657         emitted when an action widget is clicked or the dialog gets
12658         delete_event
12659
12660         * gtk/gtk.h: add gtkmessagedialog.h
12661
12662         * gtk/Makefile.am: add gtkmessagedialog.[hc]
12663
12664 2000-10-18  Havoc Pennington  <hp@redhat.com>
12665
12666         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
12667         where any number of empty lines would get skipped
12668
12669         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
12670         edge.
12671
12672         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
12673         warning about invalid iterators (explain more thoroughly)
12674         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
12675
12676         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
12677         big
12678
12679         * demos/*.c: Add error handling
12680
12681         * gtk/gtktextbuffer.c: don't modify const iterators
12682
12683         * gtk/gdk-pixbuf-loader.c: Add full error handling here
12684
12685         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
12686         on file load
12687
12688         * gtk/gtkiconfactory.c: Update to reflect addition of error
12689         handling to gdk-pixbuf loaders
12690
12691 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
12692
12693         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
12694         move to new modularized testgtk.
12695
12696 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
12697
12698         * gtk/gtktreeview.c: Draw the arrows correctly.
12699
12700         * gtk/gtktreemodel.c: Added user docs.
12701
12702         * gtk/gtk.h: remove gtktreedatalist.h.
12703
12704         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
12705         parent when generating my type.
12706
12707         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
12708         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
12709
12710 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12711
12712         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
12713         GtkTreeModel from object to interface.
12714
12715 2000-10-16  Havoc Pennington  <hp@redhat.com>
12716
12717         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
12718         compilation
12719
12720 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
12721
12722         * gtk/gtktreeselection.c: Add API documentation to all public
12723         functions.
12724
12725         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
12726         functions.
12727
12728 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
12729
12730         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
12731         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
12732         docs to all public functions.
12733
12734         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
12735         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
12736         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
12737         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
12738         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
12739         issue.
12740
12741 2000-10-14  Robert Brady  <robert@suse.co.uk>
12742
12743         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
12744
12745 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
12746
12747         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
12748         values other then G_TYPE_STRING.
12749         * gtk/gtktreeselection.c: Minor commenting updates.
12750         * gtk/gtktreeview.c: Format updates.
12751
12752 2000-10-09  Tor Lillqvist  <tml@iki.fi>
12753
12754         * README.win32: Update.
12755
12756         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
12757         lines that had been deleted by mistake (?).
12758
12759         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
12760         also the case fg==white and bg==black (but still not randomly
12761         coloured cursors). Thanks to Wolfgang Sourdeau.
12762
12763         * gdk/win32/*.c: Silence gcc -Wall.
12764
12765         * gtk/gtk.def: Add missing entry points.
12766
12767         Fixes by Hans Breuer:
12768
12769         * gdk/makefile.msc
12770         * gdk/win32/makefile.msc: Update.
12771
12772         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
12773         some MSVC thing, presumably), cause breakpoint on failures. Add
12774         GDK_NOR case. Call g_log_set_always_fatal.
12775
12776         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
12777         should be pased by reference.
12778         
12779         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
12780         
12781         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
12782
12783         * gdk/win32/gdkevents-win32.c
12784         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
12785
12786         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
12787         implementation object.
12788
12789         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
12790         not just windows.
12791         
12792         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
12793         Use the wrapper object.
12794         
12795 2000-10-06  Havoc Pennington  <hp@redhat.com>
12796
12797         * Makefile.am (SRC_SUBDIRS): contrib subdir
12798
12799         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
12800         so it can be used in Xlib version
12801
12802         * demos/testpixbuf.c (update_timeout): error checking from 1.0
12803         tree
12804
12805         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
12806         change from 1.0 tree that returns first frame of animation
12807         if the loaded file is an animation.
12808
12809         * contrib: add new directory to hold stuff that comes with GTK+
12810         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
12811         
12812         * configure.in: add contrib/*
12813
12814 2000-10-05  Havoc Pennington  <hp@redhat.com>
12815
12816         * demos/testpixbuf-save.c: add pixbuf save test
12817
12818         * demos/Makefile.am: add testpixbuf-save.c
12819
12820 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
12821
12822         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
12823         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
12824         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
12825         * gtk/gtktreeselection.[ch]: Replaced
12826         "node_selected"/"node_unselected" signal with "selection_changed"
12827         signal.
12828
12829 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12830
12831         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
12832         tree widget.
12833
12834 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
12835
12836         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
12837         drawing.
12838
12839 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
12840
12841         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
12842         Move list pointer forwards before removing item from
12843         list. (Crash reported by Salmaso Raffaele)
12844
12845         * gdk/gdkwindow.h: Remove spurious trailing ,
12846
12847         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
12848         dependencies on uninstalled libraries, sorry folks.
12849
12850 2000-10-04  Havoc Pennington  <hp@redhat.com>
12851
12852         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
12853         gtk/gtkiconfactory.c: Fix copyrights    
12854
12855         * demos/testpixbuf.c: add inline pixbuf test
12856         
12857 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
12858
12859         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
12860         Add gdk_window_iconify.
12861
12862         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
12863         (gdk_window_set_geometry_hints): Add win_gravity
12864         to geometry structure.
12865
12866         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
12867         Implement _NET_WM_PING.
12868
12869         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
12870         Set _NET_WM_PID on the client leader.
12871
12872         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
12873         Handle UTF-8 better.
12874
12875         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
12876         UTF-8 better, set _NET_WM_NAME as well. Only set
12877         icon name if it hasn't previously been explicitely 
12878         set.
12879
12880 2000-10-03  Havoc Pennington  <hp@redhat.com>
12881
12882         * gtk/testtextbuffer.c: clean up trailing whitespace,
12883         add extensive tests for tag toggle iteration.
12884         
12885         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
12886         distance
12887
12888         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
12889         optimize case where the tag root is on level 1
12890         (gtk_text_line_previous_could_contain_tag): attempt to implement
12891         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
12892         functionality
12893
12894         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
12895         Implement this, though not very efficiently.
12896
12897         * gtk/gtktextiterprivate.h: reformat
12898
12899         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
12900         iterator
12901
12902         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
12903         this to properly revalidate the iterators.
12904
12905         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
12906         properly at the end of the line (and therefore on empty lines)
12907
12908         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
12909         maybe we should return a value...
12910
12911 2000-10-03  Tor Lillqvist  <tml@iki.fi>
12912
12913         * config.h.win32: Guard definition of alloca(). glib.h now handles
12914         that.
12915
12916         * gdk/gdk.def
12917         * gtk/gtk.def: Add new entry points.
12918
12919         Changes just to make GTK+ build without errors on Win32. No hope
12920         of it working in its current state, though...:
12921         
12922         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
12923         some functions from the X11 backend, just to make GTK+ build.
12924
12925         * gdk/makefile.mingw.in
12926         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
12927         number. Add new object files.
12928
12929         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
12930         GetMessageTime to get timestamp (where on X11 uses
12931         gdk_x11_get_server_time()).
12932
12933 2000-10-02  Havoc Pennington  <hp@pobox.com>
12934
12935         * gtk/gtktextview.c: text_window_* weren't static and should have
12936         been.
12937         Start work on child widgets; not yet complete, syncing to 
12938         office computer.
12939
12940         * gtk/gtktextchild.h: change this to contain a public interface,
12941         starting work on child interfaces.
12942         * gtk/gtktextchildprivate.h: move private interfaces here
12943
12944         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
12945
12946         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
12947         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
12948         gtk/gtktextmark.c: copyright notices
12949
12950         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
12951         internal functions      
12952
12953         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
12954         internal function
12955
12956         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
12957         Reformatting    
12958
12959 2000-09-30  Havoc Pennington  <hp@pobox.com>
12960
12961         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
12962         NULL start/end pointers
12963
12964         * gtk/gtktextbuffer.c: Write some docs
12965         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
12966         NULL, so you can just check whether there's a selection.        
12967
12968         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
12969         cleanup_line or segments_changed ourselves, it gets done 
12970         in unlink_segment
12971
12972         * gtk/gtktextmark.h:
12973         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
12974         
12975         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
12976
12977         * gtk/gtktextmark.c: delete some more old Tk cruft
12978
12979         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
12980         mark before removing it, so we can emit MARK_DELETED with a valid
12981         pointer.
12982         (gtk_text_buffer_mark_set): hold ref across signal emission
12983
12984         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
12985         whining about attempts to delete special marks
12986
12987         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
12988         underscore, since it's internal.
12989
12990         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
12991         now implemented in terms of iterators in gtktextiter.h
12992
12993         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
12994         New function, destructively sets contents of buffer. Also 
12995         a convenient way to clear the buffer by setting text to ""
12996
12997         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
12998         multiline string literal
12999
13000         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
13001         text changes.
13002
13003         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
13004         is not dereferenceable
13005         (gtk_text_iter_forward_lines): fix return value
13006
13007 2000-09-29  Havoc Pennington  <hp@redhat.com>
13008
13009         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
13010
13011         * gtk/gtktextview.c: Implement drag thresholding; change functions 
13012         that set border window size to have nicer name
13013         (gtk_text_view_mark_set_handler):  Fix this to have the 
13014         right signature.
13015
13016         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
13017
13018         * gtk/testtext.c: Update with API changes, put line numbers on 
13019         both sides.
13020         
13021         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
13022         with this
13023
13024         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
13025         pixbuf; delete a big block of #if 0 Tk code
13026
13027         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
13028         insert_pixmap with insert_pixbuf
13029
13030 2000-09-29  Martin Baulig  <baulig@suse.de>
13031
13032         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
13033         confusion with the GdkPixbuf of the GNOME 1.x platform.
13034
13035 2000-09-29  Havoc Pennington  <hp@pobox.com>
13036
13037         * gtk/gtktextview.c: Implement the side windows.
13038
13039         * gtk/testtext.c: Implement simple line numbering in the 
13040         left side window; seems to make scrolling sloooow. Oops.
13041         Also, cursor blink is for some reason causing redraws
13042         of the line numbers. Should investigate...
13043
13044 2000-09-28  Havoc Pennington  <hp@redhat.com>
13045
13046         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
13047         scrolling child windows, and draw focus rectangle properly.
13048         
13049         (gtk_text_view_buffer_to_window_coords):
13050         Coordinate transformation to deal with all these freaking windows
13051         and offsets
13052         (gtk_text_view_window_to_buffer_coords): transform the other way
13053
13054         * gtk/testtext.c (create_buffer): Update to match Pango API change
13055
13056         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
13057         anonymous tags
13058         (foreach_unref): don't emit remove signal from finalize, just
13059         set tag's parent to NULL
13060
13061 2000-09-26  Havoc Pennington  <hp@redhat.com>
13062
13063         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
13064         Fix some warnings       
13065
13066 2000-09-26  Havoc Pennington  <hp@redhat.com>
13067
13068         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
13069         headers into the private header list
13070
13071         * Makefile.am (pkgconfig_DATA): install pkg-config files
13072
13073         * configure.in: add pkg-config files
13074
13075         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
13076
13077         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
13078         outstanding icon caches on theme change.
13079
13080         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
13081         important types:
13082
13083         (GtkIconSource): Specification for creating a pixbuf 
13084         appropriate for a direction/state/size triplet from 
13085         a source pixbuf or filename
13086
13087         (GtkIconSet): List of GtkIconSource objects that are used to
13088         create the "same" icon (e.g. an OK button icon), and cache for
13089         rendered icons
13090
13091         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
13092         up the icon set for a given stock ID.  GTK maintains a stack of
13093         GtkIconFactory to search, and applications or libraries can add
13094         additional icon factories on top of the stack
13095         
13096         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
13097         the set of GtkIconSource specified for a given stock ID into 
13098         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
13099         RcStyle, under the specified stock ID.
13100
13101         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
13102         render_icon used to derive a GdkPixbuf from a GtkIconSource.
13103         This allows people to theme how prelight, insensitive, etc. are
13104         done.
13105
13106         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
13107         icon factories for a style, and return the resulting 
13108         icon set if any.
13109
13110         (gtk_style_render_icon): Render an icon using the render_icon 
13111         method in the GtkStyleClass.
13112
13113         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
13114         Use the style for a given widget to look up a stock ID, get the
13115         icon set, and render an icon using the render_icon method 
13116         of the style
13117
13118         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
13119         (contains information about a stock item), the built-in stock item
13120         IDs, and functions to add/lookup stock items.
13121
13122         * gtk/stock-icons/*: Stock icons that come with GTK
13123
13124         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
13125         a button based on a GtkStockItem
13126         (gtk_button_new_accel): Takes a uline string and accel group, and
13127         installs the accelerator.
13128
13129         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
13130         image-display widget.
13131
13132 2000-09-25  Havoc Pennington  <hp@redhat.com>
13133
13134         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
13135
13136         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
13137         Fix a bug when removing node data, we didn't properly 
13138         re-splice the linked list after removing the data.
13139
13140         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
13141         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
13142
13143         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
13144
13145         * gtk/gtktextlayout.c (set_para_values): Set tab array 
13146         for the layout from the GtkTextTag.
13147
13148         * gtk/gtktexttypes.h: delete tab and search cruft, 
13149         remove g_convert() in favor of GLib version
13150
13151         * gtk/gtktexttypes.c: remove tab implementation from here,
13152         move to Pango
13153
13154         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
13155         tab stuff using new PangoTabArray from Pango
13156
13157         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
13158         unused border_width stuff
13159
13160 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
13161
13162         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
13163         glib) and now useless utf_to_latin1() latin1_to_utf()
13164
13165         * gtk/gtktextview.[ch]: Change ::move_insert and
13166         ::delete_text action signals to ::move and ::delete;
13167         create the signals with the right enumeration type,
13168         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
13169         C-v bindings, change Home, End to move to beginning/end
13170         of line, Add C-Home C-End to move to beginning/end
13171         of buffer. Change ::cut_text to ::cut_clipboard, etc;
13172         combine ::scroll_text into ::move; use new GtkSelectionData
13173         functions to simplify DND text handling.
13174         
13175         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
13176         deletion enumerations here, rename enumeration values to 
13177         be consistently plural.
13178
13179         * gtk/gtktextbuffer.c: Use new clipboard interfaces
13180         for cut/copy/paste and primary selection.
13181
13182         * gtk/gtktextbuffer.[ch]: Remove excess time and
13183         'interactive' arguments from cut/copy/paste;
13184         rename cut to cut_clipboard, etc; remove
13185         gtk_text_buffer_get_clipboard_contents().
13186
13187         * gtk/gtktextlayout.[ch]: Add 
13188         gtk_text_layout_move_iter_to_line_end() to move the iter to 
13189         line ends.
13190
13191         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
13192         Functions to set or get a UTF-8 string on the selection
13193         data.
13194
13195         * gtk/gtkclipboard.[ch]: New, simplified selection handling
13196         interfaces.
13197
13198         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
13199         created widgets - one of these is useless if we don't.
13200
13201         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
13202         a public function clear all targets registered for the
13203         widget.
13204
13205         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
13206         Never call gtk_widget_realize() - that was just asking
13207         for bizarre side-effects.
13208
13209         * gtk/gtkselection.c (gtk_selection_owner_set): Call
13210         gdk_selection_owner_set even if the widget is the
13211         same so that we reliably update the timestamp on
13212         the server.
13213
13214         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
13215         gdk_x11_get_server_time() function.
13216         
13217         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
13218         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
13219         Add some tricky filtering on serial numbers for
13220         selection clear events to fix up long-standard
13221         race condition FIXME's in gtkselection.c.
13222
13223         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
13224         routines to convert from utf8 to compound text or
13225         STRING and from a text property to UTF-8.
13226
13227         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
13228         a convenience function gdk_get_current_event_time().
13229
13230         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
13231         and free selection_data->data properly
13232
13233 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
13234
13235         * gtk/gtkthemes.c: Remove some unecessary includes.
13236
13237 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
13238
13239         * gtk/gtktextdisplay.c
13240         * gtk/gtktextlayout.c
13241         * gtk/gtktexttag.c
13242         * gtk/gtktexttag.h
13243         * gtk/testtext.c: Change the overstrike property to strikethrough,
13244         to closer match pango.
13245
13246 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
13247
13248         * gtk/gtktextview.c: Fix up visibility so that focus,
13249         cursor_visible and blink interact properly.  Reenable cursor blink
13250         which had been roughly disabled. Make blink and focus
13251         properly per-view.
13252
13253         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
13254         Add a flag for whether to display insertion cursor and
13255         a function to set the flag.
13256
13257         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
13258         get_line_y() to get_line_yrange(), to be a bit more generally
13259         useful.
13260
13261 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
13262
13263         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
13264           do stop_navigating_submenu, to clear last timeout properly.
13265           Also in gtk_menu_motion_notify move ignore_enter above
13266           the conditional to make it always happen as suggested by Owen
13267
13268 2000-09-07  Tor Lillqvist  <tml@iki.fi>
13269
13270         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
13271
13272         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
13273         w32api headers.
13274
13275         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
13276         declarations.
13277
13278         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
13279         (gdk_win32_get_colormap): A line had been deleted by mistake.
13280
13281         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
13282         (gdk_event_translate): Handle more virtual keycodes to be able to
13283         generate GDK events for Control-comma, Control-period, etc.
13284
13285         * gtk/gtk.def: Add some missing entry points.
13286
13287 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
13288
13289         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
13290         Doc comment fixing. (Mostly non-matching parameter names.)
13291
13292         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
13293         comments a little to avoid looking like a doc comment.
13294
13295         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
13296         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
13297         conversions be changed to GError?)
13298
13299         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
13300         Move private #defines into .c file.
13301
13302         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
13303         order of argument addition, remove duplicates.
13304
13305         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
13306         parent class is FrameClass, not BinClass.
13307
13308         * gtk/gtk.h: Add gtkinvisible, which was missing.
13309         (It's occasionalyl useful for client apps, if seldom.)
13310
13311         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
13312         #define.
13313
13314 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
13315
13316         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
13317         coordinates when creating window, instead of GDK-space
13318         coordinates. (Avoid BadValue on too large windows.)
13319
13320 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13321
13322         * configure.in (use_mmx_asm): Remove conftest* after use along the
13323         lines of AC_TRY_COMPILE.        
13324         
13325         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
13326         of g_dirname, which is deprecated.
13327         (gtk_rc_parse_any): Removed calls to
13328         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
13329
13330         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
13331         Removed calls to g_hash_table_{freeze,thaw}, as they are
13332         deprecated now.
13333
13334         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
13335         instead of g_basename.
13336         
13337 2000-09-04 Elliot Lee <sopwith@redhat.com>
13338         
13339         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
13340         ANSI warning.
13341
13342 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
13343
13344         * gtk/gtkwidget.h:  Add some documenting comments about 
13345           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
13346           just as owen said on irc.
13347
13348         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
13349           set HAS_DEFAULT.  Only set it if there isn't another window
13350           holding it (a focus window which RECEIVES_DEFAULT) and only unset
13351           it if the widget is not the focused window with RECEIVES_DEFAULT.
13352           This fixes weird double default bugs in dialogs which has things
13353           call gtk_window_set_default at times.
13354
13355 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
13356
13357         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
13358         Nils Barth and David Santiago to improve submenu
13359         navigation. The patch does this by creating a triangular
13360         region from the point where the pointer leaves the
13361         menu to the submenu.  While the pointer is in
13362         that region and a timeout has not expired, events 
13363         that would cause the active submenu to change are
13364         ignored.
13365
13366 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
13367
13368         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
13369         moving a toplevel window immediately after sizing it would
13370         result in it being sized back to the old size since 
13371         impl->width, impl->height aren't updated until we hear
13372         back from the server. There is still a (longstanding) bug
13373         here that gdk_window_get_size() will give the wrong size
13374         until we do hear back.
13375
13376 2000-08-31  Havoc Pennington  <hp@redhat.com>
13377
13378         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
13379         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
13380         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
13381         Rename GtkTextStyleValues to GtkTextAttributes
13382
13383 2000-08-31  Havoc Pennington  <hp@pobox.com>
13384
13385         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
13386         for rapid testing whether an iterator is the end iterator
13387         (gtk_text_btree_new): init end line cache
13388         (gtk_text_line_is_last): use fast cached line to 
13389         see if we're the last line.
13390         (get_last_line): use cached line here too, should 
13391         speed up some random unrelated code.
13392         
13393 2000-08-30  Havoc Pennington  <hp@pobox.com>
13394
13395         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
13396         signals.
13397
13398         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
13399         delete_text signals. This allows the signals to be used for
13400         implementing undo.
13401
13402         * gtk/gtktextbuffer.c: Change signal handler signatures; 
13403         provide "interactive" argument when emitting insert_text or
13404         delete_text signal.
13405         
13406 2000-08-30  Havoc Pennington  <hp@pobox.com>
13407
13408         * gtk/gtktextbuffer.c: Docs
13409
13410 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
13411
13412         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
13413         from switch statements, since Tor removed the enumeration
13414         value.
13415         
13416         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
13417         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
13418
13419 2000-08-29 Elliot Lee <sopwith@redhat.com>
13420         * */*.h: Use G_GNUC_CONST.
13421
13422 2000-08-27  Havoc Pennington  <hp@pobox.com>
13423
13424         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
13425         minor indentation fixes, inserted some FIXME about stuff I
13426         realized was broken while documenting it.
13427         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
13428         GTK convention  
13429
13430 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
13431
13432         * gtk/testgtk.c (create_styles): Fix double free of
13433         font desc.
13434
13435 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
13436
13437         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
13438         
13439         * gtk/testgtk.c (create_styles): Add a test for modifying
13440         the style through gtk_widget_modify_*.
13441
13442         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
13443         a function to get the current modifier style.
13444
13445         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
13446         of the passed in GtkRcStyle instead of ref'ing it.
13447
13448         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
13449
13450 2000-08-20  Tor Lillqvist  <tml@iki.fi>
13451
13452         * gdk/gdkimage.h
13453         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
13454         shared memory image+pixmap GdkImage type, or
13455         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
13456         I am dropping that.
13457
13458         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
13459         actually call gtk_init_abi_check(), passing also
13460         sizeof(GtkWindow). Ditto for gtk_init_check(). 
13461
13462         * gtk/gtk.def
13463         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
13464         New functions, used to check that the GTK+-using code has been
13465         compiled using the correct compiler and switches. In particular,
13466         with gcc one has to use the -fnative-struct switch as GTK+ is
13467         compiled with that.
13468
13469 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
13470
13471         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
13472         ->prev fields when merging lists. (Found simultaneously
13473         by Pawel Salek and Jakub Jelinek)
13474
13475 2000-08-12  Tor Lillqvist  <tml@iki.fi>
13476
13477         * gdk/gdk.def
13478         * gtk/gtk.def: Add missing entries.
13479
13480         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
13481         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
13482
13483         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
13484         function. Dummy implementation at this point.
13485
13486         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
13487         rules. Undefine GTK_COMPILATION when compiling the test programs.
13488         
13489         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
13490
13491 2000-08-11  Tor Lillqvist  <tml@iki.fi>
13492
13493         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
13494         to convert back and forth from UTF-8 and the "system" (or "current
13495         locale") charset when necessary. Indentation/spacing cleanup.
13496
13497 2000-08-10  Havoc Pennington  <hp@redhat.com>
13498
13499         * Makefile.am (snapshot): Change the format of the snapshot
13500         version to match glib
13501
13502         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
13503         from EXTRA_DIST since it doesn't seem to exist
13504
13505 2000-08-10  Tor Lillqvist  <tml@iki.fi>
13506
13507         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
13508         version of the directory name (not the UTF-8 one) when building
13509         the path name to stat().
13510
13511 2000-08-03  Elliot Lee  <sopwith@redhat.com>
13512
13513         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
13514         PANGO_ATTR_SHAPE set.
13515
13516 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
13517
13518         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
13519         Peter Osterlund to simplify the code while keeping the
13520         functionality the same.
13521
13522 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
13523
13524         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
13525         is_viewable() test further inside the function, since removing the 
13526         window from the redraw list without clearing ->update_area
13527         was also very broken.
13528
13529 2000-08-02  Tor Lillqvist  <tml@iki.fi>
13530
13531         * configure.in: Check for <unistd.h>.
13532
13533 2000-08-01  Martin Baulig  <baulig@suse.de>
13534
13535         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
13536         to display the message that this is a development version of GTK+.
13537
13538 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
13539
13540         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
13541         was depending on widget->allocation instead of the width of text_area,
13542         which was incorrect for subclasses like GtkSpinButton.
13543
13544         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
13545         with width == 1 tests that should be width == -1.
13546
13547 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
13548
13549         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
13550         (broken, Elliot, every single window blank on X) custom code with call
13551         to gdk_window_is_viewable() which a) prevents code duplicate and
13552         b) works. 
13553
13554 2000-07-31  Elliot Lee  <sopwith@redhat.com>
13555
13556         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
13557         to get the GDK_PARENT_ROOT() macro to work.
13558         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
13559         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
13560         of, windows that aren't shown.
13561         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
13562         pointer grab stuff.
13563
13564 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
13565
13566         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
13567           s/gtk_main_iteration/g_main_iteration/
13568
13569           Did this already in change:
13570                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
13571           don't know how it got reverted.
13572
13573 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
13574
13575         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
13576         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
13577
13578         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
13579         not gdk_pixbuf.
13580
13581 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
13582
13583         * configure.in,po/{sp,sr}.po: Added Serbian files
13584
13585 2000-07-30  Tor Lillqvist  <tml@iki.fi>
13586
13587         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
13588
13589         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
13590         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
13591         GIOChannel implementation.
13592
13593         * gdk/win32/gdkinput.c
13594         * gdk/win32/gdkpango-win32.c: Update license name here, too.
13595
13596         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
13597         definition to match prototype.
13598
13599         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
13600
13601 2000-07-27  Elliot Lee  <sopwith@redhat.com>
13602
13603         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
13604         function, to allow handling image formats that cannot be detected
13605         by looking at content alone.
13606
13607 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
13608
13609         * docs/tutorial/*.gif *.jpg *.eps
13610           Update these to the same look-n-feel.
13611           Why does including images in DocBook suck so badly?
13612
13613 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
13614
13615         * gtk/gtktable.c: applied patch from Phil Thompson
13616         <phil@river-bank.demon.co.uk> that enables space settings for
13617         the last row/columns as well.
13618
13619 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
13620
13621         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
13622         updates the license headers to the GNU Lesser General Public License,
13623         as well as updating the copyright year to 2000.
13624
13625 2000-07-26  Robert Brady  <rwb197@zepler.org>
13626
13627         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
13628           and po/Makefile, was installing and looking for them under gtk20
13629           and gtk2 respectively.
13630
13631 2000-07-25  Havoc Pennington  <hp@redhat.com>
13632
13633         * gtk/testtext.c: Comment out some stuff that depends on the rest
13634         of my patches.
13635
13636 2000-07-25  Havoc Pennington  <hp@redhat.com>
13637
13638         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
13639         buffer
13640
13641 2000-07-25  Havoc Pennington  <hp@redhat.com>
13642
13643         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
13644         widget changes.
13645
13646         * gtk/gtktextview.h: To be consistent with usage of "line"
13647         throughout the API to mean "newline-terminated thingy", change
13648         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
13649         to MOVEMENT_LINE.
13650
13651         (GtkTextView): Add flags for default editability, and whether to
13652         show the cursor. Add functions to get/set that. Add 
13653
13654         (gtk_text_view_get_iter_location): new function
13655
13656         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
13657         gtktextlayout.h
13658         (g_convert): Add g_convert temporarily, will go in glib in a bit
13659         
13660         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
13661         GtkTextTagTableForeach instead of brokenly using GHFunc.
13662         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
13663
13664         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
13665         moved to public header.
13666
13667         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
13668         "invisible", since "elide" was a bad name.
13669         (gtk_text_tag_get_priority): Added
13670
13671         (GtkTextStyleValues): put this in public header, along with
13672         functions to use it.
13673
13674         * gtk/gtktextmarkprivate.h: Include more headers, since we no
13675         longer include gtktextbtree.h.
13676
13677         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
13678         gtk_text_mark_deleted
13679
13680         * gtk/gtktextlayout.h: Don't include the "really private" headers,
13681         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
13682         to make this possible. Now we only need to install
13683         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
13684         (However the Makefile.am isn't changed yet because of the
13685         logistics of merging gtk-hp-patches piecemeal)
13686
13687         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
13688         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
13689         gtk_text_iter_get_line is now used in the public API for a
13690         different purpose.
13691
13692         * gtk/gtktextiter.h: Clean up function names to be more
13693         consistent. Always call char offset "offset" and byte index
13694         "index". A "line" is always a line number. 
13695
13696         (gtk_text_iter_is_last): new function, more efficient than 
13697         the existing way to check
13698         (gtk_text_iter_is_first): new function, also more efficient
13699
13700         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
13701
13702         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
13703         gtk_text_iter_forward_char, etc.
13704
13705         (gtk_text_iter_forward_to_tag_toggle): Renamed from
13706         forward_find_tag_toggle, since this isn't a linear search
13707
13708         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
13709
13710         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
13711         New functions, search for a buffer substring.
13712
13713         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
13714         interactive and default editable (since we need to store that info
13715         until we receive the selection data).
13716
13717         Remove all the _at_char and at_line etc. versions of functions;
13718         only have iterator versions.
13719
13720         Add _interactive() versions of functions, that consider the
13721         editability of text. (FIXME add interactive flag to the 
13722         insert/delete signals per Darin's suggestion)
13723
13724         (gtk_text_buffer_get_tag_table): new function, demand-creates the
13725         tag table if necessary
13726
13727         Remove declaration of gtk_text_buffer_get_iter_from_string
13728
13729         (_gtk_text_buffer_get_btree): private/internal function, added.
13730         
13731
13732         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
13733         (gtk_text_line_is_last): new function
13734
13735 2000-07-25  Havoc Pennington  <hp@redhat.com>
13736
13737         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
13738         using GtkProgressBar. See Changes-2.0.txt for details.
13739
13740         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
13741         "pulse_step" which are the equivalent of
13742         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
13743         Implement new API.
13744         
13745         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
13746         (use_text_format) to mark whether text set on the progress bar is
13747         a format string. Deprecate entire GtkProgress interface.
13748
13749         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
13750         (gtk_progress_build_string): make this a no-op if use_text_format
13751         is FALSE
13752
13753         * docs/Changes-2.0.txt: Describe progress bar changes.
13754
13755 2000-07-25  Tor Lillqvist  <tml@iki.fi>
13756
13757         * Makefile.am: Include the build directory.
13758
13759         * configure.in: Generate build/Makefile, build/win32/Makefile,
13760         gdk/, gdk/win32/, and gtk/makefile.mingw.
13761
13762         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
13763         Add GETTEXT_PACKAGE.
13764         
13765         * gdk/gdk.def
13766         * gtk/gtk.def: Updates.
13767
13768         * gdk/gdkfont.h
13769         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
13770         need them any longer.
13771
13772         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
13773
13774         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
13775         PANGOWIN32_LIBS and gdk_pixbuf.
13776
13777         * gdk/win32: Compiles, but no doubt doesn't work at all.
13778
13779         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
13780
13781         * gdk/win32/gdkinput.c: New file, temporarily.
13782         
13783         * gdk/win32/gdkinput-win32.h: New file
13784
13785         * gdk/win32/gdkinputprivate.h: Remove.
13786
13787         * gdk/win32/gdkpango-win32.c: New file.
13788
13789         * gtk/makefile.mingw.in: New file
13790
13791         * gtk/makefile.cygwin: Removed
13792         
13793         * gtk/Makefile.am: Update accordingly.
13794
13795         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
13796         made externally visible.
13797
13798         * gtk/gtkmain.c: Use it.
13799         
13800         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
13801         is enough.
13802
13803         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
13804
13805 2000-07-24 Elliot Lee <sopwith@redhat.com>
13806         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
13807         individual backends already.
13808         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
13809         again. Yes, there really is a good reason for this, if you are using the gdkregion
13810         internals, and if you're not, why do you care?
13811         * gdk/gdkwindow.c: Fix inverted condition
13812         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
13813         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
13814         * gtk/gtkrange.c: Redraw trough when moving.
13815         * gtk/gtktypeutils.c: Fix warning by adding const cast.
13816         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
13817
13818 2000-07-23  Tor Lillqvist  <tml@iki.fi>
13819
13820         * configure.in: Check for mkstemp and sigsetjmp. Output
13821         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
13822
13823         More work on GDK for Win32. Still in an intermediate state.
13824
13825         * gdk/makefile.cygwin
13826         * gdk/win32/makefile.cygwin: Removed.
13827         
13828         * gdk/makefile.mingw.in
13829         * gdk/win32/makefile.mingw.in: New files.
13830
13831         * gdk/Makefile.am
13832         * gdk/win32/Makefile.am: Generate and distribute them.
13833
13834         * gdk/win32/gdkwindow-win32.h
13835         * gdk/win32/gdkdrawable-win32.h
13836         * gdk/win32/gdkpixmap-win32.h: New files.
13837
13838         * gdk/win32/gdkcolor-win32.c
13839         * gdk/win32/gdkcursor-win32.c
13840         * gdk/win32/gdkdrawable-win32.c
13841         * gdk/win32/gdkgc-win32.c
13842         * gdk/win32/gdkimage-win32.c
13843         * gdk/win32/gdkprivate-win32.h
13844         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
13845         Rename fields and variables called xcursor, xid, etc (these names
13846         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
13847
13848 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
13849
13850         * gtk/gtkentry.[ch]: Fix some problems with vertical
13851         alignment.
13852
13853         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
13854         char/byte confusion.
13855
13856 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
13857
13858         * gtk/gtktextview.c (changed_handler): Fix bug where
13859         redraw wasn't being done properly when height of
13860         dirty region changed.
13861
13862         * demos/Makefile.am: Remove various references to
13863         -lgmodule
13864
13865 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
13866
13867         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
13868         PangoAttrShape to reserve space for pixmaps, add 
13869         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
13870         in the display functions.
13871         
13872         * gtk/testgtk.c (create_layout): Set some more exotic
13873         scrolled window options
13874
13875         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
13876         Add function to set the shadow type of a window, to allow
13877         putting a shadow around widgets such as GtkLayout or GnomeCanvas
13878         which don't draw their own frame.
13879
13880 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
13881
13882         * docs/tutorial/package-db-tutorial.sh: New file for
13883           packaging DocBook format tutorial
13884
13885 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
13886
13887         * docs/tutorial/gtk-tut.sgml: Minor updates
13888
13889         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
13890
13891 2000-07-19  Tor Lillqvist  <tml@iki.fi>
13892
13893         * gtk/gtksignal.c: Fix C++ comment.
13894
13895         * gtk/gtkimmulticontext.c
13896         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
13897         don't return value from void functions.
13898
13899         * gtk/gtk.def: Add gtk_rc_style_unref.
13900
13901 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13902
13903         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
13904         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
13905         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
13906         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
13907         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
13908         gtk/gtktypeutils.h: Include files outside of the extern "C"
13909         block. Makes some C++ compiler happy. Reported by Denis Vakatov
13910         <vakatov@peony.nlm.nih.gov>.
13911
13912 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
13913
13914         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
13915           Completes first pass. Hurrah!
13916
13917 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
13918
13919         * docs/tutorial/gtk-tut.sgml: More clean ups.
13920
13921 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
13922
13923         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
13924         paint the background of the text area which was accidentally
13925         removed at some point.
13926
13927         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
13928           
13929          - Move most of the functionality from the theme vtable
13930            into GtkRcStyleClass and GtkStyleClass. The moved
13931            vtable functions were changed a bit in the move to
13932            work better in their new home.
13933
13934          - Get rid of the engine and engine_data fields from
13935            GtkRcStyle and GtkStyle; instead the theme
13936            engine derives theme-specific subclasses of GtkRcStyle
13937            and GtkStyle
13938
13939          - Add extra dlsym() found entry point to themes,
13940            theme_create_rc_style().
13941
13942         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
13943         in gtk_style_real_copy.
13944
13945         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
13946         to register a type associated with an engine. (The engine
13947         won't be unloaded as there is an instance of the type.)
13948
13949
13950 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
13951
13952         * docs/tutorial/gtk-tut.sgml: Clean ups.
13953
13954 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
13955
13956         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
13957           of cleaning up to do.
13958
13959 2000-07-15  Tor Lillqvist  <tml@iki.fi>
13960
13961         * gdk/testgdk.c: New file, quick hack to test backends for
13962         pixel-by-pixel correctness of the most simple graphic operations.
13963
13964 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
13965
13966         * Really release 1.3.1
13967         
13968         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
13969         include structure.
13970
13971 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
13972
13973         * Released 1.3.1
13974
13975 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
13976
13977         * gtk/gtktextlayout.c: use FALSE for size_only most
13978         of the time when calling gtk_text_layout_get_line_display()
13979         to avoid causing double reshapes when a redraw follows
13980         immediately after.
13981
13982 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
13983
13984         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
13985         appropriate region and gdk_window_process_updates() so trough
13986         updating doesn't lag behind the window being scrolled.
13987
13988         * gdk/gdkgc.c: Make parent_class pointer static.
13989          
13990 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
13991
13992         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
13993         include <string.h>.
13994          
13995         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
13996         cut-and-paste error in computing memory offset for 4 channels.
13997
13998 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
13999
14000         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
14001         gtk_rc_append_default_pixmap_path(), since it wasn't
14002         adding an interesting path and we don't have a meaningful
14003         default for this value.
14004
14005 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
14006
14007         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
14008         gtk-config to gtk-config-2.0 move gtk_.m4 to
14009         gtk-2.0.m4
14010
14011         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
14012         gdk/Makefile.am demos/Makefile.am: Change 
14013         library names to libgtk-1.3.la, etc, so that we
14014         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
14015
14016         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
14017         gdk/Makefile.am gdk/x11/Makfile.am
14018         Move include files into /usr/include/gtk-2.0, 
14019         /usr/lib/gtk-2.0/include/
14020          
14021         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
14022         gtk/gtkintl.h: Change package for gettext from 
14023         gtk+ to gtk20. Put hack in autogen.sh to modify
14024         po/Makefile.in.in after gettextize to make this
14025         possible.
14026
14027         * gtk+.spec: Some updates, not tested.
14028
14029         * gdk-pixbuf/Makefile.am: Move loaders into
14030         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
14031
14032         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
14033         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
14034         to THEMENAME/gtk-2.0/. Move engine directory  to
14035         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
14036         
14037 2000-07-12  Tor Lillqvist  <tml@iki.fi>
14038
14039         Win32 changes, still doesn't build though.
14040
14041         * gdk/makefile.cygwin
14042         * gdk/win32/makefile.cygwin
14043         * gtk/makefile.cygwin: Updates.
14044
14045         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
14046         default values for fg and bg pixel as X11 does (0 and 1), not
14047         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
14048         Use 0 for pen width by default (treated as 1 anyway later, but for
14049         apps that might check the value in the GdkGC).
14050         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
14051         interface to gdk_gc_predraw and _postdraw.
14052
14053         * gdk/win32/gdkwin32.h
14054         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
14055
14056         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
14057         extraneous semicolon.
14058
14059         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
14060
14061         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
14062         not the Win32 bitspixel value.
14063
14064         * gdk/win32/gdkcc-win32.c:
14065         * gdk/win32/gdkcolor-win32.c 
14066         * gdk/win32/gdkprivate-win32.h
14067         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
14068         GDK object structure.
14069
14070 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
14071
14072         * docs/tutorial/gtk_tut_12.es.sgml (name): 
14073         * docs/tutorial/gtk_tut_it.sgml (name): 
14074         * docs/tutorial/gtk_tut_fr.sgml (name): 
14075         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
14076         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
14077
14078 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
14079
14080         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
14081           small changes.
14082
14083 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
14084
14085         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
14086         a bug here, never been here and never fixed anything ;(
14087         (don't segfault if tree->root_tree is NULL, which happens prior
14088         to widget realization, but puke instead).
14089
14090 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
14091
14092         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
14093         add the necessary tokens.
14094
14095         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
14096         (gtk_rc_style_to_style): copy thicknesses.
14097         (gtk_rc_init_style): apply thicknesses.
14098         (gtk_rc_parse_style): parse xthickness and ythickness.
14099
14100         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
14101
14102         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
14103         (gdk_window_new): 
14104         (_gdk_windowing_window_init): 
14105         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
14106         (gdk_pixmap_create_from_data): 
14107         (gdk_bitmap_create_from_data): 
14108         (gdk_pixmap_new): 
14109         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
14110         (gdk_image_new): 
14111         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
14112         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
14113         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
14114         (gdk_colormap_get_system): 
14115         (gdk_colormap_new): 
14116         * gdk/gdkwindow.c (gdk_window_init): 
14117         * gtk/gtkstyle.c (gtk_style_new):
14118         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
14119         * gdk/gdkpixmap.c (gdk_pixmap_init): 
14120         * gtk/gtkrc.c (gtk_rc_style_new):
14121         use g_object_new() instead of g_type_create_instance() which
14122         is a private function for fundamental type implementations.
14123
14124 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
14125
14126         * configure.in: Add check for db2html
14127
14128 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
14129
14130         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
14131         hack to set glib_debug_objects based on gtk_debug_flags.
14132
14133 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
14134
14135         * INSTALL.in: Update the Prerequisites section.
14136
14137         * Makefile.am demos/Makefile.am docs/Makefile.am
14138         docs/tutorial/Makefile.am gdk/x11/Makefile.am
14139         gdk/linux-fb/Makefile.am: Dist fixes
14140
14141 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
14142
14143         * NEWS: 10,000 foot view of 1.3.1 changes.
14144
14145 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
14146
14147         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
14148         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
14149         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
14150         gdk/x11/gdkmain-x11.c: 
14151
14152         Patch from George Lebl to add a GdkGrabStatus enumeration to use
14153         as a return value of gdk_*_grab(). Previously, we just
14154         returned the X11 values directly.
14155
14156 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
14157
14158         * gdk/x11/Makefile.am: Patch from George Lebl to 
14159         install all the headers in the right place.
14160
14161 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
14162
14163         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
14164           initial conversion to DocBook.
14165
14166 2000-07-04  Tor Lillqvist  <tml@iki.fi>
14167
14168         * README.win32: Improve a bit.
14169
14170         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
14171         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
14172         Alt+0nnn on the numpad (used to enter characters by numeric code
14173         from current DOS or ANSI codepage) working correctly, as in other
14174         Windows apps.
14175
14176         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
14177         same argument validity tests as in X11 version.
14178         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
14179
14180         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
14181         definitions in case missing from headers.
14182
14183         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
14184         destroy the window-specific cursor.
14185         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
14186         calling GetModuleHandle(NULL).
14187         (gdk_window_set_cursor): Reworked to always copy the passed cursor
14188         with CopyCursor before setting it as the window-specific
14189         cursor. It is OK for the caller to destroy the GdkCursor (and thus
14190         also its Windows cursor) after calling this function. Destroy any
14191         previous window-specific cursor.
14192
14193 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
14194
14195         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
14196         font charset is iso8859-1, not iso-8859-1.
14197
14198 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
14199
14200         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
14201         Use g_get_charset() instead of g_get_codeset().
14202
14203         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
14204         Comment out some strdup'ing functions to keep timj
14205         happy until we finish fighting this out.
14206
14207 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
14208
14209         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
14210         <= width or height.
14211
14212         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
14213         from 1.2 for parent/child states.
14214
14215         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
14216         of typos.
14217
14218         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
14219         event structures, replace with a generic axes field. Replace 
14220         deviceid/sourec with GdkDevice *device.
14221
14222         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
14223         to extract particular axis use value from event. (Also
14224         can be used for normal X/Y.)
14225
14226         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
14227         allow for arbitrary number of axes, namespace everything
14228         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
14229         everywhere.
14230
14231         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
14232         Get rid of the gdk_input_vtable setup if favor of simply
14233         defining the functions in gdkinput-none/gxi/xfree.c in
14234         a similar fashion to the way that the port structure is 
14235         done.
14236
14237         * gtk/gtkdnd.c: Fix fields of synthesized button press event
14238         for new event structures. 
14239
14240         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
14241         new device interfaces.
14242
14243 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
14244
14245         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
14246         set the initial text.
14247
14248         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
14249         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
14250         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
14251         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
14252
14253         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
14254         pango_layout_set_font_description to simplify.
14255
14256 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
14257
14258         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
14259         pango_layout_set_font_description to simplify.
14260
14261 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
14262
14263         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
14264         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
14265         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
14266
14267         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
14268         PANGO_PIXELS() macro.
14269
14270 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
14271
14272         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
14273         that returns a PangoContext owned by the widget and updated to
14274         match future changes in the widget. Also, make 
14275         gtk_widget_create_pango_layout() use this context. If we ever
14276         add a ::changed signal to PangoContext, this will make things
14277         much more convenient. 
14278
14279         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
14280         in the appropriate places instead of destroying the layouts and
14281         creating new ones.
14282
14283         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
14284         in a few strategic places.
14285
14286 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
14287
14288         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
14289         gtk_widget_size_request() on reparented child, if one. Otherwise,
14290         queue_resize() on the child never results in it getting size-requested
14291         at all.
14292
14293         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
14294         in option menus, so that (with luck) people won't copy it into
14295         their apps in the future.
14296
14297         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
14298         to gtk_option_menu_calc_size. This isn't perfect, but should fix
14299         a lot of problems with changing the size of the menu's menu
14300         items after adding it to the option menu.
14301
14302         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
14303
14304         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
14305         the text direction for a widget changes.
14306
14307         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
14308         ::direction_changed to get rid of various hacks.
14309
14310 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
14311
14312         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
14313         name.
14314
14315 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
14316
14317         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
14318         flag to the structure. Do not call XFreePixmap on pixmaps created
14319         by gdk_pixmap_foreign_new().
14320
14321 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
14322
14323         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
14324         value using GdkRGB functionality given GdkColormap and GdkColor.
14325         (name not final, waiting for inspiration.)
14326         
14327         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
14328         set the foreground/background of a GC using the GC's colormap
14329         and GdkRGB. (name not final, waiting for inspiration.)
14330
14331         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
14332         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
14333
14334         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
14335         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
14336         purely a function of the corresponding colormap. Make
14337         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
14338
14339         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
14340         gdk_pixbuf_*create_from_xpm_* in terms of
14341         gdk_pixbuf_new_from_xpm_data(), move into platform independent
14342         code.
14343
14344         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
14345         advantage of the new draw_rgb_32_image_dithalign.
14346
14347         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
14348
14349         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
14350         on each created GC.
14351
14352         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
14353
14354         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
14355         which we initialize from the drawable when the GC is created,
14356         if the drawable has a colormap.
14357
14358         * gdk/x11/gdkgc-x11.c: include string.h for memset.
14359
14360         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
14361
14362         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
14363
14364 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
14365
14366         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
14367         actually returning expose events, make sure to set
14368         the count field properly.
14369
14370         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
14371         accidentally reintroced bug which always cleared
14372         the graphics_exposures value. 
14373
14374 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
14375
14376         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
14377
14378 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
14379
14380         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
14381
14382 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
14383
14384         * docs/faq/gtk-faq.sgml: Start of Section 6.
14385
14386 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
14387
14388         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
14389         
14390         (Fixes problem with drawing childless frames. Pointed out
14391         by and a first patch from Anders)
14392         
14393         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
14394         compute a child_allocation, even if we don't have a child.
14395
14396         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
14397         Always chain to the parent's impl, even if we don't have a child.
14398
14399 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
14400
14401         * gdk/gdkrgb.c: If possible, create only a single shm segment and
14402         use multiple parts of it instead of creating a bunch of separate
14403         segments, since the maximum number of segments per system is not
14404         large. (This might be worth backporting to GTK+-1.2.x if we make a
14405         new release )
14406
14407         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
14408         structure in preparation for per-colormap GdkRGB.
14409
14410         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
14411         to False when we get EINVAL from shmget so that the caller of
14412         gdk_image_new can retry with a smaller segment size.
14413
14414 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
14415
14416         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
14417
14418 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
14419
14420         * configure.in: make the current version number 1.3.1 (binary age 0,
14421         interface age 0).
14422         
14423         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
14424         gtkcompat.h is all we want.
14425
14426         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
14427         GLib primitive types. fixed g_type_register_fundamental() argument
14428         ordering.
14429
14430         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
14431         compiles.
14432
14433         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
14434         object code cleanup, comment trigraph fixes, etc...
14435
14436 2000-06-23  Havoc Pennington  <hp@redhat.com>
14437
14438         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
14439         instead of making up a bogus name for first_para_mark
14440
14441         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
14442         0 as a context ID
14443
14444 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
14445
14446         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
14447
14448 2000-06-21  Havoc Pennington  <hp@pobox.com>
14449
14450         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
14451         we didn't check window->bg_pixmap != GDK_NO_BG.
14452
14453         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
14454         gdk-pixbuf
14455
14456 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
14457
14458         * docs/faq/gtk-faq.sgm: Move file to here.
14459           TODO: Update Makfile.am 
14460
14461 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
14462
14463         * docs/gtk-faq.sgm: Add Section 2
14464
14465 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
14466
14467         * docs/gtk-faq.sgm: New file. Start of DocBook
14468           version of the FAQ.
14469
14470 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
14471
14472         * configure.in (GDK_PIXBUF_MAJOR): Define version
14473         numbers for GDK_PIXBUF_*, as they get substituted
14474         into a header file. Need to consider versioning
14475         for gdk-pixbuf more carefully later.
14476
14477 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
14478
14479         Work with srcdir != builddir.   
14480         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
14481         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
14482         * demos/testpixbuf.c: Likewise.
14483         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
14484         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
14485         <gdk/x11/gdkx.h>.
14486         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
14487         "gdk-pixbuf.h".
14488         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
14489
14490 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
14491
14492         * TODO.xml: Change 1.4 version numbers to 2.0.
14493
14494 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
14495
14496         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
14497         fixups to GTK+ standard.
14498
14499 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
14500
14501         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
14502         gdk-pixbuf.
14503
14504         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
14505         fixups for GObject.
14506
14507         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
14508         gdk-pixbuf with GDK dependencies moved into GDK.
14509         
14510         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
14511         move gdk-pixbuf-loader here until GObject has signals.
14512
14513         * demos/: New directory of demos. Move demos from
14514         gdk-pixbuf here.
14515
14516         * demos/pixbuf-init.c: Small bit of code to check for
14517         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
14518         set GDK_PIXBUF_MODULEDIR appropriately.
14519
14520         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
14521         define which no longer makes sense.
14522
14523 2000-06-21  Havoc Pennington  <hp@redhat.com>
14524
14525         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
14526         gtk_get_default_language
14527
14528         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
14529         new function to get the default language
14530
14531         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
14532         s/gtk_text_view_style_values/gtk_text_style_values/
14533
14534         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
14535         Add a "language" field to tags.
14536
14537         (gtk_text_tag_set_arg): Fix bug in setting
14538         "bg_full_height_set" tag.
14539
14540 2000-06-21  Havoc Pennington  <hp@redhat.com>
14541
14542         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
14543         in the interfaces
14544
14545         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
14546         stuff instead when possible.
14547
14548         * gtk/gtktexttypes.h: Delete some unused constants
14549
14550         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
14551         testtextbuffer.c: use glib instead of custom unicode routines
14552
14553 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
14554
14555         * docs/es/: Removed mistakenly added generated sgml
14556
14557         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
14558         Remove outdated info files.
14559
14560         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
14561         Moved tutorial files into subdir
14562
14563         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
14564         subdir.
14565
14566         * docs/man/gtk_button.pod: Remove. (contents will be
14567         integrated into gtk-reference button page.)
14568
14569         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
14570         docs/faq/Makefile.am: Adjust for new organization
14571
14572 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
14573
14574         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
14575         not $(MKINSTALLDIRS)
14576
14577 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
14578
14579         * gtk/testgtk.c (create_text): Finish the job Elliot started
14580         of removing font setting test for text widget. (Since text widget
14581         and GdkFont are not deprecated, and cause portability problems.)
14582
14583 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
14584
14585         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
14586         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
14587         Remove use of libunicode in favor of new GLib functions.
14588
14589         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
14590         nano-x, framebuffer. The X11 include is just a hack until we get
14591         the necessary functions in gdkcolor.h, so there is no reason to
14592         add other includes of platforms.
14593
14594         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
14595         window bigger than the screen change.
14596
14597         * gtk/testgtk.c: Revert some random changes from Elliot
14598         that had no particular point and were causing testgtkrc
14599         not to function correctly.
14600         
14601         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
14602         because GdkSegment and GdkRegionBox have the same fields,
14603         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
14604         results in clearer code.
14605
14606         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
14607         gdk_input_translate_coordinates): Fix missed GdkObjectification
14608
14609 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14610
14611         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
14612         * gtk/gtk{plug,socket}.h: Missed commits from previous.
14613
14614 2000-06-20  Havoc Pennington  <hp@redhat.com>
14615
14616         * modules/linux-fb/Makefile.am: Make this compile
14617         without framebuffer enabled
14618
14619         * gdk/linux-fb/Makefile.am: Add conditional to not build
14620         framebuffer unless specified in configure
14621
14622         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
14623         the size of the target instead of source if -1 was passed for
14624         width/height
14625
14626         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
14627         width/height confusion.
14628
14629 2000-06-19  Havoc Pennington  <hp@redhat.com>
14630
14631         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
14632         GDK_DRAWABLE_XID. In the future, we probably want to make it
14633         faster with G_DISABLE_CHECKS turned on.
14634
14635 2000-06-14  Havoc Pennington  <hp@redhat.com>
14636
14637         * gdk/Makefile.am: add gdkpixmap.c
14638
14639         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
14640         s/gdk_image_init/_gdk_windowing_image_init
14641
14642         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
14643         ref/unref
14644
14645         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
14646
14647         * gdk/gdkcompat.h: remove GdkWindowType compat, since
14648         GdkWindowType is now non-deprecated; 
14649         change gdk_window_get_type() compat to be
14650         gdk_window_get_window_type().
14651
14652         * gdk/gdkdnd.h: make GdkDragContext a GObject.
14653
14654         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
14655         virtual GObject. Make all functions call into the vtable.
14656         Move gdk_image_put() guts in here. Remove GdkDrawableType
14657         and gdk_drawable_get_type(), these are now GdkWindow-specific.
14658         draw_image, get_depth, get_size, set_colormap, get_colormap,
14659         get_visual added to the vtable.
14660         
14661         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
14662         GObject. Virtualize everything. 
14663         (gdk_gc_new_with_values): remove check for destroyed window,
14664         because now GdkWindow::create_gc will check this.
14665         (gdk_gc_set_values): New function to set GC values, this 
14666         was already implemented but wasn't in the header
14667
14668         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
14669
14670         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
14671         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
14672         remove _gdk_window_class; add _gdk_window_impl_get_type() and
14673         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
14674         _gdk_windowing_window_init, rename gdk_image_init to
14675         _gdk_windowing_image_init.
14676         
14677         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
14678         (gdk_draw_layout): Remove check for destroyed window, 
14679         because all the drawable methods already check it.
14680         
14681         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
14682         Add gdkpixmap.c which contains implementation of GdkDrawable
14683         virtual table (by chaining to a platform-specific implementation
14684         object).
14685         
14686         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
14687         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
14688         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
14689         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
14690         GdkColormapPrivate. 
14691
14692         * gdk/gdktypes.h: #include <glib-object.h>
14693
14694         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
14695         Move most functionality to platform-specific implementation
14696         object. GdkWindow itself now handles the backing store, then
14697         chains to the platform-specific implementation.
14698         (gdk_window_get_window_type): return GdkWindowType of the window.
14699         (gdk_window_peek_children): New routine, returns the children of 
14700         a GdkWindow
14701         (gdk_window_get_children): Was in X11-specific code and did 
14702         XQueryTree. Changed to simply return a copy of window->children; 
14703         so it can go in cross-platform code.
14704         
14705         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
14706
14707         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
14708         GdkColormap; just changed to use the new private data instead
14709         of casting to GdkColormapPrivate.
14710
14711         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
14712         gdk_cursor_new().
14713
14714         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
14715         (private data member in the GObject). 
14716         (xdnd_manager_source_filter): Function had broken 
14717         error handling, fix it (use gdk_error_trap_push).
14718
14719         * gdk/x11/gdkdrawable-x11.c: This file now implements
14720         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
14721         base class is purely for the convenience of the X port,
14722         and not part of the interface to cross-platform GDK.
14723
14724         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
14725         
14726         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
14727         specific to X, and returned by the create_gc virtual method
14728         of GdkDrawableImplX11. 
14729         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
14730         rather than gchar, this was also changed in the GdkGC vtable.
14731         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
14732         mask is 0, return immediately, instead of checking every flag.
14733         This is faster, and keeps us from segfaulting if values is NULL
14734         and the mask contains some nonzero flags.
14735
14736         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
14737         GdkWindow.
14738
14739         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
14740         GdkWindowPrivate is gone.
14741
14742         * gdk/x11/gdkim-x11.c: rename things that got renamed.
14743
14744         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
14745         remove the image_put stuff that got transferred to GdkDrawable.
14746         
14747         * gdk/x11/gdkinput.c: renamings
14748
14749         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
14750
14751         * gdk/x11/gdkpixmap-x11.c: GObject conversion
14752
14753         * gdk/x11/gdkprivate-x11.h: indentation fixes
14754
14755         * gdk/x11/gdkproperty-x11.c: renamings
14756
14757         * gdk/x11/gdkselection-x11.c: renamings
14758
14759         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
14760         implements the platform-specific "impl" object.
14761         Moved gdk_window_get_children to gdk/gdkwindow.c
14762
14763         * gdk/x11/gdkx.h: Remove all the private structs and private datas
14764         that no longer exist. Add declaration of GdkGCX11 object here.
14765         Fix all the macros to still work. 
14766
14767         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
14768         GdkDragContext from the boxed types since they are now GObjects.
14769
14770         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
14771         moved xthickness/ythickness into the instance. GtkStyleClass
14772         functions are now in the standard vtable for GtkStyle, so you have
14773         to create a GObject subclass to write a theme engine.
14774         (gtk_style_copy): fixed a leaked PangoFontDescription
14775         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
14776         can be the standard GObject function.
14777         
14778         * Throughout GTK:
14779         s/style->klass->[xy]thickness/style->[xy]thickness
14780         s/pango_layout_unref/g_object_unref/
14781
14782         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
14783         
14784         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
14785         accessing GDK internals.
14786
14787         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
14788         accessing GDK internals.
14789
14790 2000-06-18  Elliot Lee  <sopwith@redhat.com>
14791
14792         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
14793
14794         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
14795         problem by calculating event position relative to the trough
14796         rather than the slider.
14797         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
14798
14799         * gdk/gdkgc.h: Add GDK_NOR.
14800
14801         * configure.in, Makefile.am: Add modules top level dir
14802         * configure.in: Only use pangox library if building x11 target.
14803         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
14804
14805 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14806
14807         * gtk/gtkcolorsel.c: Change private class member to be named
14808         private_data throughout the file.
14809
14810         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
14811         private_data to avoid clashing with keyword.
14812
14813 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
14814
14815         * gdk/gdkdnd.h: Add comment to remove warning.
14816
14817 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
14818
14819         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
14820         Byelorussian language; changed the Makefile and file names 
14821         to reflect that.
14822
14823 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
14824
14825         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
14826         rather than gdk_window_hide; this makes things work
14827         correctly if the window is programmatically hidden while
14828         iconified.
14829
14830 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
14831
14832         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
14833         cut and paste typo where wrong pixmap was being
14834         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
14835
14836 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
14837
14838         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
14839         Add helper function to compute format / bytes 
14840         relationship. Use in a couple places to fix up
14841         errors which assume 8 * format.
14842
14843         * gtk/gtkselection.c (gtk_selection_request): Use 32
14844         rather than 8 * sizeof (GdkAtom), to work correctly
14845         on Alpha.
14846
14847 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
14848
14849         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
14850         libgtk.la
14851         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
14852         versions
14853
14854         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
14855         checking macros return NULL since the function has a return value.
14856
14857 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
14858
14859         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
14860         GTK+ from building at all.
14861
14862         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
14863
14864 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
14865
14866         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
14867         gtk/Makefile.am: make it possible to configure gtk for different
14868         targets on the same platform. The library name is now 
14869         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
14870         flag. Only the x11 target compiles right now.
14871         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
14872         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
14873         * gdk/nanox/gdk*generic*: delete generic region code.
14874         * gdk/linux-fb/gdk*generic*: delete generic region code.
14875         * README.nanox: update information.
14876         
14877 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
14878
14879         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
14880         prepend not append. (Pointed out by Brett Hall.)
14881
14882 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
14883
14884         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
14885
14886 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
14887
14888         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
14889         need this later, and this makes sure that the atexit for
14890         glib gets called after that for GDK, so atexits are
14891         properly ordered for object leak checking.
14892
14893         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
14894
14895         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
14896         pango_x_shutdown_display()
14897
14898         * gtk/simple.c (main): Close window on destroy.
14899
14900 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
14901
14902         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
14903         to treat initial creation different from setting with 
14904         regards to the graphics-exposures parameter, so add a parameter
14905         indicating whether this is initial or not.
14906
14907 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
14908
14909         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
14910         to sort of work by adding an extra return_exposes arg
14911         to gdk_event_translate() - it might be better to simply
14912         deprecate the function altogether and force people to rewrite
14913         without it. gdk_window_scroll() handles most of it, and where
14914         gdk_window_scroll() doesn't work, simply redrawing more does.
14915
14916         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
14917         assertion.
14918
14919         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
14920
14921         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
14922         bunch of pretty much useless /* Print debugging info */ comments 
14923         which had drifted away from the code they were commenting.
14924
14925 2000-06-02  Havoc Pennington  <hp@pobox.com>
14926
14927         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
14928         is in working order.
14929         
14930         * gtk/testtext.c: Change to reflect anonymous mark API
14931
14932         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
14933
14934         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
14935         field, which was unused.
14936
14937         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
14938         saves some typing.
14939
14940         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
14941
14942         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
14943         flag on the insertion point and selection bound
14944
14945         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
14946         make mark-manipulation functions take a GtkTextMark* instead of a
14947         mark name.
14948         
14949         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
14950         GtkTextMarkBody; will be used to detect attempts to delete
14951         the permanent marks (insert and selection bound)
14952
14953         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
14954
14955 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
14956
14957         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
14958         flag to on.
14959
14960         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
14961         Honor DOUBLE_BUFFRED_FLAG
14962
14963         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
14964         function to set the DOUBLE_BUFFERED flag.
14965
14966         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
14967         or not exposes done on the widget should be double-buffered.
14968
14969         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
14970         to be what would be expected. (Fixes problem with a
14971         g_return_if_fail() validating a TextDirection enumeration)
14972
14973 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
14974
14975         * gtk/gtkwidget.c: Remove all references to 
14976         offscreen flag which was no longer used.
14977
14978         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
14979
14980         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
14981         for non-null label_widget->parent.
14982
14983         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
14984         which no longer was used.
14985
14986         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
14987
14988         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
14989         for null arguments.
14990
14991         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
14992         check for destroyed windows.
14993
14994 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
14995
14996         * gtk/gtkimmulticontext.c: Add a finalize method and unref
14997         the slave context there.
14998
14999         * gtk/gtkinvisible.[ch]: Make reference counting behavior
15000         identical to GtkWindow.
15001
15002 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
15003
15004         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
15005         pangox to here, so we can write them independent of rendering
15006         system, using GDK primitives.
15007
15008         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
15009         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
15010         since we have a rendering-system independent implementation in
15011         terms of draw_glyphs().
15012         
15013         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
15014         function to render a single line.
15015
15016         * gdk/x11/gdkpango.c: Move the guts of this file mostly
15017         into ../gdkpango.c, which simplifies things, since we
15018         don't have to deal with raw X gc's.
15019
15020 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
15021
15022         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
15023         get the logical attributes for a given GtkTextLine.
15024
15025 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
15026
15027         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
15028         g_locale_get_codeset() to g_get_codeset() change.
15029
15030 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
15031
15032         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
15033         descriptions.
15034
15035         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
15036         the entry.
15037
15038         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
15039         redoing (vastly simplifying) for Pango. Still needs quite
15040         a bit of work. (Size selection is currently poor. List of 
15041         predefined sizes is not a good idea, since all of these
15042         sizes won't necessarily be distinct.)
15043
15044 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
15045
15046         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
15047         CODESET results for LANG=C.
15048
15049 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
15050
15051         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
15052         which takes a stringized pango font description;
15053         ignore the older 'font' and 'fontset' declarations.
15054
15055         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
15056         field with a GdkFont derived via gdk_font_from_description(),
15057         for compatibility. (Should we just remove it entirely?
15058         Probably too much compatibility breakage, but people
15059         should be migrating to the new Pango stuff as quickly
15060         as possible.)
15061
15062 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
15063
15064         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
15065
15066 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
15067
15068         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
15069         redoing; there are some bugs in size allocation right
15070         now, the semi-existant distinction between header / day
15071         fonts was removed, but, with Pango, could actually
15072         be made functional in a nice way.
15073         
15074         * gtk/testcalender: Move calender from examples into this
15075         directory as a test program. (We really need to restrcture
15076         testgtk into a whole directory full of tests for every
15077         widget or functionality group, separated into multiple .c
15078         files.)
15079
15080 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
15081
15082         * gtk/testgtk.c (file_exists): Fix stupid typo that
15083         was keeping RC file from being loaded.
15084
15085         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
15086         RC file font code.
15087
15088 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
15089
15090         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
15091         Add function to load a GdkFont from a PangoFontDescription.
15092
15093 2000-05-29  Tor Lillqvist  <tml@iki.fi>
15094
15095         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
15096         variable should be of type GdkEventPrivate.
15097
15098 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
15099
15100         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
15101         to have any widget for the label, use a GtkLabel widget
15102         to display the text. (Based partially on a patch from
15103         Anders Carlson.)
15104
15105         (Quite a bit of code reorganization - strip 90% of the
15106         guts out of gtkaspectframe and add a single virtual
15107         func to GtkFrameClass - compute_child_allocation.)
15108
15109 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
15110
15111         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
15112         (Removed clist->row_center_offset field because caching
15113         it wasn't saving time or code, added private function
15114         _gtk_clist_create_cell_layout()).
15115
15116 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
15117
15118         * gtk/gtkaccellabel.c: Pangoized.
15119
15120         * gtk/[hv]ruler.c: Pangoized
15121
15122 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
15123
15124         * gtk/gtkfilesel.c (gtk_file_selection_init):
15125         Use gtk_clist_set_column_auto_resize() to remove need
15126         need for manual column width computations.
15127
15128 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
15129
15130         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
15131         ensuring Pango correctness, and considerably simplifying the
15132         code.
15133         
15134         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
15135
15136         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
15137         getting of numbers of lines.
15138
15139         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
15140         to the actual requested width of the lable, not to the wrap
15141         width we set.
15142
15143         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
15144
15145         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
15146           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
15147
15148         * gtk/gtktextview.c: Fix structure inheritance.
15149
15150         * gtk/gtkprogressbar.c: Pangoize.
15151
15152 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
15153
15154         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
15155         in a function.
15156
15157         * gtk/gtktextlayout.c (find_display_line_above): Fixed
15158         bug with computing line tops.
15159
15160         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
15161
15162 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15163
15164         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
15165         and y_offset coordinates to do what we need now. (The offset between
15166         buffer and layout coordinates has been reintroduced, but is a 
15167         bit different than before.)
15168
15169         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
15170         handle the adjustments ourselves, and scroll as necessary using
15171         the new gdk_window_scroll().
15172         
15173         The advantage of this is that when we are incrementally revalidating,
15174         we are essentially rearranging things around the visible portion
15175         of the screen. With the old setup, the visible portion of the
15176         screen was moved around in the layout, so scrolling and redrawing
15177         to track that caused jumping of the display. Since we now
15178         control the scrolling ourselves, we can suppress this and
15179         only redraw when things actually change.
15180
15181 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
15182
15183         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
15184         the region not just redisplay it after-all, since we store the
15185         cursors in the LineDisplay. (Ugly interactions here between
15186         GtkLayout and GtkTextBTree here.)
15187         
15188         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
15189
15190 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
15191
15192         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
15193         Added function to scroll contents of a window while keeping the
15194         window constant. Works by XCopyArea or guffaw-scrolling depending
15195         on the details of how the window is set up. (guffaw-scrolling
15196         still needs to be filled in.)
15197
15198 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
15199
15200         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
15201         move the debugging that was tied to a global variable
15202         to that.
15203
15204         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
15205
15206         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
15207         validated flag, in line data instead of setting height/width to
15208         -1. This allows us to perform operations with partially invalid
15209         buffer (using the old size for invalid lines) and thus to do
15210         incremental vaidation. Keep height/width aggregates up to date
15211         when deleting text and rebalancing the tree.
15212
15213         * gtk/gtktextbtree.[ch]: Add functions validate a line
15214         (gtk_text_btree_validate_line), and to validate up
15215         to a number of pixels (gtk_text_btree_validate).
15216
15217         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
15218         that indicates that something is changed and a revalidation
15219         pass is needed. Change ::need_repaint to ::changed, and
15220         make it take old and new yranges instead of a rectangle.
15221
15222         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
15223         the line_data_destroy() function from 
15224         gtk_text_btree_add_view() to a virtual function in 
15225         GtkTextLayout
15226
15227         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
15228         since we are handling partial repaints in a different fashion
15229         now.
15230
15231         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
15232         of the selection instead of queueing a repaint on the
15233         entire widget.
15234
15235         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
15236         get_selection_bounds() down to btree, make the function
15237         in buffer a wrapper around the btree function.
15238
15239         * gtk/gtktextlayout.[ch]: Add functions to check if the
15240         layout is valid and to recompute either a range of pixels
15241         aroudn a line or a certain total number of pixels.
15242
15243         * gtk/gtktextlayout.[ch]: Cache a single line display;
15244         now that we only redraw the needed portions, the hit rate
15245         for this cache is quite high.
15246         
15247         * gtk/gtktextview.[ch]: Keep track of the first paragraph
15248         on the screen so that when re-laying-out the buffer, we can
15249         keep the same place. This requires connecting to ::value_changed
15250         on the adjustments
15251
15252         * gtk/gtktextview.[ch]: Add idle functions to revalidate
15253         the buffer after we receive an ::invalidated signal.
15254         
15255 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
15256
15257         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
15258         to max of allocation and layout size, not just to the
15259         layout size.
15260
15261         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
15262         Invalidate window so it gets redrawn properly.
15263
15264         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
15265         to mean the entire window.
15266
15267         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
15268         into public header.
15269
15270 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
15271
15272         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
15273         to get the name of a mark.
15274
15275         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
15276         to find the paragraph from a y position.
15277
15278 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
15279
15280         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
15281         nodes have width/height >= 0, not > 0.
15282
15283 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
15284
15285         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
15286         Add a size_only flag, so when we only need the size, we don't create
15287         useless appearance attributes.
15288
15289         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
15290         duplicate setting of font description.
15291
15292         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
15293
15294 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
15295
15296         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
15297         EXTRA_DIST. It does not work well when the file that
15298         everything depends on is not in the tarball.
15299
15300 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
15301
15302         * gtk/testgtk.c: Some hacks and fixes so that it basically
15303         works when not sitting in the GTK+ build tree.
15304
15305 2000-05-03  Havoc Pennington  <hp@redhat.com>
15306
15307         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
15308         Properly determine the ordering of the tag root and the current
15309         line within the tree. Previous algorithm only worked if the tag
15310         root's immediate parent was the common root of both the current
15311         line and the tag root.
15312
15313 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
15314
15315         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
15316         alignment.
15317
15318         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
15319         the widget text directional dynamically.
15320
15321         * gtk/gtktextview.[ch]: Added functions to get and set default
15322         wrap mode.
15323
15324 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
15325
15326         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
15327         in cursor location computation.
15328
15329 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
15330
15331         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
15332         vadjusment values properly when layout gets smaller.
15333
15334         * gtk/gtktextview.c (need_repaint_handler): Areas being
15335         passed in are far completely inaccurate, and sometimes
15336         too small, so, for now, just queue a redraw on the
15337         whole visible region.
15338
15339 2000-04-25  Havoc Pennington  <hp@redhat.com>
15340
15341         * gtk/gtktextbtree.c (summary_destroy): new function to 
15342         destroy tag summary nodes
15343         (gtk_text_line_next_could_contain_tag): this function was 
15344         totally broken if the line passed in wasn't below the tag
15345         root. Fix it.
15346         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
15347         "wildcard" case, we have to do a linear scan. Blah.
15348         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
15349         we have to do the linear scan
15350         (tag_removed_cb): When a tag is removed from the tag table, 
15351         remove the GtkTextTagInfo node from the btree.
15352         (gtk_text_btree_spew): Implement the spew function, for 
15353         our debugging pleasure.
15354
15355 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
15356
15357         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
15358         a problem with referring to the wrong buffer.
15359
15360         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
15361
15362         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
15363         font description to gtk_style_new() - otherwise things
15364         don't work without a .gtkrc file.
15365
15366         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
15367         tags table if we create it ourself, too.
15368
15369         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
15370         it was conflicting with XKB modifiers.
15371
15372         * gtk/gtktextview.[ch]: Add simple support for 
15373         GtkIMContext.
15374
15375 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
15376
15377         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
15378         with deletion from last commit.
15379
15380 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
15381
15382         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
15383         in the context from the current locale.
15384         
15385         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
15386         context, not hardcoded value.
15387
15388         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
15389         not logical.
15390
15391 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15392
15393         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
15394         attributes - that doesn't handle partial-glyph selection
15395         properly. Instead use new pango_layout_line_get_x_ranges()
15396         functionality to draw the selection.
15397
15398         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
15399         now properly handles out-of-range coordinates.
15400
15401         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
15402
15403         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
15404         public.
15405
15406         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
15407         for paragraphs opposite to the base direction of the widget.
15408
15409         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
15410
15411         * gtk/gtktextlayout.c: Don't split segments on marks, since that
15412         causes Arabic words to reshape as you cursor through.
15413
15414         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
15415         cursor position when moving vertically with the arrow keys and
15416         scrolling with page-up/page-down. (Arrow keys save only the X,
15417         scrolling saves both X and Y.)
15418
15419         This means you can line-up / line-down or page-up / page-down
15420         without losing your place, and also that moving vertically
15421         with the cursor keys keeps the same X position, not the same
15422         character count:
15423
15424         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
15425         arrow keys move by display lines, not paragraphs.
15426
15427 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
15428
15429         * gtk/gtklayout.c: Make sure that the bin window is at least
15430         as big as the allocation. (Should we also make sure that the
15431         bin window is big enough to completely cover widget->window?)
15432
15433         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
15434         function to get the onscreen rectangle.
15435
15436         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
15437         for offsets in window coordinates.
15438
15439 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
15440
15441         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
15442         confusion.
15443
15444         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
15445         from the widget direction.
15446
15447         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
15448         Add a "direction" attribute.
15449
15450         * gtk/gtktextview.c: global s/tkxt/text_view/.
15451
15452         * gtk/testtext.c: Added long block of text in Arabic, to test out
15453         the direction attributes. (Some problems with the shaping system
15454         for arabic become obvious - like the fact the cursor splits words
15455         into unjoined pieces.)
15456
15457 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
15458
15459         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
15460
15461         * gtk/gtktextlayout.c: Fix up alignment.
15462
15463         * gtk/testtext.c: Add some tests for centering, wrapping.
15464
15465 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
15466
15467         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15468         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
15469         If we wrote GTK+-specific layout-render function this could just replace
15470         the draw_layout() operation in the vtable.
15471
15472         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
15473         pango_layout_get_cursor_pos() and use that function.
15474
15475         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
15476         is a non-static symbol.
15477
15478         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
15479         with gtk_text_btree_find_line_by_y()
15480
15481         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
15482         renderer that handles GtkTextAppearance attributes.
15483
15484         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
15485
15486           - Move the values in the style that don't affect geometry into a
15487             GtkTextAppearance structure.
15488           - Change underline to take a PangoUnderline and "font" a string
15489             representation of a font description
15490           - Add a "font_desc" attribute which takes a FontDescription structure.
15491
15492         * gtk/gtktextlayout.[ch]:
15493
15494           - Get rid of the display-line list per each line. Instead, we
15495             generate, on demand, a GtkTextLineDisplay structure which]
15496             contains a PangoLayout * and other necesary information
15497             (offsets, cursor locations) for displaying a paragraph.
15498           - Get rid of the code to wrap lines, create display chunks,
15499             etc. Instead, we just go through a paragraph and convert
15500             it into the necessary inputs to a PangoLayout.
15501           - Implement a new attribute type, GtkTextAttrAppearance. This
15502             holds a GtkTextAppearance, and is used to pass colors, 
15503             stipple, etc, through from the layout to the display without
15504             having to use lots and lots of individual attributes.
15505           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
15506             in terms of PangoLayout functions.
15507         
15508         * gtk/gtktextview.c: 
15509          
15510           - Handle passing the necessary PangoContext to the layout
15511           - Some fixups in painting to deal with the automatic backing store
15512             and offsetting of GTK+-1.4
15513           - Add a style_set handler so that the default style reacts
15514             properly to theme changes.
15515         
15516         * gtk/gtktext?*.[ch]: Random code-style fixes.
15517
15518         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
15519
15520 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
15521
15522         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
15523         in original form preparatory to Pango-ization and gdkimcontext-ization.
15524
15525 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
15526
15527         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
15528         so that we can derive from gtkimcontext in language bindings properly.
15529
15530 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
15531
15532         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
15533         Add a compose table including (almost) all the compose combinations
15534         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
15535         data in the XIM implementation.
15536
15537         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
15538         Moved functions to convert keyvalues from and to unicode here from
15539         the win32 port and made them public.
15540
15541 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
15542
15543         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
15544
15545 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
15546
15547         * gtk/gtkimcontext.[ch]: Base class for new input context system
15548
15549         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
15550         the real input context implementation to be loaded from modules
15551         and switched on the fly.
15552
15553         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
15554         context that just does direct keysymbol => unicode translation.
15555
15556         * gtk/gtkentry.[ch]: Start switching editing over to using
15557         GtkInputContext. (No handling of preedit yet.)
15558
15559 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
15560
15561         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
15562         many substitutions. (klass should not be subsituted.)
15563
15564 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
15565
15566         * configure.in: Add checks for Pango
15567
15568         * configure.in docs/Makefile.am: Add test for sgml2html
15569         and allow 'make dist' without building html, but print out
15570         warnings in that case. (For making snapshots)
15571
15572         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
15573         Add Pango libraries and C flags
15574
15575         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
15576         Add function (gdk_draw_layout) to draw a pango layout.
15577
15578         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
15579         for getting Pango contexts for GDK.
15580
15581         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
15582
15583         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
15584         editing.
15585
15586         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
15587         keysym => unicode translations. More languages can be added
15588         here, but real input-method support is needed.
15589
15590         * docs/Changes-1.4.txt: Added note about entry behavior.
15591         
15592         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
15593         to set the reading direction for a widget and the global direction.
15594         Add test which allows toggling the global direction. Two private
15595         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
15596
15597         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
15598           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
15599
15600         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
15601
15602         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
15603         underlining now handled by Pango.
15604
15605         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
15606         to RCStyle and Style. (Having both this and the old font name and GdkFont 
15607         is temporary.)
15608
15609         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
15610         convenience functions for creating contexts and layouts for widgets.
15611
15612         * gtk/testgtk.c: Enhance label tests with multilingual labels.
15613
15614 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
15615
15616         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
15617         titles to be active, even if they aren't visible.
15618         (gtk_clist_column_titles_passive):  Ditto.
15619
15620 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
15621
15622         * gtkmenu.c:
15623         * gtkmenu.h:
15624         * gtktypeutils.h: Spelling/grammar fixes in comments.
15625
15626 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
15627
15628         * gdk/nanox/*.h: add missing header files.
15629
15630 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
15631
15632         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
15633         send_event to TRUE.
15634         (gtk_drawing_area_size): queue a resize.
15635
15636 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
15637
15638         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
15639         the handlers, also invalidate them. bug nailed down by Karl Nelson
15640         <kenelson@ece.ucdavis.edu>.
15641
15642 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
15643
15644         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
15645         "(nil)" foundries, patch from Grigorios Magklis.
15646
15647         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
15648         on non-available fonts, based on a patch by Grigorios Magklis
15649         <maglis@cs.rochester.edu>.
15650
15651 2000-05-18  Elliot Lee  <sopwith@redhat.com>
15652
15653         * gdk/x11/gdkregion-generic.c: If a region does not have any
15654         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
15655         instead of GDK_OVERLAP_RECTANGLE_IN.
15656
15657 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
15658
15659         * gtk/gtklayout.c (gtk_layout_map): Remove references to
15660         OFFSCREEN, as it is no longer necessary.
15661
15662 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
15663
15664         * gtk/gtkcolorsel.c: Patch from David Santiago
15665         <mrcooger@cyberverse.com> to change things so that the 
15666         indicator of the active palette entry is done independently,
15667         not via the focus, since it should always be visible.
15668
15669 2000-05-17  Tor Lillqvist  <tml@iki.fi>
15670
15671         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
15672         refcount leaks as in the X11 backend.
15673
15674         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
15675         cosmetics.
15676
15677         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
15678         backend. Add _gdk_windowing_window_destroy().
15679
15680         * gtk/gtkcolorsel.c: Include correct backend-specific header.
15681         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
15682         either, but these probably do exist on nanox?)
15683         
15684         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
15685         which isn't necessarily defined by <math.h>.
15686
15687         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
15688         ancestry past GtkObject.
15689
15690         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
15691         from DLL on Win32.
15692
15693         * gtk/gtk.def: Update corresponding to recent changes.
15694
15695         * gtk/makefile.{cygwin,msc}: Updates.
15696
15697 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
15698
15699         * docs/Changes-1.4.txt: A bit of editing.
15700
15701         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
15702         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
15703         to clear the update area for the window, and clear it
15704         when hiding a window.
15705
15706         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
15707         if window destroyed.
15708
15709         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
15710
15711         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
15712         gdk_window_destroy() to the generic code, since there was a lot of 
15713         window-system-independent logic it in. Add a function:
15714         
15715          _gdk_window_destroy() 
15716
15717         to the internal API to destroy a window without unreferencing it.
15718         Add a function:
15719
15720          _gdk_windowing_window_destroy()
15721
15722         That does the windowing-system-dependent part of destroying 
15723         the window.
15724
15725 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
15726
15727         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
15728
15729 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
15730
15731         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
15732         Make gtk_widget_shape_combine_mask() keep a reference count on
15733         the pixmap since it keeps it around.
15734
15735 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
15736
15737         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
15738         leak.
15739
15740         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
15741         leak with event filters.
15742
15743 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
15744
15745         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
15746         signal handlers with the right data arguments. (Fixes
15747         some warnings when a widget was repeatedly set as a drag
15748         destination.)
15749
15750         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
15751         window so we can avoid avoid setting the DND properties on the
15752         toplevel window repeatedly.
15753
15754 2000-05-13  Tor Lillqvist  <tml@iki.fi>
15755
15756         * gdk/win32/gdkwin32.h: Define more message types missing from
15757         mingw headers.
15758
15759         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
15760         call gdk_window_destroy_notify(). It was never called. This
15761         probably meant that the GdkWindow was never freed. Thanks Owen for
15762         noticing (!).
15763
15764         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
15765         window as destroyed before calling DestroyWindow(). DestroyWindow()
15766         causes a call to the window procedure (gdk_WindowProc), which
15767         calls gdk_event_translate(), which calls
15768         gdk_window_destroy_notify(), which gets confused unless the window
15769         is set as destroyed.
15770
15771         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
15772         this function to indicate it's win32 only. Put inside #ifdef
15773         G_ENABLE_DEBUG.
15774
15775         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
15776         debugging function. (gdk_event_translate:) Add a default branch
15777         that uses the above function to print debug messages with all
15778         Windows messages symbolically.
15779
15780         * gdk/win32/gdkprivate-win32.h: Declare it, and
15781         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
15782
15783 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
15784
15785         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
15786         public header file.
15787
15788 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
15789
15790         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
15791
15792         * gtk/gtktext.c: made the adjustments no-construct args, simply
15793         provide default adjustments.
15794         (gtk_text_destroy): release adjustments.
15795
15796         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
15797         adjustment argument non-construct.
15798
15799         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
15800         instead of in finalize.
15801         (gtk_progress_get_text_from_value): 
15802         (gtk_progress_get_current_text): 
15803         (gtk_progress_set_value): 
15804         (gtk_progress_get_percentage_from_value): 
15805         (gtk_progress_get_current_percentage): 
15806         (gtk_progress_set_percentage): 
15807         (gtk_progress_configure): ensure an adjustment is present.
15808
15809 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
15810
15811         * gtk/gtkcolorsel.[hc]:
15812         * gtk/gtkcolorseldialog.[hc]:
15813         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
15814         their parent implementation, use bit fields for boolean values, don't
15815         create unused widgets, usage of glib types, braces go on their own
15816         lines, function argument alignment, #include directives etc. etc. etc..
15817
15818         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
15819
15820 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
15821
15822         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
15823
15824         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
15825         of NULL.
15826
15827         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
15828         to freed data.
15829         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
15830
15831         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
15832         to NULL when the toplevel is getting destroyed.
15833         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
15834         (gtk_menu_destroy): 
15835         (gtk_menu_init): store the information of whether we have to
15836         readd the initial child ref_count during destruction in a new
15837         GtkMenu field needs_destruction_ref_count.
15838
15839         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
15840         here, those reading: learn from my mistake! ;)
15841         in order for set_?adjustment to support a default adjustemnt if
15842         invoked with an adjustment pointer of NULL, the code read (pseudo):
15843         if (v->adjustment) unref (v->adjustment);
15844         if (!adjustment) adjustment = adjustment_new ();
15845         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
15846         now imagine the first unref to actually free the old adjustment and
15847         adjustment_new() creating a new adjustment from the very same memory
15848         portion. here, the latter comparision will unintendedly fail, and
15849         all hell breaks loose.
15850         (gtk_viewport_set_hadjustment):
15851         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
15852         after unreferencing it.
15853
15854         * gtk/gtkcontainer.[hc]: removed toplevel registration
15855         functions: gtk_container_register_toplevel(),
15856         gtk_container_unregister_toplevel() and
15857         gtk_container_get_toplevels() which had wrong semantics
15858         anyways: it didn't reference and copy the list.
15859
15860         * gtk/gtkwindow.c: we take over the container toplevel registration
15861         bussiness now. windows are registered across multiple destructions,
15862         untill they are finalized. the initial implicit reference count
15863         users are holding on windows is removed with the first destruction
15864         though.
15865         (gtk_window_init): ref & sink and set has_user_ref_count, got
15866         rid of gtk_container_register_toplevel() call. add window to
15867         toplevel_list.
15868         (gtk_window_destroy): unref the window if has_user_ref_count
15869         is still set, got rid of call to
15870         gtk_container_unregister_toplevel().
15871         (gtk_window_finalize): remove window from toplevel list.
15872         (gtk_window_list_toplevels): new function to return a newly
15873         created list with referenced toplevels.
15874         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
15875
15876         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
15877         adjustment a non-construct arg.
15878         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
15879         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
15880         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
15881
15882         * gtk/gtkrange.c: added some realized checks.
15883         (gtk_range_destroy): get rid of the h/v adjustments in the
15884         destroy handler instead of finalize. remove timer.
15885         (gtk_range_get_adjustment): demand create adjustment.
15886
15887         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
15888         we simply create them on demand now and get rid of them in
15889         the destroy handler.
15890         (gtk_viewport_destroy): get rid of the h/v adjustments in the
15891         destroy handler instead of finalize.
15892         (gtk_viewport_get_hadjustment): 
15893         (gtk_viewport_get_vadjustment): 
15894         (gtk_viewport_size_allocate): demand create h/v adjustment
15895         if required.
15896
15897         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
15898         gtk_widget_real_destroy () functionality.
15899         (gtk_widget_real_destroy): reinitialize with a new style, instead
15900         of setting widget->style to NULL.
15901
15902 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
15903
15904         * gtk/gtkcalendar.c:
15905         * gtk/gtkbutton.c: ported _get_type() implementation over to
15906         GType, either to preserve memchunks allocation facilities,
15907         or because Gtk+ 1.0 GtkTypeInfo was still being used.
15908
15909         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
15910         over. prepare for ::destroy to be emitted multiple times.
15911         removed reference tracer magic. chain into GObjectClass.shutdown()
15912         to emit ::destroy signal.
15913
15914         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
15915         fundamental.
15916
15917         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
15918         cludge.
15919
15920         * gtk/gtksocket.c:
15921         * gtk/gtkplug.c:
15922         * gtk/gtklayout.c:
15923         * gtk/gtklabel.c:
15924         * gtk/gtkargcollector.c:
15925         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
15926         not being a fundamental anymore, and to work with the new
15927         type system (nuked fundamental type varargs clutter).
15928
15929         * gtk/*.c: install finalize handlers in the GObjectClass
15930         part of the class structure.
15931         changed direct GTK_OBJECT()->klass accesses to
15932         GTK_*_GET_CLASS().
15933         changed direct object_class->type accesses to GTK_CLASS_TYPE().
15934
15935         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
15936         GType. made most of the GTK_*() type macros and Gtk* typedefs
15937         simple wrappers around macros and types provided by GType.
15938         most notably, a significant portion of the old API vanished:
15939         GTK_TYPE_MAKE(),
15940         GTK_TYPE_SEQNO(),
15941         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
15942         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
15943         GTK_TYPE_ARGS,
15944         GTK_TYPE_CALLBACK,
15945         GTK_TYPE_C_CALLBACK,
15946         GTK_TYPE_FOREIGN,
15947         GtkTypeQuery,
15948         gtk_type_query(),
15949         gtk_type_set_varargs_type(),
15950         gtk_type_get_varargs_type(),
15951         gtk_type_check_object_cast(),
15952         gtk_type_check_class_cast(),
15953         gtk_type_describe_tree(),
15954         gtk_type_describe_heritage(),
15955         gtk_type_free(),
15956         gtk_type_children_types(),
15957         gtk_type_set_chunk_alloc(),
15958         gtk_type_register_enum(),
15959         gtk_type_register_flags(),
15960         gtk_type_parent_class().
15961         replacements, where available are described in ../docs/Changes-1.4.txt.
15962         implemented compatibility functions for the remaining API.
15963
15964         * configure.in: depend on glib 1.3.1, use gobject module.
15965
15966 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
15967
15968         * TODO.xml: Various updates to current status.
15969
15970 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
15971
15972         * gtk.m4: Print out version when test succeeds.
15973
15974 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
15975
15976         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
15977         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
15978         
15979         (Original triangle color selector from Simon Budig
15980         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
15981         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
15982         Santiago <mrcooger@cyberverse.com>)
15983
15984         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
15985         out into a separate widget.
15986
15987         * gtk/testgtk.c: Add some checkbuttons for toggling palette
15988         and opacity controls.
15989
15990 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
15991
15992         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
15993         snuck in prematurely.
15994
15995 2000-05-07  Tor Lillqvist  <tml@iki.fi>
15996
15997         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
15998         had deleted a ! operator by mistake, which caused
15999         GDK_SELECTION_CLEAR events never to be generated, which caused
16000         only the first copy to the clipboard from an gtkeditable to
16001         actually cause a copy to the Windows clipboard.
16002
16003 2000-05-06  Tor Lillqvist  <tml@iki.fi>
16004
16005         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
16006         compilation, too. Current mingw gcc distributions include the
16007         necessary headers. Also the necessary IIDs are now in mingw
16008         headers/libraries, and own definitions unnecessary.
16009
16010         More hacking on OLE2 DND, still doesn't work though, and thus
16011         ifdeffed out.
16012
16013         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
16014         here, too.
16015
16016 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
16017
16018         * gdk/nanox/*: nano-X port work in progress.
16019         * gdk/simple.c: simple test for Gdk.
16020         * README.nanox: notes about the port: read this first!
16021         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
16022         with nano-X.
16023
16024 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
16025
16026         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
16027         gdk_window_clear() into common code, implement in terms of
16028         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
16029         not redirected to the backing rectangle.
16030
16031 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
16032
16033         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
16034         EXTRA_DIST. It does not work well when the file that
16035         everything depends on is not in the tarball.
16036
16037 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
16038
16039         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
16040         with recursion where process_updates() is called from
16041         an expose handler. (GtkTextView is highly broken in
16042         doing this, but it should work, so it is a nice test
16043         case.)
16044
16045 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
16046
16047         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
16048         handle the case where updates are queued during processing of
16049         updates.
16050
16051 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
16052
16053         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
16054         window is on gdk_display - use that instead of segfaulting.
16055
16056 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
16057
16058         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
16059         broken and require an empty arg, give it to them.
16060
16061 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
16062
16063         * gtk/gtklabel.h: indentation fixes.
16064
16065 2000-05-02  Tor Lillqvist  <tml@iki.fi>
16066
16067         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
16068         draw too narrow or too low arcs, they seem to fail, at least with
16069         some display drivers.
16070
16071         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
16072
16073         Large changes to the Win32 backend, partially made necessary by
16074         the changes to the backend-independent internal
16075         structures. Attempts to implement similar backing store stuff as
16076         on X11. The current (CVS) version of the Win32 backend is *not* as
16077         stable as it was before the no-flicker branch was merged. A
16078         zipfile with that version is available from
16079         http://www.gimp.org/win32/. That should be use by "production"
16080         code until this CVS version is usable. (But note, the Win32
16081         backend has never been claimed to be "production quality".)
16082
16083         * README.win32: Add the above comment about versions.
16084
16085         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
16086
16087         * gdk/gdk.def: Update.
16088
16089         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
16090         presumably be replaced by some more better mechanism as 1.4 gets
16091         closer to release shape.
16092
16093         * gdk/makefile.{cygwin,msc}: Update.
16094
16095         * gdk/win32/*.c: Correct inclusions of the backend-specific and
16096         internal headers. Change code according to changes in these. Use
16097         gdk_drawable_*, not gdk_window_* where necessary.
16098
16099         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
16100         our old DND.
16101
16102         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
16103         to interpret single characters as UTF-8. Thanks to Hans Breuer.
16104         Use correct function name in warning messages.
16105
16106         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
16107         GSourceFuncs gdk_event_prepare and gdk_event_check.
16108         (gdk_event_get_graphics_expose): Do implement, use
16109         PeekMessage. Thanks to Hans Breuer.
16110         (event_mask_string): Debugging function to print an GdkEventMask.
16111         (gdk_pointer_grab): Use it.
16112
16113         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
16114         (old) book I used claimed was Hangul actually is CJK Unified
16115         Ideographs Extension A. Also, Hangul Syllables were missing.
16116         Improve logging.
16117
16118         * gdk/win32/gdkgc-win32.c: Largish changes.
16119
16120         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
16121         g_win32_getlocale() from GLib, and not setlocale() to get current
16122         locale name.
16123
16124         * gdk/win32/gdkprivate-win32.h
16125         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
16126         gdkwin32.h, similarily as in the X11 backend.
16127
16128         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
16129         assignment was used instead of equals in if test. Thanks to Hans
16130         Breuer.
16131
16132         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
16133         the X11 version.
16134
16135         * gdk/win32/makefile.{cygwin,msc}
16136         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
16137         path to the Win32 headers that works also with the mingw compiler.
16138
16139         * gtk/gtkstyle.c: Include <string.h>.
16140
16141 2000-04-26  Havoc Pennington  <hp@redhat.com>
16142
16143         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
16144         replacing the broken gtk_label_get ()
16145
16146 2000-04-15  Havoc Pennington  <hp@pobox.com>
16147
16148         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
16149         this keeps scanner scripts from getting confused.
16150
16151         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
16152         data, rather than void
16153
16154 2000-04-15  Tor Lillqvist  <tml@iki.fi>
16155
16156         * gtk/gtkclist.c (gtk_clist_motion)
16157         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
16158         with is_hint FALSE, get x and y from the event. They used to be
16159         used uninitialised. The Win32 backend never sends motion events
16160         marked as hints. This for instance fixes the annoying file and
16161         font selector behaviour in the Win32 version.
16162
16163 2000-04-14  Tor Lillqvist  <tml@iki.fi>
16164
16165         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
16166         gtk_private_n_signals variables, they are used by some software,
16167         sigh.
16168
16169         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
16170         installation directory from the Registry, where the installer
16171         should have put it.
16172
16173 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
16174
16175         * gdk/x11/Makefile.am: Fix problem with installation directory for
16176         gdkx.h
16177
16178         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
16179         <mrcooger@cyberverse.com> so that when selecting menus with the
16180         mouse, the first item will not be selected, but when selecting
16181         with an accelerator, or navigating left-right on a menubar with
16182         the menus popped up, the first item will be selected.
16183
16184 2000-04-05  Dan Damian  <dand@dnttm.ro>
16185
16186         * configure.in: Added "ro" to ALL_LINGUAS.
16187
16188 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
16189
16190         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
16191         indentation.
16192
16193         * Makefile.am (EXTRA_DIST): Fix typo.
16194
16195         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
16196         to catch gdkconfig.h
16197
16198         * gtk/gtkitemfactory.c: Added FIXME.
16199
16200 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
16201
16202         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
16203         s/return_if_fail/return_val_if_fail/g and add a return value.
16204
16205 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
16206
16207         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
16208         merge slipup.
16209
16210         * gdk/gdkinput.h: Fix missing line from merge.
16211
16212 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
16213
16214         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
16215         instead of gdkprivate.h.
16216
16217 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
16218
16219         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
16220         parent class to correctly be GtkDialogClass.
16221
16222 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
16223
16224         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
16225         toplevel windows and their immediate children by their parents,
16226         since the size of toplevel windows is out of our immediate
16227         control and we don't get any real benefit from trying to track
16228         this size for clipping.
16229
16230         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
16231         for input_only windows.
16232
16233         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
16234         to fix some hacks and make sure that we don't try to set the
16235         background of input only windows.
16236
16237 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
16238
16239         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
16240         the _really_ internal stuff, and leave gdkprivate.h for the fake private
16241         stuff that we've traditionally exposed.
16242
16243         * gdk/**.c: Use gdkinternals.h where appropriate.
16244
16245         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
16246         not include gdkprivate-x11.h, move all stuff of conceivable public
16247         interest into gdkx.h; keep all really private stuff in
16248         uninstalled header gdkprivate-x11.h.
16249
16250         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
16251         image->image_put on windows through a new function _gdk_window_draw_image()
16252         to allow us to do backing store for images. (Sort of ugly)
16253
16254         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
16255         contexts locally so that we can offset them properly when drawing 
16256         onto backing pixmaps.
16257
16258         * gdk/gdkinput.h: Reindented
16259
16260         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
16261         pixmap or color for the window, so we can properly initialize
16262         our double-buffer pixmaps, and also so that we temporarily set
16263         a background of None while scrolling.
16264
16265         * gdk/gdkregion.h: Revise region boolean operators to have an
16266         interface that is actually convenient - switch from creating new
16267         regions on every op, to "methods" that modify existing regions
16268         (A = A OP B). 3 argument forms which allow dest == src, would also
16269         be possible, but the current interfaces seem to map nicely
16270         onto what needs to be done. (There is quite a lot of region
16271         code in GDK now.)
16272
16273         * gdk/gdkregion.h: Add constructor from rectangle and a copy
16274         operator.
16275
16276         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
16277         gdkpoly-generic.h: Copy region code from Xlib, switch it over
16278         to 32 bit coordinates, modify it to be mostly GTK+ style
16279         and to have interfaces that match gdkregion.h.
16280
16281         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
16282         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
16283         create a backing pixmap and redirect all drawing to
16284         that backing pixmap until a matching gdk_window_end_paint().
16285
16286         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
16287         Create a special drawable class for GtkWindow's that 
16288         redirects the drawing to the backing pixmap as necessary
16289         and then calls the real operations in _gdk_windowing_window_class.
16290
16291         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
16292         Store invalid region for each window. Generate expose events for invalid
16293         region in an idle. This replaces both the expose compression
16294         and the redrawing queuing in GTK+. It is both more efficient and
16295         simpler than either one individually and far more so then the
16296         combination.
16297
16298         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
16299         Emulate 32 bit coordinates for windows with 16 bit coordinates
16300         by offsetting drawing, guffaw scrolling techniques and
16301         mapping/unmapping child windows as necessary.
16302
16303         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
16304         where, when invalid regions are processed, the region is stored,
16305         and if expose events come in that are detectably duplicate
16306         the processed exposes (by comparison of event serial numbers),
16307         the stored region is subtracted out of those exposes.
16308
16309         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
16310         regions newly exposed when scrolling or resizing windows.
16311         This, combined with forcing processesing of queued invalidated
16312         regions, gives nice flicker-free scrolling.
16313
16314         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
16315         invalidated regions after every scroll.
16316
16317         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
16318         emulation in GDK. Its, for all practical purposes just a
16319         GtkViewport/GtkFixed hybrid now.
16320
16321         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
16322         (16-bit) structures as necessary instead of just casting.
16323
16324         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
16325         in terms of the structures from gdkregion-generic.c, using appropriate
16326         offsets from GDK to X11 coordinates. Cache clip mask and
16327         origin and ts origin locally and only flush to the server
16328         when drawing, to avoid constantly setting and resetting these
16329         values when offsetting GC's for scrolling and backing pixmaps.
16330
16331         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
16332
16333         * gtk/gtkcontainer.c: Call process_all_updates at end
16334         of resizing to reduce flicker. (Avoids having redraw
16335         lag arbitrarily behind resize under some circumstances)
16336
16337         * gtk/gtkentry.c: Remove old backing store code, and simply take
16338         advantage of the new backing store capabilities of GDK.
16339
16340         * gtk/gtkmain.c: Simple implementation of widget backing
16341         store - simply push a paint while handling each expose.
16342         (Should really be configurable widget for widget.)
16343         
16344         * gtk/gtkwidget.c: Remove all the old complicated redraw
16345         code, and simply invalidate the GDK windows from
16346         gdk_window_queue_clear(), etc. (Sigh, so much carefully
16347         debugged complexity ... gone to the winds.)
16348
16349         Remove all the code for suppressing expose events while
16350         resizes are pending; this isn't needed since the invalid
16351         areas won't be processed until after the resizes are
16352         processed, since they are in a lower priority idle.
16353
16354 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
16355
16356         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
16357         and height of dest rectangle for non-intersecting rectangles.
16358
16359 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
16360
16361         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
16362         for GdkRectangle.
16363
16364 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
16365
16366         * gdk/gdk{events,image,private,types,window}.h
16367          gdk/x11/gdkinputprivate.h: Change all coordinates
16368          from int16 to int. Also, Change width and height from
16369          unsigned to signed to avoid all the stupid C 
16370          signedness bugs.
16371
16372 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
16373
16374         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
16375         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
16376         Add some more detailed checking.
16377
16378         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
16379         New function to retrieve the depth of a drawable.
16380
16381         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
16382         field, reorder fields to save memory. 
16383
16384 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
16385
16386         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
16387         of the background image instead of scaling the background down to
16388         a line.
16389
16390         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
16391         which temporarily set slider to wrong size.
16392
16393         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
16394         queue_clear().
16395
16396 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
16397
16398 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
16399
16400         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
16401
16402 2000-03-17  Tor Lillqvist  <tml@iki.fi>
16403
16404         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
16405         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
16406
16407         * gdk/win32/gdkfont-win32.c
16408         * gdk/win32/gdkproperty-win32.c
16409         * gdk/win32/gdkselection-win32.c
16410         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
16411         now declared such.
16412
16413 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
16414
16415         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
16416
16417 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
16418
16419         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
16420         is called without trapping X errors.
16421
16422 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
16423
16424         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
16425         way into the fontset lists.
16426
16427 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
16428
16429         * gtk/gtkthemes.h: add extern "C" scope.
16430
16431 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
16432
16433         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
16434         to make appends to the list constant. (gtk-guy-990901-0.patch)
16435
16436 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
16437
16438         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
16439         for the typename hash table.
16440
16441 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
16442
16443         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
16444         to make sure we never divide by zero. 
16445         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
16446
16447 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
16448
16449         * gtk/gtkfontsel.c: Apply patch from
16450         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
16451         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
16452
16453         Also, some cleanups in atom handling.
16454
16455 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
16456
16457         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
16458         not GtkWidget.
16459
16460 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
16461
16462         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
16463         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
16464         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
16465         more guint wrap-around bugs before going to bed.
16466
16467 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
16468
16469         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
16470         guint wrap arounds in allocation.width.
16471
16472         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
16473         process untill we fit the allocation given.
16474
16475 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
16476
16477         * gtk/gtkwidget.c:
16478         (gtk_widget_unrealize): guard widget access with ref/unref
16479         around signal emission.
16480         (gtk_widget_hide): same here, but also check its destroyed
16481         state before queueing a resize.
16482
16483 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
16484
16485         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
16486         of gtk_default_insensitive_bg as insensitive base color.
16487
16488         * gtk/gtktext.c (gtk_text_style_set): set the background color according
16489         to the widget's state.
16490         (gtk_text_realize): same here.
16491         (gtk_text_state_changed): same here.
16492         (draw_bg_rect): compare background color against base[] from
16493         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
16494
16495 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
16496
16497         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
16498         grabs are active, unless a delete event is send to the toplevel
16499         of the currently grab holding widget.
16500
16501 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
16502
16503         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
16504         debugging g_print's.
16505
16506 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
16507
16508         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
16509         ever make the scrolled-window requisition ever depend on the 
16510         visibility state of the scrollbars for the AUTOMATIC policy. 
16511         This breaks the GTK+ requisition model, and causes loops.
16512
16513 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
16514
16515         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
16516         the default font to avoid problems with XFree86-4.0 where the
16517         default charset is iso10646-1, not iso8859-1.
16518
16519 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
16520
16521         * acinclude.m4
16522         * config.guess
16523         * config.sub
16524         * ltconfig
16525         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
16526
16527         * gtk/Makefile.am: minor cosmetic consistency tweak
16528
16529 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
16530
16531         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
16532         the activate_time to 0, so that we handle a quick
16533         press/release press/release properly and don't suppress
16534         the second release. (Red Hat bug #7545)
16535
16536 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
16537
16538         * gtk/gtkctree.c (row_delete):
16539         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
16540         bugs with destruction notifier, *always* update internal
16541         structures *before* calling user code.
16542
16543 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
16544
16545         A few more fixes for bug #5487, #2051, #2677.
16546         * gtk/gtkclist.c : 
16547         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
16548         not GDK_BUTTON_PRESS.
16549         (resync_selection): resync only if selection_mode is
16550         GTK_SELECTION_EXTENDED
16551         * gtk/gtkctree.c (resync_selection): same here
16552
16553 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
16554
16555         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
16556         gdk_drag_get_selection() and gtk_menu_detach().
16557
16558         [ From Jeroen Ruigrok/Asmodai ]
16559
16560 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
16561
16562         * gtk/gtknotebook.c (gtk_notebook_size_request): 
16563         page->tab_label can be NULL.
16564
16565 2000-01-25  Havoc Pennington  <hp@pobox.com>
16566         
16567         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
16568         arg is boolean
16569
16570         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
16571
16572         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
16573
16574         * gdk/gdkproperty.c (gdk_property_get): return boolean
16575
16576         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
16577
16578         * gdk/gdkim.c (gdk_im_ready): return boolean
16579
16580         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
16581
16582         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
16583         glib clash, should fix glib)
16584
16585         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
16586         (gdk_get_show_events): return gboolean, and canonicalize 
16587         to TRUE/FALSE
16588
16589         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
16590         colormap is private
16591         (gdk_colors_alloc): gboolean whether to be contiguous
16592         (gdk_color_equal): return gboolean since we are a predicate
16593         and not a qsort() (this looks semi-wrong due to glib breakage,
16594         IMO glib should be fixed)
16595         
16596         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
16597         (gdk_get_use_xshm): return gboolean
16598         (gdk_pointer_is_grabbed): return gboolean
16599
16600         * gdk/gdk.h: Change prototypes to match all the above changes,
16601         and re-run egtk-format-protos as required.
16602
16603 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
16604
16605         * gtk/gtkctree.c (resync_selection): 
16606         * gtk/gtkclist.c (resync_selection):
16607
16608         Return immediately if clist->drag_pos < 0. This is a workaround
16609         for the corrupt state that the clist gets into when a
16610         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
16611
16612         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
16613         
16614         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
16615         variable from recent commit.
16616
16617 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
16618
16619         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
16620
16621 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
16622
16623         * gtk/Makefile.am: prefix all autogenerated source that get build in
16624         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
16625         in builddir. since we subsequently cd into srcdir for autogeneration,
16626         the paths have to be stripped from the target file names, thusly we
16627         use $(@F) as target names now.
16628         put a comment about configure.in's --disable-rebuilds option,
16629         which can be used for non-writable source directories, for development
16630         setups though, srcdir has to be *writable*.
16631
16632 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
16633
16634         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
16635           Finish the job of allowing event to be NULL.
16636           (Fixes bug #4283, reported by Chris Blizzard)
16637
16638         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
16639           things so that the cursor appears on screen, properly
16640           take into account INNER_BORDER.
16641           (Fixes bug #4754, reported by Antonio Campos)
16642
16643 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
16644
16645         * gtk/gtknotebook.c (gtk_notebook_map): Don't
16646           show the tab_label unless it itself is visible.
16647
16648           gtk/gtknotebook.c (gtk_notebook_size_request):
16649           Do a better job of making sure that the visibility
16650           of the tab label corresponds to whether it should
16651           be mapped or not.
16652
16653 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
16654
16655         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
16656           Use the requisition, not the allocation, since the
16657           allocation has not necessarily been computed yet.
16658           (Pointed out by Eugene Osintsev)
16659
16660 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
16661
16662         * gtk/gtkstyle.c (gtk_style_new): Dont' set
16663           style/base[GTK_STATE_INSENSITIVE] both to
16664           gtk_default_insensitive_bg!
16665           (Bug #2187, reported by Jonathan Blandford)
16666
16667         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
16668           Add Alt_L, Alt_R to list of invalid accelerators.
16669           (Bug #3736, reported by Vlad Harchev)
16670
16671 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
16672
16673         * gtk/gtkfilesel.c (open_ref_dir): Fix several
16674         bugs which occured after an attempt to open 
16675         invalid home directory left cmpl_state->reference_dir == NULL.
16676
16677          - completion on files in home directory didn't work
16678          - completion on an empty string caused  segfault
16679
16680          (Bug #3678, reported by Steve Ratcliffe)
16681
16682         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
16683         cut and paste error that was causing scales to
16684         be incorrectly positioned.
16685         (Bug #2956,
16686          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
16687
16688 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
16689
16690         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
16691         when checking for dcgettext, if we've found we needed
16692         it for dgettext.
16693 +
16694 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
16695
16696         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
16697         queue_clear on NO_WINDOW widgets during a reparent,
16698         since at that point the window and widget heirarchies
16699         are out of sync. This stops crashing in some cases
16700         (the scrolled window reparent test, for instance), and
16701         _probably_ won't cause drawing errors.
16702
16703         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
16704         test do what it was supposed to do and be robust against
16705         window closings, etc. (Bug #2443)
16706
16707 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
16708
16709         * gtk/gtkentry.c: Fix return values on mouse events.
16710         (Bug #2686, Sky <seb_sky@yahoo.com>)
16711
16712         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
16713         (pointed out by George Lebl)
16714
16715         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
16716         (From Ettore Perazzoli  <ettore@helixcode.com>)
16717  
16718 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
16719
16720         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
16721         clicks between rows or outside calender area correctly.
16722         (Patch from Damon Chaplin)
16723
16724         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
16725         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
16726           Call destroy function when overwriting existing data. 
16727           (Pointed out by Damon Chaplin)
16728
16729 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
16730
16731         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
16732           which was causing problems on various systems with Xmu.
16733           This hasn't been needed for a very long time.
16734           (Fixes #1185 3167)
16735
16736 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
16737
16738         * gdk/gdki18n.h: Include <ctype.h> when defining
16739           gdk_isw* in terms of is* as a fallback.
16740           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
16741
16742 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
16743
16744         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
16745           realize the widget when it is size allocated!
16746           (old, old bug)
16747
16748         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
16749           Removed unused call to gdk_window_get_size() that
16750           showed up when the above was fixed.
16751
16752 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
16753
16754         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
16755           fix up widget->window when the widget is a
16756           NO_WINDOW container widget.
16757
16758 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
16759
16760         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
16761           to account for the fact that feof() does _not_ 
16762           return TRUE on errors, and thus avoid infinite loops
16763           when trying to use gdk_pixmap_create_from_xpm()
16764           on unreadable values.
16765
16766 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
16767
16768         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
16769
16770 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
16771
16772         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
16773           gdk_gc_set_dashes to take gint8 instead of gchar to
16774           make it clearer that it is _not_ a NULL terminated string.
16775
16776         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
16777           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
16778           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
16779           arguments.
16780
16781 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
16782
16783         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
16784         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
16785         background size relative to our allocation, guard against small
16786         allocations, we may have not yet been size allocated.
16787
16788 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
16789
16790         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
16791         not just version == 3. We implement all 3 + most of 4 - 
16792         (we don't support matching text/plain;charset=iso-8859-1
16793         to a dest that expects text/plain). We'll still advertise
16794         3 to be safe, but any client implementing version >= 3
16795         must interoperate with 3.
16796         
16797 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16798
16799         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
16800         background and gc members, add a warning in gtk_tooltips_set_color()
16801         indicating that this function is deprecated.
16802
16803 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
16804
16805         * docs/gtkfaq.sgml: FAQ Update:
16806           - Minor cleanups (Emmanuel, me)
16807           - New questions:
16808                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
16809                 How can I retrieve the text from a GtkMenuItem? (timj)
16810                 How do I validate/limit/filter the input to a GtkEntry? (me)
16811                 Memory does not seem to be released when I free the list
16812                         nodes I've allocated (timj)
16813
16814 2000-03-07  Tor Lillqvist  <tml@iki.fi>
16815
16816         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
16817         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
16818         for which it is no use to call GetLastError onWin9x.
16819         (gdk_other_api_failed) New function, for general error
16820         reporting without calling GetLastError.
16821         (gdk_win32_api_failed) OTOH, this function always calls
16822         GetLastError. (gdk_win32_last_error_string) Remove this function,
16823         GLib has the equivalent now.
16824
16825         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
16826         call them with function name, file name and line number in the
16827         arguments.
16828
16829         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
16830         functions.
16831         
16832         * gtk/gtk.def: Add some missing entry points.
16833
16834         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16835         gtk_paned_set_gutter_size, which don't exist any longer, as void.
16836         
16837         Fixes by Hans Breuer:
16838
16839         * gdk/makefile.msc: Update for debugging.
16840
16841         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
16842         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
16843         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
16844         in the dash_list.
16845
16846         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
16847         the x11 backend.
16848
16849         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
16850
16851         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
16852
16853 2000-03-04  Tor Lillqvist  <tml@iki.fi>
16854
16855         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
16856         just pixel value of background colour.
16857
16858         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
16859         containing code snippet previously duplicated in a couple of
16860         places.
16861         
16862         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
16863         gdk_colormap_color.
16864
16865         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
16866         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
16867         events for autorepeated Shift, Control and Alt keys. Use
16868         gdk_colormap_color.
16869
16870         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
16871         pointer is inside the window the cursor of which we are setting,
16872         call SetCursor immediately.
16873
16874         * gdk/win32/makefile.cygwin
16875         * gtk/makefile.cygwin: If we don't have the build number stamp
16876         file, use zero.
16877
16878         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
16879         gtk_paned_set_gutter_size as empty.
16880
16881         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
16882         
16883 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
16884
16885         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
16886           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
16887           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
16888           docs/gtk_tut.sgml docs/gtk.texi TODO:
16889
16890           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
16891
16892 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
16893
16894         * gtk/gtkcalendar.c: Implement num_marked_dates,
16895           and don't emit mutiple day_selected signals on
16896           month_prev.
16897
16898 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
16899
16900         * docs/make-todo (lineno): let title and logo be configurable so
16901         that GNOME can use this script too.
16902
16903         * TODO.xml: added logourl and a title
16904
16905 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
16906
16907         * TODO.xml: Added some UI items, and an explanatory
16908         comment at the top of the file.
16909
16910 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
16911
16912         * TODO.xml: some updates, added abunch of new entries.
16913         a note for those fiddeling with this file, when done
16914         with it, invoke:
16915         $ ./docs/make-todo TODO.xml >/dev/null
16916         and correct output errors before comitting changes.
16917
16918 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
16919
16920         * TODO.xml: Added XML-structured TODO file.
16921         * docs/make-todo: python script to turn TODO.xml into
16922           pretty XML output. 
16923
16924 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
16925
16926         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
16927         the function to let it draw the seven dots, instead of the old,
16928         much maligned, method.
16929         (draw_dot): New function to draw a dot.
16930
16931         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
16932         to draw the handle inside the border width as opposed to outside.
16933         Use paint function instead of gdk_draw_point.
16934
16935         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
16936         to draw the handle inside the border width as opposed to outside.
16937         Use paint function instead of gdk_draw_point.
16938
16939         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
16940         Change indenting to be more GTK like.
16941
16942 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
16943
16944         * docs/gtk_tut.sgml: New section on GtkCalendar
16945         * examples/calendar: Update example code
16946
16947 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
16948
16949         * docs/gtkfaq.sgml: FAQ Update
16950
16951 2000-02-19  Anders Carlsson  <andersca@gnu.org>
16952
16953         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
16954         to prevent the scroll event to be propagated upwards.
16955
16956 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16957
16958         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
16959         OwnerGrabButtonMask from button entries for
16960         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
16961
16962         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
16963         to the event mask (which will result in button/press release
16964         being added to the event mask on Unix) so scrolling works
16965         for layouts in scroll windows.
16966
16967         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
16968
16969         Patch from Anders Carlsson  <andersca@gnu.org> to add
16970         a scroll event.
16971
16972         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
16973         scrolling to the "Test Scrolling" part of testgtk.
16974  
16975         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
16976  
16977         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
16978         it against GDK_SCROLL.
16979  
16980         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
16981         way of mouse wheel scrolling.
16982  
16983         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
16984  
16985         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
16986  
16987         * gtk/gtkmain.c: Removed previous mouse wheel hack.
16988  
16989         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
16990         gdk_event_mask_table.
16991  
16992         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
16993         GdkEventScroll handler.
16994  
16995         * gdk/gdkevents.h: Added GdkEventScroll structure.
16996  
16997 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
16998
16999         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
17000         and Anders Carlsson to change the Paned widgets so that they
17001         can be dragged from anywhere along the length. Also change
17002         the way that this is drawn to make this apparent.
17003
17004         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
17005         from George Lebl to check that option_menu->menu is present
17006         before getting history.
17007
17008 2000-02-14  Tor Lillqvist  <tml@iki.fi>
17009
17010         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
17011         before the assertion for non-NULL segment list.
17012
17013         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
17014         Seems that pattern brushes *must* be 8x8 pixels! At least on my
17015         machine, but it might be display driver dependent. Sigh, so make
17016         sure the stipple is that size. Does Windows suck or what?
17017
17018         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
17019         places.
17020
17021 2000-02-13  Havoc Pennington  <hp@pobox.com>
17022
17023         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
17024         refcount to 1
17025         (gdk_cursor_new): init refcount to 1
17026
17027         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
17028
17029 2000-02-13  Tor Lillqvist  <tml@iki.fi>
17030
17031         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
17032         so that we don't have to do unnecessary settings to the HDC.
17033
17034         * gdk/win32/gdkdrawable-win32.c
17035         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
17036         gdk_gc_predraw.
17037
17038         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
17039         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
17040         GDI paths, call WidenPath to get the outline of the stroken path,
17041         and then fill the outline (with the brush that was built from the
17042         stipple).
17043
17044         * gdk/win32/gdkgc-win32.c: Factor out common code from
17045         _gdk_win32_gc_new and gdk_win32_gc_set_values into
17046         gdk_win32_gc_values_to_win32values. Use correct colour for
17047         SetBkColor() (Until now the code actually used a random colour in
17048         the call to SetBkColor()... but that didn't show up as not many
17049         GDI APIs use the background colour. Pattern (opaque stippled)
17050         brushes do.)
17051
17052         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
17053         gdk_win32_api_failed): New functions for error logging.
17054
17055         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
17056         WIN32_API_FAILED to call them, passing function or file name and
17057         line number.
17058
17059         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
17060
17061         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
17062         GdkColor for foreground and background in GdkGCWin32Data.
17063
17064         * gdk/makefile.cygwin: Link in the resource object separately.
17065
17066         * gdk/win32/rc/gdk.rc
17067         * gtk/gtk.rc (New file)
17068         * gdk/win32/makefile.cygwin
17069         * gtk/makefile.cygwin: Update build number in DLLs automatically,
17070         as in GLib.
17071
17072 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
17073
17074         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
17075         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
17076         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
17077         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
17078         parameters given and cursor->ref_count. coding style fixups.
17079
17080         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
17081         not GtkWidget.
17082         
17083         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
17084         fix up widget macros and add _GET_CLASS() variant.
17085         
17086         * gtk/*.c: some GtkType fixups.
17087
17088 2000-02-09  Tor Lillqvist  <tml@iki.fi>
17089
17090         * gdk/win32/gdkproperty-win32.c
17091         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
17092         were reversed.
17093
17094 2000-02-04  Tor Lillqvist  <tml@iki.fi>
17095
17096         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
17097         g_filename_to_utf8 to convert the font names Windows gives us from
17098         whatever is the default codepage to UTF-8.
17099         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
17100         in the other direction.
17101
17102         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
17103         error in debugging output.
17104
17105 2000-02-02  Tor Lillqvist  <tml@iki.fi>
17106
17107         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
17108         and height parameters to gdk_window_clear_area(). Not minus one.
17109
17110 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
17111
17112         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
17113         checks if the widget passed to gtk_drag_get_data() was not the
17114         dest widget.
17115
17116 2000-02-01  Tor Lillqvist  <tml@iki.fi>
17117
17118         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
17119         g_filename_from_utf8 functions (which were added a moment ago to
17120         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
17121         size buffers.
17122
17123         gtk_file_selection_get_filename returns the filename in the C
17124         runtime encoding. It calls g_filename_from_utf8, but copies the
17125         returned string to a static buffer, which is returned. I think
17126         this is better than returning the result from g_filename_from_utf8
17127         directly, which would mean all apps that use it would have to free
17128         the return value. Or should this function care about this issue at
17129         all? Maybe a new function with clearly defined semantics.
17130
17131         * gtk/gtkfilesel.h: Add comment about
17132         gtk_file_selection_get_filename returning the filename in the C
17133         runtime's encoding.
17134
17135         * README.win32
17136         * gdk/gdk.def
17137         * gdk/makefile.{cygwin,msc}
17138         * gtk/gtk.def: Updates.
17139
17140         * gdk/gdkcursor-win32.c: Initialise refcount.
17141
17142 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
17143
17144         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
17145
17146 2000-01-30  Havoc Pennington  <hp@pobox.com>
17147
17148         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
17149         destroy
17150
17151         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
17152
17153         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
17154         implemented in platform-specific code
17155
17156         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
17157
17158         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
17159         underscore in front
17160
17161         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
17162         put an underscore in front
17163
17164         * gdk/gdkcursor.c: new file, implements
17165         gdk_cursor_ref/gdk_cursor_unref
17166
17167         * gdk/gdkcursor.h: Refcount GdkCursor
17168
17169         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
17170
17171 2000-01-29  Tor Lillqvist  <tml@iki.fi>
17172
17173         * gdk/gdkwindow.h
17174         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
17175
17176 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
17177
17178         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
17179         structures to properly inherit from GtkWidget not GtkBin.
17180
17181 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
17182
17183         * gtk+.spec.in: Added lib/gtk+/include/* to %files
17184         (bug #5178 - Peter Wainright)
17185         
17186         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
17187         so that it will be installed.
17188         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
17189
17190 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
17191
17192         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
17193         for the GtkStyleClass vtable const.
17194
17195         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
17196         take a const string argument like GtkTranslateFunc. This will
17197         require changes in use code.
17198
17199 2000-01-19  Tor Lillqvist  <tml@iki.fi>
17200
17201         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
17202         semantics (to mimic the X11 backend, which just calls XClearArea)
17203         is to check for zero width (and height), and in that case use the
17204         window's width minus x (height minus y). This fixes for instance
17205         some redraw problems with gtkclist, which were easily noticeable
17206         in the gtk file selection widget.
17207
17208         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
17209         windows.
17210
17211 2000-01-13  Tor Lillqvist  <tml@iki.fi>
17212
17213         * configure.in
17214         * gdk/Makefile.am
17215         * gdk/x11/Makefile.am
17216         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
17217         (bug #5177).
17218         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
17219         out later.
17220
17221 2000-01-09  Tor Lillqvist  <tml@iki.fi>
17222
17223         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
17224         WM_MOVE for iconified or invisible windows. This fixes various
17225         problems when minimising windows. Thanks to Bernd Herd.
17226
17227 2000-01-05  Tor Lillqvist  <tml@iki.fi>
17228
17229         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
17230         backend's draw_lines method, not draw_points.
17231
17232 2000-01-02  Tor Lillqvist  <tml@iki.fi>
17233
17234         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
17235         before Owen's reorganisation: Don't have queued_events and
17236         queued_tail statics in this file, but use gdk_queued_events and
17237         gdk_queued_tail. This makes exposure event compression work again.
17238
17239         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
17240         seem to be needed?
17241
17242 1999-12-30  Tor Lillqvist  <tml@iki.fi>
17243
17244         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
17245         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
17246         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
17247         doesn't do anything.
17248
17249         * gdk/gdk.def: Add gdk_xid_table_insert.
17250
17251         * gdk/win32/gdkprivate-win32.h
17252         * gdk/win32/gdkevents-win32.c
17253         * gdk/win32/gdkinput-win32.c
17254         
17255         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
17256         extension_events field in the GdkWindowWin32Data struct. Use only
17257         the extension_events field in GdkWindowPrivate. Previously one was
17258         set, and the other one tested, which broke tablet
17259         functionality. Thanks to Keishi Suenaga for pointing this out.
17260
17261 1999-12-18  Tor Lillqvist  <tml@iki.fi>
17262
17263         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
17264         When handling a single character (text length == 1), don't handle
17265         it as if it was UTF-8.
17266
17267 1999-12-11  Tor Lillqvist  <tml@iki.fi>
17268
17269         * Makefile.am: Distribute README.win32.
17270         
17271         * gdk/Makefile.am
17272         * gdk/win32/Makefile.am: Distribute Win32 files.
17273
17274         * gdk/makefile.msc: New file.
17275
17276         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
17277         after label).
17278
17279         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
17280         gdk_error_code as GDKVAR, as they are referred outside GDK.
17281
17282         * gdk/win32/makefile.msc: Update.
17283
17284         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
17285         tweaks. Check only if at least one of those Unicode subrange bits
17286         we care for is set. If no code page bits are set, guess (wildly)
17287         based on the charset.
17288
17289         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
17290
17291         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
17292         non-NULL.
17293
17294         * gtk/gtkdnd.c
17295         * gtk/gtklayout.c
17296         * gtk/gtkplug.c
17297         * gtk/gtkselection.c
17298         * gtk/gtksocket.c
17299         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
17300         appropriate. There must be a cleaner way to handle this?
17301
17302         * gtk/gtkrc.c: Must include windows.h on Win32.
17303
17304         * gtk/testgtk.c: No need to include gdkx.h.
17305
17306         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
17307
17308 1999-12-07  Tor Lillqvist  <tml@iki.fi>
17309
17310         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
17311         the rbearing is set to the same as the width, but this should be
17312         fixed.
17313
17314 1999-12-06  Tor Lillqvist  <tml@iki.fi>
17315
17316         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
17317         function. If Windows doesn't tell us what Unicode subranges a font
17318         covers, guesstimate based on the codepages it covers. This will
17319         hopefully help those Windows versions or fonts that don't give us
17320         any useful Unicode subrange information with GetTextCharsetInfo.
17321         Call this function in gdk_font_load_internal.
17322
17323         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
17324         minor changes.
17325
17326 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
17327
17328         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
17329         New function, long needed.
17330
17331 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
17332
17333         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
17334         only_if_exists argument of gdk_atom_intern to
17335         bool.
17336
17337 1999-11-25  Tor Lillqvist  <tml@iki.fi>
17338
17339         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
17340         Fix two copy&paste errors.
17341
17342         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
17343         win32 has changed.
17344
17345         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
17346         GdkWin32SingleFont struct.
17347
17348         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
17349         subranges of loaded fonts. Clear font signature first, in case
17350         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
17351         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
17352
17353         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
17354         Unoffset clip region.
17355
17356 1999-11-23  Tor Lillqvist  <tml@iki.fi>
17357
17358         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
17359         event->any.window before calling filter functions.
17360
17361 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
17362
17363         * gtk/gtkgamma.h: Adapt cast macros to standard.
17364
17365 [ Merges from 1.2 ]
17366
17367 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
17368
17369         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
17370         If translation does not include a '/', use entire
17371         translation instead of crashing.
17372
17373 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
17374
17375         * docs/gtk_tut.sgml:
17376         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
17377
17378 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
17379
17380         * gtk/gtkselection.c (gtk_target_list_remove): Use
17381         g_list_remove_link, not g_list_remove.
17382
17383         [ From Geert Bevin <gbevin@thunderstorms.org> ]
17384         
17385 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
17386
17387         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
17388         statement upon unselection (how the heck did that slip in?).
17389
17390 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
17391
17392         * gtk/gtktext.c (gtk_text_freeze): 
17393         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
17394         in frozen state (and aparently crashes). patch provided by Anders
17395         Melchiorsen <and@kampsax.dtu.dk>.
17396
17397 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
17398
17399         * fix insensitive default/focus widget activation,
17400         reported by Matt Goodall <mgg@isotek.co.uk>.
17401
17402         * gtk/gtkwindow.c (gtk_window_key_press_event): 
17403         (gtk_window_activate_default):
17404         (gtk_window_activate_focus):
17405         return handled=FALSE for actiavtion of insensitive default
17406         widgets. return handled=TRUE for activation of insensitive
17407         focus widgets. don't activate in either case.
17408
17409 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
17410
17411         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
17412         and $glib_cflags to match library order and in the
17413         theory that an old version of GLib is more likely to
17414         be in the include directory for X then vice-versa.
17415         (Bug #2776)
17416
17417 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
17418
17419         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
17420         to determine the locale for fontsets, not LC_MESSAGES;
17421         the user may want English messages with a handling
17422         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
17423         will still be broken) (Bug #2891)
17424
17425 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
17426
17427         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
17428
17429 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
17430
17431         * gtk/gtkrc.ko: Changed the Korean default fontset.
17432
17433 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
17434
17435         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
17436         where when scrolling to the left or top double exposes
17437         were done, causing major slowdowns.
17438
17439 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
17440
17441         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
17442         names to lowercase and alphanumeric, before looking
17443         them up.
17444
17445         * gtk/Makefile.am: Install codeset variant gtkrc files
17446         with normalized names.
17447
17448 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
17449
17450         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
17451         popup menus when the menu is already visible, but its parent
17452         is still hidden, (happens after tornoff window got hidden).
17453
17454 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
17455
17456         * gtk/Makefile.am (install-data-local): Fix
17457         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
17458         deleted, causing error messages on install.
17459
17460 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
17461
17462         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
17463         the handle as well, since we now sometimes ignore
17464         exposes on the handle while resizing.
17465
17466 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
17467
17468         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
17469         extra g_free introduced in one of the last one or two 
17470         commits.
17471
17472 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
17473
17474         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
17475         consistent, put each style that a gtkrc.* file creates
17476         in a unique namespace, remove old files before installing.
17477
17478 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
17479
17480         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
17481         gtk_rc_init is called multiple times. (Yes, people who
17482         do that have bugs in their code.)
17483
17484 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
17485
17486         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
17487         Remove it since it's generated by the Makefile anyway
17488
17489 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
17490
17491         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
17492         device->info.axes for core pointer.
17493
17494 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
17495
17496         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
17497         idle_id, to deal with obsolete, broken C libraries.
17498
17499 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
17500
17501         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
17502         allocation->x/y twice!
17503
17504         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
17505         consistent with gtk_vscale_pos_trough().
17506
17507 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
17508
17509         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
17510         be queueing a resize on a toplevel container between
17511         the time we show it and when we map it. So, we need
17512         to test GTK_WIDGET_VISIBLE() for toplevels, and only
17513         use GTK_WIDGET_DRAWABLE() for child windows.
17514
17515 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
17516
17517         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
17518         (fixes bug #2144)
17519
17520 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
17521
17522         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
17523         container DRAWABLE (instead of VISIBLE), so we don't queue
17524         resizes on non-toplevel containers.
17525
17526 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
17527
17528         * gtk/gtkselection.[ch]: Make the data argument
17529         const guchar *.
17530
17531 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
17532
17533         * gtk/gtkwindow.c: Try to behave sensibly if 
17534         the focus widget is the window itself. (Should
17535         we allow this at all?)
17536
17537 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
17538
17539         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
17540         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
17541         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
17542         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
17543         in prototypes and implementations consistent (Tomas Ogren).
17544
17545         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
17546         before the widget is unparented (reported by damon).
17547
17548         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
17549         since we provide unsigned data anyways.
17550
17551 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
17552
17553         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
17554         the call to gtk_tooltips_layout_text() until later.
17555
17556         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
17557         Call gtk_widget_ensure_style() before using the style.
17558
17559 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
17560
17561         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
17562         for old widgets that don't propagate draws to all
17563         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
17564
17565 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
17566
17567         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
17568         for a redraw but just the widget that requested the resize.
17569
17570 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
17571
17572         * gtk/gtkcontainer.c: added new widget level method
17573         gtk_container_set_reallocate_redraws() and a GtkContainer flag
17574         reallocate_redraws : 1 to reflect the setting, exported this through
17575         the argument system as a boolean ::reallocate_redraws.
17576
17577         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
17578         on the widget because the allocation changes, do so as well for
17579         widget->parent if the parent has reallocate_redraws set to TRUE.
17580         with that containers requesting reallocation redraws get automatically
17581         redrawn if their children changed allocation (this unfortunately
17582         affects also other children that didn't change allocation, but we
17583         cannot work around that before 1.3).
17584
17585 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
17586
17587         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
17588         _and_ height are >0 (not _or_).
17589
17590         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
17591         instead of gtk_container_queue_resize(), which is a core gtk internal
17592         function (must have been on crack when i queued that).
17593
17594         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
17595         we can check more reliably if we want to discard expose events.
17596         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
17597         flag.
17598         
17599         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
17600         we simply trust these events. for deciding whether to discard exposes,
17601         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
17602         
17603 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
17604
17605         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
17606         queues of areas that are completely off screen.
17607
17608         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
17609         logic for handleboxes.
17610
17611         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
17612         check on width/height.
17613
17614 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
17615
17616         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
17617         we are fine with using $@ the way we do (if we actually encounter
17618         brokeness with $@ in VPATH builds because of additional path prefixes,
17619         we need to use $(@F) actually).
17620
17621 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
17622
17623         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
17624         short lived bugs, that would allow language bindings to do surgeries
17625         to our guts.
17626
17627 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
17628
17629         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
17630         where comparison was being done against an uninitialized
17631         value causing intermittant results depending on
17632         compiler flags. Also make it clearer that we aren't
17633         ever initializing the child as 0x0 (though this will
17634         be caught in gtk_widget_size_allocate())
17635
17636 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
17637
17638         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
17639         gtk_window_unset_transient_for() call after we do checks
17640         involving the old transient parent.
17641         [ From Lance Capser <lmc@cyberhighway.net> ]
17642
17643 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
17644
17645         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
17646         an empty file.
17647
17648 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
17649
17650         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
17651         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
17652
17653 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
17654
17655         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
17656         `$@' is valid only in the build dir, not after we've done 
17657         `cd $srcdir'.  Also use `test -f' instead of less portable
17658         `test -e'.
17659
17660 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
17661
17662         * gtk/gtktext.c (correct_cache_insert): Rewrite
17663          for simplicity, and hopefully correctness.
17664          (Fixes bug #1322, which was a segfault when
17665           on some insertions with the properties around
17666           the insertion set up just wrong.)
17667
17668         * gtk/gtktext.c (gtk_text_adjustment): When we receive
17669          a "changed" signal, clamp the new value to the adjustment
17670          bounds to avoid segfaulting if someone tries to change
17671          the adjustment to a bogus value. (Bug #1795)
17672
17673 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
17674
17675         * gtk/gtkmain.c: Ignore unexpected destroy notifies
17676         for children, for toplevel windows handle them
17677         like delete_event.
17678
17679         * gtk/gtkplug.c: Add an unrealize handler so that
17680         we unref plug->socket_window when we are done
17681         with it.
17682
17683 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
17684
17685         * gtk/gtktext.c (clear_area): Fix stupid signedness
17686          problem that was causing background to sometimes
17687          be misaligned.
17688
17689 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
17690
17691         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
17692         
17693         * gtk/gtkmenu.c (gtk_menu_position): Make
17694          sure we never position menus with negative x, y,
17695          since gtk_widget_set_uposition() can't handle that.
17696
17697         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
17698          Modify the positioning code a bit so that we always
17699          put the top-left corner onscreen. (This is for
17700          UI reasons, gtk_menu_position() now takes care of
17701          gtk_widet_set_uposition() brokeness.)
17702
17703 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
17704
17705         * gtk/Makefile.am: fixed up things for -jx, x > 1.
17706
17707 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
17708
17709         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
17710           RC style that is passed in. The lack of the ref
17711           before was a bug. If people worked around this
17712           bug, this will introduce a slight memory leak
17713           in their code. The code should typically look like:
17714
17715             rc_style = gtk_rc_style_new ();
17716             [...]
17717             gtk_widget_modify_style (widget, rc_style);
17718             gtk_rc_style_unref (rc_style);
17719
17720         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
17721           the style if it was already set.
17722
17723         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
17724           style if it was set before.
17725
17726 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
17727
17728         * gtk/testgtk.c (main): Add a check to see if we
17729           are being run from the correct directory and
17730           to quit nicely if we are not.
17731
17732         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
17733           static.
17734
17735 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
17736
17737         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
17738
17739         * gtk/gtkwindow.c:
17740         queue resizes unconditionally (gtk_widget_queue_resize will figure
17741         what to do if the window is not realized).
17742         (gtk_window_move_resize): only recenter the window
17743         for GTK_WIN_POS_CENTER_ALWAYS.
17744         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
17745         the same way as GTK_WIN_POS_CENTER.
17746
17747 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
17748
17749         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
17750         with (!(info->last_flags & GDK_HINT_POS)) instead of
17751         (!info->last_flags & GDK_HINT_POS).
17752
17753         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
17754         new_height unconditionally, because we use these values even if
17755         !default_size_changed && !hints_changed.
17756         comented the (default_size_changed || hints_changed) case with
17757         respect to resize rejects from the window manager.
17758
17759         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
17760         in the zvt condition hack, since this includes the window hints, set
17761         the hints after the handling_resize case.
17762
17763         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
17764         window is initially shown with to the geometry.
17765
17766 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
17767
17768         * gtk/gtkwindow.c (gtk_window_move_resize):
17769         s/size_changed/default_size_changed/g so i know what's
17770         really going on (frying brain on smaller flame now).
17771
17772 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
17773
17774         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
17775         we have size_changed upon handling_resize. this is a gross
17776         workaround for the broken zvt widget and should be removed in
17777         1.3 again (search for FIXME).
17778         Owen provided an accurate comment for this:
17779
17780         /* We could be here for two reasons
17781          *  1) We coincidentally got a resize while handling
17782          *     another resize.
17783          *  2) Our computation of size_changed was completely
17784          *     screwed up, probably because one of our children
17785          *     is broken. It's probably a zvt widget.
17786          *
17787          * For 1), we could just go ahead and ask for the
17788          * new size right now, but doing that for 2)
17789          * might well be fighting the user (and can even
17790          * trigger a loop). Since we really don't want to
17791          * do that, we requeue a resize in hopes that
17792          * by the time it gets handled, the child has seen
17793          * the light and is willing to go along with the
17794          * new size. (this happens for the zvt widget, since
17795          * the size_allocate() above will have stored the
17796          * requisition corresponding to the new size in the
17797          * zvt widget)
17798          *
17799          * This doesn't buy us anything for 1), but it shouldn't
17800          * hurt us too badly, since it is what would have
17801          * happened if we had gotten the configure event before
17802          * the new size had been set.
17803          */
17804
17805 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
17806
17807         * gtk/gtkrc.c: deal properly with the fact that RC
17808           style lists may include rc styles more than once.
17809
17810         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
17811           unused static function.
17812
17813         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
17814           stack of directories of RC files currently being
17815           parsed and implicitely add them to pixmap path.
17816           
17817           This fixes a bug where the directory would get
17818           appended then overwritten by pixmap_path declarations.
17819
17820           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
17821
17822         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
17823           theme's exit function. (Patch from Peter Wainwright,
17824           bug #1454)
17825
17826         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
17827           Add a destroy() handler to take care of removing
17828           group for menu item. (Fixes bug #1197)
17829
17830         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
17831           in warning message.
17832
17833 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
17834
17835         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
17836         roundtrip to figure window's width and height, since we know that
17837         anyways from widget->allocation.
17838
17839 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
17840
17841         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
17842           the hints after we request the new size.
17843
17844 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
17845
17846         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
17847           GTK_WIDGET_REALIZED() assertion - we can compute the
17848           hints before we are realized.
17849
17850         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
17851           hint changing so that we have a value of hints_changed
17852           when we decide whether to constrain the window size.
17853
17854         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
17855
17856         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
17857         change back to G_MAXINT.
17858
17859 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
17860
17861         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
17862         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
17863         contain uncluttered values.
17864         (gtk_window_compute_hints): simply assert that window is realized
17865         and that geometry_info is valid, since we rely on this anyways.
17866         (gtk_window_constrain_size): major cleanups to the code.
17867         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
17868         for the base size, instead of the minimums. use 32767 as max width
17869         and height (like in gtkwindow.c) instead of G_MAXINT.
17870
17871 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
17872
17873         * cleaned up the GtkContainer.need_resize flag handling mess, we
17874         only need to force resize requests when we were prematurely
17875         realized, or our widget tree was modified when we were temporarily
17876         hidden. handling these cases directly upon showing the window (i.e.
17877         while the GdkWindow is still unmapped) avoids the need to wait for
17878         a configure event response and therefore makes the GUI more snappier
17879         and avoids blank windows during the roundtrip.
17880
17881         * gtk/gtkwidget.c:
17882         (gtk_widget_hide): 
17883         (gtk_widget_show): don't queue resizes on toplevels, they know how
17884         to deal with matters.
17885
17886         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
17887         flag directly for not visible resize containers and spare us unecessary
17888         signal emissions.
17889
17890         * gtk/gtkwindow.c:
17891         (gtk_window_realize): if we need to enforce premature size allocation,
17892         queue a container resize so we are correctly resized later on.
17893         (gtk_window_init):
17894         (gtk_window_size_request):
17895         don't freak around with the ->need_resize flag,
17896         gtk_container_queue_resize() will care about that.
17897         (gtk_window_show):
17898         handle initial resizing issues here, we can handle matters better in
17899         this place, especially since we know that our GdkWindow is still
17900         unmapped.
17901         (gtk_window_move_resize):
17902         don't care about ->need_resize at all.
17903         handle size changes properly that occoured while we waited for a
17904         configure event.
17905
17906 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
17907
17908         * gtk/gtkwidget.c (gtk_widget_set_uposition):
17909         * gtk/gtkwindow.[hc] (gtk_window_reposition):
17910         Move the hint setting code from gtk_widget_set_uposition
17911         to here; set the hints so that we respect any previously
17912         set geometry hints.
17913
17914         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
17915         change the window hints here or move the window here,
17916         let that happen in gtk_window_move_resize().
17917
17918 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
17919
17920         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
17921         to already queued resizes (and therefore redraws) on a widget, check
17922         its anchestry as well.
17923
17924         * gtk/gtkcontainer.c:
17925         (gtk_container_queue_resize): clear resize widgets for resize
17926         containers before aborting prematurely. this is especially important
17927         for toplevels which may need imemdiate processing or their resize
17928         handler to be queued.
17929         (gtk_container_dequeue_resize_handler): added new internal function for
17930         gtkwindow.c.
17931
17932         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
17933         configure event, take possible changes in window position into account
17934         as well.
17935         if we request a new window size, queue up a resize handler that will
17936         last until the configure event response arrives.
17937         combined the ->need_resize case (initial show) with the general size
17938         (hints) changed case and added even more comments.
17939         if !auto_shrink, only revert to the old allocation if the new size
17940         is smaller than the current allocation.
17941
17942 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
17943
17944         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
17945                            gtk_window_set_geometry_hints
17946                            gtk_window_set_default_size):
17947         When hints are set, queue a resize so that the hints will
17948         be eventually reset on the toplevel.
17949
17950         * gtk/gtkwindow.c (gtk_window_show): Use
17951         gtk_window_compute_default_size(). Clear the need_resize flag
17952         on the initail map so that we don't unnecessarily trigger the
17953         resize code.
17954
17955         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
17956         into separate functions. Compare the hints we are setting
17957         with what we set last time so that we can accurately
17958         tell when we need to reset the hints.
17959
17960         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
17961         function to figure out the size from requisition
17962         and default_size.
17963
17964         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
17965         from fvwm to constrain a size to the geometry hints.
17966
17967         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
17968         to compare two sets of geometry hints.
17969
17970         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
17971         from gtk_window_set_hints(), just compute the hints,
17972         don't set them.
17973
17974         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
17975         code from gtk_window_move_resize() to separate function,
17976         rationalize a bit.
17977
17978 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
17979
17980         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
17981         structure into a new private structure.
17982
17983         * gtkrc.c: Split GtkRcStyle into public/private.
17984         In the private part, add a list of pointers to the
17985         RcStyle lists this RcStyle participates in.
17986
17987         * gtkrc.c: When a RcStyle is free, remove all
17988         lists referencing it from the 
17989         realized_style_ht hash, and free those lists.
17990         
17991         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
17992         gtk_rc_init(), since that adds the default styles
17993         to the list of parsed RC files again.
17994
17995         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
17996         
17997 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
17998
17999         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
18000         checks that ensure that a widget's allocation is at least 1 in width
18001         and height. (GNOME note: this doesn't affect old panel code anymore,
18002         because GtkSocket will request width and height of at least 1 since
18003         Fri Jul 23).
18004
18005         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
18006         allocated yet (happens if the user realizes the window prematurely),
18007         size request and allocate it.
18008         (gtk_window_size_allocate): guard against guint underflows.
18009
18010 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
18011
18012         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
18013         in gtk_built_sources, so gtk.defs gets built prior to all other
18014         sources.
18015
18016 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
18017
18018         * gtk/Makefile.am:
18019         invoke indent on gtkmarshal.*. 
18020         rewrote source generation rules, use COPYING as oldest source tag for
18021         a piggyback rule to generate all sources from (don't touch it ;).
18022         major cleanups, strip spaces on build rules for GNU Make.
18023
18024         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
18025         source and target files from commandline arguments. don't invoke indent.
18026
18027 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
18028
18029         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
18030         notebook after switch to avoid drawing problems.
18031         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
18032         
18033         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
18034         show them instead. 
18035         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
18036
18037 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
18038
18039         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
18040         notebook after switch to avoid drawing problems.
18041         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
18042         
18043         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
18044         show them instead. 
18045         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
18046
18047 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
18048
18049         * gtk/gtkwindow.c:
18050         we use window->need_resize from configure_event now, to indicate that
18051         the gtkwindow should keep its allocation (e.g. because the user resized
18052         the window through window manager handles). resize_count is now reliably
18053         used to figure whether we got the allocation we requested from the
18054         window manager.
18055         configure events get queued as resizes now, the real stuff (size
18056         computation and allocation) now only goes on in gtk_window_move_resize().
18057         GtkWindow's requisition now contains its *real* requisition (like all
18058         other widgets), *not* taking usize into account.
18059         geometry_info->last_{width|height} is now updated from set_hints() only
18060         so it always contains the last hints we set for the window manager.
18061         made some event handlers return TRUE instead of FALSE.
18062         the overall code should be much more straight forward now, and the
18063         significant code portions are accompanied by comments now.
18064         (gtk_window_set_hints):
18065         removed requisition argument and made it
18066         fetch the requisition through gtk_widget_get_child_requisition.
18067         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
18068         does that now.
18069         (gtk_window_show):
18070         ensure that the widget is realized before calling 
18071         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
18072         ensure that we got properly size requested and allocated before
18073         realization.
18074         (gtk_window_configure_event):
18075         ignore plain window moves, or reallocate the widget tree through the
18076         resize queue otherwise.
18077         (gtk_window_move_resize):
18078         mostly rewrote this function to figure window manager hints more
18079         reliably, coalesce window moves and resizes to reduce configure events
18080         and do actuall size allocations.
18081
18082 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
18083
18084         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
18085         that have a resize pending, because a redraw is already queued for them.
18086
18087         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
18088         hack to clear resize_widgets.
18089
18090         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
18091         for resize containers prior to size allocation. (this is also a bit
18092         ugly, but avoids side effects for stopped emissions and is thus more
18093         reliable).
18094         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
18095
18096         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
18097         function from gtk_tooltips_expose, as we connect to ::expose_event
18098         *and* ::draw now.
18099
18100 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
18101
18102         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
18103         checks.
18104         (gtk_target_list_unref): Likewise.
18105
18106         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
18107
18108 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
18109
18110         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
18111         guard against division by zero. (Fixes bug #1339)
18112
18113 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
18114
18115         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
18116         Prevent the trivial leak of information of allowing
18117         word motion when the entry is not visible.
18118
18119 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
18120
18121         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
18122         modality to error dialog as well as confirmation dialogs.
18123         (Bug #1803, reported by Rosanna Wing Sze Yuen)
18124
18125 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
18126
18127         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
18128         tree->view_lines.
18129         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
18130
18131         * gtk/Makefile.am (install-data-local): Solaris apparently
18132         has various troubles with ln -f; use rm first instead.
18133         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
18134
18135 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
18136
18137         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
18138         use `cp' followed by `rm' (the `rm' was already there).
18139
18140 July 30, 1999 Elliot Lee <sopwith@redhat.com>
18141         
18142         * configure.in: Fix autoconf warnings about cross compilation by
18143         trying to provide sane defaults for AC_TRY_RUN.
18144         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
18145         put them into $(srcdir) when generated. Also add a dependency of
18146         gtksignal.h on gtkmarshal.h for -j builds. 
18147         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
18148
18149 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
18150
18151         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
18152         GDK_THREADS_{LEAVE,ENTER} pair.
18153         (From Paul Fisher <pnfisher@redhat.com>)
18154
18155 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
18156
18157         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
18158         width and height are always >0 (owen).
18159
18160 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
18161
18162         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
18163         change that assured that a widget's allocated with and height are
18164         always >1, since this breaks *buggy* panel code. unfortunately this
18165         back-breaks the gimp's color selector.
18166
18167         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
18168         allocation is always >0 in width and height, before sending the
18169         configure event; this is a *gross* hack to get the gimp back to work.
18170         
18171         * marked both cases with TODO-1.3
18172
18173 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
18174
18175         * gtk/gtktext.c: Don't display wrap indicators when
18176         text is not editable and word wrap is on.
18177
18178 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
18179
18180         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
18181         option menus here as they are not derived from menu shell, assure that
18182         the option menu has a menu we can add items to.
18183
18184 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
18185
18186         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
18187         width/height to (gint) before calculations and check against < 0 to
18188         avoid guint wraparounds.
18189
18190 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
18191
18192         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
18193         width and height is never zero. sanity check both dimensions against
18194         32767 and issue a warning if the allocation is greater than that.
18195
18196 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
18197
18198         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
18199         to g_main_pending() as well.
18200
18201 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
18202
18203         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
18204         call to g_main_iteration() - since that will regrab
18205         GTK+ lock to process events.
18206
18207 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
18208
18209         * gtk/gtkwindow.c
18210         - Regularize with the rest of GTK+ by making widget->requisition
18211           not reflect the set_usize()
18212         - Always recompute geometry hints, then check if they
18213           changed before sending them to the X server. The
18214           previous checks for changes would fail in a number
18215           of circumstances. 
18216
18217 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
18218
18219         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
18220
18221 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
18222
18223         * gtk/gtkdnd.c:
18224         - Code cleanups
18225         - Instantaneously update on modifier key presses
18226         - Allow cancellation of the drag with Escape.
18227
18228 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
18229
18230         * gtk/testgtk.c (create_handle_box): Set the policy
18231         to auto_shrink - otherwise the appearance is rather
18232         strange when flipping between horizontal and vertical.
18233
18234 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
18235
18236         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
18237         (gtk_window_set_default_size): don't change a value if it's < 0.
18238         queue a resize.
18239
18240 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
18241
18242         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
18243
18244 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
18245
18246         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
18247         add an extra "/" when concating "/" + filename.
18248         (From Matt Grossman <mattg@oz.net>)
18249
18250 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
18251
18252         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
18253         for fg_gc if we set it for drawing pixmap.
18254
18255 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
18256
18257         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
18258         
18259         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
18260         already set, call old engine's destroy function and
18261         unref the old engine.
18262
18263 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
18264
18265         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
18266
18267 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
18268
18269         * gtk/gtkaccelgroup.h: mark certain functions as internal.
18270
18271 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
18272
18273         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
18274         expand behaviour changed.
18275
18276         * gtk/gtklabel.c (gtk_label_set_pattern):
18277         (gtk_label_set_justify):
18278         (gtk_label_set_line_wrap):
18279         don't bother invoking queue_clear, the reallocation does
18280         that for us, always free_words so the upcoming resize will
18281         relayout the label's contents.
18282
18283 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
18284
18285         * applied argument implementation patches from Elena Devdariani
18286         <elena@cogent.ca>.
18287
18288         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
18289         ::space_style, ::relief
18290         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
18291         * gtk/gtkpreview.c: ::expand
18292         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
18293         * gtk/gtknotebook.c: ::homogeneous
18294         * gtk/gtklabel.c: ::wrap
18295         * gtk/gtklist.c: ::selection_mode
18296         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
18297         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
18298         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
18299         * gtk/gtkclist.c: ::sort_type
18300         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
18301         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
18302
18303 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
18304
18305         * gtk/gtkstyle.c: Removed ill-thought-out part of last
18306         comment.
18307
18308 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
18309
18310         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
18311         counting right when we have to attach a new style
18312         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
18313
18314         * gtk/gtkstyle.c: Documented the refcounting
18315         peculularities of gtk_style_attach.
18316
18317 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
18318
18319         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
18320         window types.
18321
18322         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
18323         of GTK_TOPLEVEL for creating the window.
18324
18325 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
18326
18327         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
18328         the last argument (reported by Per Winkvist).
18329         
18330 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
18331
18332         Fixes for invisible XOR lines (Frank Loemker
18333         <floemker@TechFak.Uni-Bielefeld.DE>)
18334         
18335         * gtk/gtkclist.c (gtk_clist_realize): Always use
18336         a non-zero pixel for GDK_XOR.
18337
18338         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
18339         Use GDK_INVERT instead of GDK_XOR.
18340
18341 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
18342
18343         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
18344         signals if h/voffsets differ from adjustment values.
18345         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
18346
18347 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
18348
18349         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
18350         ::selection-done emissions up to the topmost menu shell.
18351
18352 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
18353
18354         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
18355         the user data on the window before destroying it.
18356
18357         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
18358         unrealize handler to take care of destroying 
18359         notebook->panel properly. 
18360         (Bug #1198 - Morten Welinder <terra@diku.dk>)
18361
18362         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
18363         of g_new and g_realloc to stop memory leak. (Actually,
18364         we could just use g_realloc(), but I'm not 100% sure
18365         that is portable).
18366         (Bug #1196 - Morten Welinder <terra@diku.dk>)
18367
18368 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
18369
18370         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
18371
18372         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
18373         for fontsets.
18374
18375         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
18376         with bin/button confusion.
18377
18378 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
18379
18380         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
18381         and show how preselection of radio items is done.
18382
18383 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
18384
18385         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
18386         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
18387         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
18388         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
18389         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
18390         * gtk/gtktable.c (gtk_table_attach): 
18391         * gtk/gtklist.c (gtk_list_insert_items): 
18392         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
18393         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
18394         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
18395         * gtk/gtkbin.c (gtk_bin_add): 
18396         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
18397         * gtk/gtkfixed.c (gtk_fixed_put): 
18398         * gtk/gtklayout.c (gtk_layout_put):
18399         general fixups to container_add logic. always realize child if
18400         child->parent is realized, only map the child and queue a resize
18401         if child and child->parent are both visible.
18402
18403 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
18404
18405         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
18406         instead of gtk_container_foreach to walk and unrealize children, so
18407         composite children get also unrealized.
18408         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
18409         (gtk_widget_map): assert that the widget is visible (basic constrain).
18410         (gtk_widget_real_map): assert that the widget is realized (basic
18411         constrain).
18412
18413 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
18414
18415         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
18416
18417 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
18418
18419         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
18420         file for iso-8859-2 locales.
18421
18422         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
18423
18424 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
18425
18426         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
18427          (Pointed out by andy@rz.uni-karlsruhe.de and others).
18428          Remove some suspicious and useless lines. 
18429
18430 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
18431
18432         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
18433         width,height = 0, 0 to mean - here to edge of window,
18434         instead of -1, -1, since the former is all we support.
18435
18436 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
18437
18438         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
18439         when removing from quit_functions list.
18440
18441 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
18442
18443         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
18444
18445 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
18446
18447         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
18448          When redrawing characters on non-visible entry, use appropriate
18449          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
18450
18451 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
18452
18453         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
18454         from drag coordinates.
18455         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
18456         use drag_dest_cell.
18457
18458         * gtk/gtktree (drag_dest_cell)
18459         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
18460         (Bug #1129)
18461
18462 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
18463
18464         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
18465         translate_* fields.
18466         (gtk_item_factory_finalize): invoke translate_notify independant from
18467         translate_data.
18468         (gtk_item_factory_set_translate_func): likewise.
18469         (gtk_item_factory_destroy): only remove ifactory pointer from those
18470         widgets that belong to us (stupid me).
18471
18472 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
18473
18474         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
18475         rc_style list when lookup succeeeds.
18476
18477 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
18478
18479         * gtk/gtkctree.c (resync_selection): 
18480         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
18481         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
18482         bug.
18483
18484 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
18485
18486         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
18487         Add some missing GDK_THREADS_ENTER()/LEAVE around
18488         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
18489
18490 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
18491
18492         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
18493         rather than emit_by_name.
18494
18495         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
18496         on the widget across multiple signal emissions.
18497         (gtk_editable_delete_text): same here.
18498         (gtk_editable_class_init): set widget_class->activate_signal after
18499         editable_signals[ACTIVATE] has been created.
18500
18501 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
18502
18503         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
18504         position here prematurely -- we might not have the
18505         right ->min_position and ->max_position yet.
18506
18507 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
18508
18509         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
18510         Add error traps so if the other end of the connection
18511         dies, we survive.
18512
18513         * gtk/gtkselection.c (gtk_selection_notify): Clean
18514         up properly when selection property retrieval fails.
18515         
18516         * gtk/gtkselection.c (gtk_selection_request): Correctly
18517         reject SelectionRequest notifies where the handler
18518         returns no data.
18519
18520 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
18521
18522         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
18523         when we've previously highlighted.
18524
18525         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
18526         emit two "drag_leave" signals for Motif drops.
18527
18528         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
18529         back the correct status messages when dropping from
18530         Motif onto a proxy window that is rejecting the
18531         drop.
18532
18533 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
18534
18535         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
18536         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
18537         to compare two argument values. added gtk_arg_to_valueloc() to set a
18538         variable from an arg through its location (pointer).
18539
18540         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
18541         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
18542         as gfloat*, uchars are collected as guchar*, ints are collected as
18543         gint*, etc...
18544
18545 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
18546
18547         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
18548         Include <string.h> instead of <strings.h>.
18549
18550         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
18551         (actually, a lot more duplicate includes occur if
18552          you trace through the sequence of #include's)
18553         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
18554         
18555 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
18556
18557         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
18558         gtk-a-higuti-990322-[0-3]
18559
18560         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
18561         that was causing -DX_LOCALE not to work.
18562
18563         * gtk/gtkrc.c (gtk_rc_init):
18564         X_LOCALE will never have LC_MESSAGES defined
18565
18566 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
18567
18568         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
18569         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
18570
18571         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
18572         left/right as well (gtk-michael-980726-0.patch.gz).
18573
18574         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
18575         for pointer values, use gchar instead of char. fixed uline allocation
18576         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
18577         chunks instead of G_ALLOC_ONLY.
18578         (gtk_label_size_request): always alter requisition as passed and leave
18579         widget->requisition alone.
18580         (gtk_label_set_text): allow NULL strings.
18581         (gtk_label_new): likewise.
18582
18583 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
18584
18585         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
18586
18587 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
18588
18589         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
18590         *and* mapped (i.e. drawable).
18591         (gtk_bin_expose): only send exposes to drawable children.
18592
18593         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
18594         (gtk_box_expose): only send exposes to drawable children.
18595
18596         * gtk/gtkhscale.c (gtk_hscale_draw): 
18597         * gtk/gtkvscale.c (gtk_vscale_draw):
18598         hm, this is an ugly one. we first compute the size of our trough area
18599         here (window relative) and then check intersection with the draw_area
18600         which is parent relative because we're a NO_WINDOW widget, so we need
18601         to offset the trough area by allocation.x and allocation.y before the
18602         check. (this must not be done for the background area though, since
18603         that's already computed parent relative).
18604
18605 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
18606
18607         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
18608         unrealize title buttons.
18609
18610 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
18611
18612         * gtk/gtkclist.c (gtk_clist_column_title_passive)
18613         (gtk_clist_column_title_active): 
18614         only connect/disconnect to GtkWidgetClass::event to block mouse events.
18615
18616         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
18617         zero initialize event, removed superfluous gdk_window_get_pointer call
18618
18619         * gtk/gtklist.c (gtk_list_vertical_timeout)
18620         (gtk_list_horizontal_timeout): removed superfluous
18621         gdk_window_get_pointer call
18622
18623 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
18624
18625         * plugging problems reported by "Bruce Mitchener, Jr."
18626         <bruce@puremagic.com> due to a purify session.
18627
18628         * gtk/gtkstyle.c:
18629         (gtk_style_ref): 
18630         (gtk_style_unref): assert ref_count to be > 0.
18631
18632         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
18633         the requisition.
18634         (gtk_clist_set_shift): likewise.
18635
18636         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
18637         adjustments.
18638
18639         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
18640         event before sending it and set send_event to TRUE (which needs to
18641         be done for *all* synthesized events).
18642         (gtk_list_vertical_timeout): likewise.
18643
18644         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
18645         leaks.
18646
18647         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
18648         to TRUE when synthesizing events.
18649
18650 [ *** end of merges from 1.2 *** ]      
18651         
18652 1999-11-21  Tor Lillqvist  <tml@iki.fi>
18653
18654         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
18655         (or copied from gdkconfig.h.win32 on Win32, sigh).
18656
18657         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
18658
18659         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
18660
18661         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
18662
18663         * gdk/gdkconfig.h.win32: New file.
18664
18665         * gdk/win32/makefile.cygwin: Build just a static archive here.
18666
18667         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
18668         for the DLL from the static archive built above.
18669
18670         * gdk/gdk.def: Moved here from the win32 subdirectory.
18671
18672         * gdk/win32/*: Adapt for the changed private struct organisation.
18673
18674         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
18675
18676 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
18677
18678         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
18679         for wheel mice (buttons 4 and 5).
18680
18681 1999-11-18  Tor Lillqvist  <tml@iki.fi>
18682
18683         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
18684         drawables use just the pixel field in the foreground and
18685         background GdkColor of the GdkGC.
18686
18687         gdk_gc_set_{fore,back}ground() are called in the GIMP with
18688         GdkColors containing uninitialized (red,green,blue) fields, and
18689         just the pixel field filled in, and furthermore in the
18690         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
18691         It thus turns out that we really don't need to have the full
18692         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
18693         it later to have just the pixel values.
18694
18695 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
18696
18697         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
18698
18699 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
18700
18701         * docs/gtkfaq.sgml: threads example from Erik Mouw.
18702         New question on GtkLabel background colors.
18703
18704         * docs/gtk_tut.sgml:
18705           - Correct the example code callback
18706             function definitions.
18707           - Update the gtkdial example code, from Frans van Schaik.
18708           - Update setselection.c to current API.
18709
18710         * examples/Makefile examples/*/*.c: Update to code
18711         listed in tutorial.
18712
18713 1999-11-10  Tor Lillqvist  <tml@iki.fi>
18714
18715         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
18716         subrange table (from the "Developing International Software for
18717         WIndows 95 and Windows NT" book) was missing the Hangul syllable
18718         block... Get the loaded font's charset correctly.
18719
18720         (Note that this, and the other *-win32.c files, still really are
18721         the old ones, the win32 subdirectory is not ready for compilation
18722         yet after the reorg.)
18723
18724 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
18725
18726         * gtk/gtkclist.c: Fix off-by-one bug in parameter
18727         check.
18728
18729 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
18730
18731         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
18732         on results of XQueryDeviceState().
18733
18734 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
18735
18736         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
18737         we need to accesss only ->children. We need an accessor
18738         for the children.
18739
18740         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
18741         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
18742         to get rid of gdkx.h include.
18743         
18744         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
18745         and random references to 'None'.
18746
18747         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
18748         Get rid of unused #include <gdk/gdkx.h>
18749
18750         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
18751         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
18752         gdkconfig.h.
18753
18754 1999-11-08  Tor Lillqvist  <tml@iki.fi>
18755
18756         * gdk/win32/gdkdraw.c
18757         * gdk/win32/gdkfont.c
18758         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
18759         following yesterday's changes. (Unrelated to Owen's reorg.)
18760
18761 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
18762
18763         * gdk/x11/gdkinput-gxi.c: Add missing include,
18764           fix GdkWindowPrivate => GdkDrawablePrivate.
18765
18766         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
18767
18768         * gdk/x11/Makefile.am (xinput_sources): Add missing
18769         backslash to fix building with --with-xinput=none
18770
18771 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
18772
18773         Move all X specific code into the x11/ directory.
18774         Aside from shuffling things around, did the following:
18775
18776        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
18777          gdk_arg_context_* - a simple argument parsing system
18778          in the style of popt.
18779
18780        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
18781          gdk/x11/gdkprivate-x11.h:
18782          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
18783          add ->klass and ->klass_data fields. The klass_data
18784          field points to an auxilliary structure that is
18785          windowing system dependent.
18786
18787        * gdk/gdkfont.c: Make most of the measurement functions
18788          simply wrappers around gdk_text_extents().
18789
18790        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
18791          _gdk_font_strlen() function that hides the weird
18792          behavior in gtk+-1.[02] where a string is interpreted
18793          differently for 8-bit and 16-bit fonts.
18794
18795        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
18796          to store common code for synthesizing double/triple
18797          press events.
18798         
18799        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
18800          Make all the function that modify an existing GC
18801          simply wrappers around gdk_gc_set_values().
18802          
18803        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
18804          for throwing out later.
18805
18806        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
18807          GdkImagePrivate and GdkColormapPrivate to have a
18808          windowing system dependent part (GdkFontPrivateX etc.)
18809          that "derives" from the system-independent part.
18810
18811        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
18812          Got rid of the included-source-files for XInput in
18813          favor of automake conditionals. (Which didn't exist
18814          when XInput support was originally added.)
18815
18816        * gdk/gdkrgb.c: Remove the visual id from the debugging
18817          statements since that is X11 specific; print out
18818          type/depth info instead.
18819          
18820
18821 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
18822
18823         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
18824         loading duplicates of hashed fonts.
18825
18826         * gdk/gdk.c (gdk_keysym_convert_case): rename
18827         gdk_XConvertCase to gdk_keysym_convert_case, allow
18828         results to be NULL in the GTK+ style.
18829
18830         * gdk/gdkcompat.h: Started compatibility header
18831         for renames.
18832
18833 1999-11-07  Tor Lillqvist  <tml@iki.fi>
18834
18835         * gdk/win32/gdkprivate.h: New font private structures, related to
18836         fontsets.
18837
18838         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
18839         gdk_font_list_free(). On X11, will just be wrappers to
18840         XListFonts() and XFreeFontNames(). On Win32, the code previously
18841         in gtkfontsel.c is now here.
18842
18843         New function gdk_font_xlfd_create(). On X11 will get the FONT
18844         property of the font (for GDK_FONT_FONTs), or call
18845         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
18846         builds a XLFD style name from the font information in the LOGFONT
18847         struct(s).
18848
18849         New function gdk_font_xlfd_free(), which correspondingly frees the
18850         string returned by gdk_font_xlfd_create().
18851
18852         Implement fontsets on Win32. Add a function that iterates over a
18853         wide char string and calls a callback function for each substring
18854         of wide chars from the same Unicode subrange (and thus probably
18855         available in the same real font).
18856
18857         Improve the XLFD emulation a bit.
18858
18859         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
18860
18861         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
18862         Beta3, WM_IME_CHAR messages don't seem to contain the composed
18863         multi-byte char as with the Active IMM on Win9x. Oh well, handle
18864         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
18865         ImmGetCompositionStringW() to get the composed Unicode chars.
18866
18867         * gdk/win32/gdkgc.c
18868         * gdk/win32/gdkdraw.c: Changes needed because of the font private
18869         struct changes.
18870
18871         * gdk/win32/gdk.def: Add the new functions.
18872
18873 1999-11-04  Tor Lillqvist  <tml@iki.fi>
18874
18875         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
18876         get the Platform SDK to get <dimm.h>.
18877
18878         * gdk/win32/gdkevents.c: More event handling fixes and
18879         simplification. Never generate motion events with is_hint true. We
18880         used to do that on bogus grounds earlier. Windows sends
18881         WM_MOUSEMOVE messages on button events even if the mouse hasn't
18882         moved, ignore these.
18883
18884         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
18885
18886         * gdk/win32/gdkglobals.c
18887         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
18888         the TrackMouseEvent function, and use it.
18889
18890         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
18891         char before calling WideCharToMultiByte in order to get a string
18892         for the window title.
18893
18894         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
18895
18896         * gdk/win32/gdk.def: Remove obsolete functions.
18897
18898         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
18899         /nodefaultlib and /defaultlib switches.
18900
18901         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
18902
18903 1999-10-31  Tor Lillqvist  <tml@iki.fi>
18904
18905         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
18906         EuroSign).
18907
18908         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
18909         same type as GdkWChar, especially on Win32.
18910
18911         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
18912
18913         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
18914         before passing to Windows GDI for drawing etc. Convert to the
18915         system default codepage before passing to Windows as window
18916         titles.
18917
18918         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
18919         support changing input locale on the fly.
18920
18921         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
18922         on-the-fly changes. Convert incoming characters from the current
18923         codepage to Unicode (and then to a UTF-8 multi-byte string) based
18924         on the current input language. Use keysym<->Unicode mapping tables
18925         and functions borrowed from xterm sources.
18926
18927         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
18928         editions of Win9x, use the ActiveX-based Active IMM (Input Method
18929         Manager) if available. IMEs and the Active IMM are available under
18930         the disguise of Chinese, Korean and Japanese support for IE and
18931         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
18932         support is present in all editions (as long as you install it).
18933
18934         Call DispatchMessage from gdk_events_queue() (and thus
18935         gdk_WindowProc()), instead of duplicating the code in
18936         gdk_WindowProc().
18937
18938         Reworked the grab handling and propagation code, factored out
18939         duplicated code snippets into separate functions. Other cleanups,
18940         too.
18941
18942         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
18943         the <dimm.h> header describing the Active IMM.
18944
18945         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
18946         just do the same as for "single" fonts.
18947
18948         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
18949         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
18950         the new keysyms from gdkkeysyms.h.
18951
18952         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
18953         fontset, so that gtkentry uses wide characters.
18954
18955         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
18956         GTk+'s system directory "gtk+", not "gtk".
18957
18958 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
18959
18960         * docs/gtkfaq.sgml: FAQ update
18961
18962 1999-10-21  Tor Lillqvist  <tml@iki.fi>
18963
18964         * gdk/win32/gdkprivate.h: Add more font private data.
18965
18966         * gdk/win32/gdkfont.c
18967         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
18968         fonts and strings. Now works much better. You still have to
18969         have a correct font selected, though. No fontset emulation yet.
18970
18971 1999-10-19  Tor Lillqvist  <tml@iki.fi>
18972
18973         * gtk/maketypes.awk: Use G_OS_WIN32.
18974
18975         * gtk/gtk.def: Add some missing entry points. Also some non-public
18976         ones, but PyGTK porter claims to need them.
18977
18978         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
18979         built-in type generation.
18980
18981 1999-10-14  Tor Lillqvist  <tml@iki.fi>
18982
18983         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
18984         GDK_FONT_FONT fonts (which is all we have for now, we don't
18985         emulate fontsets). The X11 version uses plain XDrawString in that
18986         case, too. The string passed to gdk_draw_text_wc seems to be in
18987         fact (at least, when used by gtkentry and gtktext) either in a
18988         single-byte charset, or a DBCS. Not Unicode.
18989
18990         This fixes the problem in gtkfontsel, where even if you had
18991         selected a font with a non-Latin1 charset (windows-greek, for
18992         instance), the preview still used Latin-1 glyphs.
18993
18994         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
18995         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
18996         (gdk_font_load): Recognize the demibold etc weights, even if we
18997         don't have the corresponding constants in the headers.
18998         (gdk_font_hash_insert): Use same hash mechanism as in the X11
18999         version. Should save font resources a bit, when we don't have
19000         multiple HFONTs for the same font.
19001
19002         * gdk/win32/gdkprivate.h: Add the names field as in the X11
19003         version.
19004
19005 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
19006
19007         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
19008         X values
19009
19010 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
19011
19012         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
19013         layout support (as mentioned on
19014         http://www.jcinteractive.com/gnome-ui/software/widgets/)
19015
19016 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
19017
19018         * gtk/fnmatch.c
19019         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
19020
19021 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
19022
19023         * configure.in (ALL_LINGUAS): Added Galician (gl)
19024
19025 1999-10-05  Tor Lillqvist  <tml@iki.fi>
19026
19027         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
19028
19029         * gdk/win32/gdkcompat.c: New file, actually provide an
19030         implementation for the deprecated functions. (Just temporarily.)
19031
19032         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
19033
19034         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
19035
19036         * gdk/win32/gdk.def gtk/gtk.def: Updates.
19037
19038 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
19039
19040         * configure.in: Added "uk" to ALL_LINGUAS.
19041         
19042 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
19043
19044         * configure.in: correct checking for BeOS check
19045
19046         * gdk/gdktypes.h
19047         * gtk/fnmatch.c
19048         * gtk/gtkfilesel.c
19049         * gtk/gtkitemfactory.c
19050         * gtk/gtkmain.[ch]
19051         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
19052
19053 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19054
19055         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
19056         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
19057         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
19058         by Bulgarian). 
19059
19060 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
19061
19062         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
19063         Fix a reference to window_private->destroyed.   
19064
19065         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
19066         (ugly) setting of an internal GdkWindow member to use
19067         a _slightly_ cleaner macro.
19068
19069         * gdk/gdkprivate.h: Split GdkWindowPrivate into
19070         GdkDrawablePrivate and GdkWindowPrivate.
19071         Add extra macros for accessing GDK_DRAWABLE_ components.
19072
19073         * *.[ch]: Massive adjustments for the above, use the
19074         new macros in a lot of places.
19075
19076 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
19077
19078         * gdk/gdktypes.h: Make GdkDrawable the base type,
19079         not GdkWindow.
19080
19081 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
19082
19083         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
19084
19085 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
19086
19087         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
19088
19089 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
19090
19091         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
19092         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
19093
19094         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
19095
19096         * docs/gtk-config.1: Now autogenerated.
19097         * docs/Changes-1.4.txt: started
19098         
19099 1999-10-03  Tor Lillqvist  <tml@iki.fi>
19100
19101         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
19102         to #ifdef also here.
19103
19104         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
19105         Owen did to the X11 backend.
19106
19107         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
19108         ScrollWindowEx when blitting inside a window, it can't be correct
19109         in the general case.
19110
19111         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
19112         WM_GETMINMAXINFO is easier.
19113
19114         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
19115         depth equal to the bitspixel value, not the visual's depth.
19116
19117         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
19118         to 24 even if the bitspixel value is 32.
19119
19120         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
19121         need to check for depth==32 when bpp==32, depth will always be 24.
19122
19123 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
19124
19125         * docs/Changes-1.4.txt: Started
19126         
19127         * gtk/Makefile.am (gdk_headers): Include all the new headers.
19128
19129         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
19130         
19131         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
19132         into C file.
19133         
19134         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
19135         header to gdkinputprivate.h.
19136
19137         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
19138         unused since before 1.2.
19139
19140 1999-09-30  Tor Lillqvist  <tml@iki.fi>
19141
19142         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
19143         expand possible hex escapes in the font family (put there by
19144         logfont_to_xlfd if the font name isn't a legal XLFD font family,
19145         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
19146         On Win32, add hex escapes here, too.
19147
19148 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
19149
19150         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
19151         to #ifdef GDK_WINDOWING_X11.
19152
19153 [ Merges from gtk-1-2 ]
19154
19155 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
19156
19157         * configure.in: fixed "GNU Make" check to pass with new make version
19158         3.77.95.
19159
19160 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
19161
19162         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
19163         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
19164         AM_PATH_GTK() macros don't get confused by the -pre1.
19165
19166 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19167
19168         * configure.in (REBUILD): Change check for perl5
19169           to check explicitely for v >= 5.002. (5.001
19170           does not work with our scripts.)
19171
19172 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
19173
19174         * configure.in: evaluate $PERL for the perl version check. added
19175         --disable-rebuilds to give the user an option to completely disable
19176         any source autogeneration rules.
19177
19178 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
19179
19180         * configure.in: evaluate $ac_make when checking for GNU Make.
19181
19182 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19183
19184         * docs/Makefile.am: added generation.txt.
19185
19186         * Makefile.am: require automake 1.4, build README from README.in and
19187         INSTALL from INSTALL.in in dist-hook.
19188         
19189         * README.in:
19190         * INSTALL.in: new files to autogenerate README and INSTALL from.
19191
19192         * configure.in: figure whether we have GNU Make
19193
19194         * docs/generation.txt: minor additions/corrections.
19195
19196 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19197
19198         * docs/gtkfaq.sgml: FAQ Update
19199
19200 July 30, 1999 Elliot Lee <sopwith@redhat.com>
19201         
19202         * configure.in: Fix autoconf warnings about cross compilation by
19203         trying to provide sane defaults for AC_TRY_RUN.
19204
19205 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
19206
19207         * ltconfig
19208         * ltmain.sh: upgrade to libtool 1.3.3
19209
19210 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
19211
19212         * INSTALL: Indicate that the --with-glib= configure
19213         time flag is unsupported.
19214
19215 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
19216
19217         * docs/generation.txt: Added a file that gives
19218         documenation about the autogeneration process for
19219         various autogenerated files.
19220         
19221 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
19222
19223         * configure.in (LIBS): Look for libgmodule in the
19224         right location.
19225
19226 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
19227
19228         * docs/gtk_tut.sgml: Removed references to
19229         code examples in my directory on gtk.org as
19230         they should all be in the tutorial now.
19231
19232         * docs/gtk_tut.sgml: Added sources for dial-test
19233         and scribble-xinput programs that were previously
19234         missing.
19235
19236 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
19237
19238         * TODO: Added entry about menu keyboard navigation, removed
19239         some finished items.
19240
19241 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
19242
19243         * acinclude.m4: Standardize on func_dgettext
19244         not func_gettext, so that the checks for dgettext
19245         actually are paid attention to.
19246
19247 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
19248
19249         * configure.in (LIBS): Add $INTLLIBS into $LIBS
19250         directly, rather than repeating the checks for
19251         gettext.
19252
19253         * INSTALL: Added information about gettext and
19254         NLS support.
19255
19256         * acinclude.m4 (LIBM): Check for dgettext, not
19257         just gettext. This should hopefully fix things wrt
19258         systems with old versions of GNU gettext installed.
19259
19260 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
19261
19262         * configure.in (LIBS): Look for libgmodule in the
19263         right location.
19264
19265 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19266
19267         * autogen.sh: add --enable-maintainer-mode
19268
19269         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
19270
19271 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
19272
19273         * docs/gtk-config.1.in:
19274           docs/Makefile.am:
19275           configure.in: gtk-config is now generated.
19276
19277         * docs/gtk-config.1: Removed, now generated.
19278
19279 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
19280
19281         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
19282         handle CreateNotify itself, still put out a debuging message for
19283         --gdk-debug=events. made the ReparentNotify debugging message more
19284         verbose.
19285         wrap xcoords translation for ConfigureEvents into an error trap,
19286         a destroy event may already be pending, and in that case, the
19287         actuall coordinate values are not at all critical.
19288
19289 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
19290
19291         * gdk/gdkcc.c: Stop leaking the color_hash all over
19292         the place. Simplify and improve the logic.
19293
19294 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
19295
19296         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
19297         for prototypes and function implementations consistent (reported
19298         by Tomas Ogren).
19299
19300 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
19301
19302         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
19303         send_event set in debugging output.
19304         (gdk_compress_exposures): default initialize the event so we don't
19305         operate on bogus values (namely send_event).
19306
19307 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19308
19309         * gdk/gdkwindow.c: When we receive an unexpected
19310         destroy notify on one of our windows, don't just
19311         warn about it, also mark our windows as destroyed.
19312
19313 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
19314
19315         * gdk/gdkfont.c (gdk_font_hash_insert): Add
19316           name => font and name => fontset hashes. The 
19317           name => fontset hash is a _big_ win since we
19318           weren't previously caching fontsets at all and loading
19319           fontsets is expensive. The name => font hash
19320           is less of a win, but it does save us from doing
19321           repeated XQueryFont calls on the same font.
19322
19323         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
19324           list so we can remove font/fontset from hash.
19325
19326 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19327
19328         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
19329           and slightly confusing test. [ XInternAtom (,,TRUE)
19330           will never return None ].
19331
19332 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
19333
19334         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
19335           gdk/gdkwindow.c (gdk_window_set_hints):
19336
19337         Don't omit setting the properties if flags == 0 -
19338         there may be an existing set of properties there
19339         already. (Very old bug. Would it be better to
19340         delete the property instead?)
19341
19342         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
19343           spelling error in comment.
19344
19345 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
19346
19347         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
19348           to avoid stomping over gdk_error_warnings.
19349
19350         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
19351           as (bits_per_pixel + 7) / 8. This gives the same
19352           result as before for multiples of 8, but actually
19353           a "reasonable" value for 1bit or 4bit displays.
19354
19355 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19356
19357         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
19358         GNU Make.
19359
19360 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19361
19362         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
19363         discarding configure events.
19364
19365 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
19366
19367         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
19368         refcount is greater than zero.
19369
19370         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
19371
19372         * gdk/gdkfont.c (gdk_font_unref): Likewise.
19373
19374         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
19375
19376         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
19377
19378 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
19379
19380         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
19381         that format 32 => sizeof(item) == 4. It really is
19382         sizeof(long).
19383
19384 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
19385
19386         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
19387         core dump at all on X IO errors, only core dump
19388         if --enable-debug for X errors.
19389
19390 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
19391
19392         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
19393         unknown window:" message. disabled ConfigureNotify discarding code,
19394         because it led to events being processed out of order.
19395
19396 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
19397
19398         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
19399
19400         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
19401         we export this function, supress error warnings and don't reset the
19402         error code in the first half of this function.
19403
19404         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
19405         code (instead of just -1) so gdk_error_trap_pop() reveals something
19406         actually informative about the error that happened.
19407
19408         * gdk/*.c:
19409         don't rely on gdk_error_code being -1 if an error occoured, but just
19410         gdk_error_code != 0.
19411
19412 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
19413
19414         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
19415         pointer *before* invoking the filter function, so we at least don't
19416         crash if a filter is removed that is currently executed. window filters
19417         *really* need to be made truely reentrant at some point.
19418
19419 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
19420
19421         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
19422         PropertyNotify debug messages.
19423
19424 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
19425         
19426         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
19427         
19428         * gdk/gdkim.c: Fix cut-and-paste errors for 
19429         x/y and PreeditAttributes/StatusAttributes.
19430
19431 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19432
19433         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
19434         G_MAXINT to 2^16 to alleviate overflow problems in
19435         various window managers.
19436
19437 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
19438
19439         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
19440         for fontsets.
19441
19442 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
19443
19444         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
19445         Initialize size_hints.x and size_hints.y because kwm
19446         brokenly pays attention to them.
19447         (Bug #1181 -  Lars Heete <hel@admin.de>)
19448
19449 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
19450
19451         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
19452         return value of gdk_list_visuals(). 
19453         (Bug #1193 - Morten Welinder <terra@diku.dk>)
19454
19455 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
19456
19457         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
19458         XSetIMValues to (void *) when comparing to NULL, to workaround
19459         the problem of some compilers barfing since older X headers don't
19460         have the prototype for it.
19461
19462 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
19463
19464         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
19465         for pseudocolor where colormap->colors was double
19466         allocated.
19467
19468         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
19469         color value in the hash table with the pixel filled
19470         in so when we do later hash table lookups, the color
19471         value is correct.
19472         
19473 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
19474
19475         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
19476         making the call
19477
19478 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
19479
19480         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
19481         pointed out by Morten Welinder <terra@diku.dk>.
19482
19483 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19484
19485         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19486           default filter from the list
19487
19488 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
19489
19490         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
19491           default filter from the list
19492
19493 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
19494
19495         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
19496
19497         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
19498         g_strdup_printf instead of calcing the length separately
19499
19500 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
19501
19502         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
19503         that we don't do in many other places. (Fixing duplicate 
19504         #include of config.h)
19505
19506         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
19507         Otherwise, #ifndef XINPUT_NONE check in the latter
19508         doesn't work. (Bug #546)
19509
19510 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
19511
19512         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
19513         "None" case insensitive.
19514
19515 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19516
19517         * gdk/gdkselection.c: 
19518         Add error traps so if the other end of the connection
19519         dies, we survive.
19520
19521 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19522
19523         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
19524         dest_xid field into two fields - one for the window
19525         to send in messages, one to indicate the last looked
19526         up window for caching purposes. This is needed, so
19527         that Leave messages get the correct window.
19528
19529 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
19530
19531         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
19532         Fix warning created by people mucking around
19533         with the gsource API.
19534
19535         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
19536         Change mapping between GIOCondition and GdkInputCondition
19537         to match the way the Linux kernel does it. This should
19538         fix problems where closed pipes were no longer signalling
19539         GDK_INPUT_READ on systems with a native poll().
19540
19541 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
19542
19543         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
19544         explicitly for the string "None" - it is in the XPM
19545         spec and some servers treat unknown colors in odd ways
19546         (like asking the user!)
19547
19548 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
19549
19550         * gdk/gdkevents.c: made "->" into a "." of previous change so
19551         it compiles
19552
19553 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
19554
19555         * gdk/gdkevents.c (gdk_compress_exposures): Set the
19556         window field of the event structure before calling
19557         user filters.
19558
19559 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
19560
19561         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
19562         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
19563
19564 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
19565
19566         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
19567         intermediate text property - prevents major memory
19568         leak when gdk_use_mb.
19569         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
19570
19571 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19572
19573         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19574         gtk-a-higuti-990322-[0-3]
19575
19576         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
19577         sizeof(wchar_t) != sizeof (GdkWChar)
19578
19579         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19580         that was causing -DX_LOCALE not to work.
19581
19582         * gtk/gtkrc.c (gtk_rc_init):
19583         X_LOCALE will never have LC_MESSAGES defined
19584
19585         * gdk/gdk.c (gdk_init_check):
19586         Remove --xim-preedit and --xim-status from argv properly.
19587
19588         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
19589         that the client window is present on the X server
19590         before we pass it to the input method.
19591
19592 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19593
19594         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
19595         if --display is specified on the command line, than
19596         the drag window will not be created on that display.
19597         
19598 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
19599
19600         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
19601         lookups with only_if_exists == TRUE were inserting
19602         bogus values into the atom cache.
19603
19604 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
19605
19606         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
19607         then reset it to NULL.
19608
19609         * gdk/gdkcolor.c:
19610         (gdk_colors_free): 
19611         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
19612         key for g_hash_table_remove() in both functions, this prevents us
19613         from accessing possibly uninitialized portions of a GdkColor structure
19614         where we are only interested in its pixel value.
19615
19616 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
19617
19618         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
19619         font hash table, if we have a GdkFontPrivate entry for this font
19620         already, simply increment its reference count, provided by Olaf Dietsche
19621         <olaf.dietsche+list.gtk@netcologne.de>.
19622
19623 1999-09-21  Tor Lillqvist  <tml@iki.fi>
19624
19625         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
19626         just to be sure.
19627
19628         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
19629         unused variables, leftovers from the X11 version.
19630
19631         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
19632
19633         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
19634         downcase fields on X11.
19635
19636 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
19637         
19638         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
19639         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
19640
19641 1999-09-17  Tor Lillqvist  <tml@iki.fi>
19642
19643         * gdk/win32/gdk.def: Add gdk_threads_mutex.
19644
19645         * gtk/makefile.msc: Correct path to libintl.
19646
19647         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
19648         use of gint vs. int, and gint vs. gboolean in headers and
19649         definitions. Use GtkType for the *_get_type functions. Note that
19650         these changes preserve binary compatibility.
19651
19652         * gdk/gdk.c
19653         * gdk/win32/gdk.c
19654         * gdk/gdk.h: Fix inconsistencies: gint vs int.
19655
19656         * gtk/gtkmain.c
19657         * gtk/gtkclist.c
19658         * gtk/gtkmenufactory.c
19659         * gtk/gtknotebook.c
19660         * gtk/gtkwidget.c: Fix inconsistencies, also gint
19661         vs. gboolean.
19662
19663         * gtk/gtkcolorsel.[ch]
19664         * gtk/gtkcombo.[ch]
19665         * gtk/gtkdrawingarea.[ch]
19666         * gtk/gtkgamma.[ch]
19667         * gtk/gtkhandlebox.[ch]
19668         * gtk/gtkhpaned.[ch]
19669         * gtk/gtkhruler.[ch]
19670         * gtk/gtkplug.[ch]
19671         * gtk/gtkpreview.[ch]
19672         * gtk/gtkruler.[ch]
19673         * gtk/gtksocket.[ch]
19674         * gtk/gtkstatusbar.[ch]
19675         * gtk/gtktoolbar.[ch]
19676         * gtk/gtkvbbox.[ch]
19677         * gtk/gtkvpaned.[ch]
19678         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
19679         functions.
19680
19681         * gtk/gtkgamma.h: Fix bug, missing () in call of
19682         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
19683
19684 1999-09-14  Tor Lillqvist  <tml@iki.fi>
19685
19686         * gdk/gdkcolor.c (gdk_colormap_new)
19687         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
19688         colormap->colors was allocated twice.
19689
19690         * gdk/win32/gdk.c: Remove some unused stuff.
19691
19692         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
19693         colormap.
19694
19695         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
19696         * gtk/gtklabel.h (gtk_label_get_type)
19697         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
19698         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
19699         in a couple of places, not guint.
19700
19701 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19702
19703         * configure.in,po/et.po: added Estonian language file
19704
19705 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
19706
19707         * configure.in,po/da.po: added Danish file
19708
19709 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
19710
19711         * docs/gtkfaq.sgml: Minor FAQ Update
19712
19713 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
19714
19715         * docs/gtkfaq.sgml: FAQ update
19716
19717 1999-08-27  Tor Lillqvist  <tml@iki.fi>
19718
19719         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
19720         way to get window contents continually refreshed while resizing. I
19721         didn't like the effects myself, so it's not on by default.
19722
19723         * gdk/win32/gdkprivate.h: New flag variable
19724         gdk_event_func_from_window_proc, FALSE by default.
19725
19726         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
19727         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
19728         are passed --gdk-event-func-from-window-proc.
19729
19730         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
19731         and we have am event_func, call it instead of enqueing the event.
19732
19733 1999-08-23  Tor Lillqvist  <tml@iki.fi>
19734
19735         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
19736         Kelley: Set expose_count in GdkEventExposes correctly.
19737
19738         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
19739         MULTIPLE_WINDOW_CLASSES).
19740
19741         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
19742         for bug in NT, apparently NT *does* draw the end pixel, too, in
19743         LineTo with a one-pixel pen, so we don't have to do it ourselves.
19744
19745 1999-08-21  Tor Lillqvist  <tml@iki.fi>
19746
19747         Improvements by Hans Breuer: 
19748
19749         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
19750
19751         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
19752         CS_?REDRAW flags as they cause lots of (late) redraws when "show
19753         window contents while dragging" is turned on. Allocate at least
19754         one unique class for every GdkWindowType. If support for single
19755         window-specific icons is ever needed (eg. Dialog specific), every
19756         such window should get its own class.
19757
19758 1999-08-19  Tor Lillqvist  <tml@iki.fi>
19759
19760         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
19761         error that caused crashes.
19762
19763 1999-08-17  Tor Lillqvist  <tml@iki.fi>
19764
19765         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
19766         window, use ScrollWindowEx, and call UpdateWindow. This prevents
19767         bugs when for instance part of the window was outside the
19768         display. Thanks to Philippe Colantoni for finding and fixing this.
19769
19770 1999-08-16  Tor Lillqvist  <tml@iki.fi>
19771
19772         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
19773         endpoint calculations which were totally wrong. (A little RTFMing
19774         helps a lot ;-)
19775
19776         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
19777         from a separate directory, not from gettext, because of licensing
19778         issues (we want to use the LGPL version).
19779
19780         * README.win32: Mention the intl from glibc vs from gettext issue.
19781
19782 1999-08-13  Tor Lillqvist  <tml@iki.fi>
19783
19784         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
19785         in the key event handling: Now AltGr chars work again. Also,
19786         now Alt-digits are passed up as well as Control-digits.
19787         Pass keypad plus and minus as normal plus and minus.
19788
19789 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
19790
19791         * docs/gtkfaq.sgml: FAQ Update
19792
19793 1999-07-25  Tor Lillqvist  <tml@iki.fi>
19794
19795         * README.win32
19796         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
19797         the Wintab SDK.
19798
19799         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
19800         OK, but getting closer. Guard against bogus tilt data from Wacom
19801         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
19802         enable easier building without Wintab.
19803
19804         * gdk/win32/gdkinput.h
19805         * gdk/win32/gdkevents.c 
19806         * gdk/win32/gdkwindow.c: Minor changes related related to above.
19807         
19808         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
19809         code. As we have just one visual on Win32, no sense to have it in a
19810         table, and no need for the hash table.
19811
19812         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
19813         better on white background.
19814
19815 1999-07-21  Tor Lillqvist  <tml@iki.fi>
19816
19817         * README.win32: Update gcc build instructions. Mention gettext is
19818         GPL.
19819
19820         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
19821         supported cursor size with GetSystemMetrics.
19822
19823         * gdk/win32/gdkfont.c
19824         * gtk/gtkfontsel.c: Guard against some font weight and charset
19825         symbols being undefined (in mingw32 headers).
19826
19827         * gdk/win32/makefile.cygwin
19828         * gtk/makefile.cygwin
19829         * gtk/gtkthemes.c: No longer need to have differently named
19830         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
19831
19832 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
19833
19834         * docs/gtkfaq.sgml: Long awaited FAQ update.
19835
19836 1999-07-15  Tor Lillqvist  <tml@iki.fi>
19837
19838         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
19839         it. Obscure bit manipulation needed.
19840
19841         * gdk/win32/gdkevents.c: Logging.
19842         
19843         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
19844         style (file name include compiler name) for theme engines.
19845
19846 1999-07-13  Tor Lillqvist  <tml@iki.fi>
19847
19848         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
19849
19850         * gdk/win32/gdkevents.c: Fix long-standing bug in key
19851         events. The key.string wasn't zero-terminated, still we strdup'ed
19852         it in gdk_event_copy(). Synthesize crossing events for button
19853         events before possible propagation.
19854
19855         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
19856
19857         * gdk/win32/makefile.cygwin
19858         * gtk/makefile.cygwin: Use new DLL naming style for the
19859         GCC-compiled ones.
19860
19861         * gdk/win32/makefile.msc
19862         * gtk/makefile.msc: Cosmetics mostly.
19863
19864         * gtk/gtk.def: Add missing entry points.
19865
19866         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
19867
19868 1999-07-09  Tor Lillqvist  <tml@iki.fi>
19869
19870         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
19871         or height is zero. Don't print a warning if Pie or Arc fails, they
19872         always fail (?) for very narrow ellipses.
19873
19874         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
19875         the part or the destination window corresponding to source area
19876         outside of the source drawable's boundary.
19877
19878         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
19879         anything if less than two points.
19880
19881         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
19882         return NULL. Gtk cut-and-paste inside a single program works
19883         better this way. (It always gets the clipboard contents from
19884         Windows, not from its own copy, which is cleared anyway. I can't
19885         say I fully understand what happens... Emulating the X selection
19886         and property stuff is a bit of a mess.)
19887
19888         * gdk/win32/gdkevents.c
19889         * gdk/win32/gdkproperty.c: A bit more verbose logging.
19890
19891         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
19892         that never got deleted). Revamp gdk_region_shrink.
19893
19894         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
19895         after use.
19896
19897         * gtk/gtk.def: Add some missing entry points.
19898
19899         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
19900         component.
19901
19902 1999-07-04  Tor Lillqvist  <tml@iki.fi>
19903
19904         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
19905         Control-digits specially.
19906
19907 1999-07-03  Tor Lillqvist  <tml@iki.fi>
19908
19909         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
19910
19911 1999-06-28  Tor Lillqvist  <tml@iki.fi>
19912
19913         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
19914         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
19915         finding this.)
19916
19917 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
19918
19919         * gtk+.spec.in: Corrected some typos in files section.
19920         
19921 1999-06-15  Tor Lillqvist  <tml@iki.fi>
19922
19923         * README.win32: Mention using GNU gettext.
19924         * config.h.win32: Enable NLS stuff.
19925         * gtk/makefile.msc: Use GNU gettext.
19926         * gdk/win32/gdkdnd.c: Minor header reorg.
19927         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
19928         cosmetics.
19929         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
19930         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
19931
19932 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
19933
19934         * acinclude.m4
19935         * config.guess
19936         * config.status
19937         * ltconfig
19938         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
19939
19940 1999-05-30  Tor Lillqvist  <tml@iki.fi>
19941
19942         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
19943         SafeAdjustWindowRectEx. Don't override all calls to
19944         AdjustWindowRectEx by it, but use it only in two places: When
19945         creating a new top-level window and when moving a top-level
19946         window.
19947
19948         Use screen coordinate rectangle, not client rectangle, in
19949         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
19950         when we try to place a window so that the decoration (mainly,
19951         title bar) isn't visible.
19952
19953         These changes fix the bug that showed up for instance as the
19954         GIMP's saved top-level windows moving right and down (by an amount
19955         equal to the window decoration) for each session. This bug showed
19956         up also in testgtk's "Saved Position".
19957
19958         gdk_window_resize also redone a bit.
19959
19960 1999-05-25  Tor Lillqvist  <tml@iki.fi>
19961
19962         * gtk/testgtkrc: Add (commented out) Windows-style theme
19963         include line.
19964
19965         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
19966
19967 1999-05-18  Tor Lillqvist  <tml@iki.fi>
19968
19969         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
19970         gdkx.h to a gdk subdirectory, so that applications can include
19971         these with <gdk/*.h> without trouble.
19972
19973         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
19974         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
19975         have their bitmap destroyed.
19976
19977         * gdk/win32/gdk.def: Add gdk_root_parent.
19978
19979 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
19980
19981         * configure.in
19982           gtk-config.in
19983           ltconfig
19984           ltmain.sh     
19985           gtk/Makefile.am: changes to compile nicely (with xlib) 
19986           on BeOS
19987
19988 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
19989
19990         * acinclude.m4
19991         * config.guess
19992         * config.sub
19993         * ltconfig
19994         * ltmain.sh: upgrade to libtool 1.3
19995
19996 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
19997
19998         * gtk/gtkclist.c:
19999         * gtk/gtkctree.c: merges from gtk-1-2
20000
20001 1999-04-25  Tor Lillqvist  <tml@iki.fi>
20002
20003         Support added for building using a GNU toolchain on Win32,
20004         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
20005
20006         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
20007         * config.h.win32: Changes for gcc.
20008         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
20009         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
20010         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
20011         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
20012         Protect shl stuff unavaiilable with mingw32 headers.
20013         * gdk/win32/gdkevents.c: Fix typo.
20014         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
20015         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
20016         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
20017         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
20018         the mingw32 headers.
20019         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
20020         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
20021         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
20022         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
20023         Test for NATIVE_WIN32, not _MSC_VER.
20024         * gtk/gtkmain.c: No use warning about developer version on Win32,
20025         there aren't any non-developer versions anyhow.
20026         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
20027         * gtk/makefile.msc: Use pthread from another directory. Minor other
20028         changes. 
20029
20030 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20031
20032         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20033           default filter from the list
20034
20035 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
20036
20037         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
20038          when gtk_widget_grab_default() is called for a widget that
20039          is not within a GtkWindow.
20040
20041 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
20042
20043         * docs/gtk_tut.sgml, examples/clist.c: use a
20044           scrolled window in the clist example. Minor
20045           tutorial fixes.
20046
20047 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
20048
20049         * docs/gtk_tut.sgml: Style check from David King
20050           <dking@youvegotmail.net>
20051
20052 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
20053
20054         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
20055         compile with unknown value of GDK_WINDOWING
20056
20057 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
20058
20059         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
20060         after the rule is fired.
20061         (install-exec-local): Install gdkconfig.h only if the contents are
20062         different from the currently installed gdkconfig.h.
20063
20064 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
20065
20066         * gdk/Makefile.am (configexecincludedir): Rename from 
20067         configincludedir so that gdkconfig.h will be installed 
20068         as part of `make install-exec'. 
20069
20070 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
20071
20072         * acinclude.m4
20073         * config.guess
20074         * config.sub
20075         * ltconfig
20076         * ltmain.sh: upgrade to libtool 1.2f
20077
20078         * autogen.sh: libtool is not required to autogen gtk+
20079
20080         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
20081         needed)
20082
20083 1999-03-18  Tor Lillqvist  <tml@iki.fi>
20084
20085         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
20086         declaring gdk variables exported/imported from the DLL. New image
20087         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
20088         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
20089         GDK_DRAG_PROTO_OLE2.
20090
20091         * gdk/gdk.h: Merge in Win32 version: Two new functions,
20092         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
20093         declared only for the Win32 version, but could be in the X11
20094         version as well. (Needed for a Xlib-less gdk_imlib.)
20095         gdk_color_hash should have only one parameter. Declare
20096         gdk_threads_mutex with GDKVAR.
20097         
20098         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
20099         just one parameter.
20100
20101         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
20102         per pixel, not bits.
20103
20104         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
20105         Fetch bpp (which means bits-per-pixel here) from another place on
20106         Win32. Accept also depth==32 (which we might get on Win32) with
20107         bpp==32.
20108
20109         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
20110         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
20111         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
20112         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
20113         in the backend-dependent directory, not in the common gdk
20114         directory.
20115
20116         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
20117         headers.
20118
20119 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
20120
20121         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
20122         want to use the Gtk+ devel version (which is true, and yes - even i am
20123         currently working with the 1.2.x branch). so everyone reading this, you
20124         probably want to issue
20125         cvs checkout -r glib-1-2 glib
20126         and
20127         cvs checkout -r gtk-1-2 gtk+
20128         as your next two comands.
20129
20130 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
20131
20132         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
20133         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
20134
20135         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
20136         file. strongly deprecated the GTK_HAVE_* macros, we provide
20137         GTK_CHECK_VERSION() for people that need to check for certain
20138         Gtk+ versions.
20139
20140         * gtk/gtkcompat.h: removed this from CVS.
20141         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
20142         idea right from the start, it just didn't seem like that back then.
20143
20144 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
20145
20146         * merges from gtk-1-2:
20147
20148 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
20149
20150         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
20151         item factory class has been created.
20152         (gtk_item_factory_parse_rc): likewise.
20153
20154         * gtk/gtkmenu.c:
20155         keep proper references for old_active_menu_item.
20156         (gtk_menu_reparent): unset the usize of the new parent,
20157         so the menu can sanely be size requested and we don't get nasty screen
20158         artefacts upon next reparentation.
20159         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
20160         enter notify. only synthesize enter notifies if the pointer really is
20161         inside the event window.
20162         (gtk_menu_popdown): use gtk_menu_shell_deselect().
20163         (gtk_menu_popup): move the background setting stuff into
20164         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
20165
20166         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
20167         gtk_menu_shell_select_item() to select the new item.
20168         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
20169         do the right thing for deselection as well.
20170
20171 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
20172
20173         * gtk/gtkwidget.[hc]:
20174         (gtk_widget_accelerators_locked): return whether a widget's accelerators
20175         are locked.
20176
20177         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
20178         existing accelerators if the widget's accelerators are locked.
20179
20180 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
20181
20182         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
20183
20184         * gtk/gtkmenu.c: truely forward key press and key release events to
20185         the menu widget from the toplevel or tearoff window. we can't simply
20186         connect to that, we need to stop further processing of the events as
20187         well.
20188
20189 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
20190
20191         * gtk/gtkmenu.c:
20192         (gtk_menu_key_press): pass event->keyval, event->state to
20193         gtk_accelerator_valid, instead of event->keyval twice.
20194         refuse to install single letter accelerators for menus that use
20195         single letter shortcuts.
20196
20197         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
20198         gtk_menu_ensure_uline_accel_group().
20199
20200         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
20201         which will always return an uline accel group, made
20202         gtk_menu_get_uline_accel_group() return NULL if the group isn't
20203         yet created.
20204
20205 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
20206
20207         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
20208
20209         * gtk/gtkclist.c (gtk_clist_column_title_passive):
20210         Leave button sensitive, trap  button_press, button_release,
20211         motion_notify, enter_notify and leave_notify events instead.
20212         (gtk_clist_column_title_active): disconnect event handler.
20213         (gtk_clist_drag_data_get): fixed memory leak. Reported by
20214         Guillaume Laurent <glaurent@worldnet.fr>
20215
20216 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
20217
20218         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
20219         width/height mixups.
20220
20221         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
20222         if needed.
20223
20224 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
20225
20226         * gtk/testgtk.c (create_item_factory): unref the item factory after
20227         window's destruction.
20228
20229         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
20230         count on the menu shell around the menu item's activation, since the
20231         signal emission may cause menu shell destruction.
20232
20233         * gtk/gtkitemfactory.c:
20234         the previous code leaked one accel group per menu. we use
20235         gtk_menu_get_uline_accel_group() now to fix that, and with that
20236         also create the underline accelerator group of the menus only if
20237         required (i.e. an underline accelerator has been specified).
20238         (gtk_item_factory_construct):
20239         (gtk_item_factory_create_item): removed code that would create an
20240         extra accel group for the menu (and leak references).
20241         (gtk_item_factory_create_item): adapted the underline accelerator
20242         installation code to properly feature gtk_menu_get_uline_accel_group().
20243
20244         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
20245         menu->accel_group, this may return NULL if the accelerator group
20246         hasn't been set yet.
20247         added gtk_menu_get_uline_accel_group() to retrive the underline
20248         accelerator group of the menu, this will be created on demand
20249         and proper care is taken about its reference count.
20250
20251         * gtk/gtkitemfactory.h:
20252         * gtk/gtkitemfactory.c:
20253         dumped the approach of keeping a widgets by action list on the
20254         factory since the factory<->widget destroy negotiation didn't work
20255         and would be hard to get going at all. instead we keep a list of
20256         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
20257         persistant throughout a program's life time).
20258         also, i removed the static const gchar *key_* variables, and made
20259         them inline strings (they weren't actually used anyways).
20260         (gtk_item_factory_add_item): update ifactory->items.
20261         (gtk_item_factory_destroy): destroy ifactory->items (and remove
20262         the item factory pointer from the remaining ifactory widgets).
20263         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
20264         list to find the widget.
20265         (gtk_item_factory_get_item): new function that works around
20266         gtk_item_factory_get_widget() limitations, this function will only
20267         return menu items, even for <Branch> entries.
20268
20269 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20270
20271         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20272         font hash table, if we have a GdkFontPrivate entry for this font
20273         already, simply increment its reference count, provided by Olaf Dietsche
20274         <olaf.dietsche+list.gtk@netcologne.de>.
20275
20276         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
20277         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
20278
20279 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
20280
20281         * gtk/gtkcontainer.c:
20282         (gtk_container_add_with_args):
20283         (gtk_container_addv):
20284         (gtk_container_add): before adding a child to a conatiner, make sure
20285         it is (default) constructed, this is neccessary because under certain
20286         circumstances the child will get relized and mapped immediatedly, in
20287         which case it has to be constructed already.
20288
20289 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
20290
20291         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
20292         values > 1 as TRUE also.
20293
20294 1999-03-16  Tor Lillqvist  <tml@iki.fi>
20295
20296         * README.win32: New file.
20297                 
20298         * configure.in: Check for lstat.
20299
20300         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
20301         completeness.
20302
20303         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
20304
20305         * gtk/gtk.def: Removed CRs.
20306
20307         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
20308         ..\gdk\win32).
20309
20310         * gdk/win32/makefile.msc: Correct upwards relative paths.
20311         
20312 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
20313
20314         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
20315           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
20316           it was connecting a void function to expose_event and the int
20317           returning function to the draw signal
20318
20319 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
20320
20321         * configure.in:
20322         Use correct path to libgmodule.la when ref'ing uninstalled copy
20323         of glib.  (Already in stable branch, Bug #417)
20324
20325 1999-03-15  Tor Lillqvist  <tml@iki.fi>
20326
20327         Win32 merge and general portability stuff:
20328                 
20329         * acconfig.h,configure.in: Check for <sys/time.h>.
20330
20331         * gdk/win32: New directory (actually, been there for a while).
20332         
20333         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
20334         NATIVE_WIN32, and use these. Always case fold on Win32. No
20335         backslashed escapes on native Win32.
20336
20337         * gtk/{gtk.def,makefile.msc}: New files.
20338
20339         * gtk/Makefile.am: Add above new files.
20340         
20341         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
20342         instead of <strings.h>.
20343
20344         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
20345         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
20346         <unistd.h> appropriately.
20347
20348         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
20349         Use ABS() (from <glib.h>) instead of abs().
20350         
20351         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
20352         of gtk (and thus glib) headers, so that WIN32 will be
20353         defined. With MS C, include <direct.h> for mkdir prototype.
20354
20355         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
20356         some casts, needed by MS C.
20357
20358         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
20359         implemented).
20360
20361         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
20362         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
20363         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
20364
20365         * gtk/gtkmain.h: Mark variables for export/import on Win32.
20366                 
20367         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
20368         the event is not a hint, or its window is not the slider. Needed
20369         on Win32, at least.
20370
20371         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
20372         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
20373         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
20374         a subdirectory of the Windows directory as gtk system
20375         configuration directory.
20376
20377         * gtk/gtkselection.c: No chunks on Win32.
20378
20379         * gtk/gtksocket.c: Not implemented on Win32.
20380
20381         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
20382
20383         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
20384
20385         * gtk/maketypes.awk: Declare variables with a macro that expands to
20386         necessary export/import magic in the case of Win32.
20387                 
20388         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
20389
20390 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
20391
20392         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
20393         since those were meant only for gdki18n.h.  
20394         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
20395         for widechar tests.
20396         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
20397
20398 1999-03-13  Tor Lillqvist  <tml@iki.fi>
20399
20400         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
20401         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
20402
20403         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
20404         installed) to CFLAGS.
20405
20406         * gdk/Makefile.am: Add rules for gdkconfig.h.
20407
20408         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
20409         APIs.
20410
20411         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
20412         gdkx.h anyway when compiling for X11.
20413         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
20414         general): Merge in Win32 version.
20415         
20416         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
20417         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
20418         expansion (if we don't have HAVE_PWD_H), allow for drive
20419         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
20420         included code from Craig Setera's port to Win32 (the one that uses
20421         X11, and the cygwin dll), even if it probably will be abandoned.
20422
20423         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
20424         the user entered one herself.  This way one can complete *.h and
20425         don't get matches on any .help files, for instance.
20426         
20427 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
20428
20429         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
20430         font hash table, if we have a GdkFontPrivate entry for this font
20431         already, simply increment its reference count, provided by Olaf Dietsche
20432         <olaf.dietsche+list.gtk@netcologne.de>.
20433
20434         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
20435         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
20436
20437 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
20438
20439         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
20440         the number of calls to gdk_draw_point() (and thus to X) by
20441         clipping the points by hand.
20442
20443         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
20444         the clip parameter.
20445         (gtk_handle_box_paint): Only paint the handle if the expose area
20446         intersects it.
20447
20448 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
20449
20450         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
20451
20452 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
20453
20454         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
20455         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
20456
20457 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
20458
20459         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
20460          textmode (O_TEXT) for OS/2 version.
20461
20462 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
20463
20464         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
20465         GtkSpinButton, "input" and "output", to make the output more flexible.
20466         The user has to provide a mapping between adjustment->value and the
20467         output string (and vice versa, if the spin button is editable). 
20468         See testgtk for examples.
20469
20470 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
20471
20472         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
20473         new one.
20474         
20475         * configure.in: set gtk+ version to 1.3.0.