]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Updates.
[~andy/gtk] / ChangeLog.pre-2-2
1 2001-10-29  Tor Lillqvist  <tml@iki.fi>
2
3         * README.win32: Updates.
4
5         * gtk-zip.sh.in: New file, used to build distribution package for
6         Windows.
7
8         * gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
9         applicable with GDKVAR.
10
11         * gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
12         Wintab library.
13
14         * gdk/win32/gdkwin32.h
15         * gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
16         X11 headers better, and to enable gdkwin32.h to be installed and
17         included from applications, but not the *-win32.h headers.
18
19         * gdk/win32/*.c: Corresponding small changes, simplifications of
20         #includes.
21         
22         * gdk/win32/gdkregion-win32.c: Remove.
23
24         * gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.
25
26         * gdk/win32/gdkfont-win32.c
27         * gdk/win32/gdkgeometry-win32.c: Remove unused variables.
28
29         * gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
30         GDK_NONE values into hash table.
31
32         * gtk/gtk.def: Update.
33
34         * gtk/gtkfilesel.c: Include <winsock.h> (if available) for
35         gethostname().
36
37         * gtk/gtkmain.c 
38         * gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
39         entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
40         GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
41         g_win32_get_package_installation_subdirectory() with the actual
42         DLL name saved above. Redefine above directory name macros to call
43         these functions. Remove some ifdefs.
44
45         * gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
46         variable for export on Win32) also to the _vars file.
47
48         Changes for autoconfiscated build on Win32, and addition of Win32
49         backend to the related files:
50         
51         * configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
52         when forming DLL name in some files. Set MS_LIB_AVAILABLE is
53         lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
54         PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
55         win32 target, using pangowin32. Don't use the
56         -export-symbols-regex option on Win32, we use .def files to list
57         exported symbols. Check <winsock.h> (for gethostname() in
58         gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
59         prevent premature m4 expansion.
60
61         * acconfig.h: Add HAVE_WINTAB.
62
63         * gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
64         macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
65         MS_LIB_AVAILABLE, build MS import library. Install the import
66         libraries. If HAVE_WINTAB, link with the Wintab library.
67
68         * gdk/win32/Makefile.am: Actually enable building the win32
69         objects here, not just list all files in EXTRA_DIST. Link in the
70         compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
71         copy the Wintab library into the .libs directory. 
72
73         * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
74         name of the GDK DLL when fetching the icon. Use the HMODULE saved
75         in gdk_dll_hinstance by DllMain.
76
77         * gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
78         build/win32/lt-compile-resource script.
79
80         * gdk/win32/rc/gdk.rc.in
81         * gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
82
83         * gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
84         macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
85         file. Install import libraries.
86
87 2001-10-29  Anders Carlsson  <andersca@gnu.org>
88
89         * gtk/gtkiconfactory.c (get_default_icons): Fix build.
90
91 2001-10-28  Hans Breuer  <hans@breuer.org>
92
93         * gdk/gdk.c gdk/gdkevents.c
94           gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
95           gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
96           gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
97           gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
98           gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
99           gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
100           gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
101         static correct-ness, underscore prefixing of library internal 
102         functions
103         (applied the undisputed and the win32 part. Of the latter 
104          I'm probably the one who will change it back again, if Owen
105          decides that the Gdk*Impl types should not be private to Gdk)
106
107         * gdk/gdk.def : added the remaining exported functions
108
109 2001-10-28  Matthias Clasen  <matthiasc@poet.de>
110
111         * gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
112         gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
113         gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.
114
115 2001-10-28  jacob berkman  <jacob@ximian.com>
116
117         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
118         gtk_settings_get_default() here as that requires an X connection
119         (which breaks doc building with no X connection) and is not
120         multihead safe
121         (gtk_color_selection_init): delay palette loading until realize
122         time
123         (gtk_color_selection_realize): load the palette, and initialize
124         the global palette if it hasn't been already
125
126         * gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
127         visual/cmap fields of klass->info since they are gone
128         (gtk_preview_get_visual): just return gdk_rgb_get_visual ()
129         (gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
130         (gtk_preview_realize): don't set VISUAL and COLORMAP attributes
131
132         * gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
133         cmap fields
134         (gtk_preview_get_visual):
135         (gtk_preview_get_cmap): mark as deprecated
136
137         * docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
138         changes
139
140 Sun Oct 28 09:15:39 2001  Owen Taylor  <otaylor@redhat.com>
141
142         * gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
143         structure to have GObject not GtkObject as
144         parent_instance. (Jeff Franks.)
145
146 2001-10-27  Matthias Clasen  <matthiasc@poet.de>
147
148         * gdk/x11/gdkinput.c: Typo fix.
149
150 2001-10-26  Havoc Pennington  <hp@pobox.com>
151
152         * gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
153         update_im_spot_location here explicitly
154         (gtk_text_view_reset_im_context): don't update the spot location
155         here
156
157 2001-10-27  Anders Carlsson  <andersca@gnu.org>
158
159         * gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
160         This fixes #62942.
161
162         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): 
163         Clarify that we're returning a spin button in the _new function.
164         This fixes #54097.
165         
166 Fri Oct 26 20:55:57 2001  Owen Taylor  <otaylor@redhat.com>
167
168         * gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST. 
169         Unfortunately, people apparently erroneously connect
170         to ::clicked for GtkToggleButton and expect
171         they know what happened in the default signal handler
172         instead of appropriately connecting to notification
173         signal ::toggled. When the revolution comes, such
174         people will be first against the wall.
175
176         We'll just have to go back to the old less-reliable
177         set-it-back hacks for handling model-view check
178         buttons and radio buttons. :-(. 
179
180 2001-10-27  Hans Breuer  <hans@breuer.org>
181
182         * gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
183           gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
184           gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
185           gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
186           gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
187           gtk/gtktreestore.c gtk/gtkvbbox.c : 
188         to simplify parsing for exported functions:
189         - made implementation signature static, when the local 
190           prototype already was
191         - put the functions return value on it's own line
192         - added as space between the function name and the 
193           opening bracket
194
195         * gtk/gtk.def : added the remaining exported functions
196
197 2001-10-27  Anders Carlsson  <andersca@gnu.org>
198
199         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
200         Add note about width having to be greater than 0. This fixes
201         #55574. 
202
203         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start): 
204         Fix docs to say previous instead of next.
205         (gtk_text_iter_backward_word_start): Likewise.
206         This fixes bug #62980.
207
208         * gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
209         that the valid width is in range 0-65535 pixels. Fixes bug 
210         #56754.
211
212         * gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
213         a dot in the documentation. Fixes bug #62632.
214
215         * gdk/x11/gdkmain-x11.c: Replace int and guint with
216         long and gulong in some places to make the code 64-bit
217         clean.
218         (_gdk_windowing_init_check): Replace gint with gulong.
219         This patch was made by George Lebl and fixes bug #62113.
220
221         * tests/testgtk.c (create_range_controls): Don't set a 
222         fixed height on the hscale widget. This fixes "bug" 
223         #55840.
224         (create_window_states): Set up destroy signals so that
225         all windows will be destroyed when one is. This fixes 
226         bug #58133.
227
228 2001-10-26  Anders Carlsson  <andersca@gnu.org>
229
230         * gtk/gtktreeview.c: 
231         (gtk_tree_view_class_init): Create new "indent_expander"
232         style property.
233
234         (gtk_tree_view_get_arrow_xrange): Add a tree argument
235         to the function since the xrange can change depending
236         on where in the tree we are. 
237         
238         (coords_are_over_arrow): Update function call to
239         gtk_tree_view_get_arrow_xrange.
240         (gtk_tree_view_draw_arrow): Likewise.
241         
242         (gtk_tree_view_real_expand_collapse_cursor_row):
243         Call real_{expand|collapse}_row, so that we'll have an
244         animation.
245
246 Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>
247
248         * tests/Makefile.am: fixed a small typo
249
250 Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>
251
252         * demos/gtk-demo/list_store.c (create_model): Anders
253         Carlsson suggested to use G_N_ELEMENTS here
254
255 2001-10-26  Sven Neumann  <sven@gimp.org>
256
257         * gtk/gtkbutton.[ch]
258         * gtk/gtkdnd.c: fixed inline comments
259         
260         * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
261
262 2001-10-26  Hans Breuer  <hans@breuer.org>
263
264         * gdk-pixbuf/gdk_pixbuf.def : 
265         * gdk/gdk.def : 
266         * gtk/gtk.def : updated externals
267
268         * gdk/win32/gdkpixmap-win32.c : removed duplicate of
269         gdk_window_lookup implementation. It already was in
270         gdk/win32/gdkwindow-win32.c
271
272         * gdk/win32/gdkproperty-win32.c : made it compile again
273         after GdkAtom API change
274
275         * gtk/gtk/makefile.msc.in : updated
276
277 Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>
278
279         * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
280         require GLib 1.3.10.
281
282         * NEWS: updates.
283
284 Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>
285
286         * gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
287         invalid nodes.
288          (_gtk_rbnode_rotate_right): Ditto.
289          (_gtk_rbtree_node_mark_invalid): New function.
290          (_gtk_rbtree_node_mark_valid): New function.
291
292         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
293         GObject, not a GtkObject.
294         (gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
295         correct.
296         (gtk_tree_model_sort_row_deleted): ditto.
297         (gtk_tree_model_sort_{un,}ref_node): Fix.
298
299         * gtk/gtktreeview.c: Protean incremental reflow support (commented
300         out)
301
302         * gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
303         to const char *key.
304
305         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
306         Important 1 line fix to fix a lot of refcounting woes.
307
308 2001-10-25  Matt Wilson  <msw@redhat.com>
309
310         * gtk/gtktextview.c (gtk_text_view_destroy): call
311         gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
312         now invalidates) so that we remove our idle functions.
313         (gtk_text_view_destroy_layout): remove the first_validate_idle as
314         well.
315
316         * gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
317         the 'indent' property is G_MININT to G_MAXINT.  Don't use
318         -G_MAXINT for the minimum of the 'rise' property, use G_MININT
319         instead.
320
321 2001-10-24  Anders Carlsson  <andersca@gnu.org>
322
323         * gtk/gtktreeview.c: 
324         (gtk_tree_view_real_expand_row): add an animate argument
325         (gtk_tree_view_real_collapse_row): likewise
326         
327         (gtk_tree_view_button_press), (gtk_tree_view_button_release), 
328         (gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
329         (gtk_tree_view_collapse_row): update functions that call
330         real_{expand|collapse}_row to set the animate argument 
331         accordingly.
332         
333 2001-10-24  Alex Larsson  <alexl@redhat.com>
334
335         * gdk/linux-fb/gdkfont-fb.c:
336         Update to new Pango APIs
337
338         * gdk/linux-fb/gdkproperty-fb.c:
339         Update to new GdkAtom APIs
340
341         * gdk/linux-fb/gdkwindow-fb.c:
342         Remove warnings
343
344 Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>
345
346         * gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
347
348 Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>
349
350         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
351         s_path as a child path
352
353 Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>
354
355         * gtk/gtktreemodelsort.c: more changes in an attempt to get
356         it right. It's not yet ready for general consumption.
357
358         * tests/treestoretest.c: add a button and entry for the new
359         iter_change function
360         (iter_change): new function, to test
361         the row_changed signal implementation of the GtkTreeModelSort
362
363         * tests/testtreesort.c: cleanups, changes to test more features
364         of the GtkTreeModelSort at once
365
366 2001-10-24  Havoc Pennington  <hp@redhat.com>
367
368         * gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
369         remove hack to strip off the bogus newline, since we killed the
370         bogus newline; fixes #61779
371
372 2001-10-24  Havoc Pennington  <hp@redhat.com>
373
374         * gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
375         create layout if we didn't have one
376         (gtk_text_view_set_buffer): invalidate so we get the idle handlers
377         as appropriate, avoids blanking the screen 
378         (gtk_text_view_invalidate): new function to do invalidation,
379         containing old guts of invalidated_handler
380
381 Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>
382
383         * gtk/gtkalignment.c (gtk_alignment_class_init): Improve
384         dreadful tooltips.
385
386 Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>
387
388         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always 
389         set window->parent (except or the root window itself); if 
390         the window's parent is not a GdkWindow, or is a window of 
391         type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
392
393         * gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
394         windows of type GDK_WINDOW_FOREIGN.
395
396 2001-10-24  Havoc Pennington  <hp@pobox.com>
397
398         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
399         the front of a segment, use the "slow" technique for moving
400         backward, so we don't mess up the any_segment field in the iter. 
401         Fixes #57707
402
403         * tests/testtextbuffer.c: add code to detect #57707, to avoid
404         regression
405
406 2001-10-23  Havoc Pennington  <hp@redhat.com>
407
408         * gtk/gtktextview.c (popup_targets_received): only sensitize Cut
409         if selection contains some editable text, #60975
410         (gtk_text_view_scroll_to_iter): remove warning about scrolling
411         prior to map; it should actually be OK to do so in many cases, 
412         it would be nice to warn about scrolling when many lines have
413         height 0, but I don't know what to do about that. Perhaps 
414         move part of flush_scroll into this function? comment added 
415         to consider this.
416
417 2001-10-23  Havoc Pennington  <hp@redhat.com>
418
419         * gtk/gtktextview.c (changed_handler): Correctly keep the same
420         text on the top of the screen, considering that the changed region
421         may have overlapped the first paragraph. Should fix msw's "text
422         widget scrolled to wrong place on map" bug, and probably some
423         other scrolling cases as well.
424         (gtk_text_view_set_scroll_adjustments): start adjustments at 0.0, 
425         instead of some random value
426
427         * gtk/gtktextview.c (gtk_text_view_class_init): actually override
428         grab_focus, so #59708 is really fixed
429
430 2001-10-24  Anders Carlsson  <andersca@gnu.org>
431
432         * gtk/gtkentry.c: (append_action_signal): Use an image menu item here
433         (popup_targets_received): Call append_action_signal with stock items
434         
435         * gtk/gtklabel.c: (append_action_signal): Use an image menu item here
436         (gtk_label_do_popup): Call append_action_signal with stock items
437         
438         * gtk/gtktextview.c: (append_action_signal): Use an image menu item here
439         (popup_targets_received): Call append_action_signal with stock items
440
441 2001-10-23  Havoc Pennington  <hp@redhat.com>
442
443         * gtk/gtktextview.c (changed_handler): queue a resize here; will
444         temporarily slow down the widget a lot, until we figure out how to
445         optimize to avoid full redraw everytime we queue a resize.
446
447 2001-10-23  Havoc Pennington  <hp@redhat.com>
448
449         * gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
450         0 and char_len == 0, bug #61729
451
452 2001-10-23  Havoc Pennington  <hp@redhat.com>
453
454         * gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
455         return value, #61714 (Vitaly Tishkov)
456         (gtk_text_iter_backward_sentence_starts): ditto
457         (gtk_text_iter_backward_word_starts): ditto
458         (gtk_text_iter_forward_word_ends): ditto
459         (gtk_text_iter_forward_sentence_ends): ditto
460         (gtk_text_iter_backward_cursor_positions): ditto
461
462 2001-10-23  Havoc Pennington  <hp@redhat.com>
463
464         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
465         fix from Dov Grobgeld, #61858
466
467 2001-10-23  Havoc Pennington  <hp@redhat.com>
468
469         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location): 
470         Update IM spot location at appropriate times, #50626
471         (Hidetoshi Tajima)
472
473 2001-10-23  Havoc Pennington  <hp@redhat.com>
474
475         * gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
476         on grab focus, unless it's caused by button click, #59708
477
478 Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>
479
480         * gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.
481
482         * gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
483         G_CONST_RETURN. (Murray Cumming)        
484
485         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
486         Make G_CONST_RETURN.
487
488         * gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
489         results of g_get_home_dir().
490
491         * gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated 
492         copy. Storing the return from gtk_entry_get_text() is evil.
493
494         * gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c 
495         gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c 
496         gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
497         gtk/gtksignal.c: Add const.
498
499         * gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.
500
501         * gtk/gtktreeview.c: Namespace object data keys to be safe, even 
502         if we are setting them on private widgets.
503
504         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
505         Duplicate entry->text before setting it as object data.
506
507 2001-10-22  Havoc Pennington  <hp@redhat.com>
508
509         * gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
510         up a char from the end iterator, fixes #61859 ("can't put cursor
511         at the end of the buffer")
512
513         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
514         to work with delimiters other than newline.
515
516         * tests/testtextbuffer.c: add some tests for get_chars_in_line,
517         get_bytes_in_line
518
519         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
520         last line, since the newline is no longer counted.
521         (gtk_text_iter_get_bytes_in_line): ditto
522
523 2001-10-22  Havoc Pennington  <hp@redhat.com>
524
525         * gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that 
526         #58290 would trigger if it reappeared, I think
527
528 2001-10-22  Havoc Pennington  <hp@redhat.com>
529
530         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
531         add temporary code to dump btree contents on assertion failure
532         described in #62656
533         
534         * gtk/gtktextbtree.c (ensure_end_iter_segment): add some
535         assertions that we're getting the right end iter segment
536
537         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
538         verify that we aren't on the end iterator after moving 
539         forward one segment - fixes return value in an obscure case. 
540         Also, some trivial code cleanup/rearranging.
541         
542 2001-10-22  Havoc Pennington  <hp@redhat.com>
543
544         * gtk/gtktextlayout.h: add a #error unless you define
545         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally
546
547         * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
548         
549 2001-10-22  Havoc Pennington  <hp@redhat.com>
550
551         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix 
552         #62365
553
554 2001-10-22  Havoc Pennington  <hp@redhat.com>
555
556         * gtk/gtktextview.c (gtk_text_view_get_window_type): fix 
557         #62436
558
559 2001-10-22  Havoc Pennington  <hp@redhat.com>
560
561         * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix 
562         #62366
563
564 Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>
565
566         * gtk/gtklabel.c: Add cursor-position, selection-bound 
567         properties. (#62148, reported by Padraig O'Briain)
568
569         * gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
570         to cursor_position. (1.3.x addition, text_position is an awful
571         name.) Make cursor_position read-only to avoid sticky questions
572         of interaction with selection_bound. (#62636, reported by
573         Padraig O'Briain)
574
575 Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>
576
577         Fixing popup menus to have "Paste" sensitized correctly. Original
578         patches from Damian Ivereigh, much mangled.
579
580         * gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
581         gtk_selection_data_targets_include_text(). (#60854)
582
583         * gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
584         the clipboard has text" function gtk_clipboard_wait_is_text_available.
585         (#60854)
586
587         * gtk/gtkentry.c: Only enable the paste item if the clipboard
588         contains text. (#60973)
589
590         * gtk/gtktextview.c: Only enable the paste item if the clipboard
591         contains text. (#60975)
592
593 2001-10-22  Havoc Pennington  <hp@redhat.com>
594
595         * gtk/gtktextview.c (gtk_text_view_class_init): rip out
596         "height_lines" and "width_columns" properties, it doesn't make
597         sense to set the size request on a text view really. #62103
598
599 Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>
600
601         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
602         g_node_depth is broken, and that it's not worth being consistent
603         with it.
604
605 2001-10-22  Havoc Pennington  <hp@redhat.com>
606
607         * gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
608         docs, #61777
609         (gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
610         change the two boolean args to a flags field, so we can extend 
611         to add case insensitive, regexp searches later. #61852
612
613 Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>
614
615         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
616         reflect reality, #62810
617
618 Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>
619
620         * demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
621
622         * gtk/gtktreeview.c (size_allocate): Move to a different drawing
623         system.  Instead of having a window the size of the tree, we have
624         a window the size of widget->allocation, and simply draw with the
625         offset.
626         (coords_are_over_arrow): ditto.  Move to window coordinates.
627         (do_prelight): ditto
628         (do_unprelight): ditto
629
630         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
631         Minor fix from Kristian Rietveld to fix unsorted case.
632
633 2001-10-22  jacob berkman  <jacob@ximian.com>
634
635         * gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
636         a PIXMAP cell (fixes crash when using PIXTEXT cells)
637
638 Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
639
640         * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
641         (#58768, Vitaly Tishkov)
642         
643         * gtk/gtkobject.h: Deprecate with abandon. 
644         (#61942, Vitaly Tishkov, Matthias Clasen)
645
646         * gtk/gtksignal.h: Deprecate everything.
647
648         * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
649         all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
650         (#61942, Matthias Clasen)
651
652         * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
653         Havoc Pennington)
654
655         * gtk/gtkitemfactory.h: Deprecate compat functions
656         for GtkMenuFactory code. (#62071)
657
658         * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
659         gdk_draw_text,gdk_draw_text_wc. (#62071)
660
661 Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>
662
663         * gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
664         g_thread_init(), we don't want to link to -lgthread if we don't
665         have to.
666
667 Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>
668
669         * gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt: 
670         Add a function, gdk_threads_init() that must be explicitely 
671         called to enable the GDK thread mutex.
672
673 2001-10-22  Jakub Steiner <jimmac@ximian.com>
674
675         * gtk/stock-icons/stock_stop.png: no body parts
676         
677 Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>
678
679         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
680         problem with g_return_if_fail return value.
681
682         * gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the 
683         virtual atom code from the gdk-multihead branch, removing the per-display
684         part. Virtualizing atoms needs to be done now to prevent compat
685         breakage in direct Xlib accessing code in the future. (#62208)
686  
687         * gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
688         gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().
689  
690         * gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
691         an opaque pointer type so the compiler catches attempts
692         to mingle it with X atoms.
693
694         * gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
695           gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c, 
696           gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
697           gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
698           tests/testdnd.c,tests/testselection.c: 
699         Fix up for above atom changes.
700
701         * gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
702         now have the ability to add custom predefines.
703
704         * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
705         Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
706         to gtk_clipboard_get().
707
708         * gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
709         for GdkAtom => pointer change.
710
711         * gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
712         atoms, fix for GdkAtom => pointer change.
713
714 Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>
715
716         * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
717         new function spin_button_get_arrow_size() instead.
718
719         * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
720         arrow was hardcoded, it's now variable.
721
722         Fixes bug #50200
723
724 Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>
725
726         * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
727         PROP_EXPANDER_COLUMN can be NULL, so don't do a object cast check
728         for those
729
730 Sat Oct 20 19:38:16 2001  Owen Taylor  <otaylor@redhat.com>
731
732         * demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
733         in favor of g_signal_*, gtk_object_* in favor of 
734         g_object_*.
735
736 Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>
737
738         * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
739         from GObject now, we have to use the g_object_* functions, not
740         gtk_object_*.
741
742 Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>
743
744         * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
745         nailed down now (this code is not yet ready for general consumption)
746
747 Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>
748
749         * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
750         for use_align
751
752 Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>
753
754         * gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
755
756 Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>
757
758         * gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
759         modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
760         imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
761         GObject, not GtkObject. (#62621)
762
763 Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>
764
765         * tests/testsocket.c: Remove now useless include of unistd.h,
766         fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
767         
768 Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>
769
770         * gdk/linux-fb/gdkfont-fb.c: Fix up for change to 
771         Pango font API. #61933. (Untested, even for compilation.)
772
773 Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>
774
775         * gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
776         export gtk_disable_setlocale(). (Caught by Sven Neumann)
777
778 2001-10-18  Havoc Pennington  <hp@redhat.com>
779
780         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
781
782 2001-10-18  Havoc Pennington  <hp@redhat.com>
783
784         * gtk/gtkbutton.c (gtk_button_class_init): Change button signals
785         to GTK_RUN_LAST, #50239
786
787 2001-10-18  HideToshi Tajima  <hidetoshi.tajima@sun.com>
788
789         * gtk/gtkimmodule.c (match_locale):
790         Support "*" for all locales with least priority
791         when to select default im module, #58201
792
793 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
794
795         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): 
796         Fix docs. (#61976)
797  
798         * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)
799
800         * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
801
802         * gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
803         gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
804         gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
805         gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
806         gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
807         Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
808         and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)
809
810         * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
811
812         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): 
813         Don't restrict the width of the spinbutton entry field 
814         to 10 digits. (#58681)
815
816 Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>
817
818         * tests/testtreeflow.c: new test program for the tree.
819
820 Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>
821
822         * gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
823         reported by (Oleg Maiboroda), #62600
824
825 2001-10-18  Michael Meeks  <michael@ximian.com>
826
827         * gtk/gtkentry.c (gtk_entry_set_property),
828         (gtk_entry_get_property): impl 'text'
829         (gtk_entry_class_init): add the 'text' prop.
830         (gtk_entry_insert_text): notify 'text' changed.
831         (gtk_entry_delete_text): ditto.
832
833 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
834
835         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
836         Documentation updates.
837
838 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
839
840         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
841         in truncating length of text to MAX_SIZE. (Found by 
842         Padraig O'Briain, #62055)
843
844 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
845
846         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
847         MNEMONIC_ACTIVATE; signal was changed a long time
848         ago.
849
850         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
851         Fix wrong return statement. (Reported by HideToshi
852         Tajima and others.)
853
854         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
855         left over select_all vfunc.
856
857 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
858
859         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
860         a utility function to translate coordinates relative to
861         one widget's allocation to coordinates relative to another
862         widget's allocation.
863
864         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
865         that:
866          - only accepts external focus if there is no active
867            member of the group or the button is active.
868          - makes arrow keys move the active button as well
869            as the focus
870          - make tab tab out directly.
871         This makes a radio button group act as a single focus location.
872         (#53577).
873         
874         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
875         it was only a small optimization that didn't matter and made
876         things more complicated.
877
878         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
879         sorter for FOCUS_TAB as we did for the other focus directions,
880         sort by center of widgets, not upper-left corner. (Shouldn't
881         matter in general.)
882
883         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
884         from the different types of focusing: encapsulate sorting the
885         widgets for the focus direction into one routine
886         (gtk_container_focus_sort()) and then share the work of moving the
887         focus between the different focus directions.
888
889         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
890         work correctly with focus chains containing non-immediate
891         children. Sorting was being done using allocation coordinates for
892         each widget in the focus chain, and if there were intermediate
893         window-widgets, these allocations would not be in the same
894         coordinate system.
895
896 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
897
898         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
899         mnemonic_activate function to option menu.
900
901 2001-10-15  Murray Cumming <murrayc@usa.net>
902
903         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
904           Corrected the type names used in some calls to g_signal_new().
905         
906 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
907
908         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
909         specs, use g_pattern_spec_equal() instead of direct field accesses.
910         upon compressing two equal paths of the same type, the resulting
911         priority has to be the maximum.
912         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
913         GtkPathPriorityType enum and make it a macro.
914
915 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
916
917         * gtk/gtkwidget.c: Fix some doc comments.
918
919 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
920
921         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
922         on empty models.
923
924 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
925
926         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
927         Remove stale gdk backend includes.
928  
929 2001-10-10  Michael Meeks  <michael@ximian.com>
930
931         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
932         and value_in_list properties.
933         (gtk_combo_set_value_in_list): notify change.
934         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
935
936 2001-10-11  James Henstridge  <james@daa.com.au>
937
938         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
939         that gtk+ can be built with automake 1.5 while not breaking
940         things for automake 1.4.
941
942 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
943
944         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
945         (#60606)
946
947         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
948         to disable calling setlocale (LC_ALL, "").
949
950         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
951         docs that this function is not typically useful.
952
953         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
954         Automatically initialize GDK for the current locale
955         on gdk_init(). Don't reset locale to C when
956         XSupportsLocale() fails.
957
958         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
959         useless checks for UTF-8 locale breakage that mattered
960         only for X.
961
962         * examples/calendar/calendar.c
963         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
964         gtk_set_locale().
965
966         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
967         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
968
969 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
970
971         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
972
973         Fixes bug #61904
974
975 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
976
977         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
978         new function, #61923
979         (gtk_tree_selection_path_is_selected): Ditto
980
981 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
982
983         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
984         not a GtkObject.  Thanks andersca.
985
986         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
987
988 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
989
990         * gtk/gtktreeviewcolumn.c
991         (gtk_tree_view_model_sort_column_changed): fix broken code.
992
993 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
994
995         * gtk/gtkselection.c: s/succesfully/successfully/g
996
997 2001-10-08  Havoc Pennington  <hp@pobox.com>
998
999         * demos/gtk-demo/stock_browser.c: remove unused enum
1000
1001         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
1002         pass the current selection state of the node in to the user
1003         selection func
1004
1005 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
1006
1007         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
1008         non-existent function gdk_x11_cursor_get_xid 
1009         by gdk_x11_cursor_get_xcursor.
1010
1011 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
1012
1013         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
1014         warning.
1015
1016         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
1017         unref nodes, #okay61676
1018
1019         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
1020         to the property; no need to clear the other columns.  Also, we go
1021         to 'unsorted' if the model supports it.
1022
1023 2001-10-05  Sven Neumann  <sven@gimp.org>
1024
1025         * demos/testpixbuf-save.c
1026         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
1027         feature.
1028
1029 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
1030
1031         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
1032         destroy the search dialog
1033
1034         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
1035         added check to prevent creation of a search dialog if there's
1036         already one around
1037
1038         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
1039         it instead of "search-dialog" (when getting/setting the search dialog
1040         widget).
1041
1042 2001-10-05  Jakub Steiner <jimmac@ximian.com>
1043
1044         * gtk/stock-icons/stock_broken_image.png: broken images icon
1045
1046 2001-10-04  Havoc Pennington  <hp@pobox.com>
1047
1048         Fix #56586
1049         
1050         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
1051         accelerator setting here...
1052
1053         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
1054         because we try to use it when a menu bar hasn't necessarily been 
1055         initialized.
1056
1057 2001-10-03  Havoc Pennington  <hp@redhat.com>
1058
1059         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
1060         it previously verified incorrect behavior
1061
1062         Fixes for #61565
1063         
1064         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
1065         off the end
1066         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
1067         the end
1068         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
1069         the end
1070         (gtk_text_iter_forward_lines): if on the last line, move to end of
1071         it
1072
1073         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
1074         don't return a line off the end
1075
1076 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
1077
1078         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
1079         functions to do_insert_text and do_delete_text, add signals
1080         insert_text, delete_text and changed
1081
1082         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
1083         and changed. Updates to match new situation.
1084
1085         * gtk/gtkspinbutton.c: updates to match new situation
1086
1087         * gtk/gtkoldeditable.h: remove signals changed, insert_text
1088         and delete_text
1089
1090         * gtk/gtkoldeditable.c: updates to match new situation
1091
1092         * gtk/gtktext.c: updates to match new situation
1093
1094         Fixes bug #59803
1095
1096 2001-10-03  Havoc Pennington  <hp@redhat.com>
1097
1098         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
1099         position
1100
1101         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
1102         changes
1103
1104         * tests/testtextbuffer.c (logical_motion_tests): updates
1105
1106 2001-10-03  jacob berkman  <jacob@ximian.com>
1107
1108         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
1109         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
1110         * gtk/gtksettings.c (apply_queued_setting): 
1111         * gtk/gtkmain.c (gtk_init_check): 
1112         * gtk/gtkcontainer.c (gtk_container_child_get_property):
1113         s/retrive/retrieve/
1114
1115 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
1116
1117         * gtk/gtktreemodelsort.[ch]: preparation for surgery
1118         * tests/testtreesort.c: ditto
1119
1120 2001-10-02  Havoc Pennington  <hp@redhat.com>
1121
1122         Throughout: assorted docs
1123         
1124         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
1125         gdk_window_set_geometry_hints() should be used instead.
1126
1127         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
1128         document them
1129
1130         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
1131         seem to exist in any .c files
1132
1133         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
1134         g_return_if_fail (pixel < colormap->size).
1135
1136 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
1137
1138         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
1139         NULL for @target_list to mean, use
1140         gtk_drag_dest_get_target_list (widget).
1141
1142         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
1143         drop could hang when calling gtk_drag_finish with 
1144         success == FALSE and del == TRUE.
1145
1146         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
1147         drops without a matching target found would propagate
1148         to the parent widget rather than being rejected.
1149
1150         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
1151         Use text_view->dnd_mark instead of mark name to be
1152         consistent with the rest of the code.
1153
1154         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
1155         pendantically correct for a drop-only-in-some-places
1156         widget. (Check whether you can insert in drag_drop,
1157         not just in drag_motion ... matters in theory, and
1158         for Motif drag and drop in practice.)
1159
1160         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
1161         Damian Ivereigh to not allow drops on non-editable
1162         entries. (#61124)
1163
1164         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
1165         text to be moved from a non-editable entry.
1166         
1167 2001-10-03  James Henstridge  <james@daa.com.au>
1168
1169         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
1170         s/width/fixed_width/ in order to get things to compile.
1171
1172 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
1173
1174         * gtk/gtkcelleditable.c: docs
1175
1176         * gtk/gtktreemodel.h: more docs.
1177
1178 2001-10-02  Havoc Pennington  <hp@redhat.com>
1179
1180         * gdk/x11/gdkwindow-x11.c: docs
1181
1182         * tests/testtextbuffer.c (logical_motion_tests): add sentence
1183         boundary tests
1184
1185 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
1186
1187         * demos/gtk-demo/Makefile.am: add editable_cells.c,
1188         list_store.c and tree_store.c
1189
1190         * demos/gtk-demo/appwindow.c: remove tearoff item from
1191         File menu, put menubar and toolbar in handle boxes.
1192
1193         * demos/gtk-demo/genincude.pl: various changes to support trees
1194
1195         * demos/gtk-demo/main.c: various changes to support trees
1196
1197         * demos/gtk-demo/stock_browser.c: changed name of demo
1198         to Stock Item and Icon Browser, so geninclude.pl doesn't see
1199         it as child
1200
1201         * demos/gtk-demo/editable_cells.c: new file/demo
1202         * demos/gtk-demo/list_store.c: new file/demo
1203         * demos/gtk-demo/tree_store.c: new file/demo
1204
1205 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
1206
1207         * gtk/gtkrc.c gtk/gtksettings.c: 
1208         g_string_printfa => g_string_append_printf.
1209
1210 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
1211
1212         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
1213         and destroy handler.
1214
1215         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
1216
1217         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
1218         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
1219         Singh <yosh@gimp.org>.
1220
1221 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
1222
1223         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
1224         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
1225
1226         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
1227
1228 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
1229
1230         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
1231         scroll_to_cell delayed code to happen in size_allocate.
1232
1233         * gtk/gtkstyle.c (gtk_default_draw_expander): change
1234         prelight/normal arrow drawing.
1235
1236         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
1237
1238         * gtk/gtktreestore.c: refactor.
1239
1240 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
1241
1242         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
1243         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
1244         centers the child in relation to the to indicator height.
1245
1246 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
1247
1248         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
1249         correct
1250
1251 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
1252
1253         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
1254         property code using g_param_spec_int and changed from
1255         g_value_get_enum to g_value_get_int instead. Probably a better way
1256         to fix the problem :-)
1257
1258 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
1259
1260     * gtk/gtkcellrenderertext.c changed "weight" property type from 
1261       g_param_spec_int to g_param_spec_enum.
1262
1263 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
1264
1265         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
1266         fix: s/Wether/Whether/ in reorderable property description
1267
1268 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
1269
1270         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
1271         start editing when you select with a keyboard.
1272
1273         (gtk_tree_view_button_press_event): much more graceful now.
1274
1275         * gtk/gtkstyle.c: Draw togglebutton better.
1276
1277 2001-09-26  Havoc Pennington  <hp@redhat.com>
1278
1279         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
1280         of passing non-stock label in to gtk_dialog_new_with_buttons
1281
1282         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
1283         debugging updates
1284
1285         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
1286         are private
1287
1288         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
1289         exist, fall back to mnemonic label, not plain label, bug #61184
1290         
1291 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
1292
1293         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
1294         stupid and emitting the signal every time.
1295
1296         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
1297
1298 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
1299
1300        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
1301
1302        * contrib/gdk-pixbuf-xlib/Makefile.am: install
1303        gdk-pixbuf-xlib-2.0.pc.
1304
1305 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
1306
1307         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
1308         problem where menmonic wasn't removed properly when
1309         setting a label when there already is a label.
1310         Also, handle setting the tab label back to the same
1311         value. (#61160, #61161)
1312
1313         * gtk/gtkentry.c (paste_received): Patch from 
1314         Damian Ivereigh to replace selection if there is 
1315         one. (#61121)
1316
1317 2001-09-25  Darin Adler  <darin@bentspoon.com>
1318
1319         * tests/.cvsignore: Ignore new test program.
1320
1321 2001-09-25  Havoc Pennington  <hp@redhat.com>
1322
1323         * gtk/gtktextview.c: fix for #50317
1324         
1325 2001-09-25  Havoc Pennington  <hp@redhat.com>
1326
1327         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
1328         gtk_text_iter_can_insert
1329         
1330         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
1331
1332         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
1333          (gtk_text_iter_can_insert): new function to fix #60282, should
1334         also fix msw's "can paste into empty buffer" bug.
1335
1336         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
1337         "event object,"  #59091
1338
1339         * gtk/gtktextbtree.c: indentation fixes
1340
1341         * gtk/gtktextiter.c (find_by_log_attrs): fixes
1342
1343 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1344
1345         * configure.in: Version 1.3.9, interface age 0, binary age 0.
1346
1347         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
1348
1349         * NEWS: Updates.
1350
1351 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
1352
1353         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
1354         function for drawing cursors between gtkentry/gtklabel/gtktextview.
1355         Should this be public? It has a bit of an odd interface, but
1356         custom editing widgets probably should be using it.
1357         Function will draw with wider width for taller cursors, and
1358         draws a little indicator arrow to indicate directoin for split 
1359         cursors.
1360
1361         * gtk/gtktextview.c: Add a "cursor_color" property.
1362
1363         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
1364         gtk_text_layout_draw().
1365
1366         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
1367         _gtk_draw_insertion_cursor().
1368
1369 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
1370
1371         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
1372         the behavior where you could turn family_set (etc) back on
1373         and get back the values you had before.
1374
1375         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
1376         g_string_ascii_up() rather than looping through the
1377         string ourself.
1378
1379 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
1380
1381         * gtk/gtktreeviewcolumn.c
1382         (gtk_tree_view_column_set_cell_renderer): Removed
1383         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
1384
1385         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
1386         Patch from Detlef Reichl
1387
1388 2001-09-25  Havoc Pennington  <hp@redhat.com>
1389
1390         * tests/testtextbuffer.c (line_separator_tests): Add tests for
1391         line separators, addresses bug #57428
1392
1393 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
1394
1395         * gtk/gtkentry.c: Make a GtkCellEditable
1396         (get_widget_window_size): Change to let it honor size_allocate
1397         when a CellEditable.
1398
1399         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
1400         editable changes.
1401         (gtk_tree_view_set_cursor): Now you can set the cursor
1402         horizontally, as well as start editing.
1403
1404         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
1405         code to look more like the other check buttons.
1406
1407         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
1408         Change the way we calculate cell size.
1409
1410         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
1411
1412         * demos/gtk-demo/sizegroup.c: Add mnemonics.
1413
1414         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
1415         Fix logic.
1416
1417         * gtk/gtkcellrenderertext.c: Change to be editable.
1418
1419         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
1420
1421         * test/testtreesort.c: Fix misspelling
1422
1423         * test/testreecolumns.c: Add mnemonics.
1424
1425         * test/testreeedit.c: New test program.
1426
1427 2001-09-25  Havoc Pennington  <hp@pobox.com>
1428
1429         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
1430         etc. docs about how these are not going to do what you want for 
1431         the X/win32 ports. Futile attempt to avoid a FAQ...
1432
1433 2001-09-24  James Henstridge  <james@daa.com.au>
1434
1435         * gtk/gtkmarshal.list (VOID): add marshal function types.
1436
1437         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
1438         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
1439         GTK_TYPE_POINTER.
1440         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
1441         with no-op copy/free functions.
1442
1443         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
1444         GtkCTreeNode get_type function.
1445
1446 2001-09-24  Havoc Pennington  <hp@redhat.com>
1447
1448         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
1449         gtktextlayout.c:
1450         Get rid of the newline-that-could-not-be-deleted; buffers may 
1451         now be zero-length. Much easier to fix than expected, once 
1452         I figured out the right way to do it. However, there are 
1453         various subtle bugs introduced by this that will have to get 
1454         sorted out. Please use bugzilla.
1455
1456 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
1457
1458         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
1459         response back from the window manager if our size hasn't changed 
1460         since we won't get a response back from the window manager;
1461         there was code in there to do this, but it was in the wrong
1462         place so if the hints change and the size didn't we'd expect
1463         a response.
1464
1465         Also, optimize the position-only-changed case by running
1466         the resize queue immediately, and clean up some comments
1467         for the changes.
1468
1469 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
1470
1471         * gtk/gtknotebook.h: Add a compat macro that got lost.
1472
1473         * gtk/gtktreestore.c: Doc fixes.
1474
1475         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
1476         leak for windows that receive events after being destroyed.
1477         (#60863, Joshua N. Pritikin)
1478
1479         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
1480         rather than gtk_container_queue_resize().
1481
1482         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
1483         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
1484         gtk_container_child_composite_name. (#60217.)
1485
1486 2001-09-22  Hans Breuer  <hans@breuer.org>
1487
1488         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
1489
1490 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
1491
1492         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
1493         weight value should be an int
1494
1495 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
1496
1497         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
1498         to gtk_menu_scroll_item_visible(). Only call
1499         gtk_menu_scroll_item_visible() if the menu widget has been
1500         realized. Fixes bug #55310.
1501
1502 2001-09-21  Havoc Pennington  <hp@redhat.com>
1503
1504         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
1505         key press to IM context if cursor isn't in an editable location;
1506         bug #58425, patch from Hidetoshi Tajima
1507
1508 2001-09-21  Havoc Pennington  <hp@redhat.com>
1509
1510         Bug #60862
1511         
1512         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
1513         (_gtk_text_btree_unref): fix up mark memory management
1514
1515         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
1516
1517 2001-09-20  Havoc Pennington  <hp@redhat.com>
1518
1519         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
1520         try to handle alignment here, because it's done by PangoLayout
1521         after we set the layout width. Fix from Dov.
1522
1523 2001-09-21  Hans Breuer  <hans@breuer.org>
1524
1525         * gdk/gdk.def :
1526         * gtk/gtk.def : updated externals
1527
1528         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
1529         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
1530         Also handle that Win32 pathes cann't be hard-coded      
1531
1532         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
1533         module, themes etc directory calculations
1534
1535         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
1536         >16 bit right. The size limit within Win9x appears _not_ to be 32767
1537         but slightly smaller ...
1538
1539         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
1540         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
1541
1542         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
1543
1544         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
1545         handling. I'm not sure if it is better now, but at least not worse
1546
1547         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
1548
1549         * gdk/win32/gdkwin32.h : reflect recent API restrictions
1550
1551 2001-09-21  Matt Wilson  <msw@redhat.com>
1552
1553         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
1554         radio_menu_item->group to NULL after removing it from the list, as
1555         it is no longer in the group. (#60869)
1556
1557         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
1558
1559 2001-09-20  Havoc Pennington  <hp@pobox.com>
1560
1561         * configure.in (PANGO_REQUIRED_VERSION)
1562         (ATK_REQUIRED_VERSION): add variables and checks for specific 
1563         versions of dependencies. Previously we didn't verify the 
1564         Pango or ATk versions.
1565
1566 2001-09-09  Havoc Pennington  <hp@pobox.com>
1567
1568         * gtk/gtktextiter.c: fool with indentation
1569         (gtk_text_iter_in_range): add g_return_if_fail
1570
1571 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
1572
1573         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
1574         ref count on new tag to be 1.  Update doc.  (#60836)
1575
1576 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
1577
1578         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
1579         call to gdk_image_new_bitmap(). (#59094, reported by
1580         by Sven Neumann)
1581
1582 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
1583
1584         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
1585         day, as well as the current month and year.
1586         (#59047, reported by Vitaly Tishkov)
1587
1588 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
1589
1590         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
1591         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
1592         
1593 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
1594
1595         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
1596
1597         (build_option_menu): add func argument, connect ::changed
1598         signal to option menu instead of connecting the ::activate
1599         signal to the menu items,
1600
1601         (toplevel): get rid of RADIOMENUTOGGLED macro,
1602
1603         (list_toggle_sel_mode), (clist_toggle_sel_mode),
1604         (ctree_toggle_line_style), (ctree_toggle_expander_style),
1605         (ctree_toggle_justify), (ctree_toggle_sel_mode),
1606         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
1607         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
1608
1609         (notebook_type_changed): merged standard_notebook(),
1610         notabs_notebook(), scrollable_notebook() and borderless_notebook()
1611         into notebook_type_changed()
1612
1613         (create_list), (create_ctree), (create_notebook),
1614         (create_progress_bar): changed OptionMenuItem arrays into
1615         gchar * arrays. Removed "Extended" item where used.
1616
1617         Fixes bug #59885
1618
1619 2001-09-20  Sven Neumann  <sven@gimp.org>
1620
1621         * configure.in
1622         * gdk/Makefile.am
1623         * gtk/Makefile.am
1624         * gtk/gtkselection.c
1625         * gtk/gtktreeview.c
1626         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
1627
1628 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
1629
1630         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
1631         a missing pango_layout_iter_free ().
1632
1633 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
1634
1635         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
1636         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
1637
1638         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
1639         the function definition so we don't accidentally rely on
1640         the compat #define from gtk_radio_menu_item_group.
1641         (#60782, Jeff Franks)
1642
1643 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
1644
1645         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
1646         incorrect values for top, right and bottom due to cut-and-paste
1647         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
1648
1649 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
1650
1651         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
1652         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
1653         window, not just on the client leader. (#58463)
1654
1655 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
1656
1657         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
1658
1659         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
1660         non-public _gtk_menu_item_set_placement.
1661
1662         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
1663
1664 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
1665
1666         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
1667           gdk/linux-fb/gdkcolor-fb.c:
1668         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
1669         (#59723)
1670
1671 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
1672
1673         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
1674         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
1675         #59723)
1676
1677 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
1678
1679         Patch from Frank Belew #59037 for Solaris compilation.
1680
1681         * gtk/maketypes.awk: Change syntax slightly for a call
1682         to sub(), apparently making awk on Solaris happier.
1683
1684         * gtk/gtktreeview.c: Remove C++ comments.
1685
1686 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
1687
1688         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
1689         to handle '99% of the time. (#60473, reported by Christian Rose)
1690
1691         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
1692         which no longer exists. (#60379, reported by Vitaly Tishkov)
1693
1694 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
1695
1696         * Released 1.3.8.
1697
1698         * gdk/Makefile.am: kill EXTRA_DIST clearing.
1699         
1700 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
1701
1702         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
1703         as its broken in automake 1.4, add explicit object rule to
1704         generate this.
1705         
1706         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
1707         get rid of uneccessary stamps, group stuff more logically, and build
1708         sources due to object rules. fix srcdir!=builddir.
1709
1710 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
1711
1712         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
1713         incorrect parameter to compute_double_length
1714         (#58680, patch from Matthias Clasen)
1715
1716         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
1717
1718         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
1719
1720         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
1721         for GDK_RELEASE_MASK to avoid warnings with Forte.
1722
1723         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
1724         break; statements.
1725
1726 2001-09-18  Alex Larsson  <alexl@redhat.com>
1727
1728         * gtk/gtkcheckbutton.c:
1729         * gtk/gtkradiobutton.c:
1730         Don't draw with GTK_STATE_ACTIVE.
1731
1732         * gtk/gtkclist.c:
1733         * gtk/gtkctree.c:
1734         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
1735
1736         * gtk/gtktextdisplay.c:
1737         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
1738         unfocused with base_gc [GTK_STATE_ACTIVE].
1739         
1740         * gtk/gtkentry.c:
1741         Add select all menu-item.
1742         Default cursor color is red.
1743         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
1744         unfocused with base_gc [GTK_STATE_ACTIVE].
1745
1746         * gtk/gtklabel.[ch]:
1747         Add keynav + menu to selectable lables.
1748         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
1749         unfocused with base_gc [GTK_STATE_ACTIVE].
1750
1751         * gtk/gtkfilesel.c:
1752         Add drag and drop support.
1753
1754         * gtk/gtkstyle.c:
1755         (This was checked in earlier)
1756         New default values for text/base SELECTED and ACTIVE
1757         
1758 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
1759
1760         * configure.in: up version to 1.3.8, interface age 0,
1761         binary age 0, depend on glib 1.3.8.
1762
1763         * NEWS: 1.3.8 updates.
1764
1765 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
1766
1767         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
1768         the editing code
1769
1770         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
1771         reason to call it beyond emiting the two signals.
1772
1773         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
1774         to GtkEntry.
1775
1776 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
1777
1778         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
1779           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
1780         PangoFontDescription.
1781
1782         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
1783         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
1784         structure.
1785   
1786         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
1787
1788         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
1789         direct access to style->font. Deprecate gtk_style_ref/unref.
1790   
1791         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
1792         Remove gtk_style_ref/unref with g_object_ref/unref.
1793   
1794         * gtk/gtkcalendar.c: Remove leftover macros accessing
1795         style->font.
1796   
1797         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
1798         variable.
1799   
1800         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
1801         style->font.
1802
1803 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
1804
1805         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
1806         "can_activate" properties in favor of
1807         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
1808         and GTK_CELL_RENDERER_MODE_EDITABLE
1809
1810 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
1811
1812         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
1813         editable widgets.  This function is private, and should only be
1814         used by GtkTreeView.
1815
1816 2001-09-18  Matt Wilson  <msw@redhat.com>
1817
1818         * docs/Makefile.am (EXTRA_DIST): don't use += before =
1819
1820         * docs/faq/Makefile.am (EXTRA_DIST): likewise
1821
1822         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
1823         
1824         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
1825         (EXTRA_HEADERS): likewise
1826
1827         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
1828         (EXTRA_HEADERS): likewise
1829         (EXTRA_DIST): likewise
1830         (CLEANFILES): likewise
1831
1832         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
1833
1834         * tests/Makefile.am (EXTRA_DIST): likewise
1835         
1836         * Makefile.am (install-data-local): changed to use
1837         install-data-hook, which runs after install-pkgconfigDATA, so that
1838         the pkgconfigdir will have been created and populated first.
1839
1840 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
1841
1842         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
1843         be the last big GtkTreeView API change.
1844
1845         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
1846         replace with "activate" and "start_editing".  Also, added a
1847         "can_activate" and "can_edit" property.
1848
1849         * gtk/gtktreeviewcolumn.c: modify to use above.
1850
1851 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
1852
1853         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
1854
1855 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
1856
1857         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
1858         icon instead of one with ugly white background.
1859
1860 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
1861
1862         * demos/gtk-demo/stock_browser.c (id_to_macro): make
1863         the uppercasing work. (#59550)
1864
1865 2001-09-14  Jakub Steiner <jimmac@ximian.com>
1866
1867         * gtk/stock-icons/dialog_error.png:
1868         * gtk/stock-icons/dialog_question.png: more road signs
1869
1870 2001-09-13  Jakub Steiner <jimmac@ximian.com>
1871
1872         * gtk/stock-icons/dialog_question.png:
1873         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
1874           like a road sign.
1875
1876 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
1877
1878         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
1879         signals to make them more clear.  Also, change ::range_changed to
1880         ::row_changed.
1881         * gtk/gtktreemodel.c: Adjust to interface change
1882         * gtk/gtktreemodel.h: ditto
1883         * gtk/gtktreemodelsort.c: ditto
1884         * gtk/gtktreestore.c: ditto
1885         * gtk/gtkliststore.c: ditto
1886         * gtk/gtktreeview.c: ditto
1887         * tests/testtreecolumns.c: ditto
1888         * gtk/gtkmarshal.list: Actually remove a marshaller!
1889
1890 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
1891
1892         * gtk/gtktextview.c
1893         Add support for Ctrl+Up/Down arrow to move cursor to beginning
1894         of previous/next paragraph. If within a paragraph cursor moves to
1895         beginning of that paragraph.
1896
1897 2001-09-12  Jakub Steiner <jimmac@ximian.com>
1898
1899         * gtk/stock-icons/dialog_question.png: replacing the shaky
1900           question mark with a sans-serif one.
1901         * gtk/stock-icons/stock_top.png, stock_bottom.png,
1902      stock_first.png, stock_last.png: using the new style arrows
1903         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
1904      colors.
1905         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
1906      color.
1907         * gtk/stock-icons/stock_zoom*: anti-aliased
1908         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
1909      '-' with a '_', removed the wrong files
1910
1911 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
1912  
1913         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
1914  
1915         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
1916         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
1917         than in gtk-2.0/major.minor.micro/<type>/. This
1918         works better for a search path for modules.
1919  
1920         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
1921         gtk_binary_version variable holding major.minor.(micro-binary_age).
1922  
1923         * modules/input/Makefile.am (moduledir): Fix installation
1924         directory to match change in lookup location.
1925  
1926         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
1927         suffixes. Needs to be handled in g_module_build_path().
1928
1929         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
1930         appropriate.
1931  
1932 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
1933
1934         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
1935         causing RC properties not to work.
1936
1937 2001-09-11  Jakub Steiner <jimmac@ximian.com>
1938
1939         * gtk/stock-icons/dialog-error.png: less drastic
1940         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
1941           "STOP" is international enough.
1942         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
1943         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
1944
1945 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
1946
1947         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
1948         (add|remove)_selection_clipboard symmetric. (bug #59836)
1949
1950         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
1951         Avoid SEGV for empty tree. (bug #60243)
1952
1953 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
1954
1955         * tests/testgtk.c (create_idle_test): slight fix for
1956         g_object_set() not usable for nesting anymore.
1957
1958         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
1959         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
1960         properties, supply ::shadow_type properties instead as most
1961         other widgets do.
1962
1963 2001-09-10  Alex Larsson  <alexl@redhat.com>
1964
1965         * demos/gtk-demo/stock_browser.c:
1966         * gdk/gdkcolor.c:
1967         * gdk/gdkfont.c:
1968         * gdk/gdkcursor.c:
1969         * gdk/gdkevents.c:
1970         * gdk/gdkrectangle.c:
1971         * gtk/gtktypeutils.c:
1972         Update to use the new g_boxed_type_register_static API.
1973
1974 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
1975
1976         * gtk/gtktreestore.c:
1977         Fix looping in gtk_tree_store_init() waiting for zero random int.
1978
1979 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
1980
1981         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
1982         behaviour which havoc broke. they have to default to 1.0 for
1983         expand behaviour.
1984
1985         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
1986
1987 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
1988
1989         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
1990         Amend previous change to avoid runtime error in g_param_spec_ref()
1991
1992 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
1993
1994         * gtk/gtkrc.c (insert_rc_property): Fix blank line
1995         in the wrong place.
1996
1997 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
1998
1999         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
2000         do a lookup immediately after creating style->property_cache,
2001         since bsearch crashes on zero length for Solaris.
2002         (Found by Padraig O'Briain.)
2003
2004 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2005
2006         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
2007         Really return NULL if not set.
2008         (gtk_widget_init): Remove unused varaible.
2009         
2010 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2011
2012         * configure.in:
2013         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
2014         in cvs.
2015
2016 2001-09-08  Havoc Pennington  <hp@pobox.com>
2017
2018         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
2019         people might want to use
2020
2021 2001-09-08  Havoc Pennington  <hp@pobox.com>
2022
2023         * gtk/gtkalignment.c (gtk_alignment_class_init): default
2024         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
2025
2026         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
2027
2028         * gtk/gtktextiter.c: fix docs
2029         (gtk_text_iter_spew): get rid of this
2030
2031         * gtk/gtklayout.c: docs
2032
2033         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
2034         to center image and label together, instead of having image on
2035         left and label centered, patch/suggestion from Jacob
2036
2037         * gtk/gtkdialog.c: docs
2038
2039 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
2040
2041         * gtk/gtkliststore.c: Write documentation
2042         * gtk/gtktreestore.c: Write documentation
2043
2044 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
2045
2046         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
2047         with GArray and bsearch(), to remove dependency on a still
2048         evolving interface that we want to keep private to glib/gobject. 
2049
2050 2001-09-08  Havoc Pennington  <hp@pobox.com>
2051
2052         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
2053         docs fixes
2054
2055         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
2056
2057         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
2058
2059         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
2060
2061         * gtk/gtkscrolledwindow.h: docs fixes
2062
2063         * gtk/gtkimage.c (gtk_image_new): docs fixes
2064
2065 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
2066
2067         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
2068         false alarm  constness warning with a cast.
2069
2070         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
2071         for the inside-gdk case.
2072
2073 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
2074
2075         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
2076         remove g_print.
2077
2078         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
2079         change models, #59899
2080
2081 2001-09-07  Havoc Pennington  <hp@pobox.com>
2082
2083         * gtk/gtkmain.c: move some docs inline
2084
2085 2001-09-07  Havoc Pennington  <hp@pobox.com>
2086
2087         * gtk/gtk.h: tsk tsk, jrb broke the build
2088
2089 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
2090
2091         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
2092         Removed 'fill' attribute.  It was silly b/c that was a property of
2093         the cell renderer, anyway.
2094         (gtk_tree_view_column_render): Actually render the packed
2095         renderers.
2096         * doc/tree-column-sizing.txt: initial devel documentation.
2097         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
2098         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
2099
2100         * tests/testtreefocus.c: fix up to reflect above changes.
2101         * tests/testtreeview.c: ditto
2102         * demos/gtk-demo/stock_browser.c: ditto
2103
2104 2001-09-07  Alex Larsson  <alexl@redhat.com>
2105
2106         * gdk/linux-fb/gdkcolor-fb.c:
2107         Removed unused function.
2108         
2109         * gdk/linux-fb/gdkdrawable-fb2.c
2110         * gdk/linux-fb/gdkfont-fb.c:
2111         Use PangoLanguage functions.
2112
2113         * gdk/linux-fb/gdkinput.c:
2114         * gdk/linux-fb/gdkselection-fb.c:
2115         Fix const warnings.
2116         
2117         * gdk/linux-fb/gdkwindow-fb.c:
2118         Fix warning. Implement gdk_window_set_icon_list() and
2119         gdk_window_get_frame_extents(). (No icon support yet though.)
2120
2121         * gtk/gtkwindow.c (gtk_window_get_position):
2122         If window->frame is set get the extents of it instead.
2123         
2124 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2125
2126         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
2127         Make the default default colormap the GdkRGB colormap,
2128         not the system colormap.
2129
2130         * gtk/gtkinvisible.c (gtk_invisible_init) 
2131           gtk/gtkwindow.c (gtk_window_init): Set the current
2132         colormap, as returned by _gtk_widget_peek_colormap()
2133         on the widget.
2134
2135         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
2136         to GTK+. Make it return %NULL instead of the default
2137         colormap if no colormap has explicitely been pushed.
2138
2139         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
2140         colormaps on ancestral widgets before defaulting the
2141         the system default colormap.
2142
2143         * docs/Changes-2.0.txt: explain colormap changes.
2144
2145 2001-09-07  Havoc Pennington  <hp@redhat.com>
2146
2147         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
2148         #57424
2149
2150 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
2151
2152         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
2153         make gdk_set_use_xshm a noop. Remove --no-xshm command line
2154         option. If we aren't autodetecting properly, we need
2155         to fix the problem, or at least make it an environment
2156         variable setting, to avoid problems with propagating
2157         to embedded children, plugins, etc.
2158
2159         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
2160
2161         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
2162         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
2163         New function to render a pixmap and mask for a particular colormap.
2164
2165         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
2166         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
2167         of internal implementation of the same.
2168
2169 2001-09-07  Havoc Pennington  <hp@redhat.com>
2170
2171         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
2172         debug code that seems to have caused a breakpoint in valid cases
2173         
2174         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
2175         pointer on the first view when adding the second view, fixes
2176         crash when closing gtk-demo text test with active selection
2177
2178         * gtk/gtktextbuffer.c
2179         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
2180         clipboards in the list of clipboards - probably fixes #59836
2181
2182 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
2183
2184       Make gdkx.h the only installed header from gdk/x11.
2185       All structures in gdk/x11 are opaque.
2186
2187         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
2188         Don't install gdk{drawable,pixmap,window}-x11.h.
2189
2190         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
2191         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
2192         GdkVisualClass into C files.
2193
2194         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
2195
2196         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
2197         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
2198         Add public functions to replace previously exported direct
2199         structure access.
2200         gdk_x11_colormap_get_{xdisplay,xcolormap} 
2201         gdk_x11_cursor_get_{xdisplay,xcursor},
2202         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
2203         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
2204         gdk_x11_gc_get_{xdisplay,ximage}
2205         
2206         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
2207         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
2208
2209       Fix a number of variables and functions that were exported
2210       "accidentally" from GDK.
2211
2212         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
2213         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
2214         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
2215         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
2216         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
2217         gdk_event_queue_find_first, gdk_event_queue_remove_link,
2218         gdk_event_queue_append, gdk_event_button_generate,
2219         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
2220
2221         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
2222            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
2223         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
2224         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
2225         gdk_use_xshm, gdk_input_ignore_core.
2226
2227         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
2228         #defines to namespace functions into the private _gdk_ 
2229         namespace.
2230
2231         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
2232         to replace gdk_parent_root exported variable. Adjust and
2233         deprecate GDK_ROOT_PARENT().
2234
2235         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
2236         GDK_ROOT_PARENT usage, remove includes of port-specific
2237         headers.
2238
2239         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
2240         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
2241         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
2242
2243         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
2244         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
2245         gdk_wm_delete_window functions, gdk_wm_take_focus, 
2246         use gdk_atom_intern() instead.
2247
2248         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
2249           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
2250           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
2251           gtk/gtkselection.c 
2252         Unexport gdk_selection_property, just use 
2253         gdk_atom_intern ("GDK_SELECTION").
2254
2255         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
2256         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
2257         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
2258         GdkVisualprivate, gdk_x11_gc_flush.
2259
2260       Make a number of public exports of variables into functions
2261       to increase encapsulation.
2262
2263         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
2264         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
2265         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
2266
2267         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
2268         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
2269         gdk_error_warnings.
2270
2271         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
2272           docs/Changes-2.0.txt: 
2273         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
2274         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
2275         Add gdk_x11_get_default_xdisplay().
2276
2277         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
2278         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
2279         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
2280         Don't export gdk_progclass, move --class command line
2281         option and handling to common portion of GDK.
2282
2283       Miscellaneous fixes:
2284
2285         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
2286         g_return_val_if_fail that should have been g_return_if_fail.
2287
2288         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
2289         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
2290
2291         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
2292         X11 dependency.
2293
2294         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
2295         Remove unused gdk_key_repeat_disable/restore.
2296
2297         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
2298         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
2299         Remove unused gdk_null_window_warnings variable.
2300
2301         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
2302         it can be retrieved from the repository; it is too far
2303         from functional to be worth having people check out;
2304         it would be easier to start from scratch, I suspect.
2305
2306         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
2307
2308         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2309         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2310         Fix some accidentally global variables and unused global variables.
2311
2312         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2313         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2314         Fix some accidentally global variables and unused global variables.
2315
2316       Add some space for future expansion to multihead.
2317
2318         * gdk/gdkdrawable.h: Add four reserved function pointers
2319         for future expansion of GdkDrawableClass.
2320
2321         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
2322         where we can put a GdkScreen * later.
2323
2324 2001-09-07  Havoc Pennington  <hp@redhat.com>
2325
2326         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
2327         adjustments after validating destination yrange; fixes #53918
2328         (This may cause other issues, but I hope it won't)
2329         
2330 2001-09-05  Havoc Pennington  <hp@redhat.com>
2331
2332         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
2333         line into start line, update the character counts in parent nodes; 
2334         caused a bug when end and start line had different parent nodes.
2335
2336 2001-08-30  Havoc Pennington  <hp@redhat.com>
2337         
2338         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
2339         assertion that tag is in a table
2340
2341 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
2342
2343         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
2344         g_strcasecmp on NULL strings. (#59058)
2345
2346 2001-09-06  Alex Larsson  <alexl@redhat.com>
2347
2348         * gtk/gtkbin.c:
2349         * gtk/gtkfontsel.c:
2350         * gtk/gtkspinbutton.c:
2351         * gtk/gtktipsquery.c:
2352         Use GtkType/GType instead of uint.
2353
2354 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2355
2356         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
2357         sort column.
2358
2359         * gtk/gtktreestore.c (gtk_list_store_init): ditto
2360
2361         * gtk/gtktreesortable.c: add docs.
2362
2363 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
2364
2365         * Version 1.3.7
2366
2367         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
2368         docs for gtk-config
2369
2370         * modules/input/Makefile.am (install-data-local): Don't
2371         run gtk-query-immodules if DESTDIR is set.
2372
2373         * NEWS: Various additions.
2374
2375 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
2376
2377         * NEWS: updates for 1.3.7 release.
2378
2379 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
2380
2381         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
2382         handle default sort feature
2383
2384         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
2385         new function to handle default sort.
2386         (gtk_tree_sortable_has_default_sort_func): check if default sort
2387         is set.
2388
2389         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
2390         handle default sort feature
2391
2392 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
2393
2394         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
2395         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
2396         #59731
2397
2398 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2399
2400         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
2401         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
2402         time, #59727
2403
2404         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
2405         correctly.
2406
2407 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
2408
2409         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
2410         so that we don't eternally update the keymap after we
2411         get a change notification.
2412
2413         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
2414         incorrect cast.
2415
2416 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
2417
2418         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
2419         it working. It mostly works now, although there're still a few issues
2420         to be worked out.
2421
2422         * tests/testtreesort.c (main): changes to have a better test
2423         application for the GtkTreeModelSort.
2424
2425 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
2426
2427         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
2428         fix for bug #59222.
2429
2430         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
2431         gpointer search_data argument to function definition and
2432         prototype, to match GtkTreeViewSearchEqualFunc typedef.
2433
2434 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
2435
2436         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
2437         per jrb's request.
2438
2439 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
2440
2441         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
2442
2443         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
2444
2445 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2446
2447         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
2448         Instead of always mirroring the selection to a single PRIMARY
2449         selection, allow it to be mirrored to any number of clipboards.
2450
2451         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
2452         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
2453
2454         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
2455         GtkClipboard argument, and for paste_clipboard, the
2456         @override_location argument from @paste_primary.
2457
2458         * gtk/gtktextview.c: Adapt to above change.
2459         
2460 2001-08-30  Havoc Pennington  <hp@redhat.com>
2461
2462         * gtk/gtktextview.c (invalidated_handler): put validate idle at
2463         resize - 2 just for flexibility
2464
2465 2001-08-30  Havoc Pennington  <hp@redhat.com>
2466
2467         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
2468         object from the empty-child-anchor case by drawing a little box.
2469         
2470         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
2471         if the child anchor has no anchored widgets - fixes #59328.
2472
2473         Also, remove bizarre deletion of preedit string that seems to have
2474         gotten in here somehow.
2475
2476 2001-08-30  Havoc Pennington  <hp@redhat.com>
2477
2478         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
2479         to #58420 from Hidetoshi Tajima and Matthias Clasen
2480
2481 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
2482
2483         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2484         change color when the GtkTreeView loses focus.
2485
2486         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
2487         ditto.
2488         
2489         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
2490
2491 2001-08-28  Havoc Pennington  <hp@pobox.com>
2492
2493         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
2494
2495 2001-08-28  Havoc Pennington  <hp@pobox.com>
2496
2497         * demos/gtk-demo/main.c (setup_default_icon): add default icon
2498
2499         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
2500         warning fix
2501         (gtk_radio_button_new_with_label): warning fix
2502
2503         * gtk/gtkdnd.c: used some random GtkImage private structs, 
2504         update to reflect GtkImage changes
2505
2506         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
2507         whether the hint is supported, just always set the icon. A task
2508         list might want to use it even if the WM doesn't, and the WM may
2509         change over time. Also, XDeleteProperty() if list == NULL.
2510
2511         * gtk/gtkwindow.c (gtk_window_set_icon_list)
2512         (gtk_window_get_icon_list)
2513         (gtk_window_set_icon)
2514         (gtk_window_get_icon)
2515         (gtk_window_set_default_icon_list)
2516         (gtk_window_get_default_icon_list):
2517         new functions
2518
2519         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
2520
2521         * gtk/gtkimage.c: Implement property support, bug #59408
2522
2523         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
2524         on reparent-without-removing-first a bit more helpful.
2525         Let's just destroy this FAQ.
2526
2527 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
2528
2529         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
2530         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
2531
2532 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
2533
2534         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
2535         of use_text_format to the end of the function. (#56447)
2536
2537 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
2538
2539         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
2540         only in response to an area_prepared signal.
2541
2542 2001-08-28  Alex Larsson  <alexl@redhat.com>
2543
2544         * gtk/gtkwidget.c (gtk_widget_class_init):
2545         Make unrealize GTK_RUN_LAST.
2546
2547 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
2548
2549         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
2550         with_label and with_mnemonic should create radio buttons, not
2551         check buttons
2552
2553 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
2554
2555         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
2556         * tests/treestoretest.c (make_window): ditto
2557         * demos/gtk-demo/main.c (create_tree): ditto
2558         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
2559
2560 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
2561
2562         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
2563         GTK selection types rather than GtkTreeSelectionMode.
2564
2565         * docs/Changes-2.0: Add comment about selection change.
2566
2567 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
2568
2569         * gtk/gtkenums.h (GtkSelectionMode): deprecate
2570         GTK_SELECTION_EXTENDED.
2571
2572         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
2573         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
2574
2575         * gtk/gtkctree.c: ditto
2576
2577         * gtk/gtklist.c: ditto
2578
2579         * gtk/gtktree.c: ditto
2580
2581 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
2582
2583         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
2584         of typos in compat macros. (#59624, Skip Montaro)
2585
2586 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
2587
2588         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
2589         macro.
2590
2591          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
2592  
2593         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
2594         interface to be a standard setter from gtk_menu_item_right_justify.
2595         (gtk_menu_item_get_right_justified): a getter to go with the setter
2596
2597         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
2598         gtk_menu_item_right_justify.
2599
2600         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
2601         gtk_menu_item_set_right_justified.
2602  
2603 2001-08-27  Jens Finke <jens@gnome.org>
2604
2605         * gtk+.spec.in: Updated to match gpp requirements, reworked the
2606         files section to make it work with 1.3.x releases.
2607
2608 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
2609
2610         * gtk/gtkbutton.[ch]:
2611         Add properties for labels, mnemonics and stock items.
2612         Added C accessor functions for the properties.
2613         Removed deprecated button->child.
2614
2615         * gtk/gtkradiobutton.c:
2616         * gtk/gtktogglebutton.c:
2617         Update to use the functions in GtkButton.
2618
2619         * gtk/gtkcheckbutton.c:
2620         Update to use the functions in GtkButton.
2621         Changed size allocation of child. Now only gets as much
2622         space as it requests.
2623
2624         * gtk/gtkclist.c:
2625         Don't use GtkButton->child
2626
2627         * gtk/gtklabel.c:
2628         Fixed typo in docs
2629         
2630 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
2631
2632         * tests/testgtk.c:
2633         * tests/Makefile.am:
2634         Ressurect the properties test.
2635         I don't care if it is inferior, I just want to test my property code.
2636
2637 2001-08-25  Chema Celorio  <chema@celorio.com>
2638
2639         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
2640         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
2641         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
2642
2643 2001-08-24  Havoc Pennington  <hp@pobox.com>
2644
2645         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
2646         these are already in gtkmenu.h, and the copies
2647         here were broken.
2648
2649         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
2650
2651         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
2652         special-case bitmaps to allow no colormap
2653         (bitmap1): implement no-colormap bitmap-getting
2654         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
2655         alpha
2656         (rgb8): indentation
2657         (rgb1a, rgb1): change the way we read the data out of the image, 
2658         old way didn't seem to work quite right.
2659
2660         I'm pretty sure a lot of the rgbconvert code is still broken.
2661         
2662         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
2663         above position constraint (I really intended to do this before,
2664         don't know what's up with that)
2665         (gtk_XParseGeometry): shut up gcc
2666
2667         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
2668         and "0" should have been. remove the attempted 4-bytes-at-once
2669         optimization, it was totally broken.
2670
2671 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
2672
2673         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
2674         on push to buttons (based on patch from Soeren Sandmann, #54720)
2675
2676           - Add child_displacement_x/y style properties to control how far the
2677             child moves when the button is depressed.
2678
2679           - Add non-exported function _gtk_button_set_depressed to clean
2680             up the handling of the in/out shadow and separate it frmo
2681             widget->state.
2682
2683           - Lots of code cleanup and simplification of state handling
2684             for GtkButton/GtkToggleButton.
2685  
2686         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
2687         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
2688
2689 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
2690
2691         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
2692         and make gtk_image_new() take no arguments. The compiler will
2693         catch it, and it is vastly more useful than having
2694         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
2695
2696         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
2697         to add tearoff-title property (#51319, Lee Mallabone)
2698
2699 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
2700
2701         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
2702         gtk_menu_item_configure(). (#58925)
2703
2704 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
2705
2706         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
2707         "use_align" to give people the option to just make a cell visible.
2708
2709         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
2710         we were scrolling past the end of the tree.
2711
2712         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
2713         rename gtk_tree_view_column_pack_start_cell_renderer to
2714         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
2715
2716 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
2717
2718         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
2719         a stray g_object_ref() left over from gtk_object_ref/sink.
2720         (Pointed out by Josh Pritikin.)
2721
2722 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
2723
2724         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
2725         to gtk_container_get_children. Added deprecated compatibility
2726         macro. (Suggested by Vitaly Tishkov, #59051)
2727
2728         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
2729         calls.
2730
2731 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
2732
2733         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
2734         gtk_menu_bar_append/prepend/insert, forgot to do this
2735         when we deprecated gtk_menu_append/prepend/insert.
2736
2737         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
2738         compat macros.
2739
2740         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
2741         renamed by compat macro.
2742
2743         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
2744         gtk_font_selection_dialog_get_font(). (Suggested by
2745         Vitaly Tishkov, #59383)
2746
2747 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
2748
2749         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
2750         Rename from gtk_text_tag_table_size(). (#59366)
2751
2752 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
2753
2754         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
2755         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
2756         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
2757         (#59173).
2758
2759 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
2760
2761         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
2762         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
2763         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
2764
2765 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
2766
2767         [ Patch from Sebastian Wilhelmi, 52790 ]
2768
2769         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
2770
2771         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
2772         Move compatibility macros from g[dt]kcompat.h to within 
2773         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
2774
2775         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
2776
2777         * demos/Makefile.am demos/gtk-demo/Makefile.am 
2778           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
2779           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
2780
2781         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
2782                  testpixbuf.c}: Fix usages of deprecated functions.
2783
2784 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
2785
2786         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
2787         when changing models.
2788
2789 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
2790
2791         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
2792         We check the current event for modifiers rather than try to trap
2793         all presses.
2794
2795 2001-08-22  Anders Carlsson  <andersca@gnu.org>
2796
2797         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
2798         It's LIST_STORE, not LISTSTORE.
2799
2800 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
2801
2802         * gtk/gtk.h: Remove commented out gtkpacker reference.
2803
2804 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2805
2806         * configure.in (all_loaders): Add tga loader, 
2807         patch by Nicola Girardi. (#56067)
2808
2809 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
2810
2811         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
2812         a little.  More needs to be done tomorrow.
2813
2814 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
2815
2816         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
2817
2818 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
2819
2820         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
2821         reported by Kristian Rietveld <kristian@planet.nl> to handle row
2822         == NULL.
2823         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
2824         <kristian@planet.nl> to change destroy order.
2825
2826 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
2827
2828         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
2829         correct marshaller.
2830
2831 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
2832
2833         * gtk/gtkliststore.c: Fix up warnings, #58928.
2834
2835         * gtk/gtktreeselection.h: Change signal prototype, #58647
2836
2837         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
2838         #59221.
2839
2840         * gtk/gtkstyle.c: Actually prelight arrow, #50981
2841         
2842 2001-08-18  Hans Breuer  <hans@breuer.org>
2843
2844         * gdk/gdk.def : updated externals
2845
2846         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
2847         is required to get (at least) visible in entry fields. Some selections
2848         are really handled now - even on win32 - but copying via middle
2849         mouse button into a different app needs to wait ... 
2850
2851         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
2852         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
2853
2854         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
2855         handling. I'm not sure if it is better now, but at least not worse
2856
2857         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
2858         with SetWindowPos () which allows more fine-tuning backing-store wise
2859
2860         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
2861         Also changed move/resize to be more like the X version.
2862
2863         * gtk/gtk.def : updated externals
2864
2865 2001-08-19  Sven Neumann  <sven@gimp.org>
2866
2867         * gtk/gtktooltips.c
2868         * tests/testtreesort.c
2869         * tests/treestoretest.c: inserted some casts to get rid of compiler
2870         warnings.
2871
2872 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
2873
2874         * gtk/gtktreeviewcolumn.c
2875         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
2876
2877         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
2878         (_gtk_tree_view_find_node): If *node is NULL,
2879         *tree should be NULL too.
2880
2881         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
2882         column/renderers.
2883         * tests/testtreecolumns.c: ditto
2884         * tests/testtreefocus.c: ditto
2885         * tests/testtreesort.c: ditto
2886         * tests/testtreeview.c: ditto
2887         * tests/treestoretest.c: ditto
2888
2889 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
2890
2891         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
2892         signals; is_expander/is_expanded.
2893
2894         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
2895         pixbufs.
2896
2897         * gtk/gtktreeview.c: set above properties.
2898
2899 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
2900
2901         * gtk/gtkwidget.h: Really remove set_default_style().
2902
2903         * docs/Changes-2.0.txt: added a note about
2904         gtk_widget_push/pop/set_default_style.
2905
2906 2001-08-18  Havoc Pennington  <hp@pobox.com>
2907
2908         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
2909         hints_changed in addition to the other cases.
2910         (gtk_window_move_resize): include last position from configure
2911         notify in debug spew
2912
2913 2001-08-18  James Henstridge  <james@daa.com.au>
2914
2915         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
2916         second argument to the weak ref notify, cleaning up some uglyness.
2917         (gtk_accel_group_attach): remove and add the weak notifier when
2918         changing the accel groups slist.
2919         (gtk_accel_group_detach): same here.
2920
2921 2001-08-17  Darin Adler  <darin@bentspoon.com>
2922
2923         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
2924         missing parameters to utf8 functions to make it compile.
2925
2926 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
2927
2928         * gtk/gtktreeprivate.h:
2929         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
2930         (gtk_tree_view_init), (gtk_tree_view_set_property),
2931         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
2932         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
2933         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
2934         (gtk_tree_view_set_destroy_count_func),
2935         (gtk_tree_view_set_enable_search),
2936         (gtk_tree_view_get_enable_search),
2937         (gtk_tree_view_get_search_column),
2938         (gtk_tree_view_set_search_column),
2939         (gtk_tree_view_get_search_equal_func),
2940         (gtk_tree_view_set_search_equal_func),
2941         (gtk_tree_view_search_dialog_destroy),
2942         (gtk_tree_view_search_position_func),
2943         (gtk_tree_view_interactive_search),
2944         (gtk_tree_view_search_delete_event),
2945         (gtk_tree_view_search_button_press_event),
2946         (gtk_tree_view_search_key_press_event),
2947         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
2948         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
2949         * gtk/gtktreeview.h:
2950         Add heavily modified patch from Kristian Rietveld to handle
2951         interactive searching.
2952
2953 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
2954
2955         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
2956         string parameter.
2957
2958         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
2959         GtkMenuShell::selection_done, now that we have it, instead of 
2960         ::deactivate so we're not tearing the menu apart and notify
2961         the user prematurely.
2962
2963 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
2964
2965         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
2966         window, clear window->need_default_position to avoid infinite loops.
2967         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
2968
2969 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
2970
2971         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
2972         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
2973         (gtk_tree_view_set_property): don't cast possible NULL objects.
2974         (gtk_tree_view_destroy): reset the model to NULL.
2975
2976         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
2977         parent_class handler.
2978
2979 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2980
2981         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
2982
2983 2001-08-17  Anders Carlsson  <andersca@gnu.org>
2984
2985         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
2986         point numbers so that the result will be floating point.
2987
2988 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
2989
2990         * tests/testgtk.c (create_handle_box): 
2991         (create_toolbar): Replace gtk_window_set_policy calls by
2992         gtk_window_set_resizable.
2993
2994 2001-08-16  Jakub Steiner <jimmac@ximian.com>
2995
2996         * gtk/stock-icons/dialog_info.png: new style bulb
2997         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
2998         * gtk/stock-icons/dialog_warning.png: need a hand?
2999         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
3000           the aa border gets chopped off ok
3001         * gtk/stock-icons/stock_colorselector.png: using the new hand
3002         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
3003           this one is for, but the old icon was butt ugly.
3004         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
3005         * gtk/stock-icons/stock*_insert_object.png: "
3006         * gtk/stock-icons/stock_index.png: using new hand icon
3007         * gtk/stock-icons/stock*_new.png: the document template being used 
3008           elsewhere too
3009         * gtk/stock-icons/stock*_print*.png: new print and print preview 
3010           icons (panel/menu)  
3011         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
3012           icons based on Tuomas' floppy image.
3013         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
3014         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
3015         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
3016         * gtk/stock-icons/stock*_undelete.png: "
3017         * gtk/stock-icons/stock_preferences.png: I have a version with a 
3018           document base if the sliders are no good.
3019         * gtk/stock-icons/stock_properties.png: properties 
3020         
3021
3022         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
3023           (tigert@ximian.com) clipboard icons
3024         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
3025         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
3026         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
3027           little bigger IMHO
3028
3029 2001-08-16  Sven Neumann  <sven@gimp.org>
3030
3031         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
3032
3033 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
3034
3035         * gtk/gtkcellrenderertext.c:
3036         Avoid warning when specifying NULL for "attributes" property
3037
3038 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3039
3040         * docs/debugging.txt: Add a warning about --enable-debug=no,
3041         some editorial changes.
3042
3043 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3044
3045         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
3046         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
3047         debugging info, remove unused debug flags. (#58330)
3048
3049 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
3050
3051         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
3052         (gtk_tree_selection_select_all): Remove strict checking for rows.
3053
3054 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3055         
3056         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
3057         Don't remove the tooltip window when the tip text changes. (#15891)
3058
3059 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
3060
3061         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
3062         $(srcdir).
3063
3064 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
3065
3066         * Makefile.am (EXTRA_DIST): Fix problem with trying to
3067         dist files from intl/, which is no longer there.
3068
3069 2001-08-11  Hans Breuer  <hans@breuer.org>
3070
3071         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
3072           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
3073           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
3074           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
3075           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
3076           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
3077
3078         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
3079           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
3080         GDK_TYPE_EVENT signals
3081
3082         * gtk/gtkalignment.c : removed 'direct allocation bug',
3083         which Tim discovered while reading the patch
3084
3085 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
3086
3087         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
3088         compat macros for push/pop/set_visual that were supposed
3089         to be added a long time ago, but got dropped. 
3090
3091 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
3092
3093         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
3094         property notifies.
3095
3096 2001-08-07  Havoc Pennington  <hp@pobox.com>
3097
3098         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
3099
3100         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
3101         some fixage is needed here, but nothing simple. Owen understands
3102         it. ;-)
3103
3104         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
3105         sizing and positioning.  Also, fix bug in compute_geometry_hints
3106         (width/height confusion for setting min size). 
3107         (gtk_window_move): new function
3108         (gtk_window_resize): new function
3109         (gtk_window_get_size): new function
3110         (gtk_window_get_position): new function
3111         (gtk_window_parse_geometry): new function
3112         
3113         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
3114         (gtk_widget_get_size_request): new function
3115         (gtk_widget_get_usize): delete, that was a short-lived function
3116         ;-)
3117         (gtk_widget_set_usize): deprecate
3118         (gtk_widget_set_uposition): deprecate, make it a trivial 
3119         gtk_window_move() wrapper
3120         (gtk_widget_class_init): remove x/y/width/height properties,
3121         add width_request height_request
3122         
3123         * demos/*: update to avoid deprecated functions
3124         
3125         * gtk/gtklayout.c: add x/y child properties
3126
3127         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
3128         uses of "gint16"
3129
3130         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
3131         sizing test
3132
3133         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
3134         configure events on toplevel windows are always in root window
3135         coordinates, following ICCCM spec that all synthetic events 
3136         are in root window coords already, while real events are 
3137         in parent window coords. Previously the code assumed that 
3138         coords of 0,0 were parent window coords, which was 
3139         really broken.
3140   
3141         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
3142         warning
3143  
3144         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
3145         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
3146         hints in gtk_window_parse_geometry()
3147  
3148         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
3149         new USER_POS USER_SIZE hints    
3150
3151 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3152
3153         * tests/prop-editor.c (properties_from_type): Use 
3154         g_object_class_list_properties to get the param specs 
3155         for a given type. (#58609)
3156
3157 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3158
3159         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
3160         free the text_aa parts. (#57549)
3161
3162 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3163
3164         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
3165         not the foreground color. (#57621)
3166
3167 2001-08-09  Alexander Larsson <alexl@redhat.com>
3168
3169         * gdk/win32/gdkfont-win32.c:
3170         Update to the new pango win32 api.
3171
3172 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
3173
3174         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
3175         COMPOUND_TEXT instead of TEXT
3176         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
3177         interpret the return value of g_string_to_compound_text()
3178         (#55152)
3179
3180 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3181
3182         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
3183         fail if iter is NULL. (#58347)
3184
3185 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3186
3187         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
3188         some off-by-one issues, fixing selection of line-ends. (#50323)
3189
3190 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3191
3192         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
3193         functions in order to make mouse operation work again in the
3194         color wheel. (#58604)
3195
3196 2001-08-07  James Henstridge  <james@daa.com.au>
3197
3198         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
3199         the accelerator when the accel object is changed.  Fixes bug
3200         #58628.
3201
3202 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
3203
3204         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
3205         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
3206         (gnome bugzilla #58202)
3207
3208 2001-08-06  Havoc Pennington  <hp@pobox.com>
3209  
3210         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
3211         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
3212         it was expecting a GdkWindow, not a GdkWindowImplX11.
3213  
3214         Also, we were getting the window rect in screen coords 
3215         and the screen rect in window coords then intersecting 
3216         them; instead, get window rect in window coords.
3217  
3218         Finally, there were codepaths that resulted in a stuck server grab
3219         (when the window was fully onscreen, or on gdk_image_new()
3220         failure); make the server ungrab thing a bit more
3221         robust/consistent.
3222
3223 2001-08-06  Sven Neumann  <sven@gimp.org>
3224
3225         * gdk/gdkpango.c (gdk_pango_context_destroy): 
3226         check if info->colormap != NULL before unref'ing it. It might have
3227         been set to NULL using gdk_pango_context_set_colormap().
3228
3229 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
3230
3231         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
3232         Fix conversion from float to int so that we don't get
3233         skew in the int => float => int roundtrip. 
3234         (#58120, reported by Vitaly Tishkov). Also fix problem
3235         where if no alpha was set, the returned alpha
3236         from (say) set_current_alpha() was returned as 1, not 65535.
3237
3238 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
3239
3240         * gtk/gtklist.c (gtk_list_clear_items): Fix
3241         problem with selecting a new focus child.
3242
3243         * gtk/gtklist.c (gtk_list_clear_items): Clear 
3244         list->undo/list_focus_child after unparenting
3245         child, since unparenting the child can result
3246         in list->last_focus_child being set. (#58024)
3247
3248         * Makefile.am (SUBDIRS): Add target specific pc
3249         files to DISTCLEANFILES.
3250
3251         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
3252         (58327, Matthias Clasen)
3253
3254 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
3255
3256         * tests/testgtk.c: Patch from Hans (with various modifications),
3257         to add the ability to use testgtk as a rough-and-ready
3258         benchmark. Try, 'testgtk --bench all:5' (if you want decent
3259         numbers, run without a window manager)
3260
3261 2001-08-04 Alexander Larsson <alexl@redhat.com>
3262
3263         * gdk/win32/gdkinput.c:
3264         Add #ifdef HAVE_WINTAB around wintab.h include.
3265
3266         * gtk/gtk.def:
3267         Removed marshals that have been moved to glib.
3268         Commented out plug and socket. They didn't compile for me 
3269         on win32.
3270
3271 2001-08-04  Hans Breuer  <hans@breuer.org>
3272
3273         * gtk/stocks-icons/makefile.msc : new file
3274         * gtk/makefile.msc.in : use it
3275
3276         * gtk/gtkstyle.c : not all platforms do provide M_PI and
3277         friends, but luckily there is G_PI
3278
3279         * gtk/gtk.def : updated
3280
3281         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
3282         windows WS_POPUP, but only those without a parent. This fixes the 
3283         mis-alignment between the selectable (temp, input only) window and 
3284         the window text of GtkLabel.
3285
3286         (gdk_window_show) : respect private->state when actually showing
3287         the window.
3288
3289         (gdk_window_set_transient_for) : Implementation from Wolfgang 
3290         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
3291         error handling. Should fix #50586.
3292
3293         * gdk/win32/gdkevents-win32.c : beautify log output
3294
3295 2001-08-04  Michael Natterer  <mitch@gimp.org>
3296
3297         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
3298         Need to show the image after adding it to the GtkImageMenuItem.
3299         This used to work without in testgtk because of the
3300         gtk_widget_show_all() at the end of the function.
3301         (Closes #54978).
3302
3303 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
3304
3305         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
3306         (gtk_notebook_set_child_property): fix finding of child's page,
3307         since we have to validly deal with labels and menus here as well.
3308         (gtk_notebook_get_child_property): fix warning.
3309         (gtk_notebook_class_init): property tab_pack is of type
3310         GTK_TYPE_PACK_TYPE (enum) not boolean.
3311         (gtk_notebook_find_child): don't always warn, we might be looking
3312         for a label or menu child.
3313         (gtk_notebook_map): fix mapping of panel.
3314
3315         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
3316         widget's mapped state, regardless of the value being set equals
3317         old settings, since things like REALIZED(parent) or MAPPED(parent)
3318         may have changed since the old value was set. make it an error to
3319         invoke this function on a toplevel widget.
3320
3321 2001-07-31  Darin Adler  <darin@bentspoon.com>
3322
3323         * gdk/gdkprivate.h:
3324         * gdk/x11/gdkx.h:
3325         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
3326
3327         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
3328         GTK_OBJECT.
3329
3330 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
3331
3332         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
3333         scoping error pointed out by matthiasc@poet.de.
3334
3335 2001-07-31  Sven Neumann  <sven@gimp.org>
3336
3337         * demos/gtk-demo/appwindow.c
3338         * demos/gtk-demo/item_factory.c
3339         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
3340
3341 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
3342
3343         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
3344         argument order for g_signal_has_handler_pending.
3345
3346 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
3347
3348         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
3349         instead of long deprecated g_scanner_stat_mode().
3350
3351 2001-07-29  Hans Breuer  <hans@breuer.org>
3352
3353         * gdk/makefile.msc : build in the backend dir after
3354         auto-generating files
3355
3356         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
3357         with code from win32-production-branch.
3358
3359         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
3360         before calling DestroyWindow, which indirectly calls 
3361         gdk_window_destroy_notify ()
3362
3363         (performance patch merged from win32-production-branch)
3364         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
3365         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
3366         R2_COPYPEN rop). It is claimed to be much faster.
3367
3368 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
3369
3370         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
3371         add an "attributes" property to the text renderer for ATK.
3372
3373 2001-07-26  Alex Larsson  <alexl@redhat.com>
3374
3375         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3376         Initialize image->bits_per_pixel from the drawable, not from
3377         the root window.
3378
3379         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
3380         Fix cast. argument is an IMPL already.
3381
3382 2001-07-15  James Henstridge  <james@daa.com.au>
3383
3384         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
3385         (gtk_window_remove_accel_group): same here.
3386         (gtk_window_key_press_event): same here.
3387
3388         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
3389         (gtk_widget_remove_accelerator): same here.
3390         (gtk_widget_remove_accelerators): same here.
3391
3392         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
3393
3394         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
3395         instead of GtkObject.
3396
3397         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
3398         now takes GObjects.
3399
3400         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
3401         pass a GObject to gtk_accel_group_entries_from_object.
3402         (gtk_item_factory_create_item): s/accel_widget/accel_object/
3403
3404         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
3405
3406         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
3407
3408         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
3409         GObjects can have accelerators set now.  Add compatibility
3410         defines.
3411
3412         * gtk/gtkmarshal.list: add missing marshallers.
3413
3414         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
3415         accelerators on plain GObjects.  gtk_accel_group_object_destroy
3416         has been converted into a weak reference, and
3417         gtk_accel_group_delete_entries is now a destroy notify for that
3418         piece of data.
3419
3420 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
3421
3422         * gdk/gdkdraw.c: Added a check on the colormap depth to
3423         gdk_drawable_set_colormap()
3424         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
3425         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
3426         for pixmaps without visuals (more specifically, bitmaps)
3427         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
3428         doesn't set a colormap with the wrong depth
3429
3430
3431 2001-07-22  Anders Carlsson  <andersca@gnome.org>
3432
3433         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
3434         expander_height and expander_width properties with a single
3435         property, expander_size.
3436         (gtk_tree_view_init): Set the tab_offset to expander_size
3437         plus some padding.
3438         (gtk_tree_view_unrealize): Remove the expand/collapse
3439         timeout if it exists.
3440         (coords_are_over_arrow): Fix a small bug.
3441         (gtk_tree_view_motion_draw_column_motion_arrow): Use
3442         expander_size.
3443         (gtk_tree_view_draw_focus): Use "treeview" instead of
3444         "add-mode" as detail when drawing the focus.
3445         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
3446         instead of "add-mode" as detail when drawing the focus.
3447         (gtk_tree_view_deleted): If we have a node currently being
3448         expanded or collapsed, remove the timeout and set the node 
3449         to NULL.
3450         (gtk_tree_view_queue_draw_arrow): New function that just
3451         redraws the arrow of a node.
3452         (gtk_tree_view_draw_arrow): Use expander_size instead of
3453         expander_width/expander_height, also pass a different
3454         expander_style to gtk_paint_expander depending on the 
3455         state of the node being drawn.
3456         (expand_collapse_timeout): New function for expanding 
3457         or collapsing a node depending on the previous state.
3458         (gtk_tree_view_real_expand_row): Add timeout and set 
3459         correct state for node being expanded.
3460         (gtk_tree_view_real_collapse_row): Add timeout and set
3461         correct state for node being collapsed.
3462
3463         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
3464         information about the node currently being expanded or
3465         collapsed, and also a timeout id.
3466
3467         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
3468         with expander_style for draw_expander.
3469
3470         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
3471         expander_style.
3472         (create_expander_affine): New function for creating an 
3473         expander affine.
3474         (apply_affine_on_point): New function for applying an 
3475         affine to a point.
3476         (gtk_default_draw_expander): Modified to take expander_style
3477         instead of is_open, and to draw the rectangle rotated differently
3478         depending on the expander style.
3479         (gtk_paint_expander): Replace is_open with expander_style.
3480
3481         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
3482
3483         * gtk/gtkenums.h: Add expander style enum.
3484
3485 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
3486
3487         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
3488         value from gtk_tree_model_get_iter, the model might be empty.
3489
3490 2001-07-20  Hans Breuer  <hans@breuer.org>
3491
3492         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
3493         gdk/gdkinput.c like the other backends
3494
3495         * gdk/win32/gdkinput-win32.h :
3496         * gdk/win32/gdkinput.c :
3497         * gdk/win32/gdkvisual-win32.c :
3498         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
3499         GdkVisual GObjectification. UNTESTED for pen-devices because
3500         I simply have none.
3501
3502         * gdk/gdk.def :
3503         * gtk/gtk.def : updated externals
3504
3505         * gtk/gtkiconfactory.c :
3506         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
3507         before passing &error to functions to avoid strange crashes
3508         
3509         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
3510
3511         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
3512
3513         * gtk/makefile.msc.in : updated
3514
3515 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
3516
3517         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
3518         Add property support. (#51858)
3519
3520 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
3521
3522         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
3523         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
3524         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
3525
3526 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
3527
3528         * gtk/gtkcolorsel.c: Add propery support (roughly
3529         based on patch from Lee Mallabone, #51014)
3530
3531         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
3532         deprecated, since we already g_warning() on it.
3533
3534 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
3535
3536         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
3537         typo that sometimes caused selection not to work properly.
3538
3539         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
3540         entry when tabbing in. (#57743)
3541         
3542         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
3543         user drags up above or down below the entry, move
3544         to the end or the beginning of the entry. (Suggestion
3545         from Jay Cox, #50940)
3546
3547         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
3548         a current selection, then when moving by chars or
3549         words, move to the end of the selection rather than
3550         from entry->current_pos. (Suggestion from Jay Cox,
3551         #50942)
3552         
3553 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
3554
3555         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
3556         set window->decorated. (Patch from Hidetoshi Tajima,
3557         #55846)
3558
3559 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
3560
3561         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
3562         the widget/child realization/mapping invariants.
3563
3564         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
3565         gtk_widget_[get/set]_child_visible() to control
3566         whether visible children of a mapped window are
3567         mapped.
3568
3569         * docs/widget_system.txt: Updated for changes in
3570         container contract, and addition of GTK_CHILD_VISIBLE.
3571
3572         * gtk/gtkcontainer.c: Add generic map()/unmap()
3573         functions that work for almost all containers.
3574
3575         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
3576         gtk_widget_set_child_visible() where necessary.
3577
3578         * gtk/*.c: Remove excess map(), unmap(), and 
3579         realization/mapping invariant enforcing code
3580         from many containers.
3581
3582 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
3583
3584         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
3585         Get the foreground color from 'text', nor 'fg'. (#57568)
3586
3587 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
3588
3589         * gtk/*.c: Patch from Matthias Clasen to remove remove
3590         all instances of g_return_if_fail (foo != NULL); that are
3591         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
3592         since the second check catches the NULL anyways.
3593
3594 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
3595
3596         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
3597         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
3598         GDK_THREADS_ENTER()/LEAVE() pairs.
3599
3600         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
3601         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
3602         pairs. (Problem found by M. Meeks)
3603
3604 2001-07-18  Darin Adler  <darin@bentspoon.com>
3605
3606         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
3607         that we don't get a g_warning message every time we register a new
3608         icon size.
3609
3610         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
3611         using pixel variable of the correct type.
3612         
3613 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
3614
3615         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
3616         so that using X functions on a GdkWindow is possible, if
3617         a little hairy.
3618
3619         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
3620         and ts_origin of a GC, so that external parties can offset/restore
3621         a GC, when using gdk_window_get_internal_paint_info().
3622
3623 2001-07-17  Darin Adler  <darin@bentspoon.com>
3624
3625         * .cvsignore: Ignore the sgml directory made by gtkdoc.
3626         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
3627         instead of the deprecated gtk_window_set_policy.
3628         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
3629         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
3630         function to get rid of warning and some code too.
3631         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
3632         missing const.
3633         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
3634         unused local.
3635         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
3636         const.
3637         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
3638         (gdk_utf8_to_compound_text): Add missing const.
3639         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
3640         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
3641         cast and get rid of an unnecessary one.
3642         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
3643         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
3644         local.
3645         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
3646         Remove unused local.
3647         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
3648         missing const.
3649         * tests/testsocket.c: (add_child): Add cast so the printf format
3650         doesn't make us implicitly depend on what integer type
3651         gtk_socket_get_id returns.
3652         * tests/testtextbuffer.c: Add missing const.
3653         * tests/testtreefocus.c: (main): Remove unused local.
3654         * tests/treestoretest.c: (iter_remove): Remove unused local.
3655         (uppercase_value): Remove unused function.
3656         (make_window): Add statement to quiet the compiler's uninitialized
3657         variable warning.
3658
3659 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
3660
3661         * gtk/gtkrange.c:
3662         (second_timeout): 
3663         (initial_timeout): 
3664         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
3665         (gtk_range_calc_layout): compute the new layout based on an
3666         adjustment->value being passed in as argument.
3667         (gtk_range_button_press): for button2 slider warps, first recalc
3668         the layout, then adjust the value. also, use update_slider_position()
3669         for adjusting the value, so we keep pixel quantisation at which we
3670         usually operate (upon motion or button releases). the reason for this
3671         is that, we can't change the adjustment upon button2 presses to a non
3672         quantised value and upon button2 release re-quantise the value since
3673         that'd alter the value even if we didn't get any motion events (causing
3674         unexpected scroll area warps upon release and/or slider pixel-jitter).
3675         (gtk_range_motion_notify): update the slider position from queried
3676         coordinates, not event coordinates.
3677
3678 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
3679
3680         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
3681         the default gc values are: width=0, CapBut, JoinMiter.
3682
3683 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
3684
3685         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
3686         into account the xpad and ypad when calculating the width and the
3687         height of the pixbuf cel.
3688
3689 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
3690
3691         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
3692         Rename to gtk_radio_menu_item_get_group(), add deprecated
3693         alias. (#57044)
3694
3695         * gtk/gtkfilesel.c: Indentation fix.
3696
3697 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
3698
3699         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
3700         Hasselmann to fix warnings in compat macros. 
3701         (#56773)
3702
3703         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
3704         stupid wrong cast added in last patch.
3705
3706 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
3707
3708         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
3709         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
3710
3711 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
3712
3713         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
3714         missing cast.
3715
3716         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
3717         NULL/FALSE return value confusion.
3718
3719         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
3720         problem when scrollbar completely fills range. (Patch
3721         from  Matthias Clasen, #57047)
3722
3723 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
3724
3725         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
3726         clean up when handling events for move-resize emulation.
3727         (Problem traced down by Matthias Clasen, #57271)
3728
3729 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
3730
3731         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
3732           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
3733           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
3734           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
3735           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
3736           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
3737           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
3738         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
3739
3740 2001-07-09  Peter Williams  <peterw@ximian.com>
3741
3742         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
3743         for when srcdir != builddir
3744
3745 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
3746
3747         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
3748         gtk_tree_model_get_iter_root.
3749
3750         * gtk/gtkliststore.c: Add a bunch of g_return statements.
3751         (gtk_list_store_iter_n_children): Fix up.
3752
3753         * gtk/gtktreestore.c: Add a bunch of g_return statements.
3754
3755 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
3756
3757         * gtk/gtkwidget.c (gtk_widget_class_init):
3758         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
3759         restore some workingness.
3760
3761         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
3762         handle of window type for input-only windows.
3763
3764 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
3765
3766         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
3767         Patch from Gregory Merchan to add 
3768         gtk_button_box_set_secondary(), which separates
3769         the child into a separate group from the normal
3770         buttons. (#56331)
3771
3772         * gtk/gtkdialog.c: Make help buttons secondary by
3773         default.
3774
3775         * gtk/gtkbbox.c: Added a child property "secondary".
3776
3777         * gtk/testgtk.c: Turn on the help button for the 
3778         color selector to check that it properly appears
3779         as secondary.
3780
3781 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
3782  
3783         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
3784         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
3785         Add gdk_set_pointer_hooks() to allow pointer-querying to
3786         be hooked by an event record/playback system like GERD.
3787         (#56914)
3788         
3789 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
3790
3791         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
3792         in the right value of initial_emission to
3793         gtk_widget_set_style_internal (#57091)
3794
3795 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
3796
3797         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
3798         Make compile.
3799
3800         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
3801         with calling gtk_widget_set_style_internal() with
3802         the old style, not the new style. (#56989)
3803
3804 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
3805
3806         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
3807           gtk/gtkwidget.c:
3808         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
3809         not GTK_WIDGET_GET_ANCESTOR ... see 
3810         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
3811         Indicate the best practice in the docs for gtk_widget_get_toplevel().
3812
3813         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
3814         so GtkPlug can give the correct signals when transforming
3815         from a child to a toplevel.
3816         
3817         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
3818         reparentation correctly.
3819
3820         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
3821         Propagate the previous_toplevel argument down properly.
3822
3823         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
3824         of wrong atr list.
3825
3826         * gtk/gtkplug.[ch]: Add an "embedded" signal.
3827
3828         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
3829         signals.
3830
3831         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
3832         functions gtk_plug_get_id(), gtk_socket_get_id(),
3833         to avoid the user having to worry about realization,
3834         and gdkx.h.
3835
3836         * tests/testsocket.c: Extend to try out the new signals
3837         and gtk_plug/socket_get_id().
3838
3839         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
3840         setting of underline attributes.
3841
3842         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
3843         DestroyNotify events from SubstructureNotifyMask
3844
3845         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
3846         Switch GDK_WINDOW_TYPE (window) as needed.
3847
3848         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
3849         allow creation of toplevel windows as children of
3850         foreign windows.
3851
3852         * gtk/gtkplug.c: Remove hacks involving changing private
3853         fields of GdkWindow.
3854
3855         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
3856         exactly the same signals and notification
3857         be emitted for local embedding as for inter-process
3858         embedding.
3859
3860 2001-07-04  James Henstridge  <james@daa.com.au>
3861
3862         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
3863
3864 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
3865
3866         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
3867         XEMBED embedding add a _XEMBED_INFO property to the
3868         client with version number and a "mapped" flags.
3869         Use the mapped flag instead of the racy MapRequestEvent
3870
3871         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
3872         code to reliably set things (when the child is a passive
3873         embedder participating in the XEMBED protocol) intead
3874         of just being a hack for embedding non-participating
3875         programs. Fix various bugs and race conditions.
3876         
3877         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
3878         work by simply making the GtkSocket the gtk parent
3879         of the GtkPlug. Set a flag in this case and make
3880         the GtkPlug work like a normal container by overriding
3881         methods such as check_resize and "chaining past" GtkWindow
3882         to GtkBin.
3883
3884         * gtk/gtkentry.c (gtk_entry_real_activate)
3885           gtk/gtkmain.c (gtk_propagate_event): 
3886         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
3887         
3888         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
3889         gtk_widget_get_ancestor):
3890         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
3891         might not give the expected result and recommend
3892         an alternative.
3893
3894         * tests/testsocket.c tests/testsocket_child.c
3895         tests/testsocket_common.c tests/Makefile.am: Extended
3896         to test different type of adding plugs to sockets
3897         (local,active,passive), and to test mapping/unmapping
3898         the plug.
3899
3900         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
3901         mark the window as destroyed until after we
3902         called _gdk_windowing_window_destroy().
3903         (_gdk_windowing_window_destroy() may use GDK functions
3904         on the window.)
3905
3906         * gdk/x11/gdkinput.c: Remove the check for finalization - 
3907         devices can be finalized under some circumnstances.
3908  
3909         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
3910         small problem with GDK_TYPE_DEVICE.
3911  
3912 2001-07-02  Havoc Pennington  <hp@pobox.com>
3913
3914         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
3915         use constants not atoms.
3916
3917 2001-07-02  James Henstridge  <james@daa.com.au>
3918
3919         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
3920         PANGO_TYPE_TAB_ARRAY.
3921
3922         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
3923         for PANGO_TYPE_TAB_ARRAY.
3924
3925         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
3926         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
3927
3928         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
3929         the file.  Remove Pango types from defs -- they are now defined in
3930         libpango.
3931
3932 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
3933
3934         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
3935
3936         * gtk/gtkobject.c (gtk_object_destroy): invoke
3937         g_object_run_dispose().
3938
3939         * gtk/gtkwindow.c: 
3940         * gtk/gtkwidget.c: 
3941         * gtk/gtkobject.c:
3942         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
3943         method.
3944
3945 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
3946
3947         * gtk/gtktypeutils.c (gtk_type_class): Remove
3948         change check for GTK_TYPE_OBJECT derivation to
3949         G_TYPE_OBJECTS - it's Tim-approved to use this 
3950         for arbitary objects.
3951
3952         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
3953         prefix gtk_container_dequeue_resize_handler().
3954
3955         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
3956         to the hierarachy_changed signal, since you otherwise
3957         have to always keep that around.
3958
3959         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
3960         for extra argument to hierarchy_changed.
3961
3962 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
3963
3964         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
3965         for style to mean "revert to default style"
3966
3967         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
3968           gtk_widget_restore_default_style): Make this functions
3969         deprecated aliases for gtk_widget_set_style (widget, NULL).
3970
3971         * gtk/gtkwidget.[ch]: Remove:
3972            gtk_widget_set_default_style ()
3973            gtk_widget_push_style ()
3974            gtk_widget_pop_style ()
3975         These functions interact are overriden by RC files, and
3976         thus virtually useless, and complicated.
3977
3978 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
3979
3980         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
3981         most of the previous global variables in gtkrc.c. This is
3982         in preparation for multi-head, since each screen can
3983         have different GtkSettings and RC information.
3984
3985         * gtk/gtkrc.[ch]: 
3986
3987         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
3988         GtkSettings parameter to GtkRcStyle::parse.
3989
3990         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
3991         Add two new settings gtk-theme-name, gtk-key-theme-name,
3992         for RC files that are loaded by name after reading
3993         the default RC files.
3994         
3995         * gtk/gtkrc.c: Allow priorities for styles, as wll as
3996         bindings.
3997
3998         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
3999         and use it by default for RC files loaded via 
4000         gtk-theme-name, gtk-key-theme-name.
4001
4002         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
4003         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
4004         tests/testgtkrc: Require pathnames to be absolute.
4005
4006         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
4007         the source when parsing, since the operation of looking up a
4008         pixmap from an RC file depends on the parsing context.
4009
4010         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
4011         reset RC styles on all widgets when files are reparsed.
4012
4013         * tests/testgtk.c (create_rc_file) 
4014           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
4015         Simplify, now that gtk_rc_reparse_all() resets styles on
4016         all widgets itself.
4017
4018         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
4019         return value.
4020
4021         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
4022         GtkSettings argument.
4023
4024         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
4025         gtk_settings_get_global().
4026
4027         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
4028         to get the appropriate GtkSettings for a widget. (For now,
4029         just gets the default GtkSetttings.) 
4030
4031         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
4032           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
4033         changes.
4034
4035         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
4036         getting a style for a path without actually having a widget.
4037         (Allows using a style for a subpart of a widget, for
4038         example.)
4039
4040         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
4041         the RC files to be reloaded for just one GtkSettings
4042         (not sure how useful this really is.)
4043
4044         * gtk/gtkrc.h: Deprecate
4045         gtk_rc_add_widget_name/widget_class/class_style
4046
4047 2001-06-30  Alex Larsson  <alexl@redhat.com>
4048
4049         * gdk/linux-fb/gdkinput-none.c:
4050         * gdk/linux-fb/gdkinput.c:
4051         * gdk/linux-fb/gdkinputprivate.h:
4052         Convert GdkDevice to a GObject.
4053
4054         * linux-fb/gdkprivate-fb.h:
4055         * linux-fb/gdkvisual-fb.c:
4056         Convert GdkVisual to a GObject.
4057
4058 2001-06-29  Alex Larsson  <alexl@redhat.com>
4059
4060         * gdk/gdkvisual.h:
4061         * gdk/gdkcolor.c:
4062         * gdk/x11/gdkx.h:
4063         * gdk/x11/gdkvisual-x11.c:
4064         Convert GdkVisual to a GObject.
4065
4066         * gdk/gdkinput.h:
4067         * gdk/gdkevents.c:
4068         * gdk/x11/gdkinputprivate.h:
4069         * gdk/x11/gdkinput-gxi.c:
4070         * gdk/x11/gdkinput-none.c:
4071         * gdk/x11/gdkinput-x11.c:
4072         * gdk/x11/gdkinput-xfree.c:
4073         * gdk/x11/gdkinput.c:
4074         Convert GdkDevice to a GObject.
4075
4076 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
4077
4078         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
4079         to just plain new, fixing the number of columns, and column types
4080         at creation time.
4081
4082         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
4083
4084         * gtk/gtkcellrenderertext.c
4085         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
4086         height to a specific font.
4087
4088         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
4089
4090         * tests/*c: change to work with new store models.
4091
4092 2001-06-29  Havoc Pennington  <hp@redhat.com>
4093
4094        * Throughout: fixes to compile with G_DISABLE_COMPAT
4095         (s/g_signal_connectc/g_signal_connect/,
4096         s/g_signal_newc/g_signal_new/,
4097         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
4098
4099 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
4100
4101         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4102         add path argument to selection callbacks.
4103
4104 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
4105
4106         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
4107         walk through a model in a depth first manner, with the option to
4108         break out.
4109
4110 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
4111
4112         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
4113         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
4114         column and follow it when draged, rather than a location in the
4115         view. "expander_column" property and drawing functions changed
4116         accordingly.  Fixes bug #55942.
4117
4118         (gtk_tree_view_{set,get}_expander_column): Now works with a
4119         GtkTreeViewColumn* instead of int.
4120
4121 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
4122
4123         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
4124
4125 2001-06-28  Havoc Pennington  <hp@pobox.com>
4126
4127         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
4128         image data to the screen, using a server grab to avoid race
4129         conditions.
4130
4131         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
4132         check for NULL return from gtk_image_new_from_stock(), it never
4133         returns NULL.
4134         (gtk_item_factory_create_item): fix bug where we parsed the stock
4135         ID as an inline pixbuf
4136
4137         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
4138
4139         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
4140         support (should be using binding set here)
4141
4142         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
4143         support (should be using binding set here)
4144
4145         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
4146         support
4147
4148         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
4149
4150         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
4151
4152         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
4153
4154         * gtk/gtkimcontextsimple.c
4155         (gtk_im_context_simple_filter_keypress): keypad
4156
4157         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
4158
4159         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
4160
4161         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
4162
4163         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
4164         should be binding-setted)
4165
4166         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
4167
4168         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
4169
4170         * gtk/gtkcalendar.c: numeric keypad fixes
4171
4172         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
4173         support
4174
4175         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
4176         screwup
4177
4178         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
4179         clip the render area to the drawable's clip region in advance,
4180         so we don't get data from the server that we don't need.
4181
4182         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4183         check return value of gdk_pixbuf_get_from_drawable(), fall back 
4184         to bilevel alpha if we can't get the pixbuf to composite against.
4185
4186         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
4187
4188         * gdk/gdkimage.c (gdk_image_get_colormap): add
4189         gdk_image_set_colormap, gdk_image_get_colormap
4190
4191         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
4192         take a region of the image, instead of converting the entire
4193         image.
4194
4195         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
4196         keybinding signal. Add default bindings for it. Add default
4197         handler for show_help that shows the tooltip for the widget.
4198
4199         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
4200         "close" keybinding signal, remove key press handler.
4201
4202         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
4203         it's not our usual practice to leave a deprecated function around
4204         with a runtime warning, plus we don't want it to appear in docs,
4205         plus if we make them yellow no one will want to change them
4206         anyhow.
4207
4208 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
4209
4210         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
4211         GTK_WIDGET_REALIZE() for resize queueing.
4212
4213         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
4214         GTK_WIDGET_REALIZE() for post event delivery destruction upon
4215         GDK_DESTROY.
4216         
4217         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
4218         sompensate for former (pre-2.0) connect_after() facility.
4219         (gtk_widget_send_expose): 
4220         (gtk_widget_event): assert the widget is realized, since event delivery
4221         to non-realized widgets is essentially a bug. event handlers should
4222         be able to unconditionally rely on widget->window (unless they
4223         emit events on their own which can trigger widget destruction).
4224         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
4225         logic. event delivery happens as follows:
4226         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
4227         b) if !was_handled in (a) and the widget is still realized, emit event-
4228            specific signal (RUN_LAST handler). returns was_handled.
4229         c) emission of GtkWidget::event-after for notification if the widget is
4230            still realized (regardless of was_handled from previous stages, no
4231            class handler). no return value.
4232         d) was_handled gets passed on to caller, to determine further
4233            propagation. if the widget got unrealized meanwhile, was_handled
4234            is returned as TRUE.
4235
4236         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
4237         gdk_event_get_coords().
4238
4239 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
4240
4241         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
4242         age 0, binary age 0. depend on glib 1.3.7.
4243
4244         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
4245
4246         * gtk/gtkmenubar.c: same here.
4247         
4248         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
4249
4250         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
4251
4252         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
4253         
4254         * gtk/gtkmenubar.c (add_to_window): likewise.
4255         
4256         * gtk/gtktextbtree.c: and here...
4257         
4258         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
4259         
4260         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
4261         
4262         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
4263         
4264         * gtk/gtktreeviewcolumn.c:
4265         (_gtk_tree_view_column_set_tree_view): yet again.
4266
4267         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
4268         signal connections without g_signal_connect_data().
4269         
4270         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
4271         demo of the matter.
4272         
4273         * demos/testpixbuf.c (main): running out of equality phrases for the
4274         ChangeLog, but had to adapt connections here as well.
4275         
4276         * demos/testanimation.c (progressive_timeout): and for the fun of it,
4277         tackled this the same way.
4278         
4279         * tests/testtext.c (create_view): ok, it's becoming a pain at this
4280         point, but had enough enery for one more fix.
4281
4282         * tests/testtreecolumns.c (main): stand up man, do your work!
4283
4284         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
4285         fix, either that's been all of it or CVS gtk is broken yet again.
4286         
4287 2001-06-29  James Henstridge  <james@daa.com.au>
4288
4289         The following changes correspond to bug #56812
4290
4291         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
4292         code for GdkDevice.
4293
4294         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
4295         GdkCursor.
4296
4297 2001-06-19  Havoc Pennington  <hp@pobox.com>
4298
4299         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
4300         for mapping a window without fooling with stacking order, but
4301         updating the "withdrawn" flag
4302
4303         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
4304         filtering as soon as possible, moving move resize and wmspec_check
4305         handling after the event filter.  Make default filter apply to all
4306         events, not just those with no GdkWindow wrapped around the X
4307         window. Fix a FIXME about how the window could be a pixmap using 
4308         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
4309
4310         Also, be robust against events not on a known GdkWindow.
4311
4312         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
4313         gdk_x11_ungrab_server): export reference-counted server grabs, so
4314         other people can grab server over a GDK function that also does
4315         so.
4316
4317 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
4318
4319         * gtk/gtktreeviewcolumn.c
4320         (gtk_tree_view_column_pack_start_cell_renderer): New function to
4321         reflect that you can (hypothetically) pack cell renderers into a
4322         column.
4323         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
4324         (gtk_tree_view_column_cell_is_visible): Move more functionality to
4325         the column.
4326         (gtk_tree_view_column_cell_can_focus): Move more functionality to
4327         the column.
4328
4329         * gtk/gtktreeview.c: Move to use new column-packing code.
4330         (gtk_tree_view_real_expand_row): remove totally braindead code.
4331         (gtk_tree_view_real_collapse_row): ditto.
4332
4333 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
4334
4335         * gtk/gtktreeviewcolumn.c: Fix a typo.
4336         
4337 2001-06-26  Joel Becker  <jlbec@evilplan.org>
4338
4339         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
4340           at the end of the file
4341
4342 2001-06-26  Havoc Pennington  <hp@redhat.com>
4343
4344         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
4345
4346 2001-06-26  Havoc Pennington  <hp@redhat.com>
4347
4348         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
4349         property
4350
4351 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
4352
4353         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
4354         stupid missing statement
4355
4356         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
4357         private function for ATK.  It notifies you of how many _visible_
4358         children are deleted when a node is deleted.  Should be used by
4359         atk only.
4360
4361 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
4362
4363         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
4364         Use new pango_context_get_metrics() to fix problems
4365         with font lists in descriptions. (#56184, reported by
4366         Jonas Borgström)
4367
4368 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
4369
4370         * gtk/gtkiconfactory.c:
4371         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
4372         item factory so inlined pixbufs actually work.
4373
4374 2001-06-25  Havoc Pennington  <hp@redhat.com>
4375
4376         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
4377         s/RESIZEABLE/RESIZABLE/
4378
4379         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
4380
4381 2001-06-25  Alexander Larsson  <alexl@redhat.com>
4382
4383         * configure.in:
4384         Added --enable-fbmanager. This is some experimental code
4385         that lets several GtkFB apps coordinate their access to the
4386         framebuffer.
4387         
4388         * acconfig.h:
4389         Added ENABLE_FB_MANAGER.
4390
4391         * gdk/linux-fb/Makefile.am:
4392         Added gdkfbmanager and gdkfbswitch.
4393
4394         * gdk/linux-fb/gdkkeyboard-fb.c:
4395         * gdk/linux-fb/gdkmouse-fb.c:
4396         * gdk/linux-fb/gdkprivate-fb.h:
4397         Split device init and open so that
4398         they can be opened and closed while switched
4399         away.
4400
4401         * gdk/linux-fb/gdkmain-fb.c:
4402         Add the basic manager communication.
4403
4404         * gdk/linux-fb/gdkrender-fb.c:
4405         Don't update to the shadow fb if we're
4406         blocked by the fb manager.
4407
4408 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
4409
4410         * docs/Changes-2.0.txt: Add note about child property
4411         changes.
4412
4413 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
4414
4415         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
4416         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
4417
4418         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
4419         with un'reffing wrong list reported by Jeff Franks.
4420
4421         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
4422
4423         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
4424         for the default icon. Remove inline XPM.
4425
4426         * gtk/gtkstock.h gtk/gtkiconfactory.c:
4427         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
4428         is used for GTK_STOCK_DND, but it is a bit too small.)
4429
4430         * gtk/stock-icons/stock_dnd_multiple.png
4431         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
4432
4433         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
4434         TRUE when starting a drag. In other cases, we are
4435         just observing. (#52995)
4436
4437         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
4438         function to set the icon for a drag from a GdkPixbuf
4439         or stock ID.
4440
4441         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
4442         Likewise, for drag sources.
4443
4444         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
4445         (Now should be done using the stock system.)
4446
4447 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
4448
4449         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
4450         Removed - didn't work and not particularly useful anyways
4451         if it did. 
4452
4453 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
4454
4455         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
4456         introduced last night that was making things decidedly not work.
4457
4458         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
4459         so that we have getter/setter pairing everywhere it makes
4460         sense. (#55767)
4461
4462         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
4463         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
4464         deprecated compat macro. (#55516)
4465
4466         * gtk/gtklabel.[ch]: Add functions
4467         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
4468         gtk_label_set_label(), which mirror the property API for GtkLabel.
4469         Make gtk_label_get_attributes() only reflect the attributes
4470         set by gtk_label_set_attributes.
4471
4472         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
4473         from gtk_notebook_set_page().
4474
4475 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
4476
4477         * configure.in: Fix tests for XShm.h.
4478
4479         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
4480         gdk_image_new() by use of goto, properly use g_object_unref().
4481
4482 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
4483
4484         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
4485         calls, as GdkImage is an object. these should be g_obejct_unref()
4486         instead but that won't work because of the g_error() statement
4487         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
4488         to spot these places.
4489
4490 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
4491
4492         * modules/input/gtkimcontextxim.c: Fixup some problems with 
4493         text length handling in error cases.
4494
4495         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
4496         a bit to make test actually warn on attempt to allocation
4497         a negative size. (#56101, Matthias Clasen)
4498
4499 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
4500
4501         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
4502         noticed by Brian Cameron.
4503         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
4504         Cameron.
4505
4506 2001-06-22  Hans Breuer  <hans@breuer.org>
4507
4508         * gdk/gdk.def : updated externals
4509
4510         * gdk/win32/gdkdrawable-win32.c : corrected some casts
4511         in GDK_NOTEs
4512
4513         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
4514         to translate coordinates to the internal > 16 bit system
4515         Try to handle WM_WINDOWPOSCHANGED to get better performance for
4516         when moving/resizing
4517
4518         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
4519         and gdk_keymap_get_direction (). The latter is untested for
4520         the RTL case
4521
4522         * gtk/gtk.def : updated externals
4523
4524         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
4525         from pango_language_from_string (), not an already freed pointer
4526
4527         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
4528         binary (-kb) to be useable on windoze
4529  
4530 2001-06-21  Alexander Larsson  <alexl@redhat.com>
4531
4532         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
4533         Update to new PangoLanguage changes.
4534         
4535         * gtk/gtkwindow-decorate.c:
4536         * gtk/gtkwindow.[ch]:
4537         Added setting argument to gtk_window_set_has_frame ()
4538         
4539 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
4540
4541         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
4542         the case without XKB properly.
4543
4544         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
4545         unused gtk_rc_auto_parse variable.
4546
4547         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
4548         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
4549         longer needed with GdkPixbuf.
4550
4551         * gtk/gtkrc.c (_gtk_rc_init): Make private.
4552
4553 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
4554
4555         * gtk/gtkentry.h: Mark deprecated functions with
4556         GTK_DISABLE_DEPRECATED.
4557
4558 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
4559
4560         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
4561
4562         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
4563
4564         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
4565           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
4566           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
4567           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
4568           to recent changes in Pango.
4569
4570         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
4571           to test whether the basic engine honors them.
4572
4573 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
4574
4575         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
4576         gtk_container_child_get_property().
4577
4578 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
4579
4580         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
4581         (gtk_tree_view_move_cursor_page_up_down): implement.
4582
4583 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
4584
4585         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
4586         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
4587         don't use automatic fixed size buffer for printf-ing floats, doubles
4588         can expand to really _huge_ strings, use g_strdup_printf() instead.
4589
4590 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
4591
4592         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
4593         construct property in 1.2 and still needs to be.
4594
4595         * gtk/gtkwidget.c: "composite_child" is not a settable property.
4596
4597 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
4598
4599         * gtk/gtkliststore.c (gtk_list_store_clear): 
4600         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
4601         clear a model.
4602
4603 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
4604
4605         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
4606
4607         * gtk/Makefile.am:
4608         * gtk/gtk.h: disabled GtkPacker compilation.
4609
4610         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
4611
4612         * gtk/gtknotebook.c:
4613         * gtk/gtktable.c:
4614         * gtk/gtkbox.c: ported this over to child properties.
4615
4616         * gtk/gtksettings.c: fetch class properties via
4617         g_object_class_list_properties().
4618
4619         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
4620         child arg interface. use gobjectnotifyqueue.c for child property
4621         notification.
4622
4623         * gtk/gtkwidget.[hc]: provide necessary means for container child
4624         properties, i.e. ::child_notify signal,
4625         gtk_widget_freeze_child_notify(),
4626         gtk_widget_child_notify(),
4627         gtk_widget_thaw_child_notify().
4628
4629         * tests/testgtk.c: removed inferior property handling code, for
4630         property editing, a generic module should be used, and GLE
4631         coincidentally fullfills that purpose.
4632
4633         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
4634         needs to be adapted to g_object_class_list_properties() before this
4635         builds again.
4636
4637 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
4638
4639         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
4640         test if a node is expanded.
4641
4642 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
4643
4644         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
4645         where collapsing a selected row would result in the cursor/anchor
4646         getting screwed up.
4647
4648 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
4649
4650         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
4651         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
4652         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
4653         Now I can really reorder/sort all Store widgets.  treesorttest
4654         seems to just work now.
4655         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
4656         testtreesort worked through a big coincidence all this time.
4657         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
4658         code.
4659         * tests/testtreecolumns.c: Big 'ol warning at the top letting
4660         people know that this code should never ever ever be copied.
4661
4662 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
4663
4664         * gtk/gtkwindow.h: Fixed a small typo, it should be
4665         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
4666         on line 134.
4667
4668 2001-06-14  Havoc Pennington  <hp@redhat.com>
4669
4670         Docs fixups, and:
4671         
4672         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
4673         GTK_DISABLE_DEPRECATED
4674
4675 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
4676
4677         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
4678         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
4679         finish it off tonight, though it basically works now when it's a
4680         list.  Also, I have a sinking feeling neither GtkTreeStore or
4681         GtkListStore actually resort when adding a new item.  I'll look
4682         into it.
4683
4684 2001-06-14  Havoc Pennington  <hp@redhat.com>
4685
4686         * demos/gtk-demo/main.c (load_file): fix bug identified by
4687         warnings I just added to gtktextbuffer
4688
4689 2001-06-14  Havoc Pennington  <hp@redhat.com>
4690
4691         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
4692
4693         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
4694
4695         * gtk/gtktextbtree.c: don't leak node data all over the place.
4696
4697         * demos/gtk-demo/main.c (main): create fontify tags for the right
4698         buffer
4699
4700         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
4701         to mention tags in the same table can't have the same name,
4702         suggested by Skip Montanaro
4703
4704 2001-06-11  Havoc Pennington  <hp@redhat.com>
4705
4706         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
4707         for trying to add two tags with same name to the tag table
4708
4709         * demos/gtk-demo/main.c (main): fix colors ;-)
4710
4711 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
4712
4713         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
4714         that allows grouping together multiple windows so that grabs
4715         within that set of windows only affect those windows.
4716
4717         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
4718         signal for notification when a widget becomes shadowed
4719         by a grab or is no longer shadowed by a grab.
4720
4721         * gtk/gtkwidget.c (gtk_widget_propagate_state)
4722           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
4723         insenstive widgets to maintain a grab.
4724
4725 2001-06-14  Alexander Larsson  <alexl@redhat.com>
4726
4727         * docs/README.linux-fb:
4728         Add some example config files that can be used with the URW fonts.
4729         
4730         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
4731         Set up the color ramps for DirectColor mode.
4732
4733 2001-06-11  Havoc Pennington  <hp@redhat.com>
4734
4735         * Release 1.3.6
4736          
4737 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
4738
4739         * gdk/linux-fb/gdkwindow-fb.c:
4740         Unify shaped window code and make it repaint the area that used
4741         to be part of the shape, but isn't anymore.
4742
4743 2001-06-11  Havoc Pennington  <hp@redhat.com>
4744
4745         * NEWS: Updates
4746
4747         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
4748
4749         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
4750         
4751 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
4752
4753         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
4754         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
4755         passes zero instead, so do we.
4756         
4757 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
4758
4759         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
4760         Deep copy dash_list too.
4761         (_gdk_fb_gc_new): Set default cap_style before
4762         setting values.
4763
4764 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
4765
4766         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
4767         gdk_keymap_get_direction): New functions.
4768
4769 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
4770
4771         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
4772         gtk_tree_model_get_flags by adding a second flag for atk.
4773
4774         * gtk/gtktreemodel.c: make cursor behavior interact better with
4775         mouse presses.
4776
4777 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
4778
4779         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
4780         expand_row/collapse_row to be 2 signals each -- test_expand_row
4781         and row_expanded as well as test_collapse_row and row_collapsed.
4782
4783 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
4784
4785         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
4786         signal name to be changed instead of selection_changed.
4787
4788 2001-06-08  Havoc Pennington  <hp@redhat.com>
4789
4790         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
4791         "scroll_offset" property for notification when the layout offsets
4792         may have changed
4793         (gtk_entry_adjust_scroll): add notify for scroll_offset
4794         (gtk_entry_layout_index_to_text_index): function to compensate for
4795         preedit string when doing coordinate stuff on the entry's layout
4796         (gtk_entry_text_index_to_layout_index): inverse function
4797         (gtk_entry_get_layout_offsets): hook to get current position of
4798         the layout      
4799         (gtk_entry_get_layout): hook to get the layout itself.
4800
4801         * gtk/gtklabel.c (gtk_label_get_layout): new function
4802
4803 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
4804
4805         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
4806         keybinding.
4807         (gtk_tree_view_focus): Fix merge conflict.
4808
4809 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
4810
4811         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
4812         clean up cursor handling.
4813
4814 2001-06-08  Havoc Pennington  <hp@redhat.com>
4815
4816         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
4817         function
4818
4819         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
4820         this function
4821
4822 2001-06-08  Alex Larsson  <alexl@redhat.com>
4823
4824         * gtk/gtkcompat.h.in:
4825         Added compat macros for all old GTK_TYPE_GDK_xxx types.
4826         Fixes bug #52892
4827
4828 2001-06-08  Havoc Pennington  <hp@redhat.com>
4829         
4830         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
4831         parent still
4832
4833 2001-06-08  Havoc Pennington  <hp@redhat.com>
4834
4835         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
4836         don't call g_list funcs on GSList
4837
4838         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
4839         gtk_container_focus(), since some widgets have focusable locations
4840         which are not other widgets. These widgets should not have to be 
4841         containers just to manage the focus. For example, GtkHSV is
4842         currently a container for no good reason. Also, this cleans
4843         up the "if (is_container && is_sensitive && is_drawable)
4844         container_focus ()" mess in widget implementations.
4845
4846         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
4847         function, and have it just call gtk_widget_child_focus().
4848
4849         * gtk/gtkhsv.c: derive from widget not container
4850         
4851         Throughout: fix to reflect GtkContainer::focus change
4852         
4853 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
4854
4855         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
4856         range.  Fix bug #55921
4857
4858         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
4859         (#55920).
4860
4861 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
4862
4863         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
4864         and gdk_keymap_get_current_direction().
4865
4866         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
4867           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
4868         the current locked group, use it to set the keymap
4869         direction.
4870
4871         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
4872         to determine whether we draw a split cursor or use
4873         a jumping cursor based on the current direction.
4874
4875         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
4876         Obey the split cursor setting. 
4877
4878 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
4879
4880         * gtk/gtkimmulticontext.c (activate_cb): Only activate
4881         when toggling on, not when toggling off... (#55906)
4882
4883 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
4884
4885         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
4886         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
4887         in docs. (#55812, Vitaly Tishkov)
4888
4889 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
4890
4891         * demos/gtk-demo/main.c (create_tree): Changed signal name from
4892         selection_changed to changed in signal connection to GtkTreeSelection,
4893         also used g_signal_connectc since GtkTreeSelection is now a GObject.
4894
4895 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
4896
4897         * gtk/gtktreeselection.c: Now it's a GObject instead of a
4898         GtkObject.  The GtkTreeSelection::selection_changed signal is now
4899         the GtkTreeSelection::changed signal.
4900
4901         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
4902         object.
4903
4904         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
4905         object.
4906
4907 2001-06-07  Havoc Pennington  <hp@redhat.com>
4908
4909         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
4910
4911 2001-06-07  Havoc Pennington  <hp@redhat.com>
4912         
4913         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
4914         (not tested yet because with absolute path to srcdir I can't build
4915         atk, but it was broken anyway so this may help) 
4916
4917 2001-06-07  Havoc Pennington  <hp@redhat.com>
4918
4919         * configure.in: output m4macros/Makefile
4920         
4921 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
4922
4923         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
4924         buttons.  Fixes #55460 reported by matthiasc@poet.de.
4925
4926 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
4927
4928         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
4929         expansion/collapsing so it only happens in one place.
4930         (gtk_tree_view_real_expand_row): ditto.
4931
4932 2001-06-07  Havoc Pennington  <hp@redhat.com>
4933
4934         * tests/Makefile.am: add missing -I flag
4935
4936         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
4937
4938         * configure.in: use pkg-config to see if GModule is
4939         supported; fix to properly turn on included loaders 
4940         when GModule isn't supported; don't use AC_CHECK_LIB 
4941         when libs are not installed yet
4942
4943         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
4944
4945         * Makefile.am (SUBDIRS): add m4macros subdir
4946
4947         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
4948         dependencies also.
4949
4950 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
4951
4952         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
4953         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
4954
4955 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
4956
4957         * gtk/gtktreeview.c
4958         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
4959         bindings to expand and collapse rows.
4960         (gtk_tree_view_real_select_cursor_parent): New key binding.
4961         (gtk_tree_view_real_toggle_cursor_row): New key binding.
4962
4963         * gtk/gtkmarshal.list: new
4964         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
4965
4966 2001-06-06  Havoc Pennington  <hp@redhat.com>
4967
4968         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
4969
4970         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
4971         Down to move visually rather than logically, since it confuses 
4972         people. Add -/+ and Ctrl--/+ bindings for logical movement.
4973
4974 2001-06-06  Alex Larsson  <alexl@redhat.com>
4975
4976         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
4977         Fix up error messages.
4978
4979 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
4980
4981         * gtk/gtktooltips.h: Include gtkwidget.h 
4982         (#55798, Karl Nelson)
4983
4984         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
4985         a valid latin-1 character. (Marc Lehmann, #35467)
4986
4987         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
4988         (Marc Lehmann, #35467)
4989         
4990 2001-06-05  Alex Larsson  <alexl@redhat.com>
4991
4992         * demos/gtk-demo/appwindow.c (do_appwindow):
4993         Don't swap the order of the args to gtk_widget_destroyed.
4994
4995         * tests/testgtk.c (destroy_properties):
4996         Don't crash when the properties window is destroyed.
4997
4998         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
4999         Use with_mnemonics to handle the case of stock items with
5000         underscores in them.
5001
5002 2001-06-05  Havoc Pennington  <hp@redhat.com>
5003
5004         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
5005         gtk_text_iter_reorder
5006
5007 2001-06-05  Havoc Pennington  <hp@redhat.com>
5008
5009         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
5010
5011 2001-06-05  Havoc Pennington  <hp@redhat.com>
5012
5013         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
5014         to the range that was set
5015
5016         * gtk/gtkrange.c: add value_changed signal, primarily 
5017         intended for use with GtkScale
5018         (gtk_range_set_increments): new function
5019         (gtk_range_set_range): new function with weird name
5020         (gtk_range_set_value): new function
5021         (gtk_range_get_value): new function
5022
5023         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
5024         from gtk_spin_button_get_value_as_float(). Compat #define
5025         added for get_value_as_float.
5026
5027         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
5028
5029         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
5030
5031 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
5032
5033         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
5034
5035 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
5036
5037         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
5038
5039         * tests/testgtk.c (create_tooltips): Remove usage of
5040         gtk_widget_set().
5041
5042 2001-06-05  Havoc Pennington  <hp@redhat.com>
5043
5044         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
5045
5046         Applying patch from Jeff Franks, with function docs added.
5047         
5048         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
5049         remove call to set_mnemonic_widget, change docs a bit.  
5050
5051         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
5052         new function
5053
5054         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
5055         new function
5056
5057         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
5058
5059         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
5060         function
5061         (gtk_radio_button_new_with_mnemonic_from_widget): new function
5062
5063         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
5064         new function
5065
5066         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
5067         function        
5068
5069         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
5070         auto-selection of mnemonic widget.
5071
5072 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
5073
5074         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
5075         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
5076         (gtk_tree_view_column_set_min_width): ditto.
5077
5078 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
5079
5080         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
5081         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
5082
5083 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
5084
5085         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
5086         gtk_clist_thaw().
5087
5088 2001-06-04  Havoc Pennington  <hp@pobox.com>
5089
5090         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
5091 r       eleases for buttons 6, 7
5092
5093 2001-06-04  Havoc Pennington  <hp@redhat.com>
5094
5095         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
5096         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
5097         #55562
5098
5099 2001-06-04  Havoc Pennington  <hp@redhat.com>
5100
5101         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
5102         where text_view->layout == NULL by assuming its size is 0, 
5103         i.e. same as if we haven't done any reflow. Reported by 
5104         Hidetoshi Tajima #55448 
5105
5106 2001-06-04  Havoc Pennington  <hp@redhat.com>
5107
5108         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
5109         and 7 for scroll left/right, from Thomas Broyer
5110
5111 2001-05-10  Havoc Pennington  <hp@redhat.com>
5112
5113         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
5114         we need to parse the xsetting as if it were an RC file string.
5115
5116         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
5117         value of palette from settings, not from static variable
5118
5119         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
5120         xsettings translation table
5121
5122         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
5123         hardcoding the toolbar style conflicts with new customizable 
5124         toolbar style philosophy
5125         (gtk_toolbar_class_init): add settings for default toolbar style;
5126         these are used unless the app specifically forces a toolbar style
5127
5128         * gtk/gtksettings.c (settings_install_property_parser): only
5129         return at the start if we warn and parser == NULL
5130
5131         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
5132         palette changed handler so we don't notify dead color selections
5133
5134         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
5135         xthickness/ythickness of 0 or 1 properly 
5136         (gtk_default_draw_resize_grip): clear the background behind the
5137         resize grips, and align to bottom right if we square the 
5138         area to be drawn.
5139
5140         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
5141         statusbar label to 1, so it doesn't make toplevels resize oddly
5142         (gtk_statusbar_size_request): add grip size to request
5143         (gtk_statusbar_size_allocate): hack so the hbox still works with 
5144         the grip size in the request
5145
5146         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
5147         bug where showing all on a toplevel makes the toolbar 
5148         button text appear despite the toolbar mode
5149
5150         * gtk/gtkmenubar.c: add internal padding style property
5151
5152         * gtk/gtktoolbar.c: Add internal padding style property; add
5153         shadow type style property
5154
5155         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
5156         state; and put Container::border_width outside the frame
5157
5158         * gtk/gtktextview.c: don't draw focus rectangle if we're in
5159         interior focus mode, we just use blinking cursor
5160
5161 2001-06-04  Havoc Pennington  <hp@redhat.com>
5162
5163         * configure.in: Make gdk-pixbuf have same version number as GTK
5164
5165 2001-06-04  Havoc Pennington  <hp@redhat.com>
5166
5167         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
5168         digits greater than 6. If there actually are limits (which there
5169         likely aren't), should clamp to them not warn.
5170         (gtk_spin_button_new_with_range): don't take log of 0
5171         (gtk_spin_button_size_request): use digits to compute size
5172         request, rather than step increment.
5173
5174         * tests/testgtk.c (create_spins): test larger values of digits
5175         
5176         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
5177         font on map not expose, so we don't get weirdness during scrolling
5178
5179 2001-06-04  Havoc Pennington  <hp@redhat.com>
5180
5181         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
5182         Sam Solon, bug #54577, update value even if not drawable.
5183
5184 2001-06-04  Havoc Pennington  <hp@redhat.com>
5185
5186         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
5187         SCROLL_LEFT, reported by Thomas Broyer.
5188
5189 2001-06-04  Havoc Pennington  <hp@redhat.com>
5190
5191         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
5192         Process updates immediately, to prevent funny lag effect
5193         when scrolling, at some mild potential efficiency cost.
5194
5195 2001-06-04  Havoc Pennington  <hp@redhat.com>
5196
5197         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
5198         slider on the click.
5199
5200 2001-06-03  Havoc Pennington  <hp@pobox.com>
5201
5202         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
5203         hscale/vscale details, so we can use it for scrollbar as well.
5204
5205         * tests/testgtk.c (reformat_value): honor digits from GtkScale
5206
5207         * gtk/gtkenums.h (GtkTroughType): Remove this enum
5208         (GtkScrollType): add START and END from GtkTroughType
5209
5210         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
5211         its x/y arguments
5212
5213         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
5214         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
5215         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
5216         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
5217         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
5218
5219         Notable changes in the process:
5220          
5221         - stepper_size style property is the height for vertical 
5222           ranges, width for horizontal; the other dimension matches
5223           the trough size
5224         - add ability to do NeXT-style steppers (and several other styles
5225           that don't make any sense)
5226         - added min_slider_length, fixed_slider_length properties to
5227           GtkScrollbar
5228         - cleaned some private (or at least useless) functions out of
5229           gtkscale.h    
5230         - moved bindings to GtkScale from subclasses, even arrow keys,
5231           since blind users don't know scale orientation.
5232         - change move_slider action signal to use new GtkScrollType,
5233           remove GtkTroughType argument
5234         - digits rounds the values a range will input to the given 
5235           number of decimals, but will not try to force adjustment 
5236           values set by other controllers. That is, we no longer
5237           modify adjustment->value inside a value_changed handler.
5238         - added getters for GtkScale setters
5239         - middle-click begins a slider drag
5240         
5241 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
5242
5243         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
5244         getting the focus code to work.
5245         (gtk_tree_view_class_init): Add a bunch of keybindings.
5246
5247         * gtk/gtktreeviewcolumn.c
5248         (gtk_tree_view_column_set_cell_data_func):
5249         s/GtkCellDataFunc/GtkTreeCellDataFunc.
5250         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
5251         of "properties_changed" to help justify the death of the latter
5252         signal. (-:
5253
5254         * tests/testtreefocus.c (main): Let some columns be focussable to
5255         test focus better.
5256
5257 2001-06-01  Havoc Pennington  <hp@redhat.com>
5258
5259         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
5260         
5261         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
5262         overwrite in overwrite mode if we already deleted the selection
5263         and replaced it with new text.  
5264
5265         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
5266         selection to an empty range, clear the clipboard if we owned it.
5267         (gtk_label_set_selectable): give up selection if we become
5268         unselectable.
5269         (gtk_label_state_changed): override state changed to unselect text
5270         when insensitive
5271         (get_text_callback): add paranoia check that indexes aren't
5272         outside of label->text
5273         (gtk_label_select_region): make -1 for start_offset mean "end of
5274         label," for consistency with GtkEditable
5275
5276         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
5277         GTK_DIALOG_NO_SEPARATOR flag
5278
5279 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
5280
5281         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
5282         notifications on non-existant "enable_arrow_keys".
5283         (#53753, Skip Montanaro)
5284
5285 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
5286
5287         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
5288         GDK_TYPE_RECTANGLE.
5289
5290         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
5291         of allocation argument be GDK_TYPE_RECTANGLE.
5292
5293 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
5294
5295         * gtk/gtkoptionmenu.c: Account for the fact that the border
5296         width is _outside_ the window. (Fixes #54585, bug found
5297         by Bastien Nocera.)
5298
5299 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
5300
5301         * gtk/gtksettings.c (gtk_settings_get_property): Validate
5302         value from GDK settings against parameter spec.
5303
5304         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
5305         to temporary values and use g_value_transform(), since
5306         thinking that GValue was going to be easy or efficient
5307         to use was, of course, a mistake.
5308
5309         * gtk/gtksettings.c: Add cursor blink setting.
5310         
5311         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
5312
5313         * gtk/gtkentry.c: Add cursor blinking.
5314
5315         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
5316         cursor blink global settings.
5317
5318         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
5319         for :text_position in places where it is missing.
5320
5321 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
5322
5323         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
5324
5325 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
5326
5327         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
5328         not pkg-config. (#51032)
5329
5330         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
5331         (fixes #51952, James Henstridge)
5332         
5333 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
5334
5335         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
5336         Rename to the more correct gtk-go-up.
5337
5338         * gtk/stock-icons/stock_menu_sort_ascending.png:
5339         Added new file.
5340         
5341         * gtk/stock-icons/stock_menu_sort_descending.png:
5342         Changed to show descending instead of ascending.
5343
5344         * gtk/gtkiconfactory.c:
5345         Added menu size icon to sort ascending.
5346
5347         * gtk/stock-icons/Makefile.am:
5348         Added stock_menu_sort_ascending.png.
5349         
5350         * gtk/gtkseparatormenuitem.c:
5351         Use correct typenames.
5352
5353 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
5354
5355         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
5356         gulong as in GSignal.
5357
5358 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
5359
5360         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
5361         instances of GtkCellRenderer in code (all but dnd icon code).
5362         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
5363         there, and I can do multiple Cells per column.
5364
5365         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
5366
5367         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
5368         when model was unreffed prior to removing the row reference.
5369
5370 2001-05-25  Havoc Pennington  <hp@redhat.com>
5371
5372         * gtk/gtkiconfactory.c: fix so that default icons are created if 
5373         you call gtk_stock_list_ids()
5374
5375         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
5376         in list
5377
5378 2001-05-25  Havoc Pennington  <hp@redhat.com>
5379
5380         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
5381         set can render without falling back to missing image icon
5382
5383         * gtk/gtktextview.c (gtk_text_view_size_request): request full
5384         size of text, instead of random values
5385
5386         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
5387         size of tree view, instead of random values
5388
5389         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
5390         image in an appropriate size
5391
5392         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
5393         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
5394
5395         Throughout: fix GTK_STOCK_BUTTON_ instances
5396         
5397         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5398         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
5399         Add a bunch of new stock items/icons
5400
5401         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
5402         new function, convenience for inserting columns with a data func
5403
5404         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
5405         (_gtk_icon_factory_list_ids): use list of all factories to
5406         generate a list of all known IDs
5407
5408         * gtk/gtkstock.c (gtk_stock_list_ids): replace
5409         gtk_stock_list_items() with a function that returns all IDs known
5410         including those for GtkIconFactory.
5411
5412 2001-05-25  Hans Breuer  <hans@breuer.org>
5413
5414         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
5415         work -> check boxes and radio buttons are drawn now, even on win9x.
5416         Improved line settings a bit, still no clue how to get really dotted
5417         lines on win9x, on NT it's PS_ALTERNATE.
5418
5419         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
5420         GDK_HINT_MIN_SIZE as well
5421
5422         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
5423
5424         * gtk/gtk.def : updated
5425
5426         * gtk/gtktreeprivate.h : change column_drop_func to be a function
5427         pointer not a function pointer pointer
5428
5429         * tests/testdnd.c : include <stdlib.h> for putenv prototype
5430
5431         * tests/testsocket.c : made it compile on win32 again
5432
5433         * tests/makefile.msc : one more test-app uses prop-editor.obj
5434
5435 2001-05-22  Havoc Pennington  <hp@pobox.com>
5436
5437         * gtk/gtkbin.c (gtk_bin_get_child): New function
5438
5439 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
5440
5441         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
5442         to ignore when doing compose processing.
5443
5444 2001-05-22  Joe Shaw  <joe@ximian.com>
5445
5446         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
5447         Simplify as suggested by Havoc. Just get the last iter and work
5448         backward to the tag instead of getting a line and working back from
5449         there. Fixes passing in an invalid offset to
5450         iter_init_from_byte_offset().
5451
5452 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
5453
5454         * gtk/gtktreeview*.h: 
5455         * gtk/gtkcell*.h:
5456         * gtk/gtk*store.h:
5457         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
5458         macros to all objects.
5459
5460 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
5461
5462         * gtk/gtkcellrenderertext.c
5463         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
5464         with very large (TM) amounts of text.  May be moved to
5465         GtkCellRenderer in the future, though I'm not sure it wants to be
5466         this accessible.
5467
5468         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
5469         More sanity brought to this class.  I like it.
5470
5471         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
5472         case.  Kids, don't try this at home.
5473
5474         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
5475         convenience function.
5476
5477         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
5478
5479 2001-05-21  Alexander Larsson  <alexl@redhat.com>
5480
5481         * gtk/gtkfontsel.c:
5482         Added properties. Based on patch by Lee Mallabone.
5483
5484         * gtk/gtkruler.c:
5485         * gtk/gtkhruler.c:
5486         * gtk/gtkvruler.c:
5487         * gtk/gtktext.c:
5488         * gtk/gtktextview.c:
5489         Converted GtkArg to GParam. Based on patches by John Margaglione.
5490
5491         * tests/Makefile.am:
5492         * tests/testtext.c:
5493         Add a property editor to testtext.
5494         
5495 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
5496
5497         * gtk/gtk{h,v,}paned.c: Only show the separator if 
5498
5499         * configure.in: Fixed reversed conditional causing all image
5500         libraries to be linked in.
5501
5502 2001-05-21  Joe Shaw  <joe@ximian.com>
5503
5504         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
5505         that top_y needs to be >= 0.
5506
5507 2001-05-11  Havoc Pennington  <hp@pobox.com>
5508         
5509         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
5510         losing connection to the X server.
5511
5512 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
5513
5514         * configure.in: Start checks for X from pangox/pangoxft
5515         CFLAGS to avoid duplicate libraries.
5516
5517         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
5518
5519         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
5520         to include gobject.
5521         
5522 2001-05-18  Alexander Larsson  <alexl@redhat.com>
5523
5524         * gtk/gtkspinbutton.c:
5525         Convert GtkArgs to GParams. Based on patch by John Margaglione.
5526         Also do size request reasonable for MAXDOUBLE. Previously it printed
5527         the limits to a buffer and overran it. Instead do it using log10() and
5528         limit the width to 10 digits.
5529         
5530         * gtk/gtkwidget.c (gtk_widget_get_property):
5531         Correctly handle setting the parent property to NULL.
5532
5533 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
5534
5535         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
5536         style attributes even if the widget isn't realized.
5537
5538         * demos/gtk-demo/main.c: Use a slightly smaller font.
5539
5540 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
5541
5542         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
5543         This is something that only a widget writer would ever want
5544         to change.
5545
5546         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
5547         gtk_signal_emit_by_name().
5548
5549         * gtk/gtkviewport.c: Fix some warnings.
5550
5551         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
5552         allowing the requisitions of multiple widgets to be grouped
5553         together.
5554
5555         * tests/testgtk.c: Add GtkSizeGroup test
5556
5557         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
5558
5559         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
5560         warnings.
5561
5562         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
5563
5564 2001-04-28  Martin Baulig  <baulig@suse.de>
5565
5566         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
5567         to gtk_image_menu_item_set_icon() and made it work if there's already
5568         an image.
5569         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
5570         (gtk_image_menu_item_new_with_label): New function.
5571
5572 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
5573
5574         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
5575         highlighting code!!!!  The result is okay so long as you don't try
5576         to stress it.  It also highlights a bug in the TextView so it's in
5577         an unproportional font right now until it's fixed.
5578
5579         *demos/gtk-demo/*.c: Clean up code a bit to make it
5580         ugly-parser(TM) friendly. (-:
5581
5582 2001-05-17  Joe Shaw  <joe@ximian.com>
5583
5584         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
5585         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
5586         if it is only partially onscreen.
5587
5588 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
5589
5590         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
5591         not by characters.
5592
5593         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
5594         are not zero or one; that is, when graphemes of multiple characters
5595         are involved.
5596
5597         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
5598         FIXME.
5599
5600 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
5601         
5602         * gtk/gtkbbox.c:
5603         Add properties, based on patch by Lee Mallabone.
5604
5605         * gtk/gtknotebook.c:
5606         * gtk/gtktoolbar.c:
5607         Convert from GtkArg to GParam, based on patch by John Margaglione.
5608         
5609         * gtk/gtkhscale.c:
5610         * gtk/gtkvscale.c:
5611         * gtk/gtkhscrollbar.c:
5612         * gtk/gtkvscrollbar.c:
5613         * gtk/gtkrange.c:
5614         Move adjustment property to GtkRange.
5615
5616         * gtk/gtklabel.c:
5617         Setup mnemonics on property changes
5618
5619         * gtk/gtkwidget.c (gtk_widget_get_property):
5620         GdkExtensionMode is an enum, not a flag. Set it with
5621         g_value_set_enum ().
5622
5623         * tests/prop-editor.c:
5624         Better propery editor.
5625
5626         * tests/testgtk.c:
5627         Add new property test. Pass zero to the property editor to
5628         get properties from all derived types.
5629         
5630 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
5631
5632         * autogen.sh (have_automake): Require libtool-1.4,
5633         automake-1.4p1.
5634
5635         * acinclude.m4: Remove libtool macros.
5636
5637         * gdk-pixbuf/Makefile.am: Add dependencies to loade
5638         modules.
5639
5640         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
5641         for libgdk.
5642
5643         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
5644         libgdk.la for libgtk.
5645
5646         * modules/input/Makefile.am: Make modules have full
5647         dependencies.
5648
5649 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
5650
5651         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
5652         #54699 where paths weren't being checked for correctness.
5653
5654 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
5655
5656         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
5657         in any order you wan, whether or not the column is added to the
5658         tree, or the tree is realized.  Yay!
5659
5660         * gtk/gtktreeviewcolumn.c
5661         (gtk_tree_view_column_setup_sort_column_id_callback): handle
5662         sorting columns a lot saner
5663
5664         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
5665         new function to actually set wether or not a column is
5666         reorderable.
5667
5668         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
5669         if we have 'em.
5670
5671         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
5672         Fix nasty bug where we were showing the button just before
5673         realizing it.  As a result, the parent window was
5674         tree_view->window instead of tree_view->priv->header_window.
5675
5676         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
5677         to let you easily reorder a list or tree.
5678
5679 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
5680
5681         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
5682         from args to properties.
5683
5684 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
5685
5686         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
5687         from args to properties. (#51957)
5688
5689         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
5690         calls to after ->set_property call.
5691
5692 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
5693
5694         * tests/prop-editor.c: Block against redundant changes.
5695
5696         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
5697         properties.
5698
5699 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
5700
5701         * gdk/gdkpixmap.h: Remove creative formatting.
5702
5703 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
5704
5705         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
5706         property API. (#51669)
5707
5708         * gtk/gtkscale.c: Patch from John Margaglione converting to
5709         property API. (#51891)
5710
5711         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
5712         to property API. (#50985)
5713
5714 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
5715
5716         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
5717         buffering state across expose event, so we still call end_paint().
5718
5719 2001-05-11  Alexander Larsson  <alexl@redhat.com>
5720
5721         * gtk/gtkhsv.c (paint_triangle):
5722         Expose the ring in the triangle at the correct place when
5723         exposing just a part of the triangle.
5724
5725         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
5726         Return FALSE, or window focusing will not work.
5727
5728 2001-05-11  Havoc Pennington  <hp@pobox.com>
5729
5730         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
5731         #54144
5732
5733         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
5734         bug #54330
5735
5736 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
5737
5738         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
5739         propagate exposes to NULL child.
5740
5741         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
5742         against not having one of the scrollbars.
5743
5744         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
5745         we don't keep a mnemonic window if we have no mnemonic installed.
5746
5747 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
5748
5749         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
5750         it has the _important_ side effect of initializing a class.
5751
5752 2001-05-10  Alexander Larsson  <alexl@redhat.com>
5753
5754         * gdk/linux-fb/gdkprivate-fb.h:
5755         Make sure you can compile out the implementation/wrapper assert
5756         macros.
5757
5758         * gdk/linux-fb/gdkdrawable-fb2.c:
5759         Check implementation/wrappers, initialize type for pixmap dummys.
5760
5761         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
5762         Hide the cursor if reading from the screen.
5763
5764         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
5765         Fix sign bug in tiling code.
5766
5767         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
5768         Handle background pixmaps.
5769
5770 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
5771
5772         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
5773         function to let user control where columns are dragged.
5774
5775         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
5776         Escape is pressed.
5777
5778 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
5779
5780         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
5781         "columns_changed" signal.
5782         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
5783         motion code to draw arrows to the side if indicator is outside the
5784         widget.
5785         (gtk_tree_view_map_expanded_rows): Implement.
5786
5787 2001-05-07  Alexander Larsson  <alexl@redhat.com>
5788
5789         * demos/testpixbuf-save.c: 
5790         * demos/testpixbuf-drawable.c:
5791         Include gdkfb.h on linux-fb.
5792
5793 2001-05-07  Alexander Larsson  <alexl@redhat.com>
5794
5795         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
5796         New function for getting toplevel window at position.
5797         (gdk_drag_find_window): Use get_toplevel_window () instead
5798         of gdk_window_get_pointer(). (gdk_drag_status): Use
5799         correct context for getting window.
5800
5801         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
5802         g_strdup the atom name.
5803
5804         * gdk/linux-fb/gdkwindow-fb.c:
5805         Costmetic fix.
5806
5807         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
5808         Add code for changing cursor on linux-fb backend (same as
5809         win32).
5810
5811 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
5812
5813         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
5814         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
5815         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
5816         report was not for the development branch of GTK+, but it applies
5817         anyways).
5818
5819 2001-05-04  Havoc Pennington  <hp@redhat.com>
5820
5821         * configure.in: fix some shell typos
5822
5823         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
5824
5825         * gtk/gtkimage.c: handle animations
5826
5827         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
5828         border_width * 2, not just border_width
5829
5830         * gtk/gtkscale.c: add "format_value" signal to allow people
5831         to override the way values are drawn.
5832         (gtk_scale_get_value_size): fix width/height mistake,
5833         and compute size from actual displayed text, not 
5834         from made-up text.
5835
5836         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
5837         signal registration
5838
5839         * tests/testtext.c: Add "Remove all tags" menu item for testing
5840
5841         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
5842
5843         * demos/gtk-demo/main.c (main): add hack so we can find modules
5844         without installing gtk
5845
5846         * demos/gtk-demo/textview.c (insert_text): demo font scaling
5847
5848         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
5849         factor)
5850         (gtk_cell_renderer_text_set_property): remove some bogus
5851         g_object_notify
5852
5853         * gtk/gtktexttag.c: add "scale" property which is a font scaling
5854         factor
5855
5856         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
5857         to layout
5858
5859         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
5860         gtk_text_iter_is_first
5861
5862 2001-01-06  Hans Breuer  <hans@breuer.org>
5863
5864         * gdk/gdk.def : updated exports
5865
5866         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
5867         gdk won't compile anymore
5868  
5869         * gdk/win32/gdkevents-win32.c : initialize ret_val when
5870         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
5871         Improved gdk_flush () to not only do pending drawing operations
5872         but also process all currently pending events. This should make
5873         the behaviour more similar to the X11 version.  
5874
5875         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
5876         option needs to be set even if there is no GDK_GC_BACKGROUND.
5877         (gdk_win32_hdc_get) : use predraw_set_background () independent
5878         of value_mask. This allows to draw dashed lines leaving the original
5879         background intact.
5880
5881         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
5882         after processing, because we can't reuse it as the X11 version does.
5883
5884         * gtk/gtk.def : updated exports
5885
5886         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
5887         would like to get rid of this file again, and use straight
5888         makefile.msc again, as the other Gtk+ subdirs do)
5889
5890         * test/makefile.msc (new file) : build the test apps here
5891
5892 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
5893
5894         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
5895         strike-through setting
5896         (gdk_draw_layout_line_with_colors): Render strike-through
5897
5898 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
5899
5900         * Release 1.3.5
5901
5902         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
5903
5904         * NEWS: Updated
5905
5906         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
5907         Makefile breakage.
5908
5909 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
5910
5911         * demos/gtk-demo/images.c (progressive_timeout): Fix
5912         typo in filename.
5913
5914         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
5915         out FIXME warning; just too annoying.
5916
5917 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
5918
5919         * gdk/linux-fb/gdkcolor-fb.c:
5920         Better error messages.
5921
5922         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
5923         Initialize abs_x and abs_y.
5924         
5925         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
5926         Correct handling of stipple offset.
5927
5928         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
5929         Treat directcolor framebuffers as truecolor.
5930         
5931 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
5932
5933         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
5934         dependency on Atk for accessibility support.
5935
5936         * configure.in **/Makefile.am: Major reworking of substituted
5937         variables for CFLAGS/LIBS to make a lot more sane and 
5938         keep the the compile/link lines a bit shorter.
5939
5940         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
5941
5942 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
5943
5944         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
5945         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
5946         use _gtk_boolean_handled_accumulator.
5947
5948 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
5949
5950         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
5951         to fix things so clicking inside selection leaves cursor
5952         at point where clicked. (#50324)
5953
5954         * gtk/gtksettings.c (gtk_settings_class_init): Restore
5955         sane value for default double click time.
5956
5957         * tests/testtext.c (test_init): Really path to input modules.
5958
5959 2001-05-03  Sven Neumann  <sven@convergence.de>
5960
5961         * demos/testpixbuf-save.c: include target-specific headers as
5962         done in testpixbuf-drawable.c
5963
5964 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
5965
5966         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
5967         new_text_length appropriately when we run into the 
5968         size limit for the entry. (#53445, reported by Jeff Franks)
5969
5970         * tests/testgtk.c (create_entry): Remove most of the
5971         property toggle buttons. Replace with a "Props" button
5972         that brings up a property editor.
5973
5974         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
5975         Split the property editor code out for reuse, improve.
5976
5977 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
5978
5979         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
5980         trap errors around calls to XSetInputFocus since we have
5981         no way of knowing reliably whether we are viewable or
5982         not. (#53947)
5983
5984 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
5985
5986         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
5987         fix bug in dropping columns.  Moving columns now basically works
5988         modula some fine tuning.
5989
5990 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
5991
5992         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
5993         autoscroll support.  It mostly works, but could use some fine
5994         tuning.
5995         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
5996         Actually move the column.
5997
5998 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
5999
6000         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
6001           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
6002           New default theme! A slighly improved version of the 2.0 Raleigh
6003           theme, with Windows-esque focus/drawing default. 
6004           (GtkWidget::interior_focus defaults to TRUE.)
6005
6006         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
6007
6008 2001-04-30  Havoc Pennington  <hp@pobox.com>
6009
6010         * tests/testtext.c (line_numbers_expose): fix to work with
6011         gtk_paint_layout change
6012
6013 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
6014
6015         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
6016           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
6017           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
6018           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
6019
6020         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
6021           with GtkWidget::interior_focus = TRUE better.
6022
6023         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
6024         ::default_outside_border for more flexibility.
6025
6026         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
6027         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
6028         change that had to be made with g_object_get.
6029
6030 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
6031
6032         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
6033         (gtk_tree_view_move_column_after): Clean up interface. 
6034
6035 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
6036
6037         * gtk/gtkpacker.h:
6038         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
6039          to gtkenum.h.
6040
6041         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
6042         handled in switch).
6043
6044         * gtk/Makefile.am:
6045         (gtk.defs): generate enum portions with  glib-mkenums.
6046         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
6047         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
6048         
6049         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
6050         addition.
6051
6052         * docs/Changes-2.0.txt: keep a note on signal handlers now
6053         not getting emitted during the emission they were connected within.
6054
6055 2001-04-28  Havoc Pennington  <hp@pobox.com>
6056
6057         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
6058
6059 2001-04-24  Havoc Pennington  <hp@redhat.com>
6060
6061         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
6062         (gtk_text_layout_move_iter_to_next_line): fix these two for
6063         invisible text, lots of other stuff still hosed.
6064
6065         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
6066         new function, replaces the get/set palette stuff. This function 
6067         is intended for use by libgnomeui which should set the hook to a
6068         thing which sets the palette in GConf, and we need the
6069         GConf-to-xsettings proxy which will result in the change being
6070         propagated back to the GTK app.
6071
6072         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
6073         about unusable signals that it may be because the signal has 
6074         parameters.
6075
6076         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
6077         style, otherwise gtkrc.c won't know to create a new GtkStyle for
6078         it.
6079         (gtk_widget_modify_color_component): call
6080         gtk_widget_modify_style() so the rc style will get copied.
6081         (gtk_widget_modify_font): ditto
6082
6083         * gtk/gtkrc.c: make a couple variables static
6084
6085         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
6086         help button by default, since it does nothing
6087
6088         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
6089         around with UI
6090
6091         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
6092         so we can have tooltips
6093
6094         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
6095         can have tooltips
6096
6097         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
6098         GDK_ENABLE_BROKEN, because its memory behavior is completely
6099         hosed.
6100
6101         * gtk/gtknotebook.c: remove key press handler, replace with
6102         binding set, add numeric keypad support
6103
6104         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
6105
6106         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
6107
6108         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
6109         addition to plain Delete
6110
6111         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
6112         GDK_KP_Enter in addition to GDK_Return
6113
6114         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
6115         activate on entry instead of key press
6116         (gtk_font_selection_on_clist_key_press): get
6117         rid of this signal handler, not needed with new font sel.
6118
6119         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
6120         no-longer-needed emit_stop_by_name(), just return TRUE
6121
6122         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
6123         cruft, this widget is no longer focusable.
6124
6125         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
6126         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
6127         move_slider action signal, add binding set for vscale/hscale, in
6128         the process support numeric keypad
6129
6130         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
6131         make GDK_Return and GDK_KP_Enter activate the entry via 
6132         binding set, instead of hardcoded.
6133
6134 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
6135
6136         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
6137         code.  Some documentation added.
6138
6139 2001-04-27  Havoc Pennington  <hp@redhat.com>
6140
6141         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
6142
6143         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
6144
6145         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
6146         line/para separators
6147         (gtk_entry_create_layout): set single paragraph mode on the layout
6148
6149         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
6150         spacing between the image and label; instead, inside a button box 
6151         the button will get extra space that will go there, but if people 
6152         configure button box for 0 chubbiness, then there's no spacing.
6153
6154         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
6155         and min/max size style properties, so people can tune their
6156         chubbiness.
6157
6158         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
6159         functions
6160
6161         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
6162         space_style, and button_relief into style properties, remove
6163         functions for setting them
6164         
6165         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
6166         it back down
6167
6168         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
6169         types from gtk_widget_style_get
6170
6171         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
6172         with a style property.
6173
6174         * gdk/x11/gdkevents-x11.c: namespace the settings
6175
6176         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
6177
6178         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
6179         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
6180         be used. Also, translate doc strings for settings. Also, namespace
6181         the double-click-time property. Also, remove bell properties crap.
6182
6183 2001-04-27  Sven Neumann  <sven@gimp.org>
6184
6185         * Makefile.am: before creating links, check if pkg-config files
6186         exist for the default target. Otherwise link to the pkg-config files
6187         that got installed with this build.
6188
6189 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
6190
6191         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
6192         dragging code.  Revealed some (potential) GdkWindow bugs.
6193
6194         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
6195         _gdk_window_init_position to the end of reparent to fix the case
6196         of reparenting when new_x != old_x and new_y != old_y.
6197
6198 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
6199
6200         * gtk/gtkentry.c (strstr_len): Fix optimization that
6201         was correct for the use here, but completely incorrect
6202         in general.
6203
6204 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
6205
6206         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
6207         until patch adding gtk_window_set_size() is recommitted. 
6208
6209         * **Makefile.am configure.in gdk/x11/gdkim-11.c
6210           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
6211           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
6212           (#10784)
6213
6214 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
6215
6216         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
6217         window == NULL in a number of cases.
6218
6219         * tests/testdnd.c: Set module path for gdk-pixbuf.
6220
6221 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
6222
6223         * gtk/Makefile.am xembed.h: File containing #defines
6224         for XEMBED protocol.
6225
6226         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
6227
6228         - Change protocol from old plug/socket specific protocol
6229           to XEMBED draft
6230         - Various fixes to work with GTK+-2.0
6231
6232         Still quite a bit of work to do here to handle initiation
6233         from the socket side (as specified by XEMBED), to handle
6234         the more advanced features of XEMBED, and to figure out
6235         a good way to handle same-app embedding with less overhead
6236         than using full XEMBED.
6237
6238 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
6239
6240         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
6241         track of whether the toplevel has the focus; only send
6242         focus-in events to the focus widget when the window
6243         actually has the focus.
6244
6245 2001-04-25  Havoc Pennington  <hp@pobox.com>
6246
6247         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
6248         were still in the header
6249
6250 2001-04-24  Alexander Larsson  <alexl@redhat.com>
6251
6252         * gtk/gtkclist.[ch]:
6253         * gtk/gtkctree.c:
6254         When there is a row highlighted for D'n'D it must alse
6255         be painted hightlighted on exposes. Otherwise exposes from
6256         the icon being dragged will mess up the hightlight.
6257
6258         * gtk/gtkfontsel.c:
6259         Don't recenter selected font when exposing the font family
6260         clist. This means you can now actually scroll the font family
6261         list.
6262
6263         * gtk/gtknotebook.c:
6264         Fix focus movement on scrolling tabs that are placed on the left
6265         and right.
6266
6267 2001-04-21  Havoc Pennington  <hp@pobox.com>
6268
6269         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
6270         empty/invisible lines.
6271
6272         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
6273         (gtk_text_iter_set_visible_line_index): new functions to set
6274         indexes excluding invisible text
6275
6276         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
6277         index
6278
6279         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
6280         (gtk_text_iter_get_visible_line_offset): new functions to 
6281         get indexes excluding invisible text
6282
6283         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
6284         bunch of extra padding that served no purpose
6285
6286         * gtk/gtkdialog.c: Make all the spacings configurable via style
6287         properties, for chubbiness configuration in themes
6288
6289         * tests/testtext.c: fix path to the immodules.
6290         
6291 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
6292
6293         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
6294         got munched by #endif.
6295
6296         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
6297
6298         * gtk/gtktreeview.c: Refactored code to clean up a number of
6299         events.
6300
6301         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
6302         values to make consistent with other functions.  Spotted by Jeff
6303         Franks <jcf@tpg.com.au>.
6304
6305         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
6306         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
6307
6308 2001-04-23  Sven Neumann  <sven@gimp.org>
6309
6310         * gtk/Makefile.am
6311         * gtk/gtkplug.c
6312         * gtk/gtksocket.c: on request of Owen, reverted my last change 
6313         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
6314
6315 2001-04-23  Sven Neumann  <sven@gimp.org>
6316
6317         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
6318         compile for non-X11 targets again
6319
6320 2001-04-20  Alexander Larsson  <alexl@redhat.com>
6321
6322         * gtk/gtkcolorsel.[ch]:
6323         API Change. Take GdkColor arguments instead of gdouble *.
6324         Leave the old gtk_color_selection_set_color for compatibility,
6325         but marked deprecated.
6326         Do correct rounding when converting RGB <-> HSV.
6327         
6328         * gtk/gtkcolorseldialog.c:
6329         * tests/testgtk.c:
6330         Use new GtkColorSelection API.
6331
6332         * gtk/gtkhsv.c:
6333         Fix problem selecting colors in triangle when Hue is 330.
6334         Fix some black dots around the HSB triangle.
6335         
6336         * gtk/gtkfilesel.c:
6337         return FALSE from the focus_in_event handler to fix focus problems.
6338
6339 2001-04-18  Havoc Pennington  <hp@redhat.com>
6340
6341         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
6342         set, so keybindings are configurable    
6343         (gtk_window_activate_default): Change to activate the focus widget
6344         instead if there's a focus widget, to be consistent with the
6345         behavior that previously existed in key_press_event
6346
6347 2001-04-18  Havoc Pennington  <hp@redhat.com>
6348
6349         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
6350
6351 2001-04-18  Havoc Pennington  <hp@redhat.com>
6352
6353         Close bug #50615:
6354         
6355         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
6356         the layout
6357
6358         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
6359
6360         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
6361
6362         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
6363         
6364         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
6365         to blue for base, in addition to bg
6366         
6367 2001-04-18  Havoc Pennington  <hp@redhat.com>
6368
6369         * tests/testgtk.c (create_image): allow shrinking the image window
6370         to test that we clip to allocation.
6371
6372         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
6373         #9845
6374
6375         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
6376
6377 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
6378
6379         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
6380         mode on shm segments to 0600. We'll see who complains.
6381
6382         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
6383         _gdk_windowing_window_destroy() AFTER recursing through
6384         children.
6385
6386         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
6387         testsocket_child on X.
6388
6389         * tests/testsocket[_child].c: Fix uses of
6390         gtk_window_get_default_accel_group().
6391
6392         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
6393
6394         * gdk/gdkimage.c: (gdk_image_get):
6395         Deal with the possibility that XGetImage() might return NULL.
6396         Allocate the GdkImagePrivate structure only after XGetImage()
6397         succeeds in order not to dereference a NULL ximage pointer.  This
6398         prevents a core dump when XGetImage() fails - which is unlikely,
6399         but can happen due to race conditions accessing the geometries of
6400         drawables.  An x error will still be triggered, but the gdk image
6401         wrapper at least wont seg fault.
6402         
6403 2001-04-18  Havoc Pennington  <hp@redhat.com>
6404
6405         * gtk/gtkimage.c: fix to properly queue resizes when the image is
6406         set
6407
6408         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
6409         if the insertion point isn't editable
6410
6411         * demos/gtk-demo/images.c: Added a GtkImage demo
6412
6413         * demos/gtk-demo/drawingarea.c: drawing area demo
6414         
6415         * demos/gtk-demo/menus.c (create_menu): cleanups
6416
6417 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
6418
6419         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
6420           gdk/x11/gdkevents-x11.c: Introduce an extra child
6421         of toplevel windows that serves to hold the focus to
6422         avoid events being delivered to embedded windows.
6423
6424         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
6425         some extra variables to clean up code and reduce the
6426         number of casts.
6427
6428         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
6429         guint for 1 bit bit fields, not gboolean.
6430
6431 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
6432
6433         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
6434         not TRUE. (Fixes #52925)
6435
6436 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
6437
6438         * Released 1.3.4
6439
6440         * NEWS: Updated
6441
6442         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
6443         use GTK_TYPE_ENUM.
6444
6445 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
6446
6447         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6448
6449         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
6450         names to compatibility #defines so docs work.
6451
6452         * gtk/gtkenums.h: Remove GtkMenuFactoryType
6453
6454         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
6455
6456         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6457
6458         * tests/testgtkrc: No magenta cursors, please.
6459
6460         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
6461
6462         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
6463         
6464 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
6465
6466         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
6467         grabs, since they are no longer necessary.
6468
6469         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
6470         by signal_connect() and call gtk_button_pressed() rather
6471         than signal_connect_after().
6472
6473         * tests/testgtk.c: Restore radio menu items to combos 
6474         since they'll look OK with Raleigh, and it is easier
6475         than finishing the process of removing them that was
6476         started earlier.
6477
6478 2001-04-16  Hans Breuer  <hans@breuer.org>
6479
6480         * gdk/gdk.def :
6481         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
6482
6483         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
6484         we are interested in the functions return value not the function address
6485         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
6486
6487         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
6488
6489 2001-04-14  Hans Breuer  <hans@breuer.org>
6490
6491         * gdk/gdk.def :
6492         * gdk/makefile.msc : updated
6493
6494         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
6495         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
6496         (the testgtk::text backgound pixmap is drawn again)
6497         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
6498         Win32 Pango change
6499         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
6500
6501         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
6502         Not sure if the returned settings have the right unit, because I couldn't
6503         find any docs for the X version ...
6504
6505         * gtk/gtk.def :
6506         * gtk/makefile.msc.in : updated
6507
6508 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
6509
6510         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
6511         wording problems. (Compared to version from Johannes Stezenbach to
6512         check correctness.)
6513
6514 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
6515
6516         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
6517         this to compile.
6518
6519 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
6520
6521         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
6522         not pixbufpos.
6523
6524         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
6525
6526         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
6527         are unsigned insts, therefore use g_value_set_uint.
6528         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
6529
6530 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
6531
6532         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
6533
6534         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
6535         GTK_TYPE_STRING.
6536
6537         * gtk/gtktreeview.c: New functions to allow initial column
6538         dragging work.
6539
6540         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
6541
6542         * tests/testtreefocus.c: give dave some love.
6543
6544         * tests/testtreesort.c: Modify test to check really long samples.
6545
6546 2001-04-11  Alexander Larsson  <alexl@redhat.com>
6547
6548         * gtk-2.0.m4: Pass pkg-config options
6549         before the other args so it works even if
6550         POSIXLY_CORRECT is set.
6551
6552 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
6553
6554         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
6555         0, interface 0).
6556
6557 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
6558
6559         * gtk/gtkcalendar.c (gtk_calendar_button_press):
6560         check for action_func != NULL
6561
6562 2001-04-04  Sven Neumann  <sven@gimp.org>
6563
6564         * tests/testgtk.c (test_init): corrected path to gtk.immodules
6565
6566 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
6567
6568         * Released Gtk+-1.3.3.
6569
6570 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
6571
6572         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
6573
6574 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
6575
6576         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
6577         files to/from source dir. (if we don't stay in builddir, we
6578         can't reach make-inline-pixbuf.
6579
6580         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
6581         deps.
6582
6583         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
6584         ages 0).
6585
6586 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
6587
6588         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
6589         moved to the GtkTreeSortable interface.
6590
6591         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
6592         Make more efficient (fixes #50262).
6593
6594 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
6595
6596         * NEWS: Updated.
6597
6598         * configure.in: Remove support for uninstalled glib.
6599
6600         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
6601         so as not to stop emission.
6602
6603         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
6604         is no longer supported.
6605
6606         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
6607         into tests, change build order to build modules before
6608         gtk/.
6609
6610         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
6611         to here.
6612
6613 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
6614
6615         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
6616         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
6617         GPatternSpec. this is actually unlikely to cause breakage in
6618         third-party apps since except for gle, pretty much ever caller
6619         passes NULL here.
6620
6621         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
6622
6623         * *.c: use g_pattern_*() API.
6624
6625         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
6626
6627         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
6628         directions aren't passed in.
6629
6630         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
6631         functionality to be usable from gtkstyle.c as well, give precedence
6632         for conversion to user-supplied parsers.
6633         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
6634
6635         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
6636         _gtk_settings_parse_convert() for rcporperty value conversion.
6637
6638 2001-04-03  Alexander Larsson  <alexl@redhat.com>
6639
6640         * gdk/linux-fb/gdkevents-fb.c:
6641         Add empty gdk_setting_get().
6642
6643 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
6644
6645         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
6646         variable names.
6647         
6648         * gtk/makeenums.pl: touch this so enum files get remade.
6649
6650 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
6651
6652         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
6653         work again when not sorted.
6654
6655         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
6656         and "expand_row" signal, closing bug 52578.
6657
6658         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
6659         support.
6660
6661         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
6662         support.
6663
6664 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
6665
6666         * gdk/gdkevents.h: Add GdkEventSetting event for notification
6667         of changes to system settings, gdk_setting_get() to retrieve
6668         a single system setting.
6669
6670         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
6671         to the draft XSETTINGS mechanism.
6672
6673         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
6674         XSETTINGS.
6675
6676         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
6677         of GDK settings changes to the GtkSettings object.
6678
6679         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
6680         double-click-timeout property to GDK.
6681
6682         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
6683         Define GDK boxed types here.
6684
6685         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
6686         gdk/gdkenumtypes.[ch] for enum definitions.
6687
6688         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
6689         * gtk/gtk-boxed.defs: Comment out GDK types
6690         * gtk/gtktypeutils.h: Remove GDK types
6691         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
6692
6693 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
6694
6695         * Applied patch from Ron Steinke to add signal accumulators
6696         so that signals with the convention 'TRUE return means
6697         handled' stop emission on a TRUE return.
6698
6699         * gtk/gtkmain.[ch]: Add private accumulator 
6700         _gtk_boolean_handled_accumulator, used throughout GTK+.
6701         
6702         * gtk/gtkspinbutton.c: Add accumulator for ::output.
6703
6704         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
6705         
6706         * gtk/gtkwidget.c: Add accumulators for event signals,
6707         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
6708         for ::mnemonic-activate.
6709
6710         * gtk/gtkwindow.c: Add accumulator for ::frame_event
6711
6712 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
6713
6714         * gtk/gtkwidget.c: Add missing include.
6715
6716 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
6717
6718         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
6719         marshaller.
6720
6721         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
6722         "changed" signal to "range_changed".
6723
6724         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
6725         removing a tree from one model would remove all trees from that
6726         model.
6727         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
6728         changed signal instead.
6729
6730 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
6731
6732         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
6733         chaining up to parent impl, since we have a INPUT_ONLY
6734         window.
6735
6736         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
6737         foreground color for the cursor.
6738
6739 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
6740
6741         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
6742         param spec when caching property values, since we unref it
6743         later when we free the style.
6744
6745         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
6746         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
6747
6748 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
6749
6750         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
6751         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
6752         stupidity.
6753
6754 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
6755
6756         [ First pass at adding style properties. Still needs some definite
6757         fine-tuning. ]
6758
6759         * gtk/gtkbutton.c: Add ::default_spacing style property.
6760          
6761         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
6762         ::indicator_spacing style properties.
6763
6764         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
6765         style properties.
6766
6767         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
6768         rather than a normal property.
6769
6770         * gtk/gtkwidget.c: Add an ::interior_focus style property to
6771         draw focus inside buttons, in the Windows/Java Metal/etc. style.
6772
6773         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
6774         Honor ::interior_focus.
6775         
6776         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
6777         TRUE.
6778
6779         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
6780         Add ::slider_width, ::trough_border, ::stepper_size,
6781         ::stepper_spacing style properties.
6782
6783         * gtk/gtkscale.[ch] Add ::slider-length style property.
6784
6785 2001-04-02 Alexander Larsson   <alexl@redhat.com>
6786
6787         * gdk/linux-fb/gdkwindow-fb.c:
6788         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
6789         warnings that were spewed on startup.
6790
6791         * gtk/gtkwindow-decorate.c:
6792         gtk_window_reposition -> _gtk_window_reposition
6793
6794 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
6795
6796         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
6797         Add boxed type for GtkRequistion. Use it for ::size-request.
6798
6799         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
6800         Add a new GtkBorder structure useful for geometry properties
6801         for widgets. Add corresponding GTK_TYPE_BORDER.
6802         
6803         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
6804         Support automatic parser selection like
6805         gtk_settings_install_property_parser().
6806
6807         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
6808         functionality for use by gtk_widget_class_install_style_property.
6809         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
6810
6811 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
6812
6813         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
6814         g_param_spec_unichar(). 
6815
6816 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
6817
6818         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
6819         _NET window managers.
6820
6821         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
6822
6823 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
6824
6825         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
6826         bad needs to be nuked, not just deprecated.
6827
6828         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
6829         gtk_widget_popup().
6830
6831         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
6832         
6833         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
6834         widget.
6835         
6836         * docs/Changes-2.0.txt: updates.
6837         
6838 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
6839
6840         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
6841         for (i = 0; i < 100; i ++)
6842           g_print ("I will confirm it compile before committing\n");
6843
6844 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
6845
6846         * gtk/gtktreestore.c: Initial work on implementing the
6847         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
6848
6849 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
6850
6851         * gtk/gtkwidget.c: fixed a bunch of notifications, added
6852         reference counts around emissions where the widget is used afterwards.
6853         added freeze/thaws around multiple properties being notified.
6854         (_gtk_widget_get_aux_info): cleanups.
6855         
6856         * gtk/gtksettings.c (gtk_settings_install_property): provide
6857         default parsing functions for gdkcolor, enums and flags.
6858
6859         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
6860         applied by owen.
6861         backed out gtk_window_get_location(), gtk_window_set_location(),
6862         gtk_window_get_size() and gtk_window_set_size(), these
6863         have to be sorted out wrg x/y/width/height/default_with/default_height
6864         properties.
6865         kept a flag in GtkWindowGeometryInfo to handle user
6866         resetting default sizes.
6867         cleaned up ZVT comments.
6868         bunch of assorted bug fixes, notification fixes.
6869         (_gtk_window_reposition): make this a really internal function.
6870         
6871         * gtk/testgtk.c: fixups.
6872         
6873 2001-03-31  Hans Breuer  <hans@breuer.org>
6874
6875         * config.h.win32.in : disable USE_MMX for msvc build cause
6876         the assembler doesn't fit and is out of my scope. Disable
6877         USE_GMODULE for msvc build as wel. The right way to share
6878         binaries on win32 would be to use libtiff.dll etc. To reduce
6879         installation hassles IMO it's better to include all fileformats
6880         builtin to gdk-pixbuf
6881
6882         * gdk-pixbuf/makefile.msc : new file
6883
6884         * gdk/gdk.def : updated
6885
6886         * gdk/win32/gdkevents-win32.c : don't erase the background if
6887         .no_bg is set. It improves the scrolling (e.g. of testgtk main
6888         buttons
6889         * gdk/win32/gdkgeometry-win32.c : added comment about the above
6890
6891         * gdk/win32/gdkwindow-win32.c : added three new functions like
6892         the X version. Only one is implemented, because the other two
6893         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
6894         be default behaviour on win32 anyway ...
6895
6896         * gtk/gtk.def : updated
6897
6898         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
6899         from where it was built and add an additional rule to automagically
6900         build gtkmarshal.[hc]
6901
6902         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
6903         before array access for the current entry isn't finished
6904
6905         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
6906         use g_return_val_if_fail
6907
6908         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
6909         for the static array, but let the compiler calculate it. It
6910         makes me wonder if gcc isn't capable to catch bugs like this ...
6911
6912 2001-03-31  James Henstridge  <james@daa.com.au>
6913
6914         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
6915         constant "-1" in the aux info structure.
6916
6917 2001-03-30  Alexander Larsson  <alexl@redhat.com>
6918
6919         * gtk/gtkbutton.c (gtk_button_get_property):
6920         * gtk/gtklabel.c:
6921         Remove leaks.
6922         
6923         * gtk/gtkcontainer.c:
6924         * gtk/gtkhscale.c:
6925         * gtk/gtkhscrollbar.c:
6926         * gtk/gtklayout.c:
6927         * gtk/gtkmisc.c:
6928         * gtk/gtkprogress.c:
6929         * gtk/gtkprogressbar.c:
6930         * gtk/gtkrange.c:
6931         * gtk/gtktable.c:
6932         * gtk/gtkviewport.c:
6933         * gtk/gtkvscale.c:
6934         * gtk/gtkvscrollbar.c:
6935         * gtk/gtkwidget.c:
6936         Property patches, based on patches from John Margaglione and Lee Mallabone.
6937
6938 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
6939
6940         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
6941         adjustment. Cleaned redundant preconditions (spin != NULL). Added
6942         inline API function docs.
6943         (gtk_spin_button_new_with_range): New convenience constructor.
6944         (gtk_spin_button_set_increments): New adjustment helper.
6945         (gtk_spin_button_set_range): New adjustment helper.
6946
6947         * gtk/testgtk.c : added test of the new convenince constructor and
6948         value_changed signals.
6949
6950 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
6951
6952         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
6953         listen to the reorder signal.
6954
6955 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
6956
6957         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
6958         to get the aux info structure fo the widget.
6959
6960         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
6961         above function.
6962
6963         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
6964
6965         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
6966         to get the size of the window manager frame, basically the same
6967         code that gdk_window_get_root_origin() had
6968         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
6969
6970         * gtk/gtkwindow.c (gtk_window_set_default_size): use
6971         gdk_window_resize() if the window is realized and resizeable
6972
6973         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
6974         typo so that setting gravity works
6975
6976         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
6977         allocation if auto_shrink is on, even if the default size
6978         has not changed.
6979
6980         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
6981         g_return_if_fail
6982
6983 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
6984
6985         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
6986         reordering/sorting work.  Now pretty much works.
6987
6988         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
6989         reorder mostly work.  Still need to get the parity correct.
6990
6991         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
6992         signal, so I can listen for the sort_column_changed signal so I
6993         can change my "sort_indicator" property.  Cool.
6994
6995 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
6996
6997         [ Patch from Havoc Pennington, hp@redhat.com ]
6998
6999         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
7000         Add functions gdk_window_begin_resize_drag/begin_move_drag
7001         to start resizing or moving a toplevel window. This
7002         is done either using the _NET_WM_MOVERESIZE protocol,
7003         or, if that isn't present, by emulation.
7004
7005         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
7006         to export the above to GTK+-land.
7007
7008         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
7009         
7010         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
7011         Move this function into gdkwindow, since we need it
7012         when implementing fallback resizing.
7013
7014         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
7015         Fix typo when setting gravity.
7016
7017         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
7018         Add an optional (but on by default) resize grip for resizing 
7019         the parent window.
7020
7021 01-03-29  Alexander Larsson  <alexl@redhat.com>
7022
7023         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
7024         Don't return TRUE from the event handler, that blocks all
7025         event signals on the tooltip widget. Now you can press buttons
7026         in toolbars again.
7027
7028 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
7029
7030         * gtk/testtext.c (create_buffer): Add missing NULL on
7031         valist.
7032
7033         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
7034         c-n-p problem with INCONSISTENT property.
7035
7036         [ Patch from Havoc Pennington  <hp@redhat.com> ]
7037
7038         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
7039         hook.
7040
7041         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
7042         signal as a hook for extending the default popup menu
7043
7044         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7045         use radio menu items for the input method menuitems
7046
7047         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
7048         inserted unicode from Ctrl-Shift-hex input method
7049
7050         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
7051         validatation here, already done at GtkTextBuffer level.
7052
7053         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
7054         popup_menu run action signal and Shift+F10 and Menu keybindings.
7055
7056         * gtk/gtkentry.c: implement a default handler for popup_menu
7057
7058         * gtk/gtktextview.c: implement a default handler for popup_menu
7059
7060         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
7061         from a key event
7062         
7063         * gtk/gtklabel.c: remove "trailer" cruft
7064
7065 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
7066
7067         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
7068         handle reordering of trees.  Seems to mostly work w/ the exception
7069         of the parity flag.
7070
7071         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
7072         signal.
7073
7074 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
7075
7076         * gtk/gtkwidget.h: c++ fixes.
7077
7078 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
7079
7080         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
7081         memory.
7082
7083 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
7084
7085         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
7086         Nils Barth fixing event return values. (#51041)
7087
7088         * gtk/gtkwidget.c: Fix some return values for default
7089         functions.
7090
7091         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
7092         return values for trough_keys functions.
7093
7094         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
7095         value for add_accelerator (shoudl have been a void
7096         return.)
7097
7098         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
7099         Fix return type of EVENT.
7100
7101         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
7102         signal return a boolean.
7103
7104 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
7105
7106         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
7107         reordered signal.
7108
7109         * tests/testtreesort.c (main): fix spelling.
7110
7111 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
7112
7113         * gtk/gtkliststore.c: More work on implementing sortable
7114         interface.
7115
7116 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
7117
7118         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
7119         reference the widgets in the resulting list. (#11821)
7120         This makes this consistent with gtk_container_children.
7121
7122         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
7123         uses of gtk_window_list_toplevels.
7124
7125 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
7126
7127         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
7128         a virtual function to set whether the IM context should use 
7129         the preedit string. (#51922)
7130         
7131 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
7132
7133         * gdk/gdkpango.h: Remove stale FIXME comment.
7134
7135 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
7136
7137         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
7138         Fixed bug that returned NULL if a filename was selected.
7139
7140 2001-03-24  Havoc Pennington  <hp@pobox.com>
7141
7142         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
7143         to contain the word "theme"
7144
7145 2001-03-24  Havoc Pennington  <hp@pobox.com>
7146
7147         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
7148         slower but finer-grained
7149         (gtk_hsv_focus): get initial focus on the ring or triangle 
7150         according to tab direction
7151
7152         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
7153
7154 2001-03-23  Havoc Pennington  <hp@pobox.com>
7155
7156         * gtk/gtkhsv.c: make this somewhat key-navigable
7157
7158         * gtk/gtkfontsel.c: mnemonics
7159
7160         * gtk/gtkgamma.c: mnemonics
7161
7162         * gtk/gtkcolorsel.c: add mnemonics to labels
7163
7164 2001-03-22  Havoc Pennington  <hp@pobox.com>
7165
7166         Applied big patch from Seth Lytle to fix event handler return
7167         values, slightly modified.
7168
7169         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
7170         handled.
7171         (gtk_calendar_key_press): return TRUE for GDK_space triggers
7172         select_day
7173
7174         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
7175         (gtk_clist_button_release): return TRUE if handled
7176
7177         * gtk/gtkcolorsel.c (mouse_release):
7178         (palette_activate): 
7179         (palette_press): 
7180         (palette_new): 
7181         (mouse_press): 
7182         (get_screen_color): 
7183         fixed return type (void to gboolean), return TRUE,
7184         added GTK_SIGNAL_FUNC cast
7185
7186         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
7187         (void to gboolean), and return TRUE
7188         (gtk_combo_button_release): changed return value to TRUE after
7189         gtk_grab_add on combo->popwin
7190
7191         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
7192         collapse or expand
7193
7194         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
7195         button/motion
7196
7197         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
7198         press/release and motion that trigger act
7199
7200         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
7201
7202         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
7203         for GDK_Return
7204         
7205         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
7206         (gtk_list_button_release): return TRUE if selection
7207
7208         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
7209         press
7210
7211         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
7212         (gtk_menu_shell_button_release): chain parent_menu_shell retval
7213
7214         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
7215         nothing triggered
7216         (gtk_notebook_button_release): return TRUE if we do anything
7217
7218         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
7219         (gtk_spin_button_button_release): return TRUE or chained retval
7220
7221         * gtk/gtktext.c (gtk_text_button_press): 
7222         (gtk_text_button_release): return TRUE
7223         (gtk_text_key_press): remove redundant retval code
7224         
7225         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
7226         and sensitive
7227         (gtk_tree_item_subtree_button_click): changed type to gint, and return
7228         TRUE if sensitive
7229
7230         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
7231         return TRUE
7232
7233 2001-03-23  Havoc Pennington  <hp@redhat.com>
7234
7235         * gtk/testgtk.c: fix warnings
7236
7237         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
7238
7239         * gtk/gtktextview.c: fix warnings
7240
7241         * gtk/gtktext.c (find_cursor_at_line): fix warning
7242
7243         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
7244
7245         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
7246         of this function
7247
7248         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7249         fix warning
7250
7251         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
7252
7253         * gtk/gtkfontsel.c: fix warning
7254
7255         * gtk/gtkcolorsel.c: fix warnings
7256
7257 2001-03-23  Havoc Pennington  <hp@redhat.com>
7258
7259         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
7260
7261         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
7262
7263         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
7264         and deprecated gtk_check_menu_item_set_show_toggle().
7265         
7266         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
7267
7268         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
7269
7270         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
7271
7272 2001-03-23  Havoc Pennington  <hp@redhat.com>
7273
7274         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
7275         some docs
7276
7277 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
7278
7279         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
7280         this.
7281
7282         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
7283         set_cell to set_value
7284
7285         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
7286         set_cell to set_value
7287
7288 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
7289
7290         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7291         fix braino.
7292         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
7293         support.
7294
7295         * gtk/gtktreeview.c: Addition of initial sortable support.
7296
7297         * gtk/gtktreestore.c: Addition of initial sortable support.
7298
7299         * gtk/gtkliststore.c: Addition of initial sortable support.
7300
7301         * gtk/gtkmarshal.list: yet another marshaller.
7302
7303         * gtk/gtktreedatallist.[ch]: shared code between the store models
7304         for handling sorting headers.
7305
7306 2001-03-22  Havoc Pennington  <hp@redhat.com>
7307
7308         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
7309         (gtk_container_unset_focus_chain): Add ability to override the 
7310         focus chain for a container explicitly
7311
7312 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
7313
7314         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
7315         added PROP_MNEMONIC_WIDGET.
7316
7317         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
7318         (gtk_window_remove_mnemonic): 
7319         (gtk_window_add_mnemonic): fixed assertions.
7320         (gtk_window_activate_mnemonic): constrain modifier checks to those
7321         permitted by gtk_accelerator_get_default_mod_mask().
7322         got rid of gtk_window_get_default_accel_group().
7323
7324         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
7325         activatable widgets either by focussing or a warning.
7326         added a signal accumulator to ::activate_mnemonic which stops the
7327         emission once a handler returned TRUE.
7328
7329 2001-03-22  Havoc Pennington  <hp@pobox.com>
7330
7331         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
7332         the stock item label
7333
7334         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
7335
7336         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
7337
7338         * demos/gtk-demo/*.c: Add mnemonics all over the place
7339
7340         * gtk/gtklabel.h: mark parse_uline deprecated
7341
7342 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7343
7344         * gtk/gtkitemfactory.[ch]:
7345         Add support for stock and normal imagemenuitems.
7346         
7347         * gtk/testgtk.c:
7348         Add some tests for mnemonics, stock toolbars, stock
7349         and image menuitems in itemfactory and gdk_window_scroll.
7350
7351 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7352
7353         * gtk/gtkbutton.[ch]:
7354         * gtk/gtkdialog.c:
7355         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
7356         removed accel_group argument. Renamed gtk_button_new_accel() to
7357         gtk_button_new_with_mnemonic() and removed accel_group argument.
7358
7359         * gtk/gtkcheckbutton.[ch]:
7360         New function gtk_check_button_new_with_mnemonic().
7361
7362         * gtk/gtkentry.c:
7363         Override activate_mnemonic and just grab focus.
7364
7365         * gtk/gtkitemfactory.c:
7366         Don't add menu uline accel group, instead use mnemonics support.
7367
7368         * gtk/gtklabel.[ch]:
7369         New support for mnemonics.
7370
7371         * gtk/gtkmarshal.list:
7372         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
7373
7374         * gtk/gtkmenu.[c]:
7375         * gtkmenushell.c:
7376         Use mnemonics instead of accel groups for uline
7377         support in menu items.
7378         Removed gtk_menu_get_uline_accel_group() and
7379         gtk_menu_ensure_uline_accel_group().
7380
7381         * gtk/gtkmenuitem.c:
7382         Override activate_mnemonic to handle switching between
7383         menu items if there are collisions.
7384         
7385         * gtk/gtknotebook.c:
7386         Connect to activate_mnemonic on the tab_label, so that
7387         activating it switches to that notebook page.
7388
7389         * gtk/gtkwidget.[ch]:
7390         Add activate_mnemonic signal. New function
7391         gtk_widget_activate_mnemonic() to emit it.
7392         Default implementation does activate/grab_focus.
7393
7394         * gtk/gtkwindow.[ch]:
7395         Add support for mnemonics in windows.
7396         New functions:
7397         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
7398         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
7399
7400         * gtk/testgtk.c:
7401         Update to function name changes.
7402         
7403 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7404
7405         * gtk/gtkimagemenuitem.[c]:
7406         Add gtk_image_menu_item_new_from_stock()
7407
7408 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
7409
7410         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7411         Fix buglet in meeting.
7412
7413 2001-03-19  Havoc Pennington  <hp@redhat.com>
7414
7415         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
7416         add a bunch of accessor functions. This is because we have
7417         reasonable expectations of extending what fields it contains in
7418         the future.
7419
7420         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
7421         changes
7422
7423         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
7424         GtkIconSource   
7425
7426 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
7427
7428         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
7429         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
7430
7431         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
7432           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
7433           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
7434           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
7435         Change float to double everywhere with the exception of 0<->1.0 alignment
7436         and GtkCurve.
7437
7438 2001-03-19  Tor Lillqvist  <tml@iki.fi>
7439
7440         * gdk/win32/gdkdrawable-win32.c
7441         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
7442         output.
7443
7444         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
7445         gdkwin32.h.
7446
7447 2001-03-18  Tor Lillqvist  <tml@iki.fi>
7448
7449         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
7450         print_event_state, print_event): Use preprocessor macro to make
7451         code more compact. Print also GDK_WINDOW_STATE events.
7452         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
7453         
7454         * gtk/gtk.def
7455         * gtk/makefile.mingw.in: Update.
7456
7457         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
7458         to catch also Cygwin.
7459
7460 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
7461
7462         * gtk/gtkspinbutton.[hc]: added rc-style argument
7463         GtkSpinButton::shadow_type.
7464         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
7465         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
7466         rc-style settings.
7467
7468         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
7469
7470         * gtk/gtkwidget.c: quark cleanups.
7471
7472         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
7473         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
7474         to create_rc_style() (we don't do cloning in standard OO sense).
7475         added per rc style properties.
7476         
7477         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
7478         property values and for caching those. some cleanups.
7479         
7480         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
7481         
7482         * gtk/gtksettings.[hc]: new file for global rc-file properties
7483         (at least currently, should get extended to support X properties
7484         and other communication mechanisms).
7485         
7486         * gtk/gtkwidget.[hc]: added style property support:
7487         (gtk_widget_class_install_style_property_parser): install style
7488         property pspec with parser function for rc-file values other
7489         than LONG, DOUBLE or STRING.
7490         (gtk_widget_class_install_style_property): same as above without
7491         parser (parsers are going to be needed quite infrequently).
7492         (gtk_widget_style_get_property): retrive style property value.
7493         (gtk_widget_style_get_valist): same as above with varargs support,
7494         has NOCOPY semantics.
7495         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
7496
7497 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
7498
7499         * demos/gtk-demo/main.c (row_activated_cb): modified to use
7500         "row_activated" signal.
7501
7502         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
7503         stupidity.  Lets actually pass in the row with this signal...
7504
7505 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
7506
7507         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
7508
7509         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
7510
7511         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
7512         everything into the ::destroy function, and freed a lot more.
7513
7514 2001-03-16  Havoc Pennington  <hp@redhat.com>
7515
7516         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
7517         instead of gint16, to avoid overflow issues, since sizes > 16-bit
7518         are now allowed.
7519
7520 2001-03-16  Havoc Pennington  <hp@redhat.com>
7521
7522         * Applied patch from Nils Barth (bug # 51041) to 
7523         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
7524         in various places.
7525
7526 2001-03-15  Havoc Pennington  <hp@redhat.com>
7527         
7528         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
7529         for properties to set on the tag.
7530
7531         * gtk/testtext.c: fixups to reflect create_tag change
7532         
7533         * gtk/gtktexttag.c (gtk_text_tag_set_property):
7534         background/foreground stipple are objects, not boxed.
7535
7536         * demos/gtk-demo/textview.c: intellihancing
7537
7538 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
7539
7540         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
7541         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
7542
7543 2001-03-16  Alexander Larsson  <alexl@redhat.com>
7544
7545         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
7546         Fix sign error with queued region translations.
7547
7548 2001-03-15  HideToshi Tajima  <tajima@happy>
7549
7550         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
7551         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
7552         * gtk/gtkentry.c (update_im_cursor_location): 
7553         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
7554         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
7555         set_cursor_pos to set_cursor_location in GtkInputContext class
7556
7557 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
7558
7559         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
7560         the location of the cell relative to its area.
7561         * gtk/gtkcell*: modified for above change
7562         * gtk/gtktreeview.c: modified for above change.
7563
7564 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
7565
7566         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
7567          (gtk_tree_view_finalize): actually unref the model.  Thanks to
7568         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
7569
7570 2001-03-14  Havoc Pennington  <hp@redhat.com>
7571
7572         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
7573         
7574         * gtk/gtk.h: remove gtkdata.h
7575
7576         * gtk/Makefile.am: remove gtkdata
7577         
7578         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
7579         not "disconnect" on the adjustments.
7580         
7581         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
7582         GtkData
7583
7584         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
7585         not GtkData
7586
7587         * configure.in: handle case where X render exists, but Pango lacks
7588         Xft support.
7589
7590 2001-03-15 Alexander Larsson  <alexl@redhat.com>
7591
7592         * gtk/gtktoolbar.[ch]:
7593         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
7594         to add stock items to toolbars.
7595
7596         * gtk/Makefile.am:
7597         Remove ../gdk/gdkim.h from gdk_headers.
7598
7599 2001-03-15  Sven Neumann  <sven@gimp.org>
7600
7601         * gdk/gdkim.h: removed
7602         
7603         * gdk/gdkprivate.h
7604         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
7605
7606 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
7607
7608         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
7609         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
7610         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
7611         set_cursor_pos() virtual method
7612
7613         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
7614         (gtk_im_context_xim_set_cursor_pos): add implementation for
7615         set_cursor_pos() method
7616
7617         * gtk/gtkentry.c (recompute_idle_func): set current cursor
7618         position to input methods
7619
7620 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
7621
7622         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
7623         code a lot.
7624
7625         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
7626         g_mem_chunk.
7627         (_gtk_tree_data_list_alloc): use g_mem_chunk.
7628         (_gtk_tree_data_list_node_to_value): Fix to switch on
7629         G_TYPE_FUNDAMENTAL.
7630         (_gtk_tree_data_list_value_to_node): Fix to switch on
7631         G_TYPE_FUNDAMENTAL.
7632         (_gtk_tree_data_list_node_copy): Fix to switch on
7633         G_TYPE_FUNDAMENTAL.
7634
7635 2001-03-12  Havoc Pennington  <hp@redhat.com>
7636
7637         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
7638         to convert to new property API. Also, change default_width and
7639         default_height get_property to return 0 as the flag value for
7640         "unset"; -1 is not a valid value for these fields.
7641
7642 2001-03-12  Havoc Pennington  <hp@redhat.com>
7643
7644         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
7645         enum with registration for icon sizes, instead of strings.
7646
7647         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
7648         gtkwidget.c: Fix to reflect GtkIconSize
7649         
7650 2001-03-12  Alexander Larsson  <alexl@redhat.com>
7651
7652         Make GtkFB compile and link.
7653         
7654         * gdk/linux-fb/gdkdrawable-fb2.c:
7655         window->mapped to GDK_WINDOW_IS_MAPPED(). 
7656         
7657         * gdk/linux-fb/gdkwindow-fb.c:
7658         window->mapped to GDK_WINDOW_IS_MAPPED(). 
7659         Added gdk_window_shape_combine_region.
7660         Added assorted placeholders for unimplemented new GdkWindow API calls.
7661
7662 2001-03-12  Alexander Larsson  <alexl@redhat.com>
7663
7664         * gtk/gtkfilesel.c:
7665         Add more test when converting filenames from/to utf-8.
7666         Don't allow entering text in the filename entry which isn't allowed in
7667         a filename. Just beep instead.
7668
7669 2001-03-12  Alexander Larsson  <alexl@redhat.com>
7670
7671         * gtk/gtkclist.c:
7672         Scroll using gdk_window_scroll(). Don't wait for exposes.
7673         Move the column headers in an order that makes them flash less.
7674
7675 2001-03-10  Hans Breuer  <hans@breuer.org>
7676
7677         * gdk/gdk.def : updated
7678
7679         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
7680         to offseting the clip_mask at the right place
7681
7682         * gdk/win32/gdkwindow-win32.c : don't create background brushes
7683         for all the gdkClasses, especially not for the input_only case.
7684         Otherwise flickering wont be avoidable, because we don't get
7685         WM_ERASEBKGND message for these windows.
7686
7687         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
7688         and fixed massive redraw problems apparently triggered by Alexanders 
7689         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
7690         but it seems to work quite well :-)
7691
7692         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
7693         prototype
7694
7695 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
7696
7697         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
7698         (gtk_list_store_set_cell): Fix a stupid typo.
7699
7700 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
7701
7702         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
7703         select_all not work if you're in SINGLE mode (it doesn't make that
7704         much sense, anyway.)
7705
7706         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
7707         handle types more sanely.
7708         (_gtk_tree_data_list_value_to_node): handle types more sanely.
7709         (_gtk_tree_data_list_node_copy): handle types more sanely.
7710
7711         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
7712         GValue better. Converts the type as well.
7713
7714         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
7715         GValue better. Converts the type as well.
7716
7717 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
7718
7719         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
7720         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
7721         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
7722         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
7723
7724         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
7725         gdk_im/gdk_ic.
7726
7727 2001-03-09  Hans Breuer  <hans@breuer.org>
7728
7729         * gdk/gdk.def : updated
7730
7731         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
7732         for their palette
7733
7734         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
7735         removing
7736
7737         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
7738         removing and implemented Havoc's GdkWindow state functions; 
7739         stick/unstick only as no-op, cause I don't know how to emulate 
7740         on win32 ...
7741
7742         * gtk/gtk.def : updated
7743
7744         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
7745
7746         * gtk/gtktypeutils.c : #include <string.h>
7747
7748         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
7749
7750 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
7751
7752         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
7753         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
7754         not a boxed.
7755
7756 2001-03-09  Alexander Larsson  <alexl@redhat.com>
7757
7758         * docs/Changes-2.0.txt:
7759         Document expose event->region change and that gtk_widget_event
7760         doesn't allow passing expose events.
7761
7762         * gdk/gdkevents.h:
7763         Add region to expose event.
7764         
7765         * gdk/gdkevents.c:
7766         Handle event->region in gdk_event_copy() and gdk_event_free().
7767
7768         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
7769         Generate expose_event->region when creating expose events.
7770
7771         * gdk/x11/gdkevents-x11.c:
7772         Generate expose events with regions when translating X events.
7773
7774         * gtk/gtkcontainer.[ch]:
7775         Default expose handler that propagates expose events to NO_WINDOW
7776         children. New function gtk_container_propagate_expose()
7777
7778         * gtk/gtkwidget.[ch]:
7779         Moved gtk_widget_event implementation to gtk_widget_event_internal.
7780         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
7781         expose events. New function gtk_widget_send_expose() to send expose
7782         events. New function gtk_widget_region_intersect() to calculate
7783         window/region intersections.
7784         
7785         * gtk/gtkmain.c (gtk_main_do_event):
7786         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
7787         Use gtk_widget_send_expose() to send expose events.
7788         
7789         * gtk/gtkbin.c:
7790         * gtk/gtkbox.c:
7791         * gtk/gtkfixed.c:
7792         * gtk/gtkimagemenuitem.c:
7793         * gtk/gtklist.c:
7794         * gtk/gtkpacker.c:
7795         * gtk/gtktable.c:
7796         * gtk/gtktree.c:
7797         Remove expose handler, using the default container implementation
7798         instead.
7799         
7800         * gtk/gtkbutton.c:
7801         * gtk/gtkcheckbutton.c:
7802         * gtk/gtkeventbox.c:
7803         * gtk/gtkfixed.c:
7804         * gtk/gtkhandlebox.c:
7805         * gtk/gtklayout.c:
7806         * gtk/gtklistitem.c:
7807         * gtk/gtkmenu.c:
7808         * gtk/gtkmenubar.c:
7809         * gtk/gtkmenuitem.c:
7810         * gtk/gtknotebook.c:
7811         * gtk/gtkoptionmenu.c:
7812         * gtk/gtkpaned.c:
7813         * gtk/gtkscrolledwindow.c:
7814         * gtk/gtktogglebutton.c:
7815         * gtk/gtktoolbar.c:
7816         * gtk/gtktreeitem.c:
7817         * gtk/gtkviewport.c:
7818         Chain expose handler to parent class handler. Use
7819         gtk_container_propagate_expose() to propagate exposes.
7820
7821         * gtk/gtkclist.c (check_exposures):
7822         * gtk/gtktext.c (process_exposes):
7823         Use gtk_widget_send_expose instead of gtk_widget_event.
7824
7825 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
7826
7827         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
7828
7829 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
7830
7831         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
7832         unref the nodes.   Fixes bug #50058.
7833
7834         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
7835         "::ref_iter" to "::ref_node".
7836         (gtk_tree_model_unref_node): change "::unref_iter" to
7837         "::unref_node". Fixes bug #50064.
7838
7839 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
7840
7841         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
7842         support for invisible cells.
7843          (gtk_tree_view_bin_expose): ditto
7844
7845 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
7846
7847         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
7848         on gobjects.
7849
7850         * tests/testtreefocus.c (main): New test file.
7851
7852         * tests/testtreeview.c: update to latest glib changes.
7853
7854         * tests/testtreecolumns.c: update to latest glib changes.
7855
7856 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
7857
7858         * gtk/testgtk.c: re-enabled event watcher emission hooks.
7859
7860 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
7861
7862         * *.c: added accumulator data argument to g_signal_newc()
7863         functions.
7864
7865         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
7866         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
7867         * gtk/treestoretest.c (make_window):
7868         s/g_signal_connect/g_signal_connectc/.
7869
7870         * gtk/gtktextbuffer.c: completed signal arg fixups,
7871         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
7872
7873 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
7874
7875         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
7876         G_CONST_RETURN.
7877
7878         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
7879         ::hierarchy-changed signal when a widget changes
7880         from anchored to unanchored or vice versa.
7881         (anchored means 
7882          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
7883         Use a private flag to keep track of this efficiently.
7884
7885 2001-03-07  Havoc Pennington  <hp@redhat.com>
7886
7887         * gtk/testgtk.c (create_spins): uglify so that size request gets
7888         tested.
7889
7890         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
7891         request on values for upper/lower, completes #6152
7892
7893 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
7894
7895         * Makefile.am: Remove gtk-config-2.0 again.
7896         (Grrrr, pkg-config. And stops make loops.)
7897
7898 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
7899
7900         * gtk/gtksignal.[hc]: removed old emission hook API.
7901         
7902         * docs/Changes-2.0.txt: fixed sections.
7903         
7904         * gtk/gtktextbuffer.c: signal arg fixups.
7905
7906 2001-03-07  Havoc Pennington  <hp@redhat.com>
7907
7908         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
7909
7910         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
7911         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
7912         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
7913         validation and the redraw which is higher priority than the
7914         validation.
7915
7916 2001-03-07  Havoc Pennington  <hp@redhat.com>
7917
7918         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
7919         (gtk_entry_set_property): remove trailer
7920
7921         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
7922         (gtk_entry_get_width_chars): new functions, to set size request to 
7923         a given number of characters
7924
7925         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
7926
7927         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
7928         (gtk_dialog_get_has_separator): new function
7929         (run_delete_handler): fix to not emit "response" signal
7930         because we already did in the delete event handler installed
7931         at dialog creation time.
7932         
7933         * gtk/gtkdialog.h: add a has_separator property,
7934         add GTK_DIALOG_NO_SEPARATOR flag
7935
7936 2001-03-07  Havoc Pennington  <hp@redhat.com>
7937
7938         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
7939         off decorations for a window.
7940
7941         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
7942         changes
7943
7944         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
7945         to get location of PangoLayout inside the label, closes #51198
7946
7947         * gtk/testgtk.c (create_bbox): fix up button box usage
7948
7949         * gtk/testcalendar.c (create_calendar): fix up button box usage
7950
7951         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
7952
7953         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
7954
7955         * gtk/gtkhbbox.h: deprecations
7956
7957         * gtk/gtkvbbox.h: deprecations
7958
7959         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
7960         emulate deprecated gtk_button_box_get_spacing
7961
7962         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
7963         the "set global default" functions
7964         (struct _GtkButtonBox): remove "spacing" field, use the one from 
7965         GtkBox base class
7966
7967         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
7968
7969         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
7970         render the icon, return the missing image icon.
7971
7972         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
7973         image icon if the load fails.   
7974
7975         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
7976         when no image is found; should be the Netscape "missing image"
7977         icon eventually but for now is a random image
7978
7979         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
7980         role for the session manager
7981
7982         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
7983
7984         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
7985         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
7986
7987         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
7988
7989 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
7990
7991         * gtk/*.c: marshaller fixes.
7992         
7993         * gtk/gtkmarshal.list: extreme cleanup.
7994
7995         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
7996         param spec for now.
7997
7998         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
7999         where appliable.
8000
8001         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
8002         special cased autogenerated boxed types from gtktypebuiltins_ids.c
8003         which are not reference counted:
8004         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
8005         PangoFontDescription, GtkTreeIter and GtkTreePath.
8006
8007 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
8008
8009         * gtk/gtktreeselection.h: 
8010         * gtk/gtktreemodel.c:
8011         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
8012         file should be included directly, and gobject/gmarshal.h
8013         as well as gtk/gtkmarshal.h even can't be included directly.
8014
8015         * Makefile.am: grr, install gtk-config-2.0.
8016
8017         * gtk/testgtk.c:
8018         * gtk/simple.c:
8019         * gtk/gtkmenu.c:
8020         * gtk/gtkitemfactory.c: use g_object_connect() instead of
8021         passing "*signal*::*" args to gtk_widget_set().
8022         
8023         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
8024         
8025         * gtk/*.c: removed trailer arg from property setters and getters.
8026         macro fixups.
8027
8028 2001-03-07  Alexander Larsson  <alexl@redhat.com>
8029
8030         * gtk/gtklabel.c (set_markup): Removed warning
8031
8032 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
8033
8034         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
8035         field to allow you to hide cell renderers.
8036
8037         * gtk/gtkcellrenderer.c: Add support for invisible cells.
8038
8039         * gtk/gtktreeview.c: Add support for invisible cells.
8040
8041 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
8042
8043         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
8044         Add "clicked" signal back to columns.
8045
8046         * ChangeLog: remove conflict markers.
8047
8048 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
8049
8050         * gtk/gtkbutton.c: Add animation of activation by, on 
8051         activate, pressing the button, and adding a timeout that 
8052         releases the button after 250ms or on key release and
8053         emits ::clicked. (#51501)
8054
8055         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
8056         action area, we connect to ::clicked instead of ::activate
8057         so the dialog stays up through the animation.
8058
8059 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
8060
8061         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
8062         check the ignore_enter flag for the menu shell that
8063         the item is actually a child of, not for attached
8064         submenus. (#51536)
8065
8066 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8067
8068         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8069         special key-press grab handling for widgets within
8070         GtkWindows. Otherwise, fall through to normal case.
8071
8072         This prevents key events being sent twice to GtkInvisible
8073         widgets, which can cause all sorts of mischief.
8074
8075 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8076
8077         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8078         widget is in effect, give the grab widget a first
8079         crack at KEY_PRESS/RELEASE events. (#424)
8080
8081 2001-03-06  James Henstridge  <james@daa.com.au>
8082
8083         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
8084         offset for the window_state_event to point at window_state_event
8085         rather than no_expose_event.
8086
8087 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
8088
8089         * gtk/gtkimmodule.h: fix busted /* comment */
8090
8091 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
8092
8093         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
8094         object properties.
8095
8096 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
8097
8098         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
8099         add object properties.
8100
8101         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
8102         to add object properties.
8103
8104         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
8105         object properties.
8106
8107         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
8108         add object properties.
8109
8110         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
8111         object properties.
8112
8113 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
8114
8115         * gtk/gtktreemodel.c: renamed "child_toggled" to
8116         "has_child_toggled".
8117
8118         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
8119         handle new signal name.
8120
8121         * gtk/gtktreestore.c: Updated to handle new signal name.
8122         * gtk/gtklisttore.c: Updated to handle new signal name.
8123         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
8124
8125 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8126
8127         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
8128         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
8129
8130 2001-03-05  Michael Natterer  <mitch@gimp.org>
8131
8132         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
8133         pixbuf-engine coincidentially also failed to make one of it's
8134         parent_class pointers static, causing overwriting of GtkLabel's
8135         parent_class pointer in pixbuf_style_class_init().
8136         (Will commit the fix to the pixbuf-engine too).
8137
8138 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8139
8140         * gdk/gdkwindow.h:
8141         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
8142         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
8143         gdk_window_set_icon_list for net wmspec functionality.
8144
8145         * gdk/x11/gdkwindow-x11.c:
8146         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
8147         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
8148         gdk_window_set_icon_list.
8149         Added gdk_wmspec_change_state helper function and used it in the code.
8150         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
8151
8152         * gtk/gtkdialog.c (gtk_dialog_init):
8153         Set GDK_WINDOW_TYPE_HINT_DIALOG.
8154
8155         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
8156         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
8157
8158         * gtk/gtkwindow.c:
8159         new function gtk_window_set_type_hint.
8160         On realize, set type hint and modal hint.
8161
8162         * gtk/gtkwindow.h:
8163         Added type_hint field and gtk_window_set_type_hint.
8164
8165 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8166
8167         * gtk/gtklabel.[ch]:
8168         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
8169         New function gtk_label_get_accel_keyval () to get the underline accelerator
8170         of the label. Setting the label pattern overrides other attributes.
8171
8172 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
8173
8174         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
8175         Added missing initializers to gtk_rc_style_init().
8176
8177 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
8178
8179         * gtk/gtktextview.c: fixed bug #51097 about setting 
8180         gtk_text_view_set_border_window_size() if the widget is 
8181         already realized.
8182
8183 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
8184
8185         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
8186
8187         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
8188         comment. Won't do to have duplicated doc comments between
8189         the platform subdirs.
8190
8191 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
8192
8193         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
8194           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
8195
8196         Detectable auto-repeat - make a repeating key generate
8197         press/press/press/release instead of press/release pairs.
8198
8199         If we have Xkb and XkbSetDectableAutoRepeat supports
8200         that, we do it that way. Otherwise, when we get
8201         a release event, we check ahead with XPending to see
8202         if the next key is a KeyPress with the same keycode
8203         and timestamp. (Not 100% reliable, but pretty close.)
8204           
8205 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8206         
8207         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8208         special key-press grab handling for widgets within
8209         GtkWindows. Otherwise, fall through to normal case.
8210  
8211         This prevents key events being sent twice to GtkInvisible
8212         widgets, which can cause all sorts of mischief.
8213  
8214 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8215  
8216         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8217         widget is in effect, give the grab widget a first
8218         crack at KEY_PRESS/RELEASE events. (#424)
8219  
8220 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
8221
8222         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
8223         to extend the selection. (Roughly based on patch
8224         from Jay Cox, #50939)
8225
8226         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
8227         to properly handle previous GDK_BUTTON_PRESS. 
8228         (Patch from Jay Cox, #50938)
8229
8230         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
8231         '\0' back along with the deleted text. (#51148)
8232
8233 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
8234
8235         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
8236         the group when extracting it from the X keyboard event.
8237
8238         * modules/input/Makefile.am modules/input/imipa.c: 
8239         Simple module for entering IPA. (Do we need a 
8240         gtk-stupid-input-tricks CVS module?)
8241
8242 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
8243
8244         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
8245         const.
8246
8247         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
8248
8249         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
8250         is no focus widget for the dialog currently, grab the focus as well
8251         as the default.
8252
8253         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
8254         the action area's children to iterate through, not the
8255         dialog's children.
8256
8257 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
8258
8259         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
8260         Add plug-socket tests. (Won't work worth a darn until I commit
8261         the rest of the plug-socket changes, but no reason these
8262         can't go into CVS now.)
8263
8264 2001-03-02  Havoc Pennington  <hp@redhat.com>
8265
8266         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
8267         _gdk_region_get_xrectangles()
8268
8269         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
8270
8271         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
8272
8273         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
8274         function, contributed by Ron Steinke    
8275
8276         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
8277         gdk_net_wm_supports
8278
8279         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
8280         New function, contributed by Ron Steinke
8281
8282         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
8283         used to line up the text in the entry when using the entry for
8284         editable sheet cell hacks
8285
8286         * gtk/testgtk.c (create_entry): test the activate_default setting
8287         on GtkEntry
8288
8289         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
8290         cause the entry to activate the default button for a dialog when 
8291         activated
8292         (gtk_entry_get_activates_default): new function
8293
8294 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
8295
8296         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
8297         Hwang to move call to sync_selection() up a few lines
8298         to before the row list is modified, to fix crash when
8299         removing rows in the undo_selection list.
8300
8301         (Test case provided by Daniel Elstner:
8302
8303         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
8304
8305 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
8306
8307         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
8308         of tree->root_tree in parent_set rather than _map(), 
8309         fixing #50892 in a bit better manner.
8310
8311 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
8312
8313         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
8314
8315 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
8316
8317         * gtk/gtkstyle.c : Remove duplicate fwd decl for
8318         gtk_default_draw_shadow.
8319
8320 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
8321
8322         * gdk/gdkimage.c (gdk_image_new): Remove excess 
8323         warning, make warnings more verbose, treat a error
8324         in shmat as permanent, and don't try again.
8325         (#51163, Ed Randall.)
8326
8327 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
8328
8329         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
8330         delay for the first click before starting to scroll.
8331         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
8332
8333         * gtk/gtktext.c: GtkText should have I-beam cursor. 
8334         (based on gtk-enf-990513-1.patch, Eric Fisher.)
8335
8336 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
8337
8338         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
8339         cleanup to remove some references to unused
8340         ->xoffset, ->yoffset.
8341
8342 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
8343
8344         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
8345         mask. (#51039, fix from Martin Maierhofer)
8346
8347 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
8348
8349         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
8350         for unshifted + and shifted = for non-us keyboards.
8351         Make <Control>+ and <Control>- work as well as 
8352         <Control>KP_Plus, <Control>KP_Minus for recursive
8353         open/close.  (#2682, René Seindal)
8354
8355 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
8356
8357         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
8358         the active menu item before deactivating the menu,
8359         so gtk_menu_popdown doesn't change the history. (#50964)
8360         
8361 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
8362
8363         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
8364         draw lines with text_gc rather than black_gc.
8365         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
8366
8367 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
8368
8369         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
8370         Move handling of buttons fully in gtktreeviewcolumn.  This code is
8371         less interrelated then it was, but it still requires the
8372         GtkTreeView to map it.
8373
8374         * test/testtreecolumn.c: Now I can add a column to one view,
8375         remove it, add it to the another view, remove it, then re-add it
8376         to the first.  Nifty.
8377
8378 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
8379
8380         * docs/tutorial/gtk-tut.sgml: Minor corrections
8381
8382 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
8383
8384         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
8385         GtkRowReference.
8386
8387 2001-02-28  Havoc Pennington  <hp@redhat.com>
8388
8389         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
8390         draw_default
8391         (gtk_widget_draw_focus): remove this function; we could instead
8392         make it just gtk_widget_draw(), but in most cases I think the
8393         result would be broken user code, so think it's better to have
8394         that code not compile and get fixed
8395         (gtk_widget_draw_default): ditto
8396
8397         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
8398         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
8399         
8400         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
8401         widgets lose/get the default, instead of calling draw_default
8402         
8403         * docs/Changes-2.0.txt: note about all this
8404
8405         Then fixed every widget in GTK, I won't list all the filenames.
8406
8407 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
8408
8409         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
8410         _gtk_tree_row_reference_deleted.
8411         (inserted_callback): Proxy out to
8412         _gtk_tree_row_reference_inserted.
8413         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
8414         get around signal emission ordering problem.
8415
8416         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
8417         fix to work with SINGLE 
8418         (_gtk_tree_selection_internal_select_node): Major sanitization on
8419         selections.  SINGLE now seems to work.
8420
8421         * tests/Makefile.am: add testtreecolumn.c:
8422
8423         * tests/testtreecolumn.c: New test.  Mostly points out selection
8424         bugs currently, but will test columns later.
8425
8426         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
8427         selection bug.  I hate touching this code -- it's scary.
8428
8429 2001-02-26  Havoc Pennington  <hp@redhat.com>
8430
8431         * gtk/testgtk.c: test the window state stuff
8432
8433         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
8434         window come to the user's attention as if it were just created
8435         (gtk_window_iconify): new function
8436         (gtk_window_deiconify): new function
8437         (gtk_window_stick): new function
8438         (gtk_window_unstick): new function
8439         (gtk_window_maximize): new function
8440         (gtk_window_unmaximize): new function
8441
8442         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
8443
8444         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
8445
8446         * gdk/x11/gdkevents-x11.c: create window state events when
8447         appropriate
8448         (gdk_wmspec_supported): new function
8449
8450         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
8451         iconification before showing the window
8452         (gdk_window_deiconify): new function
8453         (gdk_window_stick): new function
8454         (gdk_window_unstick): new function
8455         (gdk_window_maximize): new function
8456         (gdk_window_unmaximize): new function
8457
8458         * gdk/gdkwindow.c: store the window state in the window; 
8459         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
8460         window->mapped.
8461         (gdk_window_get_state): return the current window state
8462
8463         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
8464         (gdk_event_get_state): handle GDK_WINDOW_STATE
8465         (gdk_synthesize_window_state): function to create the window state
8466         events
8467
8468         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
8469         event, for changes to "window state" such as maximized, sticky, 
8470         etc.
8471         
8472         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
8473         focuses a window
8474
8475         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
8476         finds out if we support a given WM spec hint
8477
8478 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
8479
8480         * docs/faq/gtk-faq.sgml: New question re memory leaks.
8481
8482 2001-02-25  Hans Breuer  <hans@breuer.org>
8483
8484         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
8485         cause we want to loose those prototypes only in the latter case
8486
8487         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
8488         GdkPixmapImplWin32 because it itsn't derived from it. Use the
8489         impl member variable instead
8490
8491         * gtk/gtk.def : updated
8492
8493         * gtk/gtklist.c : 
8494         * gtk/gtkmenus.c : include <string.h> for memset ()
8495
8496         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
8497         for everthing built here, but for gtk-x.x.dll only. This solves
8498         problem of indifferent gtk type definitions
8499
8500 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
8501
8502         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
8503
8504 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
8505
8506         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
8507         column that is exposed.
8508
8509         (_gtk_tree_view_update_size): Changed name from set_size, and
8510         changed function to do more work, and not force people calling it
8511         to figure out the size.  Simplifies a lot of code elsewhere.
8512
8513 2001-02-23  Alexander Larsson  <alexl@redhat.com>
8514
8515         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
8516         return solid masks for xpms that have no transparent color.
8517         This makes the ..._create_from_xpm... API backwards
8518         compatible.
8519
8520 2001-02-23  Tor Lillqvist  <tml@iki.fi>
8521
8522         * README.win32: Update. Mention the gtk-1-3-win32-production
8523         branch.
8524
8525         * gdk/win32/bdfcursor.c: New file. A program that generates
8526         xcursors.h. Thanks to Stefan Ondrejicka.
8527
8528         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
8529         compact format.
8530
8531         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
8532
8533         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
8534         function, uses xcursors.h.
8535         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
8536         cursor from inline data instead of using LoadCursor() to generate
8537         it from a resource.
8538
8539         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
8540         event, must check the Windows message for mouse button state, as
8541         the GDK event state might not have been built if it is
8542         undelivered. Remove one goto.
8543
8544         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
8545         SetCursor() if the current cursor as returned by GetCursor() is
8546         the window's previous cursor. The ChildWindowFromPoint() test
8547         apparently didn't work correctly.
8548
8549         * gdk/win32/rc/*.cur: Remove.
8550
8551         * gdk/win32/rc/gdk.rc.in: Remove cursors.
8552
8553         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
8554
8555         * gtk/makefile.{mingw,msc}.in: Updates.
8556
8557 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
8558
8559         * gtk/gtktreemodel.h: add functions for signal emission.
8560
8561         * gtk/gtktreestore.c: move to use above functions instead of
8562         g_signal_emit.
8563
8564         * gtk/gtkliststore.c: ditto
8565
8566 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
8567
8568         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
8569         GObject instead of GtkObject.
8570
8571         * gtk/gtkliststore.c: ditto.
8572
8573         * gtk/gtktreemodelsort.c: ditto.
8574
8575         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
8576         GtkTreeModelIface, instead of in each model.
8577
8578 2001-02-21  Havoc Pennington  <hp@redhat.com>
8579
8580         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
8581         unbreak this function
8582
8583         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
8584         properties
8585
8586         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
8587         properties
8588
8589         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
8590         properties
8591
8592         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
8593         mean unset the max length
8594
8595 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
8596
8597         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
8598         Changed name to be set_cell_data_func to make it clear what
8599         the functino does.  Close bug #51069.
8600
8601 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
8602
8603         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
8604         have memory actually freed.  Keeps box running longer.
8605
8606 2001-02-21  Alexander Larsson  <alexl@redhat.com>
8607         
8608         * gtk/gtkseparatormenuitem.[ch]:
8609         Added new menu separator item. The drawing and size handling
8610         is still done in GtkMenuItem, but the API is a bit more sane.
8611         
8612         * gtk/Makefile.am:
8613         Add gtkseparatormenuitem.[ch].
8614
8615         * gtk/gtk.h:
8616         Add gtkseparatormenuitem.h.
8617         
8618         * gtk/gtkentry.c:
8619         * gtk/gtkmenufactory.c:
8620         * gtk/gtktextview.c:
8621         Use the new API for menu separators.
8622         
8623         * demos/gtk-demo/menus.c (create_menu):
8624         Add some GtkSeparatorMenuItem demo code.
8625
8626 2001-02-20  Havoc Pennington  <hp@redhat.com>
8627
8628         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
8629         Lee Mallabone
8630
8631         * gtk/gtkarrow.c: Convert to new property API, patch from 
8632         Lee Mallabone
8633
8634 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
8635
8636         * tests/testtreeview.c (toggled_callback): fix to reflect change
8637         in GtkTreeModelStore.
8638
8639 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
8640
8641         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
8642         function to create an icon set from a pixbuf.
8643
8644 2001-02-20  Alexander Larsson  <alexl@redhat.com>
8645
8646         * gtk/gtkcellrenderertext.[ch]:
8647         Add a "markup" property.
8648
8649         * gtk/treestoretest.c:
8650         Use the markup property, remove some leftover stuff from
8651         GtkTreeModelMapping.
8652
8653 2001-02-20  Alexander Larsson  <alexl@redhat.com>
8654
8655         * gtk/gtklabel.c (gtk_label_set_selectable):
8656         Queue a redraw if the selectable setting was changed.
8657
8658 2001-02-20  Alexander Larsson  <alexl@redhat.com>
8659
8660         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
8661         Actually copy the whole gc, not just the public parts.
8662         
8663         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
8664         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
8665         labels.
8666
8667 2001-02-19  Havoc Pennington  <hp@pobox.com>
8668
8669         * gdk/gdkwindow.c: docs
8670
8671         * gdk/gdkrgb.c: docs
8672
8673         * gdk/gdkregion-generic.c: docs
8674
8675         * gdk/gdkgc.c (gdk_gc_set_values): docs
8676
8677         * gdk/gdkdraw.c: docs
8678
8679         * gdk/gdkdrawable.h: deprecate drawable get/set data
8680
8681 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
8682
8683         * demos/gtk-demo/dialog.c: Add simple new demo.
8684
8685 2001-02-19  Havoc Pennington  <hp@redhat.com>
8686
8687         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
8688         insert_child_anchor signal, bug #50245
8689
8690         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
8691         from create_child_anchor, so the anchor is passed in
8692
8693         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
8694         (_gtk_widget_segment_new): have the child anchor object passed in, 
8695         instead of creating it.
8696
8697         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
8698         to gtk_text_buffer_get_modified
8699
8700 2001-02-19  Havoc Pennington  <hp@redhat.com>
8701
8702         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
8703         changed GLib without fixing GTK
8704
8705         * gtk/gtkrange.h: Rename all the stupid implementation detail 
8706         functions to have an underscore in front. Most of them should 
8707         probably just go away, but for starters don't export them.
8708         Bug #50482
8709
8710 2001-02-19  Havoc Pennington  <hp@redhat.com>
8711
8712         * gdk/gdkcolor.h: test was backward, so deprecated functions were
8713         excluded by default
8714
8715         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
8716         clean up the old code a bit
8717
8718         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
8719         inconsistent state
8720
8721         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
8722         draw inconsistent state
8723
8724         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
8725         (create_menu): add inconsistent test
8726
8727         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
8728         new function
8729         (gtk_check_menu_item_get_inconsistent): new function
8730         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
8731         state (using etched in for now)
8732
8733         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
8734         draw inconsistent state
8735
8736         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
8737         function, used when the user has selected a range of stuff in
8738         different states
8739         (gtk_toggle_button_get_inconsistent): accessor for that
8740         (gtk_toggle_button_paint): draw inconsistent state (etched in?
8741         don't know what else to do)
8742
8743 2001-02-19  Hans Breuer <hans@breuer.org>
8744
8745         * gtk/gtk.def : updated exported symbols
8746
8747         * gtk/makefile.msc.in : updated
8748
8749         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
8750         a colormap, when invoked from testgtk::entry. I'm not sure where
8751         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
8752         avoids immediate crashing ...
8753
8754         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
8755         any objections ?
8756
8757         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
8758         0 parameter. At least msvc doesn't like macros with var args. 
8759         I simply removed the extra 0, was it a feature or a typo ?
8760
8761         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
8762         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
8763         because the value assignment to the internal struct wasn't working.
8764         I'm not absolutely sure. The problem could have been resolved by
8765         changing the "func" declartion in the struct, but was the pointer
8766         to the function pointer intended ?
8767
8768         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
8769
8770         * gdk/gdk.def : updated exported symbols
8771
8772         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
8773         only use SetDIBitsToDevice if there is a palette at the drawable
8774         and the image is GDK_VISUAL_PSEUDO_COLOR
8775
8776         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
8777
8778         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
8779
8780         * gdk/*/makefile.msc : updated
8781
8782 2001-02-19  Havoc Pennington  <hp@redhat.com>
8783
8784         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
8785         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
8786
8787         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
8788         (gdk_key_repeat_restore): nuke
8789
8790         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
8791         (gdk_init_check): no atexit func
8792
8793         * gdk/gdkrgb.h: mark some stuff deprecated
8794
8795         * gdk/gdkcolor.h: mark some stuff deprecated
8796         
8797         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
8798
8799         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
8800
8801 2001-02-16  Havoc Pennington  <hp@redhat.com>
8802
8803         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
8804         scroll steps.
8805
8806         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
8807         steps, and add Ctrl-arrow shortcuts for paging visually as with
8808         HScale, since Page Up and Page Down move logically.
8809
8810         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
8811         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
8812         
8813         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
8814         steps
8815         (gtk_range_scroll): handle the visual steps
8816
8817         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
8818         scroll steps
8819
8820         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
8821         steps, not the logical ones.
8822
8823         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
8824         (scroll_vertical): handle up/down steps
8825
8826 2001-02-19 Alexander Larsson  <alexl@redhat.com>
8827
8828         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
8829         Copy data and free data with free().
8830
8831         * gdk-pixbuf/gdk-pixbuf.c:
8832         * gdk-pixbuf/io-jpeg.c:
8833         * gdk-pixbuf/io-png.c:
8834         Use g_try_malloc/g_free instead malloc/free.
8835         
8836         * gdk-pixbuf/test-gdk-pixbuf.c:
8837         Must... initialize... gobject...
8838         
8839         * gdk-pixbuf/pixops/timescale.c:
8840         * gtk/gtkcalendar.c:
8841         Use g_malloc instead of malloc.
8842         
8843 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
8844
8845         * gtk/testgtkrc:
8846         Comment out property assignments, these don't work yet.
8847
8848 2001-02-17  Havoc Pennington  <hp@pobox.com>
8849
8850         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
8851         bit.
8852
8853 2001-02-17  Havoc Pennington  <hp@pobox.com>
8854
8855         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
8856         shadowed variables that had broken size request in some cases,
8857         leading to bogus tooltips (#50996)
8858
8859 2001-02-06  Jon K Hellan  <hellan@acm.org>
8860
8861         Implement fast browsing of tooltips, bug #50619
8862         
8863         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
8864         and last_popdown
8865         
8866         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
8867         use_sticky_delay and last_popdown.
8868         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
8869         time of popdown.
8870         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
8871         is NULL.
8872         (gtk_tooltips_recently_shown): New static function.  Return true
8873         if < sticky_delay has elapsed since last popdown.
8874         (gtk_tooltips_event_handler): Display window after sticky_delay
8875         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
8876         since last popdown.
8877         
8878 2001-02-17  Havoc Pennington  <hp@pobox.com>
8879
8880         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
8881         instead of (). #6394
8882
8883         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
8884         G_CONST_RETURN, make it return by reference, #50473
8885         
8886 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
8887
8888         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
8889         generated ENTER_NOTIFY event with 0, otherwise not explicitely
8890         setup fields contain garbage (e.g. subwindow, breaking
8891         gdk_drawable_ref() upon event copy).
8892         (gtk_menu_stop_navigating_submenu_cb): same here.
8893
8894         * gtk/gtklist.c (gtk_list_vertical_timeout): 
8895         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
8896         * gtk/gtkclist.c (vertical_timeout): 
8897         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
8898         default-zero-intialization for unions to memset(,0,), as unions are
8899         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
8900         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
8901
8902         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
8903         g_closure_sink() warning.
8904
8905         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
8906         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
8907         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
8908         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
8909         
8910 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
8911
8912         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
8913         gtk_*_store_get, and moved to GtkTreeModel.
8914
8915         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
8916
8917         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
8918
8919         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
8920
8921         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
8922         set the func.
8923
8924         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
8925         freeze/thaw notify between setting all the properties for a cell.
8926
8927         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
8928
8929 2001-02-15  Havoc Pennington  <hp@redhat.com>
8930
8931         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
8932         the X coordinates so they're with respect to the line, rather than 
8933         with respect to the layout.
8934
8935         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
8936         Mallabone
8937
8938         * gtk/testgtk.c (create_range_controls): add vscale tests, 
8939         and inverted test
8940
8941         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
8942         #50806
8943
8944         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
8945
8946         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
8947         gtk_text_iter_is_end
8948
8949         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
8950         rename gtk_text_buffer_get_end_iter
8951
8952         * gtk/testgtk.c (create_labels): Add test for selectable
8953
8954         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
8955         the selection stuff. This code is kind of broken since it doesn't 
8956         use the theme engine.
8957
8958         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
8959         fix infinite loop and y offset problem
8960         (gdk_draw_layout_line_with_colors): fix foreground color handling
8961
8962         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
8963         that makes the label selectable.
8964         
8965         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
8966         layout when the style is set, since fonts etc. could have changed.      
8967
8968 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
8969
8970         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
8971
8972         * gtk/gtktreemodelsimple.[ch]: removed.
8973
8974 2001-02-16  Alexander Larsson  <alexl@redhat.com>
8975
8976         * gtk/gtktreemodelmapping.[ch]:
8977         New files. Implement GtkTreeModelMapping.
8978         
8979         * gtk/Makefile.am:
8980         Add gtktreemodelmapping.[ch].
8981         
8982         * gtk/gtk.h:
8983         Add gtktreemodelmapping.h
8984
8985         * gtk/treestoretest.c:
8986         Test the GtkTreeModelMapping
8987
8988 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
8989
8990         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
8991         have a demo, we might as well pass in real values.  Thanks to
8992         clahey for pointing this out.
8993
8994 2001-02-14  Havoc Pennington  <hp@pobox.com>
8995
8996         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
8997         "static" to a private function
8998         (gtk_image_menu_item_class_init): remove destroy handler,
8999         add "image" object property
9000
9001 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
9002
9003         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
9004         Add a shortcut if the window and the current clip_region doesn't
9005         overlap. This is needed when there are a lot of windows in a
9006         window. The layout test in testgtk is a good test.
9007
9008         * gdk/linux-fb/gdkwindow-fb.c:
9009         Whitespace fix.
9010
9011 2001-02-13  Sven Neumann  <sven@convergence.de>
9012
9013         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
9014
9015 2001-02-13  Alexander Larsson  <alexl@redhat.com>
9016
9017         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
9018         Don't reference last_cursor if it is null. Fixes crash when rotating
9019         the screen before having moved the mouse.
9020
9021         * gdk/linux-fb/gdkcc-fb.c: Zapp!
9022
9023         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
9024
9025         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
9026         when using 90 or 270 degrees rotation.
9027
9028 2001-02-12  Havoc Pennington  <hp@pobox.com>
9029
9030         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
9031         it always set the foreground, even if we were only using
9032         a stipple.
9033         (gdk_draw_layout_line_with_colors): new function, allow
9034         override colors
9035         (gdk_draw_layout_with_colors): new function, allow override
9036         colors
9037         (gdk_pango_layout_line_get_clip_region): function to get the clip
9038         region for a logical text range
9039         (gdk_pango_layout_get_clip_region): get the clip region for a
9040         logical text range
9041
9042         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
9043         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
9044         the right number of arguments.
9045
9046         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
9047         enhance the function to check that node data corresponds to a 
9048         view still belonging to the tree.
9049
9050         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
9051         GtkTreePath
9052         (gtk_tree_view_inserted): ditto
9053         (gtk_tree_view_child_toggled): ditto
9054
9055         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
9056         simplify this code.
9057
9058         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
9059         a PangoAttrList
9060
9061         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
9062
9063         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
9064
9065         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
9066         size in the size request 
9067         (gtk_menu_bar_size_allocate): consider toggle size here
9068
9069         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
9070         that displays a widget in the toggle slot
9071
9072         * gtk/testgtk.c: test GtkImageMenuItem
9073
9074         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
9075         
9076         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
9077         request and allocation
9078
9079         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
9080
9081         * gtk/gtkcheckmenuitem.c
9082         (gtk_check_menu_item_toggle_size_request): ditto
9083         
9084 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
9085
9086         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
9087         reference.
9088
9089         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
9090         and refuse to initialize GTK+ if they fail.
9091
9092 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
9093
9094         * configure.in: Add check for gtk-doc version.
9095
9096 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
9097
9098         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
9099         where the xpad/ypad was only being used on one side!
9100
9101 2001-02-11  Tor Lillqvist  <tml@iki.fi>
9102
9103         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
9104         function, copied from X11 version.
9105
9106         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
9107         DestroyCursor failures. The reason for the problem (despite the
9108         inconsistent messages from GetLastError()) was that
9109         DestroyCursor() cannot be called while a cursor is set in a
9110         window. Set the new cursor first and then destroy the old one.
9111         Thanks to jpe@archaeopteryx.com.
9112
9113         * gdk/win32/gdkcc-win32.c: Remove.
9114
9115         * gdk/win32/Makefile.am: Remove from here, too.
9116         
9117         * gdk/gdk.def
9118         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
9119
9120         * gtk/gtk.def
9121         * gtk/makefile.mingw.in: Updates.
9122
9123 2001-02-08  Havoc Pennington  <hp@redhat.com>
9124
9125         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
9126         add a widget to a bin that already has a child.
9127
9128         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
9129
9130         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
9131         
9132         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
9133
9134         * gdk/gdk.h: remove gdkcc.h
9135
9136         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
9137
9138         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
9139         GdkPixbuf, since the previous implementation was GdkColorContext
9140         dependent.
9141
9142         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
9143         
9144 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
9145
9146         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
9147         a sane value!
9148
9149 2001-02-08  Havoc Pennington  <hp@redhat.com>
9150
9151         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
9152         lighten them.
9153
9154 2001-02-08  Havoc Pennington  <hp@redhat.com>
9155
9156         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
9157         validation idle
9158
9159         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
9160         cell renderer
9161
9162         * demos/pixbuf-demo.c (timeout): remove deprecated
9163         gtk_widget_draw
9164
9165         * demos/testpixbuf-save.c (main): remove deprecated
9166         gtk_drawing_area_size
9167
9168         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
9169         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
9170         at the start of the allocation.
9171         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
9172         unsetup or NULL model.
9173
9174         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
9175         even/odd/sorted cells in the tree view.
9176
9177         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
9178         bugfixes
9179
9180         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
9181         backgrounds with draw_flat_box using different detail for even/odd
9182         rows.
9183
9184         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
9185         row, so we can draw the alternating colors thing
9186
9187         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
9188         property from a synonym property, notify for the synonym.
9189         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
9190         (gtk_text_tag_get_property): Always return the font, even if
9191         all its fields aren't set
9192
9193         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
9194         store the attr list; it leaves us with no way to change attributes
9195         in _render according to the render flags, and no way to implement
9196         get_property. Instead store all the specific text attributes. 
9197         Separate whether an attribute is enabled from its value. Sync all
9198         properties with GtkTextTag, make them all consistent, etc.
9199
9200         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
9201         renderers can highlight the sort row/column     
9202
9203         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
9204         accessor functions to get values; this has the side effect of
9205         showing up which accessor functions were missing. Added those.
9206
9207         * gtk/gtktreeviewcolumn.h: Replace set_justification with
9208         set_alignment, to be consistent with GtkLabel, GtkMisc
9209
9210         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
9211         arrow.
9212
9213         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
9214
9215         * gtk/gtktreesortable.h: updates in here
9216
9217 2001-02-07  Sven Neumann  <sven@convergence.de>
9218
9219         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
9220         pango dimensions after painting the background. We used to draw
9221         gigantic flat boxes here.
9222
9223 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
9224
9225         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
9226         error introduced with earlier commit) (pointed out by
9227         Ollie Lho)
9228
9229 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
9230
9231         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
9232         which are no longer necessary.
9233
9234 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
9235
9236         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
9237
9238 2001-02-04  Tor Lillqvist  <tml@iki.fi>
9239
9240         * gdk/gdk.def
9241         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
9242         Provide dummy implementations.
9243
9244 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
9245
9246         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
9247
9248         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
9249         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
9250         deprecated this function.
9251
9252         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
9253         argument.
9254
9255 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
9256
9257         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
9258
9259 2001-02-03  Havoc Pennington  <hp@pobox.com>
9260
9261         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
9262         Mikael Hermansson with patch from Mikael (if there was a toggle
9263         start one after the first character in the range, this function
9264         was broken). Bug #50380
9265
9266 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
9267
9268         * configure.in: Remove confusing comment about X11.
9269
9270 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
9271
9272         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
9273         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
9274         
9275 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
9276
9277         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
9278         it breaks things on BSD. If you want to compile GTK+ with
9279         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
9280         when configuring, since GTK+ simply can't be "pure ANSI" 
9281         in the header files it uses. (#8170, Greg Hudson)
9282
9283 2001-02-02  Havoc Pennington  <hp@redhat.com>
9284
9285         * gtk/gtkwindow.c: docs
9286
9287         * gtk/gtkwidget.c: docs
9288         (gtk_widget_set_colormap): add a reference to the colormap
9289         (gtk_widget_get_default_colormap): add a reference to the colormap
9290
9291         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
9292
9293         * gtk/gtktextiter.c: docs
9294
9295         * gtk/gtkmain.c (gtk_propagate_event): docs
9296
9297         * gtk/gtkpaned.c (gtk_paned_get_position): docs
9298         (gtk_paned_set_position): docs
9299
9300         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
9301         sort interface, no implementation yet.
9302
9303         * demos/testpixbuf.c (new_testrgb_window): replace
9304         gtk_drawing_area_size() with gtk_widget_set_usize()
9305
9306         * demos/testpixbuf-drawable.c (main): ditto
9307         
9308         * gtk/testgtk.c: remove use of GtkStatusbarMsg
9309
9310         * gtk/gtktextbuffer.c: docs
9311
9312         * gtk/gtkstock.c: docs
9313
9314         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
9315
9316         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
9317
9318         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
9319         
9320         * gtk/gtkimage.c: add some docs in here
9321         (gtk_image_size_request): change name of
9322         gtk_widget_render_stock_icon
9323         (gtk_image_get_icon_set): don't dup returned string
9324         (gtk_image_get_icon_set): don't dup returned string
9325
9326         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
9327         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
9328         and gtkiconfactory.h functions
9329
9330         * gtk/gtkiconfactory.c: add some docs in here
9331
9332         * gtk/gtkmain.c (gtk_get_default_language): document
9333         (gtk_get_current_event): document
9334         (gtk_get_current_event_state): document
9335         (gtk_get_event_widget): document
9336
9337         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
9338
9339         * gtk/gtkcontainer.c: Add some documentation
9340         (gtk_container_add): give a more explanatory warning on adding an
9341         already-parented widget, this is kind of a FAQ and also a common
9342         typo that's easier to debug with a nice warning 
9343
9344         * gtk/gtkcellrenderertoggle.c
9345         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
9346         adding this, it's useless
9347         (gtk_cell_renderer_toggle_set_active): remove
9348         (gtk_cell_renderer_toggle_get_radio): add
9349
9350         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
9351         the NULL cell renderer, that doesn't make any sense to me. 
9352
9353         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
9354         demo code should never use deprecated features.
9355
9356         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
9357         code should never use deprecated features.
9358
9359         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
9360         gtk_widget_queue_clear_area deprecated
9361
9362         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
9363         deprecated
9364
9365         * gtk/gtklabel.h: mark gtk_label_get() deprecated
9366
9367         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
9368         a GdkImage deprecated, replaced by new consistently-named
9369         functions       
9370
9371         * gtk/gtkmain.h: Mark gtk_exit() deprecated
9372
9373         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
9374
9375         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
9376         deprecated
9377
9378         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
9379         so it won't appear in docs and confuse people.
9380
9381         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
9382
9383         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
9384         macros deprecated. (can't mark the type itself deprecated, since
9385         GtkProgressBar is not deprecated and we need the type decl to use
9386         GtkProgressBar)
9387
9388         * gtk/gtkpixmap.h: Mark deprecated
9389
9390         * gtk/gtkoldeditable.h: Mark deprecated
9391
9392         * gtk/gtklist.h: Mark deprecated
9393
9394         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
9395         for anything anymore.
9396
9397         * gtk/gtkctree.h: Mark deprecated
9398
9399         * gtk/gtkclist.h: Mark deprecated
9400
9401         * gtk/gtkpreview.h: Mark deprecated
9402
9403         * gtk/gtkpacker.h: Mark deprecated
9404
9405         * gtk/gtktipsquery.h: Mark deprecated
9406
9407         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
9408
9409         * gtk/gtkvruler.h: Add comment that it will move out of GTK
9410
9411         * gtk/gtkhruler.h: Add comment that it will move out of GTK
9412
9413         * gtk/gtkruler.h: Add comment that it will move out of GTK
9414
9415         * gtk/gtkgamma.h: Add comment that it will move out of GTK
9416
9417         * gtk/gtkcurve.h: Add comment that it will move out of GTK
9418
9419 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
9420
9421         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
9422         gdk_colormap_sync private since it was never exported
9423         in a header file.
9424
9425         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
9426         colormap->colors[] for StaticGray, StaticColor colormaps.
9427
9428         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
9429         was being used as if it was image->bits_per_pixel.
9430
9431         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
9432         for the image in the GdkImage structure since it isn't
9433         reconstructable, and we need it to handle packed types
9434
9435         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
9436         the assumption that on Win32 image->bits_per_pixel == image->depth,
9437         always.
9438
9439         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
9440
9441         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
9442         warning message if no converter can be found. 
9443
9444 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
9445
9446         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
9447         chars to isupper() / tolower(). (#567)
9448
9449         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
9450         to clear up 64-bit warnings. (#567)
9451
9452 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
9453
9454         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
9455         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
9456
9457         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
9458         since some people set $(libdir) separately. (#1290, David Kaelbling)
9459
9460 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
9461
9462         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
9463         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
9464         MAXPATHLEN, but the code here depends on a fixed value.)
9465         (#4524)
9466
9467 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
9468
9469         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
9470         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
9471
9472 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
9473
9474         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
9475         viewable there is no way that moving the node will cause the 
9476         focus row to become not viewable, so omit check on the visibility
9477         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
9478
9479 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
9480
9481         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
9482         selection before inserting new text.
9483
9484 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
9485
9486         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
9487         Make the sensitivity of the reparented child track that of
9488         the original parent menu item. (#34218, David Hodson)
9489
9490         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
9491         the case where the current item is destroyed properly.
9492
9493         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
9494         some edge cases with child-less menuitems.
9495         
9496 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
9497
9498         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
9499         key pop down window. (#12074, Jon K Hellan)
9500
9501 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
9502
9503         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
9504         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
9505         The solution here isn't perfect - you get an extraneous
9506         emission of "toggle", which could conceivably confuse an app,
9507         but better than the current situation. LXR search seems to
9508         indicate that no apps in GNOME CVS connect to "toggle".
9509
9510 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
9511
9512         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
9513         gtk_public_h_sources to directly here to avoid warning when
9514         building srcdir != builddir. (#9656)
9515
9516 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
9517
9518         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
9519         handlers in gtkrange.c return the proper values (TRUE == handled)
9520         (#10316).
9521
9522         This is just the tip of the iceberg, but gtkrange.c is the
9523         most common place where the propagation is problematical,
9524         and also a place where it is almost certainly safe to change
9525         this in the stable branch.
9526
9527         (You don't want right click popups on a range control or anything...)
9528
9529 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
9530
9531         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
9532         area on focus out, even if a background pixmap isn't set.
9533         (#13941)
9534         
9535 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
9536
9537         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
9538         to deal with setting the shape properly when scrolling arrows are
9539         turned on, but not visible because there is sufficient space.
9540         (#13432)
9541
9542 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
9543
9544         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
9545         items with submenus, destroy the item along with the submenu.
9546         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
9547         properly.
9548
9549         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
9550         later.
9551
9552 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
9553
9554         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
9555         the focus widget sometimes wasn't drawn with the default if there
9556         was no default widget.
9557
9558         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
9559         unreference pixmaps. 
9560
9561         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
9562         for some extra safety.
9563
9564 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
9565
9566         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
9567         the text of a cell to the old pointer value better, by
9568         copying the new text before freeing the old text. Some code
9569         cleanup. (#8079, Karl Nelson)
9570
9571 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
9572
9573         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
9574         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
9575
9576 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
9577
9578         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
9579         item from a menu, check to see if it matches 
9580         menu->old_active_menu_item, and if so, unref and clear
9581         old_active_menu_item (Patch from Pavel Cisler)
9582
9583         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
9584         menu_shell->active_menu_item, if it is the child being
9585         removed. (Patch based on that of Gene Ragan, #50337)
9586
9587 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
9588
9589         * gdk/linux-fb/gdkselection-fb.c: 
9590         * gdk/linux-fb/gdkcolor-fb.c: 
9591         * gdk/linux-fb/gdkdrawable-fb2.c: 
9592         * gdk/linux-fb/gdkfont-fb.c: 
9593         * gdk/linux-fb/gdkim-fb.c: 
9594         * gdk/linux-fb/gdkinput.c: 
9595         * gdk/linux-fb/gdkkeyboard-fb.c: 
9596         * gdk/linux-fb/gdkmain-fb.c: 
9597         * gdk/linux-fb/gdkrender-fb.c: 
9598         A bunch of whitespace cleanup.
9599         
9600 2001-01-30  Havoc Pennington  <hp@pobox.com>
9601
9602         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
9603         #ifdef GTK_ENABLE_BROKEN.
9604
9605         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
9606         GTK_ENABLE_BROKEN just before including the broken headers.
9607         
9608         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
9609         deprecated types registered.
9610
9611         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
9612         we have to test the broken stuff.
9613
9614         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
9615         
9616 2001-01-30  Havoc Pennington  <hp@redhat.com>
9617
9618         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
9619         here where prev pointer was set to the wrong thing
9620
9621         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
9622         (gtk_tree_path_is_descendant): new function
9623
9624         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
9625         cached length
9626         (gtk_list_store_get_iter): don't modify iter if we can't get the
9627         path.
9628
9629         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
9630         
9631         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
9632         GtkTreeDragDest
9633
9634         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
9635         was causing segfault
9636
9637         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
9638         pointer to NULL
9639
9640         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
9641
9642         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
9643         on returning FALSE
9644         (gtk_list_store_iter_children): ditto
9645         (gtk_list_store_iter_nth_child): ditto
9646         (gtk_list_store_iter_nth_child): ditto
9647         (gtk_list_store_iter_parent): ditto
9648
9649         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
9650         on iter->user_data != NULL instead of silently accepting it.
9651         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
9652         we are returning TRUE.
9653         (gtk_tree_store_iter_children): ditto
9654         (gtk_tree_store_iter_nth_child): ditto
9655         (gtk_tree_store_iter_parent): ditto
9656         (gtk_tree_store_insert): remove handling of parent->user_data ==
9657         NULL, replace with parent == NULL       
9658
9659         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
9660         and a comment explaining things
9661
9662         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
9663         interface support to GtkTreeStore.
9664
9665         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
9666         FALSE if no prev, fix
9667
9668         * gtk/gtktreeview.c (set_source_row): use a row reference
9669         (set_dest_row): use a row reference
9670
9671 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
9672
9673         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
9674         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
9675         (gtk_tree_selection_select_iter): The same as above.
9676
9677 2001-01-26  Havoc Pennington  <hp@redhat.com>
9678
9679         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
9680         which holds a handle to a specific row (particular set of values
9681         in the model, i.e. pointer-identity row).
9682
9683         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
9684         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
9685         Still need to use it for the src/dest row saved on the drag context.
9686
9687 2001-01-26  Havoc Pennington  <hp@redhat.com>
9688
9689         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
9690
9691         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
9692         not offset by TREE_VIEW_HEADER_HEIGHT
9693         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
9694         TREE_VIEW_HEADER_HEIGHT
9695
9696         * configure.in (included_loaders): for me, --with-included-loaders
9697         generates the error "the specified loader yes does not exist",
9698         i.e. the arg defaults to "yes", so change test for value ""
9699         to test for value "yes", and include all loaders in that case.
9700
9701         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
9702
9703         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
9704         handle TREE_VIEW_VERTICAL_SEPARATOR
9705         (gtk_tree_view_bin_expose): fix to consider the row offset as
9706         pointing halfway into vertical separator.       
9707         (gtk_tree_view_draw_node_focus_rect): ditto
9708
9709         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
9710         --gtk-debug=updates, which causes gdk_window_set_debug_updates
9711         (TRUE) to be called.
9712
9713         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
9714         debug mode where the invalid region is colored in on invalidate,
9715         so you can see the flicker and know whether your redraw code is 
9716         doing a good job.
9717
9718         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
9719         tree window coordinates (clip rect is in tree window coords)
9720
9721         * gtk/Makefile.am: add gtktreednd.[hc]
9722
9723         * gtk/gtkliststore.c: implement gtktreednd interfaces.
9724
9725         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
9726         drag-and-drop data operations on a model (so we can set up tree
9727         drag-and-drop automatically)
9728
9729         * gtk/testgtk.c: Add a window to change sensitivity in the
9730         GtkLabel test; add a way to change the entry frame in GtkEntry
9731         test
9732
9733         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
9734         (gtk_entry_get_has_frame): new functions to remove the frame
9735         around an entry
9736         (gtk_entry_size_request): shrink requisition if no frame
9737         (gtk_entry_draw_focus): don't draw frame if no frame
9738
9739         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
9740         checks inside a cell renderer
9741         (gtk_default_draw_option): ditto for options
9742
9743         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
9744         children from the alignment, not the button
9745         (gtk_tree_view_column_init): ref/sink the column, to emulate
9746         GObject refcounting.
9747
9748         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
9749         
9750         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
9751         Use theme functions to draw the toggles 
9752
9753         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
9754
9755         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
9756         GdkPangoAttrEmbossed to use in rendering insensitive text
9757
9758         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
9759
9760         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
9761         using new GDK features
9762         
9763 2001-01-24  Alexander Larsson  <alexl@redhat.com>
9764
9765         * gtk/gtkimage.c:
9766         Splitted gtk_image_clear into gtk_image_clear() and
9767         gtk_image_reset(). Call gtk_image_clear() in ::destroy
9768         to avoid leaks.
9769
9770         * gtk/gtklabel.c (set_markup):
9771         Don't leak text.
9772
9773         * gtk/gtktextlayout.c:
9774         Always free display->shaped_objects.
9775
9776         * gtk/testgtk.c (create_clist):
9777         Don't leak custom style.
9778
9779 2001-01-23  Alexander Larsson  <alexl@redhat.com>
9780
9781         * gtk/gtkcolorsel.c (grab_color_at_mouse):
9782         Don't leak image. Simplify using gdk_colormap_query_color().
9783         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
9784
9785         * linux-fb/gdkcolor-fb.c:
9786         Implemented gdk_colormap_query_color.
9787
9788 2001-01-23  Alexander Larsson  <alexl@redhat.com>
9789
9790         * linux-fb/gdkcursor-fb.c:
9791         Don't leak built-in cursors.
9792
9793         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
9794         Don't leak tmp_points.
9795
9796         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
9797         Don't modify desc. Don't leak font if the PangoFont
9798         isn't found.
9799         
9800         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
9801         Free dash_list.
9802
9803         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
9804         Don't leak string.
9805         
9806 2001-01-20  Havoc Pennington  <hp@pobox.com>
9807
9808         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
9809         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
9810         me, matches Pango
9811
9812 2001-01-22  Havoc Pennington  <hp@redhat.com>
9813
9814         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
9815
9816         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
9817
9818         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
9819         Remove, move back to gdk-pixbuf
9820
9821         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
9822         to all the word functions
9823
9824         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
9825         before doing anything on NULL layout or if we don't have the focus
9826
9827         * gtk/testtext.c (fill_example_buffer): "justification"
9828
9829         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
9830         to be called "justification" not "justify"
9831
9832         * demos/gtk-demo/textview.c (create_tags): "justification"
9833         
9834         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
9835
9836 2001-01-22  Alexander Larsson  <alexl@redhat.com>
9837
9838         * gdk/gdkwindow.c (gdk_window_invalidate_region):
9839         Don't leak visible_region. Use visible_region instead of region.
9840         
9841         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
9842         Don't do extra gdk_drawable_ref(). This is not X.
9843         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
9844         gdk_fb_focused_window is ref:ed.
9845         (gdk_fb_window_send_crossing_events): Watch out for destroyed
9846         windows.
9847
9848 2001-01-22  Alexander Larsson  <alexl@redhat.com>
9849
9850         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
9851         Don't leak the PangoFontDescriptor.
9852
9853 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
9854
9855         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
9856         when not realized.
9857         (gtk_tree_view_scroll_to_cell): Make work when not realized.
9858         (gtk_tree_view_realize): add scroll_to support
9859         (gtk_tree_view_finalize): add a finalize method.  Populate.
9860         (gtk_tree_view_insert_column): ref and sink the column.
9861         (gtk_tree_view_append_column): ref and sink the column.
9862         (gtk_tree_view_queue_draw_node): New function to handle redrawing
9863         individual nodes.  Should make the code much more efficient, if
9864         actually used.
9865
9866 2001-01-19  Havoc Pennington  <hp@redhat.com>
9867
9868         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
9869         byte_offset variable was being used to mean both "offset into
9870         layout" and "offset into buffer line" which was no longer true
9871         with addition of preedit string; fix
9872
9873 2001-01-19  Havoc Pennington  <hp@redhat.com>
9874
9875         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
9876
9877         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
9878         function
9879
9880         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
9881         implement
9882
9883         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
9884         scroll_to_cell, matches TextView scroll functions better
9885         (gtk_tree_view_tree_to_widget_coords): new function
9886         (gtk_tree_view_widget_to_tree_coords): new function
9887         (gtk_tree_view_get_visible_rect): new function
9888         (gtk_tree_view_get_path_at_pos): accept negative coordinates
9889         (gtk_tree_view_draw_node_focus_rect): new function moved from
9890         draw_focus, also, use width of bin_window as width of the focus
9891         rect
9892         (gtk_tree_view_expand_row): fix bug where it didn't recognize
9893         already-expanded rows
9894         (gtk_tree_view_get_cell_rect): new function
9895         (gtk_tree_view_get_path_at_pos): return the click position
9896         relative to the passed-in cell
9897         (gtk_tree_view_set_expander_column): new function
9898
9899         * configure.in: remove gtk-config-2.0 chmod
9900
9901         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
9902         and properly handle drags with targets we don't understand
9903         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
9904         scrolling anyway
9905         (gtk_text_view_drag_drop): stop scrolling here though, and set the
9906         mark invisible
9907
9908         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
9909         function
9910         (gtk_drag_dest_get_target_list): new function
9911         (gtk_drag_dest_set_target_list): new function
9912         
9913         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
9914
9915         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
9916         related to drag-and-drop
9917
9918 2001-01-19  Alexander Larsson  <alexl@redhat.com>
9919
9920         * gdk/linux-fb/gdkprivate-fb.h:
9921         Define EMULATE_GDKFONT.
9922         Add extra pango_font stuff to GfkFontPrivate.
9923         
9924         * gdk/linux-fb/gdkdrawable-fb2.c:
9925         * gdk/linux-fb/gdkfont-fb.c:
9926         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
9927         emulation using PangoFont.
9928
9929 2001-01-17  Havoc Pennington  <hp@pobox.com>
9930
9931         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
9932         all the non-deprecated set_foo functions. Added missing object
9933         properties, and added g_object_notify() to setters. 
9934         Wrote docs.
9935         
9936 2001-01-18  Tor Lillqvist  <tml@iki.fi>
9937
9938         * gtk/gtkmain.c
9939         * gtk/gtkrc.c: (Win32) Use the new
9940         g_win32_get_package_installation_(sub)directory() functions.
9941
9942         * config.h.win32.in: New file.
9943         
9944         * config.h.win32: Removed.
9945
9946         * configure.in: Output config.h.win32.
9947
9948         * Makefile.am: Add it to EXTRA_DIST.
9949
9950         * gtk/gtk.def: Update.
9951
9952 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
9953
9954         * gtk/gtklabel.c (gtk_label_size_request): Set the
9955         attributes onto the PangoLayout even if they are newly
9956         created from label->pattern.
9957
9958 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
9959
9960         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
9961
9962         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
9963         structures in functions. Fixes bug where gtk_dataset_*
9964         was accidentally still being used in one place, causing
9965         every dest side event to be treated independently.
9966
9967         * gtk/gtkdnd.c: Remove last vestages of handling
9968         ::draw (fixes warning)
9969         
9970         * gtk/gtkentry.[ch]: Add drag and drop support.
9971
9972         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
9973         new function gtk_check_drag_threshhold() for checking
9974         to check if (dx,dy) has exceeded the threshhold for starting
9975         a drag and use it everywhere.
9976
9977 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
9978
9979         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
9980         add -I{includedir}/gtk-2.0.
9981
9982         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
9983         gdk/gdk-pixbuf.h: Doc fixups.
9984         
9985         * gtk/gtkobject.h: Remove trailing , from enum
9986
9987 2001-01-17 Alexander Larsson <alexl@redhat.com> 
9988
9989         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
9990         Doh! Mixed up x and y.
9991
9992         * gdk/linux-fb/gdkglobals-fb.c:
9993         Removed gdk_fb_pointer_grab_window_events,
9994         added _gdk_fb_pointer_grab_owner_events and
9995         _gdk_fb_keyboard_grab_owner_events.
9996
9997         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
9998         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
9999         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
10000         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
10001         Send crossing events after ungrab finished.
10002         (gdk_keyboard_grab): Set ..._owner_events
10003         (type_masks): Move out of function.
10004         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
10005         gdk_fb_keyboard_event_window): New functions, return the
10006         window an event should be targeted at. Handles grabs and
10007         event propagation. Can return NULL.
10008         (gdk_event_make): Remove event_mask checking. Now always
10009         returns an event.
10010                 
10011         * gdk/linux-fb/gdkkeyboard-fb.c:
10012         * gdk/linux-fb/gdkproperty-fb.c:
10013         * gdk/linux-fb/gdkselection-fb.c:
10014         Use new event_window/gdk_event_make() behaviour.
10015         
10016         * gdk/linux-fb/gdkmouse-fb.c:
10017         Use new event_window/gdk_event_make() behaviour.
10018         Only send motion events if in the same window.
10019         If grabbed, use cursor from window if sibling of grabbed
10020         window, and cursor from grabbed window otherwise.
10021
10022         * gdk/linux-fb/gdkprivate-fb.h:
10023         Update gdk_fb_window_send_crossing_events, gdk_event_make
10024         and grab varaible declarations. Add gdk_fb_*_event_window().
10025
10026         * gdk/linux-fb/gdkwindow-fb.c:
10027         Use new event_window/gdk_event_make() behaviour.
10028         Keep correct track of focus window.
10029         (gdk_window_set_events): Set all specific button motion masks
10030         if GDK_BUTTON_MOTION_MASK set.
10031
10032         * gtk/gtkdnd.c (gtk_drag_update):
10033         Free info->last_event if gdk_drag_motion returned FALSE.
10034
10035 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10036
10037         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
10038         Eliminate redraws when input-only windows are shown or
10039         hidden. Thanks to jpe@archaeopteryx.com.
10040
10041 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
10042
10043         * docs/faq/gtk-faq.sgml: FAQ update:
10044           - Update to bugzilla
10045           - Add GTK+ and security/SUID/SGID
10046           - Add DnD question
10047
10048 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
10049
10050         * gdk/linux-fb/gdkdnd-fb.c:
10051         Some cleanups.
10052         
10053 2001-01-15  Havoc Pennington  <hp@pobox.com>
10054
10055         * tests/testtreeview.c: add test stuff for CellRendererToggle
10056
10057         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
10058         accessor
10059
10060         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
10061         only toggle on button press (would do release like GtkButton, but
10062         we'd need implicit grab code for treeview cells)
10063
10064 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10065
10066         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
10067
10068         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
10069         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
10070
10071         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
10072         to g_{locale,filename}_{to,from}_utf8 to match current API.
10073
10074         * gtk/makefile.msc.in (gtk_OBJECTS)
10075         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
10076
10077         * gtk/gtk.def: Update.
10078
10079 2001-01-15  Tor Lillqvist  <tml@iki.fi>
10080
10081         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
10082         implementaion that more closely mimics the events that an X server
10083         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
10084         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
10085         with nested preview widgets, for instance, more responsive when
10086         you move the mouse quickly into them.
10087         (find_window_for_pointer_event): Make it actually compile.
10088         (gdk_event_translate): Set send_event to the value of
10089         InSendMessage (). This doesn't really mean the same as X11's
10090         send_event flag, but is close enough, says jpe@archaeopteryx.com
10091
10092 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10093
10094         * gdk/linux-fb/gdkdnd-fb.c:
10095         Implemented drag and drop.
10096         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
10097         when it tries to free and then copy the same event (info->last_event).
10098         I am not sure about why this happens, but will continue looking.
10099
10100 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10101
10102         * gdk/linux-fb/gdkwindow-fb.c:
10103         Use gdk_window_invalidate_rect instead of
10104         gdk_window_invalidate_rect_clear to minimise flashing.
10105         When hiding windows you need to clear the root window though.
10106
10107 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10108
10109         * gdk/linux-fb/gdkdrawable-fb2.c:
10110         For optization, add an full_shapes argument to gdk_fb_clip_region.
10111         If this is false, only the cliprects of the shapes are used.
10112
10113         * gdk/linux-fb/gdkprivate-fb.h:
10114         Export gdk_fb_window_peek_shape.
10115         Add full_shapes to gdk_fb_clip_region.
10116
10117         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10118         When moving a window, don't clear everything under the it, just the
10119         root window. Makes stuff faster and flash less.
10120         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
10121         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
10122         offset of the shape.
10123         
10124
10125 2001-01-12  Havoc Pennington  <hp@redhat.com>
10126
10127         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
10128         current invalid region, fixes redraw bug while scrolling the 
10129         text widget
10130
10131         * gtk/gtktextview.c, gtk/gtktextview.h:
10132         Rearrange the scrolling/validation/etc. code in a major way, 
10133         so it seems to make sense to me. Probably isn't genuinely that
10134         much better, but...
10135
10136         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
10137         notifies
10138
10139         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
10140
10141 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
10142
10143         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
10144         Hide mouse pointer while rotation. Show it afterwards.
10145
10146 2001-01-12  Alexander Larsson  <alexl@redhat.com>
10147
10148         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
10149         windows in consideration when generating clip region.
10150
10151         * gdk/linux-fb/gdkfb.h:
10152         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
10153
10154         * gdk/linux-fb/gdkprivate-fb.h:
10155         Add shape to GdkWindowFBDatat.
10156         exported gdk_fb_window_get_abs_shape().
10157         removed gdk_fb_draw_lines declaration.
10158
10159         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
10160         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
10161         send focus changes when there is a grabbed window.
10162         (gdk_window_get_pointer): Handle shaped windows.
10163         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
10164         (gdk_fb_window_peek_shape): Returns the shape for a window,
10165         handles GDK_FB_USE_CHILD_SHAPE.
10166         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
10167         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
10168         (gdk_window_shape_combine_mask): Implement.
10169
10170         * gtk/gtkwindow-decorate.c:
10171         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
10172         setting the shape of a window makes the window transparent.
10173
10174 2001-01-11  Havoc Pennington  <hp@redhat.com>
10175
10176         * gtk/gtktreemodelsimple.h: Oops, broke some macros
10177
10178 2001-01-10  Havoc Pennington  <hp@redhat.com>
10179
10180         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
10181         add this function, bug 40251
10182
10183         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
10184         of type macro   
10185
10186 2001-01-11  Alexander Larsson  <alexl@redhat.com>
10187
10188         * acconfig.h:
10189         Added ENABLE_SHADOW_FB
10190
10191         * configure.in:
10192         Added --disable-shadowfb
10193
10194         * gdk/linux-fb/gdkcursor-fb.c:
10195         Update shadowfb when updating cursor
10196
10197         * gdk/linux-fb/gdkdrawable-fb2.c:
10198         Added wrappers for shadowfb that calls  the normal drawable
10199         methods, but calls gdk_shadow_fb_update(bounding box) when
10200         GdkWindows are drawed to.
10201         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
10202         which also returns the bounding box.
10203
10204         * gdk/linux-fb/gdkfb.h:
10205         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
10206
10207         * gdk/linux-fb/gdkgeometry-fb.c:
10208         Update shadowfb when scrolling window.
10209
10210         * gdk/linux-fb/gdkglobals-fb.c:
10211         Add _gdk_fb_screen_angle.
10212         
10213         * gdk/linux-fb/gdkkeyboard-fb.c:
10214         Test code for screen rotation. Shift-F2 in the xlate driver
10215         rotates the screen.
10216
10217         * gdk/linux-fb/gdkmain-fb.c:
10218         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
10219
10220         * gdk/linux-fb/gdkmouse-fb.c:
10221         Use fb_width/height instead of modeinfo.xres/yres.
10222
10223         * gdk/linux-fb/gdkprivate-fb.h:
10224         Added fb_men, fb_width, fb_height & fb_stride. When using
10225         shadow fb these can differ from the framebuffer stuff.
10226         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
10227         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
10228         _gdk_fb_screen_angle. Removed CM, RP.
10229
10230         * gdk/linux-fb/gdkrender-fb.c:
10231         Added code for shadowfb handling and screen rotation using
10232         shadowfb.
10233
10234         * gdk/linux-fb/gdkwindow-fb.c:
10235         Use fb_mem, fb_stride, fb_width, fb_height.
10236         Added recompute_rowstride to reset the rowstride of all windows.
10237         Added gdk_fb_recompute_all() which recomputes rootwindow size,
10238         window abs positions and window rowstrides. Usefull when the
10239         rotation has changed.
10240
10241 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
10242
10243         * docs/faq/gtk-faq.sgml: update to make web site updating easier
10244
10245 2001-01-10  Havoc Pennington  <hp@redhat.com>
10246
10247         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
10248         where sibling == iter
10249         (gtk_tree_store_insert_after): handle sibling == iter
10250         (gtk_tree_store_prepend): remove stamp checks
10251         (gtk_tree_store_insert_before): ditto
10252         (gtk_tree_store_append): ditto
10253         (gtk_tree_store_get_path): ditto
10254         (gtk_tree_store_get_value): ditto
10255         (gtk_tree_store_iter_has_child): ditto
10256         (gtk_tree_store_iter_n_children): ditto
10257         (gtk_tree_store_iter_nth_child): ditto
10258         (gtk_tree_store_insert_after): ditto
10259         (gtk_tree_store_is_ancestor): ditto
10260         (gtk_tree_store_iter_depth): ditto
10261         (gtk_tree_store_insert_before): assert that sibling's parent is
10262         the same as the passed-in parent
10263         (gtk_tree_store_insert_after): assert that sibling's parent is
10264         the same as the passed-in parent
10265
10266         
10267         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
10268         function to get the first iterator in a model
10269         
10270         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
10271         conventionally the "root" in this sense is just NULL afaict.
10272
10273         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
10274         where sibling == iter
10275         (gtk_list_store_insert_after): handle case where sibling == iter
10276
10277         * tests/testtreeview.c (run_automated_tests): fairly lame basic
10278         automated tests for ListStore, TreeStore
10279
10280         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
10281         (gtk_list_store_insert): update tail pointer, and fix it to work
10282         (gtk_list_store_insert_before): update tail pointer, and fix it to work
10283         (gtk_list_store_append): use tail to be faster
10284         (gtk_list_store_prepend): fix it, update tail pointer
10285         (gtk_list_store_insert_after): fix it, update tail pointer
10286
10287         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
10288         the list
10289
10290 2001-01-09  Havoc Pennington  <hp@redhat.com>
10291
10292         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
10293         is NULL due to a pending resize
10294
10295         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
10296         column width to values less than 1
10297
10298         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
10299         width to be between min/max width, and still set the width 
10300         even if autosize is turned on, so the tree view can use this 
10301         function in order to autosize.
10302         (gtk_tree_view_column_init): set initial width to 1 not 0
10303
10304         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
10305         setter function to modify column width, so we get notification
10306         (gtk_tree_view_insert_iter_height): ditto
10307         (gtk_tree_view_calc_size): ditto
10308         (gtk_tree_view_check_dirty): ditto
10309
10310         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
10311         properties to change all the interesting attributes of the tree
10312         view column.
10313         (gtk_tree_view_column_set_header_clickable): rename set_clickable
10314         (gtk_tree_view_column_get_clickable): add
10315         (gtk_tree_view_column_set_cell_renderer): don't unset the current
10316         attributes; assume a cell renderer with equivalent object
10317         properties has been swapped in. Do g_object_notify().
10318         (gtk_tree_view_column_set_visible): g_object_notify
10319         (gtk_tree_view_column_get_sizing): rename from get_col_type
10320         (gtk_tree_view_column_set_sizing): g_object_notify
10321         (gtk_tree_view_column_set_width): add g_object_notify
10322         (gtk_tree_view_column_set_min_width): ditto
10323         (gtk_tree_view_column_set_max_width): ditto
10324         (gtk_tree_view_column_set_title): ditto
10325         (gtk_tree_view_column_set_clickable): ditto
10326         (gtk_tree_view_column_set_widget): ditto
10327         (gtk_tree_view_column_set_justification): ditto
10328
10329 2001-01-09  Havoc Pennington  <hp@redhat.com>
10330
10331         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
10332         there are no rows in the model
10333
10334         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
10335         NULL, then return the start of the list
10336
10337         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
10338         if we can't get any rows from an empty model 
10339
10340         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
10341         extraneous * after function pointer typedef usage
10342
10343         * Makefile.am: don't specify full path to cp and rm
10344
10345         * gtk/gtkcellrenderertextpixbuf.c
10346         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
10347         NULL before dereferencing, fixes a segfault that happened from
10348         time to time
10349
10350         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
10351         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
10352         and reindent the function
10353         (gtk_cell_renderer_pixbuf_get_size): indentation
10354
10355         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
10356         we quit it
10357         (gtk_dialog_add_buttons_valist): add g_return_if_fail
10358         (gtk_dialog_set_default_response): New function, to set default
10359         button
10360         (gtk_dialog_set_response_sensitive): New function, to set 
10361         sensitivity of buttons
10362
10363         * gtk/gtkcellrendererpixbuf.c
10364         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
10365         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
10366
10367         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
10368         handle any G_TYPE_OBJECT subclass, not just the base class, and 
10369         also boxed types.
10370         (_gtk_tree_data_list_value_to_node): ditto
10371
10372         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
10373         --gtk-debug=tree
10374
10375         * gtk/gtkmain.c: add GTK_DEBUG_TREE
10376
10377         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
10378
10379 2001-01-09  Tor Lillqvist  <tml@iki.fi>
10380
10381         * gdk/win32/gdkevents-win32.c: Implement better mouse
10382         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
10383         (find_window_for_pointer_event): New function.
10384         (gdk_event_translate): Use it when handling mouse events.
10385
10386 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
10387
10388         * configure.in:
10389         Added --with-included-loaders option
10390
10391         * gdk-pixbuf/Makefile.am:
10392         * gdk-pixbuf/gdk-pixbuf-io.c:
10393         Add support for including selected gdk-pixbuf loaders only.
10394
10395         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
10396         gtk_window_set_has_frame):
10397         Added inline documentation.
10398
10399         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
10400         * docs/reference/gdk/tmpl/windows.sgml:
10401         Added inline documentation.
10402
10403 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
10404
10405         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
10406         realizing buttons that have already been realized.
10407
10408 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
10409
10410         * tests/testtreeview.c (main): Show menu items before adding to
10411         option menu.
10412
10413         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
10414         around if we kill them.
10415
10416         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
10417         Return if we pass in a NULL model.
10418
10419 2001-01-08  Havoc Pennington  <hp@redhat.com>
10420
10421         * tests/testtreeview.c: hack on this some
10422
10423         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
10424         gtk_tree_store_set_valist, v is for arrays, valist for varargs
10425         list
10426         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
10427
10428         * gtk/gtkliststore.h: Add varargs set() and get() convenience
10429         functions
10430
10431 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10432
10433         * gtk/gtkwindow-decorate.[hc]:
10434         * gtk/Makefile.am:
10435         New files. Contains an implementation of a minimal WM for
10436         linux-fb.
10437
10438         * gtk/gtkwindow.h:
10439         Add the possibility for GtkWindows to specify a frame. This
10440         is used for the window decoration code, but could concievably
10441         be used for X programs too (xmms style windows).
10442         GtkWindow->frame is the toplevel window if the window is framed.
10443         The signal frame_event gets all events that are targeted to
10444         GtkWindow->frame.
10445         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
10446         
10447         * gtk/gtkwindow.c:
10448         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
10449         Call out to gtkwindow-decorate.c for WM support in linx-fb.
10450
10451 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10452
10453         * docs/README.linux-fb:
10454         Correct filename ~/.pangoft2_aliases
10455
10456         * gdk/gdkwindow.h:
10457         Added new function gdk_window_get_decorations.
10458
10459         * gdk/linux-fb/gdkfb.h:
10460         Removed _gdk_window_get_decorations declaration.
10461         Renamed _gdk_window_set_child_handler to
10462         gdk_fb_window_set_child_handler.
10463
10464         * gdk/linux-fb/gdkwindow-fb.c:
10465         Renamed _gdk_window_set_child_handler to
10466         gdk_fb_window_set_child_handler.
10467
10468         * gdk/x11/gdkwindow-x11.c:
10469         New function gdk_window_get_mwm_hints().
10470         Implemented gdk_window_get_decorations.
10471
10472         * docs/reference/gdk/tmpl/windows.sgml:
10473         * docs/reference/gdk/gdk-sections.txt:
10474         Added gdk_window_get_decorations docs.
10475         
10476 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
10477
10478         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
10479         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
10480         gdk_fb_window_send_crossing_events):
10481         Possibly send focus events when the mouse moves from one
10482         window to another.
10483
10484 2001-01-07  Tor Lillqvist  <tml@iki.fi>
10485
10486         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
10487         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
10488         to match current API.
10489
10490         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
10491         environment variable is set, don't call g_error when on a
10492         palettized (PseudoColor) display. Some people want to use GTK+ 
10493         in 256-colour mode even though works only partially.
10494
10495         * gdk/gdk.def
10496         * gtk/gtk.def
10497         * gtk/makefile.mingw.in: Update.
10498
10499 2001-01-05  Havoc Pennington  <hp@redhat.com>
10500
10501         * tests/testtreeview.c: hack on this a bit
10502
10503         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
10504         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
10505
10506         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
10507         was spelled incorrectly
10508         (GTK_IS_TREE_MODEL_SIMPLE): ditto
10509
10510         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
10511         from gtk_tree_view_set_headers_active   
10512
10513         * gtk/gtktexttag.c:
10514         (gtk_text_tag_get_property): handle PROP_DIRECTION
10515         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
10516         properties, bug 40235
10517
10518         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
10519         forward_to_line_end
10520
10521 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
10522
10523         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
10524         modules/input/gtkimcontextxim.c: Adapt to new prototypes
10525         for unicode,locale,filename conversion functions.
10526
10527 2001-01-05  Havoc Pennington  <hp@redhat.com>
10528
10529         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
10530         broken if called on the first position in the buffer.
10531
10532         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
10533         forward_to_delimiters to be called only if we aren't already at
10534         the delimiters.
10535
10536 2001-01-05  Havoc Pennington  <hp@redhat.com>
10537
10538         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
10539
10540 2001-01-05  Alexander Larsson  <alexl@redhat.com>
10541
10542         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
10543         colormap in here. Sync from X port.
10544         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
10545         Sync from X port.
10546         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
10547         This happens now and then, and i don't think it is a bug.
10548         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
10549         != endpoint.
10550         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
10551         GDK_LINE_SOLID.
10552
10553         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
10554         some of the fields filled in at least.
10555
10556         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
10557         miLineArcD is no more, remove it from the function definition.
10558
10559 2001-01-04  Havoc Pennington  <hp@redhat.com>
10560
10561         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
10562         this
10563
10564         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
10565         user_data instead of tree_node
10566
10567         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
10568         TREE_VIEW_COLUMN_SIZE
10569
10570         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
10571         "size" field to "width" finishes bug 40061
10572
10573         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
10574         for bitfields, bug 40268
10575
10576 2001-01-04  Havoc Pennington  <hp@redhat.com>
10577
10578         Rename some stuff:
10579         
10580         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
10581
10582         s/GtkModelSimple/GtkTreeModelSimple/g;
10583         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
10584         s/gtk_model_simple/gtk_tree_model_simple/g;
10585         s/gtkmodelsimple/gtktreemodelsimple/g;
10586
10587         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
10588
10589         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
10590         s/column_set_col_type/column_set_sizing/g;
10591
10592         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
10593         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
10594
10595         s/GtkCellRendererType/GtkCellRendererState/g;
10596         
10597         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
10598         (gtk_cell_renderer_toggle_class_init): change "state" property to
10599         "active", to match GtkToggleButton
10600         (gtk_cell_renderer_toggle_get_active): new function, bug
10601         40269
10602         (gtk_cell_renderer_toggle_set_active): new function
10603         (gtk_cell_renderer_toggle_set_property): route changes to toggle
10604         state through gtk_cell_renderer_set_active
10605
10606 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
10607
10608         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
10609         temporarily until they work again.  Brought up to date with
10610         changes in the model.
10611         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
10612         model.
10613
10614 2001-01-04  Havoc Pennington  <hp@redhat.com>
10615
10616         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
10617         equal to the line length, then position iterator before paragraph 
10618         separators. Fixes crash reported by Mikael Hermansson when
10619         pressing left arrow from the start of a line.   
10620
10621         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
10622         about byte indexes off the end
10623         (iter_set_from_char_offset): add g_error about char offsets
10624         off the end
10625
10626 2001-01-03  Havoc Pennington  <hp@redhat.com>
10627
10628         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
10629
10630         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
10631         of private functions; remove inclusion of private headers.
10632
10633         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
10634         function, so we don't need private functions in gtktextdisplay.c
10635
10636         * gtk/gtktextiterprivate.h: underscore-ification
10637
10638         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
10639         to instead say "only useful to implement widgets"
10640
10641         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
10642         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
10643         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
10644
10645         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
10646         This function was completely broken
10647
10648         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
10649
10650         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
10651
10652         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
10653
10654         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
10655
10656         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
10657
10658         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
10659
10660         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
10661         gtk_paint_layout
10662
10663         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
10664         gtk_paint_layout
10665
10666         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
10667         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
10668         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
10669         which were not implemented.     
10670
10671         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
10672         insert_pixbuf signal. Rename delete_text to delete_range since it
10673         also deletes pixbufs and child anchors. This almost closes bug
10674         40245 (still need to deal with child anchors)
10675
10676         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
10677         insert_pixbuf, change signal names as appropriate, change types of
10678         signals taking marks/tags to have the specific type, not just
10679         G_TYPE_OBJECT
10680         
10681         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
10682         closes bug 40051
10683
10684         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
10685         unnecessary remove_contents() call
10686         (gtk_option_menu_class_init): add a "changed" signal, closes
10687         bug 40039
10688         (gtk_option_menu_update_contents): emit "changed" if the 
10689         active menu item changes
10690
10691         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
10692         cast to GtkObject, reported by Jonas Borgstrom
10693         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
10694         we can't do stuff with side effects in finalize. Instead, spew a
10695         warning if the loader isn't closed.
10696
10697         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
10698         colormap in here, non-X ports probably need to sync to this change
10699
10700         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
10701         assertion that colormap != NULL, you can set the colormap to NULL
10702         if you like.
10703         
10704         * Makefile.am: remove gtk-config-2.0
10705
10706         * configure.in: Use pkg-config to locate GLib. Remove
10707         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
10708         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
10709         Use pkg-config to locate Pango. Output correct Pango libs to
10710         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
10711
10712         * Makefile.am (pkgconfig_DATA): install only target-specific pc
10713         files
10714         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
10715         X11 pc files
10716
10717         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
10718         unref from here
10719
10720 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
10721
10722         * configure.in:
10723         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
10724
10725 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
10726
10727         * gtk/gtktextlayout.c
10728         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
10729         variable when moving back onto a single line.
10730
10731 2001-01-01  Havoc Pennington  <hp@redhat.com>
10732
10733         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
10734
10735         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
10736
10737         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
10738         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
10739
10740 2001-01-01  Havoc Pennington  <hp@redhat.com>
10741
10742         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
10743
10744         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
10745         GtkTextAttributes
10746
10747         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
10748         #40246
10749         (gtk_text_attributes_copy_values): rename from 
10750         gtk_text_attributes_copy
10751         (gtk_text_attributes_copy): a more standard GTK copy function, 
10752         which returns a new object
10753
10754 2001-01-01  Havoc Pennington  <hp@redhat.com>
10755
10756         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
10757         
10758         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
10759         don't fill in tree_view->priv->selection, kind of an unexpected
10760         side effect
10761
10762         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
10763         gtkintl.h
10764         
10765         * gtk/gtkcellrenderer.c: Remove definition of _ and include
10766         gtkintl.h
10767         (gtk_cell_renderer_get_property): remove calls to g_value_init
10768
10769         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
10770         gtkintl.h
10771
10772         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
10773         and include gtkintl.h
10774         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
10775         property names
10776
10777         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
10778         GtkTreeSelection
10779         (_gtk_tree_selection_new_from_with_view): rename, return
10780         GtkTreeSelection
10781         (_gtk_tree_selection_set_tree_view): rename with uscore
10782         (gtk_tree_selection_get_selected): fill in the "model" out param
10783         first, so it gets filled in even if we return at the top of the 
10784         function
10785         (gtk_tree_selection_real_select_all): add a comment and an else{}
10786         to clarify this a bit
10787         (gtk_tree_selection_real_unselect_all): add the same else{}
10788
10789         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
10790         set_tree_view to have underscore prefixes, move them to the
10791         private header, fix return type of new_with_tree_view
10792         (struct _GtkTreeSelection): mark struct
10793         fields private  
10794
10795         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
10796         GtkTreeModelFlags, not a guint
10797         (gtk_tree_path_prev): return gboolean not gint
10798         (gtk_tree_path_up): return gboolean not gint
10799
10800         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
10801         return GtkTreeModelFlags, not a guint
10802
10803         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
10804         that child model is non-null before unrefing it
10805         (g_value_int_compare_func): make this a qsort compare func, not 
10806         a boolean predicate
10807
10808         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
10809         (add -umn to the end), and mark it unimplemented
10810         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
10811         I don't see what it's for - doesn't the model always sort itself?
10812         (gtk_tree_model_sort_set_compare): this had the wrong signature
10813
10814         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
10815         Fix the docs to say that it destructively replaces existing
10816         attributes (previously said that it added attributes).
10817         (gtk_tree_view_column_set_visible): canonicalize bool before
10818         equality testing. Also, check for realization before
10819         hiding/showing the tree_column->window; if this window could exist
10820         before realization, then it's busted and needs fixing, we can't 
10821         create GDK resources pre-realization. Also, remove
10822         superfluous queue_resize(), since set_size() does that for us.
10823         (gtk_tree_view_column_set_col_type): check realization before 
10824         using tree_column->window
10825
10826         * gtk/gtktreedatalist.c: fix filename in copyright notice
10827
10828 2000-12-31  Havoc Pennington  <hp@pobox.com>
10829
10830         * gtk/gtktextview.c: Rearrange all the
10831         scroll-while-dragging-or-selecting code to be different, not
10832         necessarily better. ;-)
10833         (gtk_text_view_scroll_to_mark): Change this
10834         function to take within_margin as a fraction instead of a pixel
10835         value, and to take alignment arguments (indicating where to align 
10836         the mark inside the visible area)
10837         
10838         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
10839         to GtkObject
10840
10841         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
10842         behavior so that offsets past the end of the line are not 
10843         allowed, and an offset equal to the line length moves the iterator
10844         to the next line
10845         (gtk_text_iter_set_line_index): make parallel change
10846         (gtk_text_iter_get_bytes_in_line): add this function
10847         
10848         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
10849         of byte indexes off the end of the line; byte index at the end of
10850         the line now returns FALSE and doesn't fill in the requested
10851         values, byte index past the end of the line is an error.  Also,
10852         don't allow -1 offset anymore, since its meaning is unclear.
10853
10854         This change exposes some bug in visual cursor motion, where we
10855         end up with a huge invalid byte index; needs fixing. Symptom of 
10856         bug is a crash when you hit up arrow.
10857         
10858         (_gtk_text_line_char_locate): match the change to byte_locate
10859
10860         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
10861         from start of line properly. fixes bug reported by Mikael
10862         Hermansson where backspace would delete all text before the
10863         cursor.
10864
10865 2000-12-30  Tor Lillqvist  <tml@iki.fi>
10866
10867         * gdk/win32/gdkwindow-win32.c
10868         (gdk_window_impl_win32_get_visible_region): New function, as in
10869         the X11 backend.
10870         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
10871         instead of duplicating the same code here.
10872
10873         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
10874         GDK_COLORMAP macro.
10875
10876         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
10877         destroy function.
10878         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
10879         access that.
10880
10881         * gtk/gtk.def: Update.
10882
10883         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
10884
10885 2000-12-30  Havoc Pennington  <hp@pobox.com>
10886
10887         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
10888         colormap on input only windows, to avoid special cases all over
10889         the code for these windows.
10890
10891 2000-12-26  Tor Lillqvist  <tml@iki.fi>
10892
10893         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
10894         we are on a palettized display ("PseudoColor" in X11), as the code
10895         for that doesn't work anyway, and never has.
10896
10897 2000-12-22  Alexander Larsson  <alexl@redhat.com>
10898
10899         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
10900         Don't use isprint() for chars > 255.
10901
10902 2000-12-21  Havoc Pennington  <hp@redhat.com>
10903
10904         * tests/testtreeview.c: more work
10905
10906 2000-12-21  Alexander Larsson  <alexl@redhat.com>
10907
10908         * docs/README.linux-fb:
10909         Update the docs to the new pangoft2 way.
10910
10911 2000-12-21  Alexander Larsson  <alexl@redhat.com>
10912
10913         * configure.in:
10914         For linux-fb get the pangoft2 cflags and libs. This needs a recent
10915         pango version.
10916         Remove modules/linux-fb/Makefile.
10917
10918         * gdk/linux-fb/gdkdrawable-fb2.c:
10919         Render glyphs using freetype.
10920
10921         * gdk/linux-fb/gdkfb.h:
10922         Add new fb-specific functions needed for managing windows.
10923
10924         * gdk/linux-fb/gdkmain-fb.c:
10925         Remove gdk_font_init/fini() calls.
10926
10927         * gdk/linux-fb/gdkpango-fb.c:
10928         Remove old implementation. Use pangoft2 instead.
10929
10930         * gdk/linux-fb/gdkprivate-fb.h:
10931         Remove PangoFBFont and related stuff.
10932
10933         * gdk/linux-fb/gdkwindow-fb.c:
10934         Implement drawable->get_visible_region.
10935         Implement support for _gdk_window_set_child_handler () and
10936         _gdk_window_get_decorations().
10937
10938         * modules/Makefile.am:
10939         Remove linux-fb subdir.
10940
10941         * modules/linux-fb/*:
10942         Removed all.
10943         
10944 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
10945
10946         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
10947         calls, as they are no longer needed.
10948
10949         * gtk/gtktreemodelsort.c: Fix up the comparison code.
10950         
10951         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
10952         figure out how to emit a signal on an interface.
10953
10954 2000-12-20  Havoc Pennington  <hp@redhat.com>
10955
10956         * tests: new directory to contain tests, gtk/test* should move
10957         here sometime (with appropriate on-cvs-server hackery)
10958
10959         * tests/testtreeview.c, tests/Makefile.am: a test
10960         
10961         * configure.in (AC_OUTPUT): add tests/Makefile
10962
10963         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
10964         and "invisible_set" which were missing
10965
10966         * gtk/gtkrbtree.h: some cheesy indentation fix
10967         
10968 2000-12-20  Alexander Larsson  <alexl@redhat.com>
10969
10970         * gtk/gtkinvisible.c (gtk_invisible_realize):
10971         Attach the style to the window so that the style it is not
10972         leaked when unrealizing the window.
10973
10974 2000-12-18  Havoc Pennington  <hp@redhat.com>
10975
10976         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
10977         begin/end user action where appropriate
10978         (gtk_text_view_commit_handler): add begin/end user action
10979
10980         * gtk/gtktextbuffer.c: add begin/end user action signals, and
10981         bracket interactive operations with begin/end user action pair.
10982         
10983         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
10984         "interactive" arg from insert_text and delete_text signals.
10985         Add begin_user_action, end_user_action signals
10986         (gtk_text_buffer_begin_user_action): 
10987         (gtk_text_buffer_end_user_action): New functions to delimit 
10988         a user-visible action
10989
10990         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
10991         signals.
10992         
10993 2000-12-18  Havoc Pennington  <hp@redhat.com>
10994
10995         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
10996         was pretty non-working.
10997
10998         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
10999         by passing the length to g_utf8_validate().
11000
11001 2000-12-16  Havoc Pennington  <hp@pobox.com>
11002
11003         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
11004         Port to GObject, can go back in gdk-pixbuf after setting up 
11005         a gdk-pixbuf-marshal.h header over there.
11006
11007         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
11008         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
11009         args
11010         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
11011         set
11012         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
11013         here, do it when we create the buttons later
11014         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
11015         (gtk_tree_view_map): paranoia checks that column->button is shown 
11016         and unmapped
11017         (gtk_tree_view_size_request): only request visible children.
11018         Move header size calculation in here, for cleanliness, and 
11019         to maintain invariants for child widgets if we eventually 
11020         let users set different children inside the buttons
11021         (gtk_tree_view_map_buttons): factor out code to map buttons,
11022         since it was being called several times
11023         (gtk_tree_view_size_allocate_buttons): move_resize the drag
11024         windows instead of just moving them; their height may change 
11025         if we allow random widgets in there, or the theme changes.
11026         (gtk_tree_view_size_allocate): move button size allocation 
11027         above emitting the scroll signals, to ensure a sane state when we
11028         hit user code
11029         (gtk_tree_view_button_release): remove queue_resize after
11030         tree_view_set_size(), set_size() will handle any resize queuing
11031         that's needed
11032         (gtk_tree_view_focus_in): just queue a draw, don't fool with
11033         draw_focus goo
11034         (gtk_tree_view_focus): use gtk_get_current_event() and
11035         gdk_event_get_state()
11036         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
11037         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
11038         semicolon
11039         (gtk_tree_view_create_button): show the button here
11040         (gtk_tree_view_button_clicked): actually emit the clicked signal
11041         on the column
11042         (_gtk_tree_view_set_size): return right away if the size is
11043         unchanged, as a cheesy optimization
11044         (gtk_tree_view_setup_model): rename set_model_realized to 
11045         setup_model to match the flag that indicates whether we've 
11046         called it
11047         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
11048         exist, because set_scroll_adjustment does that and it shouldn't
11049         matter what order you call these in
11050         (gtk_tree_view_get_vadjustment): ditto
11051         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
11052         for paranoia
11053         (gtk_tree_view_set_headers_visible): call
11054         gtk_tree_view_map_buttons() instead of using cut-and-paste code
11055         (gtk_tree_view_append_column): clarify whether the return value
11056         is the count of columns before or after, and do the increment 
11057         separately from the return statement so you can tell from the code.
11058         (gtk_tree_view_remove_column): ditto
11059         (gtk_tree_view_insert_column): ditto
11060         (gtk_tree_view_get_column): remove g_return_if_fail for columns
11061         outside the existing range, the docs say that outside-range
11062         columns are allowed, so we handle them as documented. (Presumably
11063         this allows a nice loop with column != NULL as test.)
11064         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
11065         mean (left/right/center etc.).
11066         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
11067         (gtk_tree_view_expand_row): add docs
11068         (gtk_tree_view_collapse_row): add docs
11069
11070         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
11071         function to emit the clicked signal on a column
11072         
11073         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
11074         state of an event
11075         (gdk_event_get_time): don't treat GDK_SCROLL 
11076         as a button event, remove default case from switch so gcc 
11077         will whine if we don't explicitly handle all event types
11078
11079         * gtk/gtktreeselection.h: added some FIXME 
11080         
11081         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
11082         "columns" to "n_columns" and "column" to "columns" for clarity
11083
11084 2000-12-16  Havoc Pennington  <hp@pobox.com>
11085         
11086         * gtk/gtktextiter.c: General cleanup of the log attr iteration
11087         stuff. This should make e.g. the delete key work again in the
11088         text widget...
11089         (gtk_text_iter_forward_cursor_positions): handle negative count
11090         (gtk_text_iter_backward_cursor_positions): handle negative count
11091         (gtk_text_iter_forward_word_ends): handle negative count
11092         (gtk_text_iter_backward_word_starts): handle negative count
11093
11094         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
11095         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
11096         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
11097         GObject. No doubt will cause breakage.
11098
11099         * demos/gtk-demo/textview.c: remove hacks around
11100         non-GObject-ification of the text objects
11101
11102         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
11103         the text tag
11104         
11105 2000-12-14  Havoc Pennington  <hp@pobox.com>
11106
11107         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
11108         that we have Xrender
11109
11110 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
11111
11112         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
11113         Add two virtualized functions gdk_drawable_get_clip_region - to
11114         get the clip region when drawing.
11115         
11116         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
11117         use invalidate_region.
11118
11119         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
11120         region.
11121
11122         * acconfig.h configure.in: Check for Xft. For now, assume
11123         that if Xft is found, Pango was compiled with Xft support
11124         as well.
11125
11126         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
11127         gdk_colormap_query_color().
11128         
11129         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
11130         with Xft if appropriate.
11131
11132         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
11133         a pangoxft context if we have XFT and the environment
11134         variable GD_USE_XFT is set.
11135         
11136         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
11137         and also possibly an XftDraw structure.
11138
11139         * gtk/gtkfontsel.c: Handle the case where the font from the
11140         style doesn't match any of the fonts a bit better.
11141         
11142         * gtk/testgtk.c: Add tabs between directional segments for
11143         hebrew/arabic test. (Not really necessary, just a little
11144         prettier.)
11145
11146 2000-12-14  Havoc Pennington  <hp@redhat.com>
11147
11148         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
11149         reading a file
11150
11151 2000-12-14  Havoc Pennington  <hp@redhat.com>
11152
11153         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
11154         unused call to get_last_line()
11155
11156         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
11157         here until boxed is working (and maybe after that - we should
11158         really not gratuitously break old code)
11159
11160         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
11161         specific types for font_desc and tabs args, move them to
11162         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
11163         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
11164
11165         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
11166         use GTK_TYPE_POINTER for signal signatures as a hack-around
11167
11168         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
11169         PangoTabArray
11170
11171         * gtk/gtktextlayout.c (line_display_iter_to_index): 
11172         make static
11173         (line_display_index_to_iter): make static
11174
11175         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11176         to marshal a string not a boxed
11177
11178         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
11179
11180         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
11181         since the UTF-8 isn't validated yet
11182
11183         * gtk/gtktextsegment.c (char_segment_check_func): don't require
11184         lines to end in '\n'
11185         
11186         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
11187         forward_to_delimiters, and grapheme boundaries
11188         (gtk_text_view_delete_from_cursor): properly handle non-newline
11189         delimiters, and grapheme boundaries
11190
11191         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
11192         to gtk_text_iter_forward_to_delimiters, and make it work properly
11193         if empty lines end with a character other than '\n'
11194
11195         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
11196         position
11197
11198 2000-12-15  Tor Lillqvist  <tml@iki.fi>
11199
11200         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
11201
11202         * gtk/gtk.def
11203         * gdk/gdk.def: Update.
11204
11205         * gdk/win32/gdkmain-win32.c
11206         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
11207         gdkmain-win32.c here.
11208
11209         * gdk/win32/makefile.mingw.in (all): No need to make
11210         gdk-win32res.o here, the makefile one step up will call us to make
11211         it.
11212
11213         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
11214         gdkkeys-win32.
11215
11216         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
11217
11218         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
11219         call to g_source_add().
11220
11221         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
11222         leak. Thanks to Andreas Kemnade.
11223
11224 2000-12-13  Havoc Pennington  <hp@pobox.com>
11225
11226         * gtk/gtktextbtree.h: Remove double _ in front of some functions
11227
11228         * gtk/gtktext*.[hc]: update accordingly
11229         
11230 2000-12-13  Havoc Pennington  <hp@pobox.com>
11231
11232         * gtk/gtktextbtree.h: Put _ in front of every function in this 
11233         header file
11234
11235         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
11236
11237 2000-12-13  Alex Larsson  <alexl@redhat.com>
11238
11239         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
11240         Add support for ps2 intellimouse.
11241
11242         * gdkkeyboard-fb.c:
11243         Move shift-F1 repaint handling to xlate handler only.
11244         
11245         * docs/README.linux-fb:
11246         Add imps2 to docs.
11247         Document the new refresh keys.
11248         
11249 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
11250
11251         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
11252
11253         * gtk/gtkbox.c: change property types from (u)long to (u)int for
11254         ::position and ::padding.
11255
11256         * gtk/gtkcontainer.c: make ::border_width an INT property.
11257
11258         * gtk/gtkpacker.c: make ::position an INT property.
11259
11260         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
11261         guard against NULL h/v scrollbars, since this is used at construction
11262         time.
11263
11264         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
11265         internal gtk_clist_constructor().
11266
11267         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
11268         gtk_ctree_constructor().
11269
11270         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
11271         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
11272
11273         * docs/reference/Makefile.am: fun stuff, disabled docs generation
11274         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
11275
11276         * gtk/gtkwidget.[hc]:
11277         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
11278         and gtk_widget_get().
11279         (gtk_widget_new): use g_object_new_valist().
11280         (gtk_widget_set): use g_object_set_valist().
11281
11282         * gtk/gtkobject.[hc]:
11283         removed gtk_object_arg_get_info(), gtk_object_getv(),
11284         gtk_object_query_args(), gtk_object_newv(),
11285         gtk_object_class_add_signals(),
11286         gtk_object_class_user_signal_new(),
11287         gtk_object_class_user_signal_newv(),
11288         gtk_object_arg_set(), gtk_object_arg_get(),
11289         gtk_object_args_collect(),
11290         gtk_object_default_construct(),
11291         gtk_object_constructed(),
11292         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
11293         removed nsignals, signals and n_args members from GtkObjectClass.
11294         (gtk_object_new): use g_object_new_valist().
11295         (gtk_object_set): use g_object_set_valist().
11296         (gtk_object_get): use g_object_get_valist().
11297         
11298         * gtk/gtkcompat.h: define gtk_object_default_construct().
11299         
11300         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
11301         g_object_new().
11302
11303         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
11304         fucntions, cleaned up method assignments (make sure your structures
11305         are setup properly before calling out). removed all GTK_CONSTRUCTED
11306         hacks ;)
11307
11308 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
11309
11310         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
11311         off-by-one error in checks. (Dave Lambert)
11312
11313 2000-12-12  Alexander Larsson  <alexl@redhat.com>
11314
11315         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
11316         Don't free gdk_fb_keyboard twice.
11317
11318 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
11319
11320         * gtk/testgtk.c:
11321         (create_tooltips): 
11322         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
11323         use GObject swapped_signal:: properties instead.
11324
11325         * gtk/gtkcellrenderertoggle.c: 
11326         * gtk/gtkcellrenderertextpixbuf.c: 
11327         * gtk/gtkcellrenderertext.c: 
11328         * gtk/gtkcellrendererpixbuf.c: 
11329         * gtk/gtkcellrenderer.c:
11330         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
11331         missing warnings for invalid property ids, install properties
11332         with g_object_class_install_property() now.
11333         
11334         * gtk/gtksignal.c:
11335         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
11336         
11337 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
11338         
11339         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
11340         to determine if a window is the focus widget within
11341         its toplevel.
11342
11343         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
11344         to be boolean.
11345
11346         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
11347         of the case where the container CAN_FOCUS to here instead
11348         of having it in each individual move-the-focus place.
11349
11350         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
11351         focusing to be geometric in a much more obvious sense. Arrowing
11352         around is still non-intuitive because it isn't perfect and
11353         because entries, etc, grab the arrow keys, but it at least
11354         usually will do what you expect now.
11355         
11356         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
11357         file.
11358
11359         * gtk/gtknotebook.c: Change tabs to be a single item in
11360         the focus chain. Make movement of focus on tabs with arrow
11361         keys wrap around.
11362         
11363         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
11364         CHECK_FIND_CHILD macro to give informative error messages
11365         instead of silent returns.
11366
11367         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
11368         flag since we handle GdkReturn on the tabs.
11369
11370         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
11371         windows rather than sending expose events directly.
11372
11373         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
11374         definition for GtkNotebookPage into .c file, since it is private.
11375
11376         * gtk/testgtk.c (create_notebook): Add option for 
11377         testing borderless notebook.
11378
11379         * gtk/testgtk.c (page_switch): Removed egregious poking
11380         around in GTK+ internals.
11381
11382         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
11383
11384         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
11385         properly through gtk_clist_focus. Make the title headers a
11386         single item in the tab-focus chain, and make left-right wrap
11387         around.
11388
11389         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
11390         focus method so that wrapping around works properly.
11391
11392         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
11393         that is handled for the widget now. 
11394
11395 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
11396
11397         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
11398         widgets as TOPLEVEL.
11399
11400         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
11401         TOPLEVEL widgets are containers.
11402
11403         * gtk/gtkinvisible.h: Remove useless include.
11404
11405 2000-12-11  Havoc Pennington  <hp@redhat.com>
11406
11407         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
11408         Handle chopping off \r\n and 0x2029 in addition to \n before
11409         passing to PangoLayout
11410
11411         * gtk/gtkimcontextsimple.c
11412         (gtk_im_context_simple_get_preedit_string): 
11413         return an empty string if no match is pending
11414
11415         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
11416         assertion that the returned preedit string was sane
11417
11418         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
11419         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
11420         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
11421
11422 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
11423
11424         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
11425         Fix up finalizer to chain to its parent.
11426
11427 2000-12-11  Alexander Larsson  <alexl@redhat.com>
11428
11429         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
11430         Clearified the difference between the keyboard types. Wrote a note
11431         about the magic sysrq key to get out of raw mode.
11432
11433 2000-12-09  James Henstridge  <james@daa.com.au>
11434
11435         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
11436         member to hold masks for detecting the start of a protocol packet.
11437         (mouse_devs): add packet start masks for ps2 and ms device types.
11438         Left the mask for fidmour blank, as I have no idea what it should
11439         be.
11440         (handle_mouse_io): skip bytes until we get to the start of a
11441         packet.  My Logitech mouse seems to be passing an extra NULL pad
11442         byte, and GPM does a similar thing here.
11443         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
11444         this is the ms mouse driver.
11445         (gdk_fb_mouse_ms_packet): fix up button handling, which was
11446         completely broken except for button1.  It was checking the wrong
11447         bit in the packet for the status of the right mouse button, and
11448         wrongly assuming right == button2 rather than 3.  I fixed that and
11449         also added support for middle button (button2).
11450
11451 2000-12-08  Havoc Pennington  <hp@redhat.com>
11452
11453         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
11454         that cause a segfault on text insertion
11455
11456         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
11457         warning
11458
11459         * gtk/gtktextiter.c (test_log_attrs): use
11460         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
11461
11462         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
11463         Get log attrs for a line, using a cache stored on the buffer
11464         
11465         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
11466         reported by Jeff Franks
11467
11468 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11469
11470         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
11471         /dev/ttyS0 -> /dev/mouse
11472
11473 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11474
11475         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
11476         Added dummy gdk_fontset_load.
11477
11478 2000-12-08  Alexander Larsson  <alexl@redhat.com>
11479
11480         * docs/README.linux-fb:
11481         * docs/Makefile.am:
11482         Initial GtkFB docs.
11483         
11484         * gdk/linux-fb/Makefile.am:
11485         Define GDK_DATA_PREFIX.
11486
11487         * gdk/linux-fb/gdkmain-fb.c:
11488         Fix typo.
11489         Change default display to /dev/fb0.
11490
11491         * gdk/linux-fb/gdkpango-fb.c:
11492         Add $(prefix)/share/fonts/ to font path.
11493         
11494 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11495
11496         * gdk/linux-fb/gdkkeyboard-fb.c:
11497         New file containing the abstracted keyboard driver. Most code
11498         taken from gdkinput-ps2.c
11499
11500         * gdk/linux-fb/gdkinput-ps2.c:
11501         Removed file.
11502         
11503         * gdk/linux-fb/Makefile.am:
11504         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
11505
11506         * gdk/linux-fb/gdkcolor-fb.c:
11507         display->fb was renamed to display->fb_fd.
11508
11509         * gdk/linux-fb/gdkcursor-fb.c:
11510         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11511
11512         * gdk/linux-fb/gdkinput.c:
11513         Moved gdk_input_init here from gdkinput-ps2.c
11514
11515         * gdk/linux-fb/gdkmain-fb.c:
11516         display->fb was renamed to display->fb_fd.
11517         Now the tty and the console is opened here instead
11518         of in the keyboard driver. Also check GDK_VT to see what
11519         tty to open.
11520         Move gdk_beep () here from gdkinput-ps2.c
11521         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11522
11523         * gdk/linux-fb/gdkmouse-fb.c:
11524         Add header.
11525         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11526         Return correct keyboard modifiers.
11527         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
11528
11529         * gdk/linux-fb/gdkprivate-fb.h:
11530         Add tty and vt info to display.
11531         Add orignal modeinfo storage to display
11532         Update global functions
11533
11534         * gdk/linux-fb/gdkwindow-fb.c:
11535         Added gdk_fb_window_find_focus().
11536         gdk_mouse_get_info -> gdk_fb_mouse_get_info
11537
11538 2000-12-07  Havoc Pennington  <hp@pobox.com>
11539
11540         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
11541         function, noticed by Alex
11542
11543 2000-12-06  Elliot Lee  <sopwith@redhat.com>
11544
11545         * configure.in: Detect freetype properly
11546
11547         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
11548         above.
11549
11550 2000-12-06  Alexander Larsson  <alexl@redhat.com>
11551
11552         * gdk/linux-fb/Makefile.am:
11553         Add gdkmouse-fb.c
11554         
11555         * gdk/linux-fb/gdkmouse-fb.c:
11556         New file. Abstracted the mouse drivers a bit.
11557
11558         * gdk/linux-fb/gdkcursor-fb.c:
11559         The cursor hide/show functions was moved here from gdkinput-ps2.c.
11560
11561         * gdk/linux-fb/gdkinput-ps2.c:
11562         Removed old mouse handling code. Moved cursor handling code
11563         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
11564         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
11565         gdk_mouse_get_info.
11566
11567         * gdk/linux-fb/gdkmain-fb.c:
11568         Pass NULL pointers for x,y in gdk_mouse_get_info call.
11569
11570         * gdk/linux-fb/gdkprivate-fb.h:
11571         Removed public gdk_fb_find_common_ancestor, added and renamed
11572         functions for the new mouse handling code.
11573
11574         * gdk/linux-fb/gdkwindow-fb.c:
11575         Moved gdk_fb_window_send_crossing_events here. added global
11576         variable gdk_fb_window_containing_pointer. made
11577         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
11578         renamed to gdk_mouse_get_info.
11579
11580 2000-12-06  Alexander Larsson  <alexl@redhat.com>
11581
11582         * gdk/linux-fb/gdkevents-fb.c:
11583         Update to match latest gmain/gsource changes.
11584
11585         * gdk/linux-fb/gdkinput-ps2.c:
11586         Bogus gdk_keymap_get_entries_for_keycode implementation so that
11587         it links. Will be implemented later.
11588
11589 2000-12-03  Havoc Pennington  <hp@pobox.com>
11590
11591         * gdk/Makefile.am: add gdkkeys.[hc]
11592
11593         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
11594         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
11595
11596         * acconfig.h, configure.in: add checks and command line options
11597         for XKB
11598
11599         * gdk/x11/gdkkeys-x11.c: Implement the above functions
11600         
11601         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
11602         and group in the key event
11603
11604         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
11605         field with the low-level hardware key code, and a group
11606         field with the keyboard group
11607
11608         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
11609         and declare a couple globals used for keymap handling
11610         
11611         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
11612         hold down Shift-Control and type a hex number to get a Unicode 
11613         character corresponding to the hex number
11614         (gtk_im_context_simple_get_preedit_string): Fix cursor position
11615         (return bytes not chars)
11616
11617 2000-12-05  Elliot Lee  <sopwith@redhat.com>
11618
11619         * gdk/gdkcolor.h: Make GdkColor specify element sizes
11620         to avoid waste on 64-bit platforms.
11621
11622 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
11623
11624         * INSTALL: Fix link to PNG home, remove reference
11625         to fribidi.
11626
11627         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
11628         
11629         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
11630         tested.)
11631
11632         * gtk/gtkcheckmenuitem.c: Permanently turn on
11633         always_show_toggle.
11634
11635         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
11636         be NULL. (Vladimir Klebanov, #26545)
11637
11638         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
11639         some signed/unsigned comparison problems. (#6510,
11640         David Kaelbling)
11641
11642         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
11643         return type to boolean (Oskar Liljeblad, #18648)
11644
11645 2000-12-05  Alexander Larsson  <alexl@redhat.com>
11646
11647         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
11648         Remove bogus colormap setting.
11649
11650 2000-12-05  Alexander Larsson  <alexl@redhat.com>
11651
11652         * gdk/linux-fb/gdkcolor-fb.c:
11653         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
11654
11655         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
11656         Must set colormap.
11657         
11658 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
11659
11660         * docs/tutorial/gtk-tut.sgml: DND updates
11661
11662 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
11663
11664         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
11665         Remove old debug g_warning().
11666         (gdk_fb_draw_drawable): The src argument can be either a wrapper
11667         or an implementation, just pass the implementation to draw_drawable_2.
11668         
11669         * gdk/linux-fb/gdkprivate-fb.h:
11670         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
11671
11672         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
11673         clear and invalidate area when window is destroyed.
11674         (send_map_events): Remove old commented out code.
11675
11676 2000-12-05  Alexander Larsson  <alexl@redhat.com>
11677
11678         * gdk/linux-fb/gdkpango-fb.c:
11679         Use italic instead of oblique in font aliases.
11680         
11681         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
11682         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
11683         other unsupported functions.
11684
11685 2000-12-04  Havoc Pennington  <hp@redhat.com>
11686
11687         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
11688
11689         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
11690
11691         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
11692
11693         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
11694         hack to avoid infinite loops (synthetic expose event) - 
11695         Owen has more appropriate fixes in a branch he'll check in later.
11696
11697         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
11698         separator, CR, and CRLF as line ends
11699
11700         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
11701         into lines using pango_find_paragraph_boundary(); other bits of
11702         the widget are still going to be broken if the boundary isn't '\n'
11703         though
11704
11705 2000-12-04  Alexander Larsson  <alexl@redhat.com>
11706
11707         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
11708         multiply.
11709
11710         * gdk/linux-fb/gdkpango-fb.c:
11711         Copied some 26.6 scaling macros from pango to clean up the rounding.
11712         (pango_fb_font_get_glyph_info): Correct sign on x value.
11713
11714         * gdk/linux-fb/gdkprivate-fb.h:
11715         Removed unreferenced external functions.
11716
11717         * modules/linux-fb/Makefile.am: Use ` instead of '.
11718
11719         * modules/linux-fb/basic.c:
11720         Remove dead code. In particular the dummy lang engine which broke all
11721         pango layouts in GtkFB. Don't include tables-big.i anymore.
11722
11723         * modules/linux-fb/tables-big.i:
11724         Upgrade to latest version from pango. Left for reference, basic_ranges
11725         moved to basic.c.
11726         
11727 2000-12-04  Havoc Pennington  <hp@redhat.com>
11728
11729         Fix bugs Alex found:
11730         
11731         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
11732         to "draw"
11733
11734         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
11735
11736         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
11737
11738         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
11739         implementation in here, apparently the expose() implementation was
11740         dead code.
11741
11742 2000-12-04  Alexander Larsson  <alexl@redhat.com>
11743
11744         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
11745         Return positive descent.
11746
11747 2000-12-02  Havoc Pennington  <hp@pobox.com>
11748
11749         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
11750         method and signal
11751         
11752         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
11753         calls gdk_window_process_updates() to push the exposes through
11754         (gtk_widget_class_init): No more draw signal, no
11755         gtk_widget_real_draw()  
11756         
11757         * gtk/gtkbin.c (gtk_bin_draw): remove
11758
11759         * gtk/gtkbox.c (gtk_box_draw): remove
11760
11761         * gtk/gtkbutton.c (gtk_button_draw): remove
11762
11763         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
11764
11765         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
11766
11767         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
11768
11769         * gtk/gtkclist.c (gtk_clist_draw): remove
11770
11771         * gtk/gtkentry.c (gtk_entry_draw): remove
11772
11773         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
11774
11775         * gtk/gtkfixed.c (gtk_fixed_draw): remove
11776
11777         * gtk/gtkframe.c (gtk_frame_draw): remove
11778
11779         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
11780
11781         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
11782
11783         * gtk/gtklayout.c (gtk_layout_draw): remove
11784
11785         * gtk/gtklist.c (gtk_list_draw): remove
11786
11787         * gtk/gtklistitem.c (gtk_list_item_draw): remove
11788
11789         * gtk/gtkmenu.c (gtk_menu_draw): remove
11790
11791         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
11792
11793         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
11794
11795         * gtk/gtknotebook.c (gtk_notebook_draw): remove
11796
11797         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
11798
11799         * gtk/gtkpacker.c (gtk_packer_draw): remove
11800
11801         * gtk/gtkrange.c (gtk_range_draw): remove
11802
11803         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
11804
11805         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
11806
11807         * gtk/gtktable.c (gtk_table_draw): remove
11808
11809         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
11810
11811         * gtk/gtktext.c (gtk_text_draw): remove
11812
11813         * gtk/gtktextview.c (gtk_text_view_draw): remove
11814
11815         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
11816
11817         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
11818
11819         * gtk/gtktree.c (gtk_tree_draw): remove
11820
11821         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
11822
11823         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
11824
11825         * gtk/gtkviewport.c (gtk_viewport_draw): remove
11826
11827         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
11828
11829         * gtk/gtkvscale.c (gtk_vscale_draw): remove
11830
11831         * gtk/gtkwindow.c (gtk_window_draw): remove
11832
11833 2000-20-01  Anders Carlsson  <andersca@gnu.org>
11834
11835         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
11836         a GtkToggleButton is both insensitive and active, it was being
11837         drawn by the GtkButton draw handler which doesn't check the
11838         state. Now it's calling gtk_toggle_button_paint instead.
11839         
11840 2000-12-01  Havoc Pennington  <hp@redhat.com>
11841
11842         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
11843         dangling pointers to the appearance attributes from the 
11844         line display
11845
11846         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
11847         width/height to mean "full width/height of drawable"
11848
11849         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
11850         click to select word/line
11851         
11852         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
11853         when getting log attrs. Get a slice, so that pixmaps and stuff
11854         are properly handled.
11855
11856         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
11857         paste into the selection (replaces selection now, previously
11858         crashed or added to selection). Reveals longstanding btree bug -
11859         select multiple lines, middle-click on the selection, boom. This
11860         isn't related to my changes though.
11861
11862         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
11863         PangoLogAttrs changes
11864         (gtk_entry_move_backward_word): ditto
11865
11866         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
11867         functions return bool whether the iter moved onto a
11868         dereferenceable position.
11869  
11870         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
11871         functions for motion in terms of display lines.
11872
11873         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
11874         get the buffer a mark is inside
11875         
11876 2000-12-01  Alexander Larsson  <alexl@redhat.com>
11877
11878         * gdk/linux-fb/Makefile.am:
11879         * modules/linux-fb/Makefile.am:
11880         Freetype 2 final uses freetype-config
11881
11882         * gdk/linux-fb/gdkpango-fb.c:
11883         Upgrade to use Freetype 2 final.
11884         More flexible support for font aliases, this also fixes a bug with
11885         GtkFontSelector, as the aliases must be visible in the font/family list,
11886         or GtkFontSelector reads uninitialized memory.
11887
11888 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
11889
11890         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
11891         XGetIMValues to properly terminate variable argument list, and do
11892         NULL return check for ic_values and xim_styles.
11893
11894         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
11895         Restore preedit state after XmbResetIC().
11896         
11897         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
11898         XvaCreateNestedList() should take XvaNestedList, but not
11899         XvaNestedList*.
11900
11901         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
11902         preedit_draw_callback, preedit_caret_callback): Match
11903         "preedit-changed" signal name to "preedit_changed" to be
11904         consistent to the spec.
11905
11906         * gtk/gtkimcontextsimple.c (check_table):
11907         Match "preedit-changed" to "preedit_changed" to be consistent
11908         to the spec.
11909
11910 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
11911
11912         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
11913         gc->clip_region == NULL>
11914
11915 2000-11-30  Tor Lillqvist  <tml@iki.fi>
11916
11917         Changes by Hans Breuer:
11918         
11919         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
11920         Dont't use negative width and height as max_hints. This fixes
11921         Owen's recent testgtk changes for win32.
11922
11923         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
11924         gdk_win32_hdc_release): These are exported and may be called with
11925         other drawable types than our GdkDrawableImplWin32 (?).
11926
11927         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
11928         so always #define USE_BACKING_STORE.
11929
11930         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
11931         of printf for debugging output.
11932
11933         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
11934         
11935         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
11936
11937         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
11938         declaration.
11939
11940         * gtk/gtktexttypes.h: Ditto.
11941
11942         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
11943         (GDK_VoidSymbol) also if in case of arg check failure.
11944
11945         * gtk/gtkimcontextsimple.c
11946         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
11947         position to the pointer, but to the variable it points to.
11948
11949         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
11950
11951         * gtk/gtk.def: Updates.
11952
11953 2000-11-29  Elliot Lee  <sopwith@redhat.com>
11954
11955         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
11956         GTK_TYPE_TREE_MODEL.
11957
11958 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11959
11960         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
11961         Set the size of the font from the description.
11962         (gdk_text_width): Gross hack that calculates the width
11963         of text by text_length * size/2. This is necessary because
11964         GtkLabel does some ugly gtk_string_width call to calculate
11965         an good size.
11966         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
11967
11968 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
11969
11970         * docs/tutorial/gtk-tut.sgml: DND updates
11971
11972 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11973
11974         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
11975         If you pass width or height == 0 to gdk_window_clear_area they
11976         should be calculated from the window size.
11977
11978 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11979
11980         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
11981         a grab, but no grab-cursor, use the cursor from the grabbed
11982         window. (gdk_fb_window_send_crossing_events): Send normal
11983         enter/leave notifications if grab and owner_events == TRUE.
11984
11985 2000-11-29  Alexander Larsson  <alexl@redhat.com>
11986
11987         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
11988         Do implicit button grabs, even if the window doesn't
11989         want the event.
11990         (gdk_fb_window_send_crossing_events): If there is a
11991         grab, only the grabbed window gets normal enter/leave
11992         notifications. On ungrab go from grabbed window to current.
11993         Don't send any notification to b when propagating from c -> b.
11994         If setting a grab on window, don't set prev_window.
11995         (handle_mouse_input): Send enter/leave events to the window the
11996         mouse is over, not the grabbed one.
11997         
11998 2000-11-28  Elliot Lee  <sopwith@redhat.com>
11999
12000         * gdk/gdkregion-generic.c: Zap warning.
12001         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
12002         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
12003
12004 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
12005
12006         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
12007         The cursor should be hidden if it is part of either the
12008         source or destination region. Not only if it is in both.
12009         (gdk_window_set_transient_for): Silence warnings.
12010
12011 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12012
12013         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
12014         The default mode in X is Pie Arcs, therefore that is
12015         what Gtk+ uses.
12016
12017 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12018
12019         * gdk/linux-fb/gdkinput-ps2.c:
12020         Implement correct EnterNotify/LeaveNotify:
12021         (gdk_fb_window_send_crossing_events): New function that sends
12022         all GdkCrossingEvents from the last mouse-window to the specified
12023         destination.
12024         (gdk_fb_window_visibility_crossing): Removed function.
12025         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
12026         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
12027         instead of gdk_window_get_pointer() for better readability.
12028
12029         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
12030         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
12031
12032         * gdk/linux-fb/gdkprivate-fb.h:
12033         removed gdk_fb_window_visibility_crossing, added
12034         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
12035
12036         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
12037         New function that finds the least common ancestor of two windows.
12038         (gdk_window_show, gdk_window_hide):
12039         Use gdk_fb_window_send_crossing_events.
12040         (gdk_fb_window_move_resize): Send configure events to toplevel
12041         windows. Use gdk_fb_window_send_crossing_events.
12042
12043 2000-11-27  Havoc Pennington  <hp@redhat.com>
12044
12045         * gtk/gtkprivate.h (enum): Remove a trailing comma
12046
12047 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
12048
12049         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
12050         the "changed" callback of the adjustment.  We need to redraw the
12051         spin button's arrows when the adjustment's range changes.
12052         (adjustment_changed_cb): Draw the arrows.
12053         (gtk_spin_button_value_changed): Draw the arrows.
12054
12055 2000-11-23  Alexander Larsson  <alexl@redhat.com>
12056
12057         * gdk/linux-fb/gdkselection-fb.c:
12058         Initial selection implementation.
12059
12060         * gtk/gtkselection.c:
12061         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
12062         requestor in gtk_selection_request.
12063         
12064         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
12065         Added gdk_selection_property atom.
12066
12067         * gdk/linux-fb/gdkprivate-fb.h:
12068         Export _gdk_selection_window_destroyed.
12069         Removed mask_off_x/y from GdkCursorPrivateFB.
12070         Removed hbearing, added top, left to PangoFBGlyphInfo.
12071
12072         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12073         Call _gdk_selection_window_destroyed
12074         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
12075         the root window has been created.
12076         (static_dx_hack, static_dy_hack, compare_draw_rects,
12077         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
12078         in region. They are already sorted. Instead just traverse them in
12079         reverse if draw_direction < 0.
12080         
12081         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12082         Double-clicks must be sent after the normal button_press.
12083         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
12084         
12085         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
12086         Pass _gdk_fb_screen_gc instead of NULL.
12087
12088         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
12089         Initialize gdk_selection_property.
12090         (gdk_event_make): Remove unused code.
12091
12092         * gdk/linux-fb/gdkcursor-fb.c:
12093         Make the pixmap for the cursor the same size as the mask. Also remove
12094         the mask_off_x/y fields in GdkCursorPrivateFB and combine
12095         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
12096         Now the whole cursor is visible.
12097
12098         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12099         Fix bug where xdest+height instead of ydest+height was used
12100         to calculate if the source and dest overlapped. This fixes the
12101         redraw bug when the main window in testgtk was scrolled when
12102         partially covered by a tall window.
12103         Copy rectangles in region in order depending on draw_direction.
12104         Also moved the draw_direction flipping of start_y and end_y into
12105         the gc functions, as this might not be what all of them want.
12106         (gdk_fb_draw_lines): Support dashed lines.
12107         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
12108         so that the text is positioned correctly (was 1 pixel high).
12109
12110         gdk/linux-fb/gdkgc-fb.c:
12111         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
12112         all lines were drawn a pixel to short. Also checked the default of
12113         the rest of the values, and they're the same as X now.
12114
12115         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
12116         Clean up pixel positioning of the glyphs. Just use bgy->top and
12117         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
12118         to all divisions to get correct rounding behaviour.
12119
12120         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
12121         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
12122         Moved start_y/end_y flip into draw_drawable implementations.
12123         Flip also x rendering when draw_direction < 0.
12124         Remove unneccesary multiply with draw_direction.
12125
12126 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
12127
12128         * docs/tutorial/gtk-tut.sgml:
12129           - get rid of gtk_toggle_button_toggled FUD
12130           - start DND section - needs work - based on:
12131                 http://wolfpack.twu.net/docs/gtkdnd/
12132
12133 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12134
12135         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12136         Correct calculation of font metrics. Now GtkEntrys have sane
12137         size.
12138
12139 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12140
12141         * gdk/gdktypes.h:
12142         Add new type GdkSpan
12143         
12144         * docs/reference/gdk/gdk-sections.txt,
12145         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
12146         gdk/gdkregion.h:
12147         Implement and document gdk_region_spans_intersect_foreach.
12148
12149         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
12150         Add new file gdkrender-fb.c which contains all core
12151         rendering code.
12152         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
12153         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
12154         (optimized rectangle fillers).
12155
12156         * gdk/linux-fb/gdkdrawable-fb2.c:
12157         Move all rendering code to gdkrender-fb.c.
12158         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
12159         Use the new span intersection functions in gdk_fb_fill_spans.
12160         gdk_fb_draw_rectangle() clips filled rectangles and calls
12161         gc->fill_rectangle with the result.
12162         gdk_fb_fill_spans() gets extra argument "sorted".
12163
12164         * gdk/linux-fb/gdkevents-fb.c:
12165         Remove unused includes and defines.
12166         New function gdk_fb_get_time() to get correct time for events.
12167
12168         * gdk/linux-fb/gdkinput-ps2.c:
12169         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
12170         Make sure to set the time of all events.
12171
12172         * gdk/linux-fb/gdkmain-fb.c:
12173         Use gdk_fb_get_time ().
12174
12175         * gdk/linux-fb/gdkprivate-fb.h:
12176         New virtual GC calls: fill_span & fill_rectangle.
12177         Export gdk_fb_get_time().
12178         gdk_fb_fill_spans() gets extra argument "sorted".
12179
12180         * gdk/linux-fb/mi*.c:
12181         Use GdkSpan instead of GdkRectangle.
12182         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
12183         from XFree 4 source)
12184         
12185 2000-11-22    <jrb@redhat.com>
12186
12187         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
12188         reversing the order in an if statement will do.  Doing so managed
12189         to make the treemodelsort half work.  Other half will follow after
12190         I get the insert function fully fixed.
12191
12192 2000-11-21  Elliot Lee  <sopwith@redhat.com>
12193         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
12194         more than 2 bits. Besides, I need to implement an evil hack. :)
12195
12196 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
12197
12198         * docs/tutorial/gtk-tut.sgml: minor corrections
12199
12200 2000-11-20  Jonathan Blandford <jrb@redhat.com>
12201         * gtk/gtktreemodelsort.h: Add convertion functions to let you
12202           convert to and from relative path's and iters.
12203
12204         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
12205           testing sorting functions a bit better.  Currently broken -- will
12206           fix in morning.
12207
12208 2000-11-20  Havoc Pennington  <hp@redhat.com>
12209
12210         * gtk/gtkwidget.c: Documented a bunch of functions in here
12211         (gtk_widget_realize): Warn if you try to realize
12212         a widget with no parent that isn't a toplevel
12213         (gtk_widget_intersect): return a gboolean
12214
12215 2000-11-20  Havoc Pennington  <hp@redhat.com>
12216
12217         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
12218         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
12219         scrolling to be implemented in GDK to finish. Also, right now
12220         we just size_allocate all children on every layout change,
12221         which is pretty lame. Test commented out of testtext.c, 
12222         until it works better.
12223
12224 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
12225
12226         * gdk/linux-fb/gdkdrawable-fb2.c:
12227         Removed unused arguments from gdk_fb_drawable_get_pixel().
12228
12229         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
12230         Renamed fidur specific mouse packet data in MouseDevice to
12231         generic. Used it in ps2 mouse handling code to avoid blocking
12232         reads.
12233
12234 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
12235
12236         * demos/gtk-demo/main.c: Changed to have the list become
12237         non-italic when the demo window is destroyed through an external
12238         event (like a close button).  Doing so found three bugs in the
12239         widget.
12240
12241         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
12242
12243         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
12244         we actually set the cell.
12245
12246         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
12247
12248         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
12249         free a leaked path.  Thanks memprof.
12250
12251 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
12252
12253         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
12254         off-by-one error when destroying allocated segments
12255         on failure. (Elliot)
12256
12257 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
12258
12259         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
12260         memleaks found by Evan Martin.
12261
12262 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
12263
12264         * Released 1.3.2
12265         
12266         * NEWS: Updates for 1.3.2
12267
12268 2000-11-17  Tor Lillqvist  <tml@iki.fi>
12269
12270         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
12271         but in general for window system specific events.
12272
12273         * gtk/gtk.def
12274         * gtk/makefile.mingw.in
12275         * gtk/makefile.msc.in: Update.
12276         
12277         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
12278
12279 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
12280
12281         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
12282         distribute gtk.immodules.
12283
12284         * gtk/Makefile.am (install-data-local): Don't install the
12285         gtk.immodules file created for the uninstalled modules;
12286         instead run gtk-query-immodules after install
12287
12288 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12289
12290         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
12291         -rpath to the right install location.
12292
12293         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
12294         -export-dynamic.
12295
12296         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
12297         properly.
12298
12299 2000-11-15  Havoc Pennington  <hp@pobox.com>
12300
12301         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
12302         patch from Mikael Hermansson to temporarily stop blinking while
12303         the user is using the keyboard to type or navigate. 
12304
12305         Also, when blinking, stay on for longer than we stay off. Also,
12306         return from start_cursor_blink if !cursor_visible, to save
12307         checking that flag all over the place before we call
12308         start_cursor_blink.
12309
12310 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
12311
12312         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
12313         only contain a "fontset" line, which is now ignored.
12314
12315         * gtk/gtkentry.c (gtk_entry_button_release): Make 
12316         double-click-to-select-word work.
12317         
12318 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
12319
12320         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
12321         Don't move back one char when we are actually at the end of the 
12322         paragraph.
12323
12324 2000-11-15  Robert Brady  <robert@suse.co.uk>
12325
12326         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
12327         'o' < 'p'.
12328         
12329         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
12330         bind_textdomain_codeset.
12331
12332         (gtk_init_check): Make the warning about translating default:LTR
12333         sterner.
12334         
12335 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
12336
12337         * **/Makefile.am : remove unecessary rules for win32-specific
12338         config-substituted targets. If you want these rules, use
12339         --enable-maintainer-mode (called automatically by autogen.sh).
12340         Stops a lot of unneccessary make-time warnings.
12341
12342         * gtk/gtktext{layout,display}.c: Factor in total width as
12343         well as screen when figuring alignment for word-wrap as well as
12344         no wrap; this is necessary to handle lines that cannot be wrapped
12345         at all.
12346
12347 2000-11-15  Havoc Pennington  <hp@redhat.com>
12348
12349         * gtk/testtext.c: Implement essential color cycling feature
12350
12351 2000-11-15  Havoc Pennington  <hp@redhat.com>
12352
12353         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
12354         when we invalidate the main window.
12355
12356         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
12357         GtkTextView will now invalidate the side windows for us when text
12358         changes.
12359
12360 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
12361
12362         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
12363         unconditionally, since we may need to update the horizontal
12364         scrollbars even if the height didn't change.
12365
12366         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
12367         the extra attrs, since some of them affect size.
12368
12369         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
12370         x_offset correctly.
12371
12372 2000-11-15  Havoc Pennington  <hp@redhat.com>
12373
12374         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
12375         don't move the first line out into the margin, instead move the
12376         whole paragraph in order to make space for the first line within 
12377         the margin
12378
12379 2000-11-15  Havoc Pennington  <hp@redhat.com>
12380
12381         * gtk/gtktextview.c (changed_handler): offset redraw rect by
12382         xoffset in addition to yoffset, so horizontal scrolling doesn't
12383         break redraws
12384
12385 2000-11-15  Havoc Pennington  <hp@redhat.com>
12386
12387         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
12388         from the cursor
12389         (render_layout_line): fix reversed test that caused weird
12390         underlines to get drawn
12391
12392 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12393
12394         * gdk/linux-fb/gdkprivate-fb.h:
12395         Fix debug macros.
12396         
12397 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12398
12399         * gdk/linux-fb/gdkprivate-fb.h:
12400         Added virtual functions set_pixel, get_color,
12401         fill_span and draw_drawable to the GC.
12402         Added global _gdk_fb_screen_gc to use instead of
12403         NULL when drawing to the screen.
12404         Added _gdk_fb_gc_calc_state() prototype.
12405
12406         * gdk/linux-fb/gdkgc-fb.c:
12407         Call _gdk_fb_gc_calc_state() on any gc state change.
12408
12409         * gdk/linux-fb/gdkglobals-fb.c:
12410         Add _gdk_fb_screen_gc
12411                 
12412         * gdk/linux-fb/gdkdrawable-fb2.c:
12413         _gdk_fb_gc_calc_state() calculates best functions
12414         for the GC state and depth.
12415         Moved bpp specialized code to separate functions.
12416         Added optimized 24 bpp AA draw_drawable.
12417
12418         * gdk/linux-fb/gdkevents-fb.c:
12419         Silence gcc warning.
12420
12421         * gdk/linux-fb/gdkimage-fb.c:
12422         Use _gdk_fb_screen_gc
12423
12424         * gdk/linux-fb/gdkwindow-fb.c:
12425         Init and use _gdk_fb_screen_gc
12426
12427         * gdk/linux-fb/mitypes.h:
12428         Remove unused types.
12429
12430 2000-11-14  Havoc Pennington  <hp@pobox.com>
12431
12432         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
12433         to pixels
12434
12435 2000-11-14  Havoc Pennington  <hp@pobox.com>
12436
12437         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
12438
12439         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
12440         unknown char, no real reason we were using a variable. 
12441         Remove gtk_text_unknown_char variable. Fix all the text widget
12442         files accordingly.
12443
12444         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
12445         since the Unicode spec seems to prefer that character for our
12446         purposes.
12447
12448 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
12449
12450         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
12451         value of g_getenv() isn't freeable, so g_strdup it.
12452
12453         * modules/input/inuktitut.c: Inuktitut input method.
12454
12455         * modules/input/Makefile.am: Build this.
12456         
12457 2000-11-14  Elliot Lee  <sopwith@redhat.com>
12458
12459         * gtk/Makefile.am: Install gtk.immodules, needed for operation
12460         of gtk programs.
12461
12462 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
12463
12464         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
12465         reversed > that was causing Home to go to end of previous line.
12466
12467         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
12468         modified-keypresses (leave for bindings.)
12469
12470         * modules/input/Makefile.am: Remove useless -export-dynamic
12471         from module LDFLAGS.
12472
12473 2000-11-14  Havoc Pennington  <hp@redhat.com>
12474
12475         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
12476         higher.
12477
12478         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
12479         account. Also, render rise, underline, background, etc. for
12480         pixbufs as well as text. Also, draw underlines one pixel higher.
12481
12482         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
12483         PangoAttribute for the rise, so it gets drawn properly. Also,
12484         add the GtkTextAppearance attribute for pixbuf/widget segments
12485         as well; we should go ahead and have rise, underline, background,
12486         stipple work for those
12487
12488         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
12489         Pango
12490
12491 2000-11-15  Tor Lillqvist  <tml@iki.fi>
12492
12493         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
12494
12495         * gtk/gtk.def: Update.
12496
12497         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
12498         included.
12499         (gtk_rc_get_im_module_file): Use run-time installation directory
12500         on Win32.
12501
12502         * gdk/win32/rc/gdk.rc: Remove.
12503         * gdk/win32/rc/gdk.rc.in: New file.
12504         * gdk/win32/rc/Makefile.am: New file
12505         * gdk/win32/Makefile.am: Corresponding changes.
12506
12507         * gtk/gtk.rc: Remove.
12508         * gtk/gtk-win32.rc.in: New file.
12509         * gtk/Makefile.am: Corresponding changes.
12510
12511         * configure.in: Corresponding changes.
12512
12513         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
12514         has a built gtkcompat.h. Developers using CVS code on Win32 can
12515         hand-edit it from gtkcompat.h.in.
12516
12517         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
12518         gtkcompat.h from gtkcompat.h.win32.
12519
12520 2000-11-14  Havoc Pennington  <hp@redhat.com>
12521
12522         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
12523         to default to GDK_ACTION_MOVE if the drag is within a single
12524         widget. Defaults to GDK_ACTION_COPY between widgets.
12525
12526 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
12527
12528         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
12529
12530         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
12531
12532         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
12533         srcdir != builddir
12534
12535         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
12536
12537         * configure.in (GTK_VERSION): Up to 1.3.2
12538
12539         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
12540         gtkimcontextxim.h
12541
12542         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
12543         missing doc comment.
12544
12545 2000-11-14  Alexander Larsson  <alexl@redhat.com>
12546
12547         * modules/linux-fb/basic.c:
12548         Use the glib iconv wrappers.
12549
12550 2000-11-13  Havoc Pennington  <hp@pobox.com>
12551
12552         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
12553         still more bugs.
12554
12555         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
12556         scroll the GdkWindows before realization.
12557
12558 2000-11-13  Havoc Pennington  <hp@redhat.com>
12559
12560         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
12561         where GC didn't always get updated properly
12562
12563         * demos/gtk-demo/textview.c (create_tags): Use subattributes
12564         of fonts instead of setting the entire font
12565
12566         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
12567         setting entire font
12568
12569         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
12570
12571         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
12572         a bunch of individually-settable font attributes. You can still 
12573         use the "font" and "font_desc" args, they just set all the font
12574         attributes at once.
12575
12576 2000-11-13 Elliot Lee <sopwith@redhat.com>
12577
12578         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
12579
12580 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
12581
12582         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
12583         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
12584
12585         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
12586         work better.
12587
12588 2000-11-13  Havoc Pennington  <hp@redhat.com>
12589
12590         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
12591         the module file.
12592
12593         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
12594         dest->language
12595
12596         * gtk/testtext.c: Test pixels above/below/inside paragraphs
12597         settings
12598
12599         * gtk/gtktextview.c: Implement object args and setters/getters for
12600         all the aspects of the GtkTextAttributes that are not set from
12601         GtkWidget attributes. This is spacing, justification, margins,
12602         etc.
12603
12604         (gtk_text_view_set_arg)
12605         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
12606         args
12607         (gtk_text_view_class_init): Add args for justify, left_margin,
12608         right_margin, indent, and tabs
12609         
12610
12611         * gtk/gtktextlayout.c (set_para_values): fix to display indent
12612         attribute properly
12613
12614         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
12615         replace with indent attribute
12616
12617         * gtk/gtktextlayout.c (set_para_values): multiply indent by
12618         PANGO_SCALE
12619
12620         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
12621         rearranging code to do that
12622         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
12623         i.e. don't subtract the top_margin first, just to keep
12624         all margin-futzing in one place.
12625
12626         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
12627
12628         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
12629         special case of last line, Pango now handles this itself.
12630         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
12631         Y coordinate
12632         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
12633         (find_display_line_above): wasn't moving the byte index as it
12634         iterated over lines, so always returned byte 0. Also, port to use
12635         PangoLayoutIter.
12636         (find_display_line_below): same problem as
12637         find_display_line_above. Also, port to use PangoLayoutIter.
12638
12639 2000-11-13  Alexander Larsson  <alexl@redhat.com>
12640
12641         * gdk/linux-fb/*.[ch]:
12642         Massive reindent to gtk+ standard. My hands hurt.
12643
12644         * gdk/linux-fb/gdkcolor-fb.c:
12645         Move GdkColorPrivateFB from inherited to windowing_data
12646
12647         * gdk/linux-fb/gdkcursor-fb.c:
12648         _gdk_cursor_new_from_pixmap made static
12649
12650         * gdk/linux-fb/gdkdnd-fb.c:
12651         GdkDragContextPrivate moved to windowing_data
12652
12653         * gdk/linux-fb/gdkdrawable-fb2.c:
12654         Removed endian.h, use glib endianness macros instead
12655         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
12656         and GDK_DRAWABLE_IMPL_FBDATA
12657
12658         * gdk/linux-fb/gdkfont-fb.c:
12659         Add empty gdk_font_load(). Needed for linking of Gtk+.
12660
12661         * gdk/linux-fb/gdkimage-fb.c:
12662         Removed endian.h, use glib endianness macros instead
12663         Moved GdkImagePrivateFB to windowing_data
12664         gdk_image_new_bitmap didn't always allocate enough
12665         memory.
12666
12667         * gdk/linux-fb/gdkinput-ps2.c:
12668         Added semi-working support for MS serial mice.
12669
12670         * gdk/linux-fb/gdkprivate-fb.h:
12671         s/GdkWindowPrivate/GdkWindowObject/
12672         Removed GdkWindowPrivate typedef
12673         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
12674         Removed GDK_DRAWABLE_P
12675         Move GdkColorPrivateFB from inherited to windowing_data
12676         Moved GdkImagePrivateFB to windowing_data
12677
12678         * gdk/linux-fb/gdkvisual-fb.c:
12679         Removed some unused debug code.
12680
12681         * gdk/linux-fb/gdkwindow-fb.c:
12682         Use stock cursors instead of including X headers.
12683         s/GdkWindowPrivate/GdkWindowObject/
12684
12685         * gdk/linux-fb/mitypes.h:
12686         Removed unused types.
12687
12688         * modules/linux-fb/basic.c:
12689         Use the pango fribidi wrappers.
12690
12691 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
12692
12693         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
12694         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
12695         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
12696         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
12697         GEqualFunc where applicable.
12698         
12699         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
12700         pango_font_description_equal as changed in pango.
12701         
12702         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
12703
12704         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
12705
12706         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
12707
12708         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
12709
12710         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
12711
12712         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
12713
12714         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
12715         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
12716
12717         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
12718         gtk_rc_styles_compare -> gtk_rc_styles_equal.
12719
12720 2000-11-12  Havoc Pennington  <hp@pobox.com>
12721
12722         * demos/gtk-demo/Makefile.am (democodedir): change demo install
12723         dir to datadir/gtk+-2.0/demo
12724
12725         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
12726         sorts of text widget and Pango font bugs. Urgh.
12727
12728         * demos/gtk-demo/Makefile.am (demos): Add textview.c
12729
12730         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
12731         tree that you should double click to see the demo. Fix 
12732         types of variables to reflect changed return values from 
12733         GtkTreeStore and GtkTreeViewColumn constructors.
12734
12735         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
12736         newly-created buffer to prepare for GObject semantics
12737
12738         * gtk/testtext.c: don't leak the buffer with GObject semantics
12739
12740         * gtk/testtextbuffer.c: ditto
12741         
12742 2000-11-12  Havoc Pennington  <hp@pobox.com>
12743
12744         Rename this testgtk to gtk-demo to avoid confusion, and 
12745         install it so people can use it as a supplement to 
12746         the documentation.
12747         
12748         * demos/gtk-demo: Moved from demos/testgtk
12749
12750         * demos/testgtk: Removed
12751
12752         * configure.in: make Makefile in gtk-demo
12753         
12754         * demos/gtk-demo/Makefile.am: Install sample source to 
12755         datadir/gtk-demo (maybe there's a better place?), and 
12756         rename the binary to gtk-demo
12757         
12758         * demos/gtk-demo/main.c (load_file): Load installed sample
12759         source if source isn't found in pwd.
12760
12761 2000-11-09  Havoc Pennington  <hp@pobox.com>
12762
12763         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
12764         argument to set the char displayed when visibility == FALSE
12765         (gtk_entry_create_layout): If !entry->visible, replace 
12766         all chars with the "invisible char"
12767
12768         * gtk/testgtk.c: Test the invisible_char deal
12769         
12770 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
12771
12772         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
12773         can't get a native font in the right encoding.
12774
12775 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
12776
12777         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
12778         respectively.
12779
12780 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
12781
12782         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
12783         Fix warning when moving between paragraphs.
12784
12785         * gtk/gtkentry.[ch]: Change move => move_cursor, 
12786         delete => delete_from_cursor, insert => insert_at_cursor
12787
12788 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
12789
12790         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
12791
12792         * modules/input/imthai-broken.c: A Thai input method for use if
12793         Thai keys are really generating Latin1 keysyms.
12794
12795         * modules/input/Makefile.am: Build these.
12796
12797 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
12798
12799         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
12800         g_filename_{to,from}_utf8 now takes an extra parameter.
12801
12802         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
12803         strftime into UTF-8.
12804
12805         (column_from_x, gtk_calendar_paint_day_names): Support RTL
12806         calendars.
12807
12808         (gtk_calendar_paint_day_names): Draw day names in the right 
12809         place.
12810         
12811 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
12812
12813         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
12814         problem with using result of g_get_charset() backwards -
12815         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
12816
12817         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
12818         negative min_width/height and max_width/height to
12819         mean "requisition"; this allows setting a window
12820         to be user-resizable in only one direction easily.
12821
12822         * gtk/testgtk.c (create_main_window): Remove hard-coded
12823         usize - set a default size in the vertical direction.
12824
12825 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
12826
12827         * gtk/gtkrange.c: Add some missing casts. Support 
12828         2 and 3 button clicks on the arrows to mean 
12829         "move by pages" and "jump to end". (Like gtkspinbutton)
12830
12831 2000-11-12 Hans Breuer <Hans@Breuer.Org>
12832
12833         * gdk/win32/makefile.msc : reflect build module changes
12834
12835         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
12836         from GdkPixmap*, cast implementation member instead.
12837
12838         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
12839         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
12840         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
12841         more Gdi functions return value checking. 
12842         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
12843         GdkImagePrivateWin32 *.
12844
12845         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
12846         menus useable again. Add #pragma message to keep reminded on this issue.
12847         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
12848         windows. This allows to enable backing store on Win32!
12849
12850         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
12851         in drawable is of impl type. Correct specific type checks appropriate.
12852  
12853         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
12854         GDK_WINDOW_DESTROYED before allocating new resources.
12855
12856         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
12857
12858         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
12859         (gdk_window_foreign_new) initialize parent handle.
12860         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
12861
12862         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
12863         Let the GDI invalidate the window on MoveWindow call to fix scrolling
12864         problems (e.g. main buttons in testgtk). 
12865
12866 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
12867
12868         * gtk/gtkentry.c (gtk_entry_key_press): Call 
12869         gtk_widget_activate for GDK_Return.
12870
12871         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
12872         of preedit cursor position.
12873
12874 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
12875
12876         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
12877         static.
12878
12879 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
12880
12881         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
12882         out support for multiple locales; that simple doesn't
12883         work reliably with current Xlib
12884
12885         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
12886         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
12887         Add support for positioning the cursor within the preedit string.
12888
12889 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
12890
12891         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
12892         at XIM input method module.
12893
12894         * gtk/gtktextview.c: Check for bindings after passing
12895         events to im context filter.
12896
12897 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
12898
12899         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
12900         empty attribute lists properly.
12901
12902 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
12903
12904         * gtk/queryimmodules.c (main): Return non-zero exit
12905         status if errors were encountered querying any
12906         modules.
12907
12908         * modules/input/Makefile.am (moduledir): remove
12909         leftover bin program target.
12910
12911         * docs/make-todo: Fix typo in error message.
12912
12913 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
12914
12915         * configure.in: Add modules/input/Makefile
12916
12917 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
12918
12919         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
12920         don't include gtkthemes.h.
12921
12922         * gtk/testgtk.c gtk/testtext.c: Set environment variables
12923         to point
12924
12925         * gtk/Makefile.am: Add new .c and .h files, build 
12926         gtk-query-immodules and use it to create a gtk.immodules
12927         file for use of test programs.
12928
12929         * gtk/gtkpreview.c: remove extra blank line.
12930
12931 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
12932
12933         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
12934         Add the ability to add extra tables beyond the default
12935         one, and also the ability to have compose sequences 
12936         that are prefixes of other compose sequences. 
12937
12938         * gtk/gtkimcontextsimple.c: Export a preedit string which
12939         consists of possible candidates for keystrokes that have
12940         been entered but not yet committed.
12941
12942         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
12943         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
12944
12945         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
12946         Add a function to add input-method switching menu items
12947         to a menu.
12948
12949         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
12950         when switching input methods.
12951
12952         * gtk/gtkimcontextsimple.[ch]: Change the format of
12953         the compose table to allow compose tables of different
12954         lengths / sequence.
12955
12956 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
12957
12958         * gtk/gtkimmodule.[ch]: Support routines for loading
12959         GtkIMContext implementations dynamically at runtime.
12960
12961         * modules/input/imcyrillic-translit.c: A sample input
12962         method (based on GtkIMContextSimple with an extra table),
12963         which demonstrates preedit strings and the module
12964         system for input modules
12965
12966         * gtk/queryimmodules.c: Program to query the available
12967         input modules and write the results into a file.
12968          
12969         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
12970         extra config options "im_module_file" (cache file for
12971         input method modules), and "im_module_path" - path
12972         to look for modules when generating cache file.
12973
12974         This doesn't scale.
12975
12976 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
12977
12978         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
12979         generic code from gtkthemes into a new abstraction
12980         GtkModule which has the logic for implementing
12981         a loadable module which implements a number of 
12982         GObject types.
12983
12984 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
12985
12986         * gtk/gtkeditable.[ch]: Convert GtkEditable from
12987         a class into an interface  
12988         
12989         * gtk/gtkoldeditable.[ch]: Move the old editable
12990         implementation into here, so legacy widgets can
12991         still rely on the implemenation. GtkOldEditable
12992         exports GtkEditable. Make selection handling
12993         code use new text conversion functions (and
12994         handle UTF-8 as a side-effect). Use GtkClipboard
12995         for CLIPBOARD.
12996
12997         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
12998         Adopt to match above changes.
12999
13000         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
13001         avoid GtkOldEditable implementation. Restructure
13002         to reduce number of places that modify state directly.
13003         Move to GtkBindingSet. Display the preedit string.
13004         Queue recomputation of PangoLayout and scroll position
13005         to improve effiency of doing complex changes naively.
13006         Add a menu with cut/copy/paste and input method selection.
13007
13008 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
13009
13010         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
13011         to set preedit string and attributes; display preedit string by
13012         inserting string and attributes at cursor when creating the
13013         GtkTextLineDisplay.
13014
13015         * gtk/gtktextlayout.c: Move all conversions between byte
13016         positions in PangoLayout and GtkTextIter into new functions
13017         line_display_iter_to_index/index_to_iter that properly
13018         handle the preedit string.
13019
13020         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
13021         it to return const char * (eventually will end up
13022         as GCONST char *, most likely.)
13023
13024         * gtk/gtktextview.[ch]: Handle the preedit string, call
13025         gtk_im_context_reset() as necessary, add a menu to switch
13026         input methods.
13027         
13028         * gtk/gtktextlayout.[ch]: Remove useless
13029         gtk_text_layout_get_log_attrs() function.
13030
13031 2000-11-11  Tor Lillqvist  <tml@iki.fi>
13032
13033         * gdk/gdk.def
13034         * gtk/gtk.def: Update.
13035
13036         * gdk/win32/*.c: Add last argument to g_type_register_static()
13037         calls.
13038
13039         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
13040
13041         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
13042         generated by older wheel mouse drivers. Get the correct y
13043         coordinate from WM_MOUSEWHEEL messages.
13044
13045         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
13046         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
13047         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
13048         Debugging functions.
13049
13050         * gdk/win32/gdkprivate-win32.h: Declare them.
13051
13052         * gdk/win32/gdkinput-win32.h: Add declaration for
13053         gdk_input_window_destroy().
13054
13055         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
13056
13057 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
13058
13059         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
13060         function to help handle keeping things in sync.
13061
13062 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
13063
13064         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
13065         BOXED marshallers.
13066
13067         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
13068         (gtk_list_store_class_init): use the new BOXED marshallers.
13069
13070         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
13071         new_with_values to new_with_types.
13072         (gtk_tree_store_get_column_type): add this.
13073         (gtk_tree_store_class_init): use the new BOXED marshallers.
13074
13075         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
13076         mirror some POINTER marshallers.
13077
13078 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
13079
13080         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
13081         allow more interesting iterators.  Also, made the lifecycle of
13082         iterators more explicit.
13083
13084         * gtk/gtktreemodelsort.[ch]: New model for sorting.
13085
13086         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
13087         types.
13088
13089 2000-11-09  Alexander Larsson  <alexl@redhat.com>
13090
13091         * demos/testgtk/menus.c:
13092         Changes to make the new testgtk compile after
13093         gtk_menu_append was removed.
13094
13095         * gdk/linux-fb/gdkdrawable-fb2.c
13096         (gdk_fb_get_depth, gdk_fb_get_visual,
13097         gdk_drawable_impl_fb_class_init): Implement
13098         these drawable functions. Now GtkImages work again.
13099
13100         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
13101
13102         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
13103         
13104         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
13105         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
13106         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
13107         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
13108
13109 2000-11-08  Havoc Pennington  <hp@pobox.com>
13110
13111         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
13112         visible_set args, don't know where these had gone, I thought they
13113         used to be there
13114
13115         * gtk/testtext.c: Add a menu item to apply invisibility tag;
13116         now we can test the feature and see that it's totally broken.
13117
13118 2000-11-08  Havoc Pennington  <hp@pobox.com>
13119
13120         Make DND copy pixbufs and tags when source and target share a 
13121         tag table.
13122         
13123         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
13124         in-process GTK_TEXT_BUFFER_CONTENTS target
13125         (gtk_text_view_drag_data_received): Paste from
13126         GTK_TEXT_BUFFER_CONTENTS if we receive it.
13127
13128 2000-11-08  Alexander Larsson  <alexl@redhat.com>
13129
13130         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
13131         API changes.
13132
13133         * gtk/gtkmenu.c: Add support for scrolling menus.
13134         Remove gtk_menu_append/prepend/insert, these have been moved to
13135         gtkcompat.h as #defines.
13136
13137         * gtk/gtkcompat.h.in:
13138         Add compatibility #defines for gtk_menu_append/prepend/insert
13139
13140         * gtk/gtkmenu.h: Add data needed for scrolling menus.
13141         GtkMenuPositionFunc gets an extra argument push_in.
13142         gtk_menu_append/prepend/insert removed.
13143         
13144         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
13145         positioning behaviour to fit to scrolling menus.
13146
13147         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
13148         into menuitem->submeny. That is wrong, and broke torn
13149         off submenus of torn off menus, since they were unrealized
13150         when the first menu was unrealized.
13151
13152         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
13153         gtk_menu_shell_select_item() since these need to be overridden in
13154         GtkMenu.
13155
13156         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
13157         positioning behaviour to fit to scrolling menus.
13158         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
13159         the current item so that it is prelighted when the menu pops up.
13160         This is a workaround to the fact that the menu doesn't get the
13161         initial enter event (due to grabs).
13162
13163         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
13164         s/gtk_menu_append/gtk_menu_shell_append/
13165
13166         * gtk/gtknotebook.c:
13167         s/gtk_menu_insert/gtk_menu_shell_insert/
13168
13169         * gtk/testgtk.c (create_menu, create_menus):
13170         Create the first menu with 50 items so that menu scrolling
13171         can be tested.
13172         
13173         
13174         Patch from Jonathan Blandford  <jrb@redhat.com>
13175
13176         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
13177         system to handle size requests.  First, we ask what the size of
13178         the toggle is.  Then, when allocating the size, we allocate the
13179         toggle_size first.  This way we can have multiple menu-item
13180         classes w/o needing a seperate class for each.
13181
13182         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
13183         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
13184
13185         * gtk/gtkcheckmenuitem.c
13186         (gtk_check_menu_item_toggle_size_request): New function to handle
13187         the toggle size-request.
13188
13189 2000-11-07  Havoc Pennington  <hp@redhat.com>
13190
13191         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
13192         Half-ass somewhat fix this function, so that scrolling to the
13193         insertion point works. Pango hacking is in the future to really
13194         fix it.
13195
13196         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
13197         length of data, no longer used.
13198
13199         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
13200         method contents in here, get rid of destroy method
13201         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
13202         that were backward. Remove debug spew.
13203         (cut_or_copy): Make the clipboard work with insert_range to
13204         preserve tags and pixbufs, not just the primary selection.
13205
13206 2000-11-07  Havoc Pennington  <hp@redhat.com>
13207
13208         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
13209         to gtk_text_mark_get_visible
13210
13211         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
13212         bug that was generating an invalid iterator
13213
13214         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
13215         ensure_char_offsets() in front of code placing the iter in an
13216         invalid state.
13217
13218         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
13219         make override_location arg const
13220         (paste): Replace the selection if we paste into the 
13221         current selection
13222
13223         * gtk/gtkselection.h: Remove "GtkSelectioData"
13224         (struct _GtkSelectionData): move the definition here.
13225
13226         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
13227         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
13228
13229         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
13230
13231         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
13232         (gtk_text_buffer_insert_range_interactive): implement
13233         (gtk_text_buffer_get_tags): Remove, replaced by
13234         gtk_text_iter_get_tags()
13235
13236         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
13237         limit parameter, to avoid infinite linear scan.
13238         (gtk_text_iter_backward_search): Add search limit
13239         (gtk_text_iter_forward_find_char): Add search limit
13240         (gtk_text_iter_backward_find_char): Add search limit
13241
13242 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
13243
13244         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13245         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
13246         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
13247         gdk/linux-fb/gdkwindow-fb.c:
13248         use g_object_new() instead of g_type_create_instance() which
13249         is a private function for fundamental type implementations.
13250
13251         * gdk/linux-fb/gdkinput-ps2.c:
13252         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
13253         instead just store the current modifier state. Add a (somewhat broken)
13254         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
13255         Rename exported function gdk_input_ps2_get_mouseinfo to
13256         gdk_input_get_mouseinfo.
13257
13258         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
13259         gdk/linux-fb/gdkwindow-fb.c:
13260         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
13261         
13262
13263 2000-11-02  Havoc Pennington  <hp@redhat.com>
13264
13265         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
13266         use stock buttons. Should be 100% source compatible, appropriate
13267         filesel fields now point to dialog->vbox and dialog->action_area.
13268         On the bizarre side, dialog->action_area and filesel->action_area
13269         are not the same widget.
13270         (gtk_file_selection_init): Put some padding around the selection
13271         entry, so it isn't touching the GtkDialog separator.    
13272
13273         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
13274         use stock buttons, etc. Should also be source compatible.
13275         Set the dialog default title in _init not _new().
13276         
13277         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
13278         Use stock buttons; don't put a button box inside the existing
13279         dialog button box. Don't bother with push/pop colormap anymore.
13280
13281         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
13282         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
13283         for message dialog, and necessary for the font selection and color
13284         selection with help and apply buttons.
13285         
13286         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
13287         to the created button widget. Set GTK_CAN_DEFAULT on the button.
13288         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
13289         between buttons, put less padding around the action area.
13290         (gtk_dialog_run): Exit on unmap rather than on destroy. 
13291         This will also exit the loop if the widget is hidden.
13292         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
13293         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
13294         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
13295         special-case delete event.
13296
13297         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
13298         formatting
13299         
13300 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
13301
13302         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
13303         button to temporarily disable position recording in the
13304         "saved position" test.
13305
13306 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
13307
13308         * gtk/gtkthemes.c: added compat code that temporarily implements
13309         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
13310         going to be revamped by owen's upcoming GtkModule patches, but
13311         untill then people want gtk to build, right? ;)
13312
13313 2000-11-04  Havoc Pennington  <hp@pobox.com>
13314
13315         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
13316         list
13317
13318         * docs/Changes-2.0.txt: Add note about
13319         gtk_container_get_toplevels()
13320
13321         * gtk/gtktextview.h: formatting
13322         
13323         * gtk/gtktextview.c: don't start descriptions with "Returns",
13324         confuses gtk-doc
13325
13326 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
13327
13328         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
13329         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
13330
13331 2000-11-03  Havoc Pennington  <hp@redhat.com>
13332
13333         * gtk/gtktexttagtable.c: Docs
13334         (gtk_text_tag_table_size): return a signed int
13335
13336         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
13337         (gtk_text_tag_event): make the event_object a GObject
13338
13339         * gtk/gtktextview.c: Write API docs for all functions.
13340
13341         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
13342         for gtk_text_view_get_window_type() called on one of the private
13343         windows.
13344
13345         * gtk/gtktextview.c: Instead of accessing text_view->buffer
13346         directly, call get_buffer() which demand-creates a default
13347         buffer. So gtk_text_view_new() can be used to create a view with a
13348         default buffer in it, if you just want an empty text box users can
13349         put data in. Useful for GUI builders also.
13350
13351 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
13352
13353         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
13354         the charset encodign portion MUST be in lowercase.
13355         * gtk/gtkrc.az: added file for Azeri language
13356
13357 2000-11-03  Havoc Pennington  <hp@redhat.com>
13358
13359         Get widgets working on the btree/buffer side. Display of them 
13360         still doesn't work.
13361         
13362         * gtk/gtktextview.c: start implementing child widget stuff
13363
13364         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
13365
13366         * gtk/gtktextlayout.c: handle embedded widgets
13367
13368         * gtk/gtktextdisplay.c: handle embedded widgets
13369
13370         * gtk/gtktextchild.c: Implement all the child anchor goo
13371
13372         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
13373         function
13374
13375         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
13376         (insert_pixbuf_or_widget_segment): abstract out common portions of 
13377         creating a child anchor or a pixbuf segment.
13378         (gtk_text_btree_create_child_anchor): new function
13379         (gtk_text_btree_unregister_child_anchor): new function
13380
13381         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
13382         allocate_child signal on GtkTextLayout
13383
13384         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
13385         values
13386         (gtk_text_iter_get_child_anchor): new function
13387
13388         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
13389         default handler for the changed signal, which calls
13390         gtk_text_buffer_set_modified(), instead of just always emitting
13391         changed then calling set_modified() manually. I guess this is
13392         maybe more flexible. It seems logical.
13393
13394 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
13395
13396         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
13397         now.
13398
13399         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
13400
13401 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
13402
13403         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
13404         been marked static.
13405
13406 2000-11-02  Havoc Pennington  <hp@redhat.com>
13407
13408         * gtk/testgtk.c (create_labels): had a test backward
13409
13410         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
13411         fields, so the dest GC ends up with the correct clip origin, 
13412         etc. Fixes a bug where colored labels didn't redraw 
13413         properly.
13414
13415 2000-11-02  Alexander Larsson  <alexl@redhat.com>
13416
13417         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13418         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
13419         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
13420         Add last argument to t_type_register_static call.
13421         
13422         * gdk/linux-fb/gdkdrawable-fb2.c:
13423         Add last argument to t_type_register_static call.
13424         export the get_image drawable virtual function.
13425
13426         * gdk/linux-fb/gdkimage-fb.c:
13427         Add last argument to t_type_register_static call.
13428         rename gtk_image_get to _gdk_fb_get_image and
13429         export it for use by gdkdrawable-fb2.
13430
13431         * gdk/linux-fb/gdkprivate-fb.h:
13432         export _gdk_fb_get_image.
13433
13434         * gdk/linux-fb/gdkselection-fb.c:
13435         Add new api call stubs.
13436
13437         * gtk/Makefile.am:
13438         Missing ( in linux-fb part.
13439
13440         * modules/linux-fb/Makefile.am:
13441         Must link with gdk_pixbuf or get unresolved symbol.
13442
13443 2000-11-01  Havoc Pennington  <hp@pobox.com>
13444
13445         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
13446         GTK_TYPE_TEXT_ITER and BOXED marshallers
13447
13448         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
13449
13450         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
13451         
13452         * gtk/gtk-boxed.defs: add GtkTextIter
13453
13454         * gtk/gtkmarshal.list: Add marshallers for text widget that 
13455         properly use OBJECT and BOXED
13456
13457 2000-11-01  Havoc Pennington  <hp@redhat.com>
13458
13459         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
13460
13461         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
13462         before returning it. 
13463         
13464 2000-11-01  Havoc Pennington  <hp@redhat.com>
13465
13466         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
13467         Clip the rectangle to be rendered to the drawable, since
13468         get_from_drawable() requires a region within the drawable
13469
13470 2000-11-01  Havoc Pennington  <hp@redhat.com>
13471
13472         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
13473         from coordinates.
13474
13475 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
13476
13477         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
13478         it isn't NULL.
13479
13480 2000-11-01  Havoc Pennington  <hp@pobox.com>
13481
13482         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
13483         on a label
13484         (gtk_label_finalize): unref the attr list if any.
13485
13486         * gtk/testgtk.c (create_get_image): close test on second click
13487         (make_message_dialog): close dialog if it exists
13488
13489         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
13490
13491         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
13492         gdk-pixbuf
13493
13494         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
13495         from Pango markup format
13496         (gtk_label_set_markup_with_accel): ditto but with accelerator
13497         parsing
13498
13499         * gtk/gtkimage.c (gtk_image_expose): reformatting.
13500
13501         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
13502         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
13503         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
13504         call gdk_window_get_origin().
13505
13506         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
13507         implement GDK_PIXBUF_ALPHA_FULL
13508         
13509 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
13510
13511         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
13512         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
13513         g_signal_handlers_disconnect_matched to block/unblock and disconnect
13514         multiple handlers respectively, instead of only treating the
13515         first handler found (bug reported by owen).
13516
13517 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
13518
13519         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
13520
13521         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
13522
13523         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
13524         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
13525         gtk/gtktreeviewcolumn.h: Fixed inline docs.
13526
13527         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
13528         widget.  Needs writing someday.
13529
13530         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
13531         the docs.
13532
13533 2000-10-30  Havoc Pennington  <hp@redhat.com>
13534
13535         * gtk/gtktextview.h, gtk/gtktextview.c:
13536         Rename delete_at_cursor delete_from_cursor, and 
13537         move to move_cursor.
13538
13539 2000-10-30  Havoc Pennington  <hp@redhat.com>
13540
13541         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
13542         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
13543         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
13544         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
13545         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
13546         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
13547         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
13548         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
13549         gtktexttypes.h, gtktextview.c, gtktextview.h:
13550
13551         Massive reindentation and reformatting. Arg alignment and comments
13552         still need fixing in various places.
13553
13554 2000-10-30  Havoc Pennington  <hp@redhat.com>
13555
13556         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
13557         to be named insert_at_cursor and delete_at_cursor so C++ can
13558         handle them.
13559
13560 2000-10-28  Tor Lillqvist  <tml@iki.fi>
13561
13562         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
13563         to get a double directory separator in case the home directory
13564         ends with one. This would cause trouble especially on Windows,
13565         where the path will be confused with the syntax for an an UNC
13566         (network share) path \\server\share\path.
13567         (gtk_rc_add_initial_default_files): Ditto.
13568
13569 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
13570
13571         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
13572
13573         * gtk/gtktextview.c: Use correct marshallers.
13574
13575 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
13576
13577         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
13578         use new iter stuff, and added all the appropriate signals et al.
13579
13580         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
13581         code is internal to gtk only.
13582
13583 2000-10-28  Tor Lillqvist  <tml@iki.fi>
13584
13585         * gtk/gtk.def
13586         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
13587         glib-genmarshal etc.
13588
13589 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
13590
13591         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
13592         parallel builds.
13593
13594 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
13595
13596         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
13597
13598 2000-10-27  Robert Brady  <robert@suse.co.uk>
13599
13600         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
13601         en_GB (British), ia (Interlingua).
13602
13603 2000-10-26  Havoc Pennington  <hp@redhat.com>
13604
13605         * gtk/gtktextiter.c (my_strrstr): fix constness warning
13606
13607         Fixed output of:
13608         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
13609         
13610         * gtk/gtktextsegment.c (char_segment_new): rename
13611         (_char_segment_new_from_two_strings): rename
13612         (_toggle_segment_new): rename
13613         
13614         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
13615         (make_clipboard_widget): make it static
13616         (text_get_func): static
13617         (text_clear_func): static
13618
13619         * gtk/gtkcolorsel.c (adjustment_changed): make this function
13620         static
13621         (hex_changed): make it static
13622         (hsv_changed): make it static
13623         (opacity_entry_changed): make it static
13624
13625         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
13626         (toggle_segment_check_func): rename with _gtk
13627
13628         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
13629         (_widget_segment_new): rename
13630         (_widget_segment_add): rename
13631         (_widget_segment_remove): rename
13632         (_widget_segment_ref): rename
13633         (_widget_segment_unref): rename
13634
13635         * gtk/gtktextmark.c (_mark_segment_new): Rename
13636         _gtk_mark_segment_new   
13637
13638 2000-10-26  Havoc Pennington  <hp@redhat.com>
13639
13640         * gtk/gtkmarshal.list: add new marshallers used by the text widget
13641         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
13642         types
13643
13644         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
13645         marshaller types
13646
13647         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
13648         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
13649         license on these files.
13650
13651         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
13652         work.
13653
13654         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
13655         runtime random number different for each tree, instead of 
13656         a constant I made up.
13657
13658 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
13659
13660         * gtk/Makefile.am: buncha cleanups, kludged build sources
13661         dependencies with a Makefile: oldest-source-stamp dependancy
13662         for the moment. automake is really fighting us here, with
13663         intentionally not allowing user-defined rules or dependancies
13664         prior to it's -include $(DEP_FILES) statement. sucks rocks!
13665
13666         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
13667         to public headers. tehy have a comment stating that they are
13668         "semi-public" aren't included by gtk.h and if enums popup there,
13669         they can be /*< skip >*/-ed.
13670
13671         * gtk/gtktextlayout.h: 
13672         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
13673         added LGPL... <SIGH>
13674
13675 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
13676
13677         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
13678         GtkTreeIter.  Added iterators everywhere.
13679
13680         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
13681
13682         * gtk/gtktreeviewselection.c: Changed to use the iterators.
13683
13684         * gtk/gtktreestore.c: Changed to use the iterators.
13685
13686         * gtk/gtkliststore.c: Commented out the code.  Will convert to
13687         iterators tomorrow.
13688
13689         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
13690         iterators tomorrow.
13691
13692         * gtk/treestoretest.c: Changed to use iterators.
13693
13694         * demos/testgtk/main.c: Moved to use the new iterator system.
13695
13696 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
13697
13698         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
13699         localization misbehaviour.
13700
13701         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
13702         a useless type without copy/free.
13703
13704         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
13705         of GTK_TYPE_CTREE_NODE.
13706
13707 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
13708
13709         * gtk/gtksignal.c:
13710         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
13711         applicable.
13712
13713         * gtk/gtk-boxed.defs (GtkSelectionData): specify
13714         gtk_selection_data_copy and gtk_selection_data_free
13715         do GtkSelectionData work as params in signals.
13716
13717 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
13718
13719         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
13720         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
13721         couldn't they at least give it a non-standard name?
13722         
13723         * gtk/gtktextlayout.c: arg! yet another implementation of
13724         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
13725
13726         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
13727         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
13728         home. now i know this _is_ a conspiracy.
13729
13730         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
13731         ::state-changed.
13732
13733         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
13734         (gtk_accel_group_create_add): marshaller signature fixups.
13735
13736         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
13737         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
13738
13739         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
13740         anymore.
13741
13742 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
13743
13744         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
13745         due to the signal system changes, it wouldn't build currently. to
13746         be fixed soon.
13747
13748         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
13749
13750         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
13751         so it needs gtk_marshal_VOID__ENUM() instead of
13752         gtk_marshal_NONE__UINT().
13753
13754         * gdk/gdk*.c: adapted type registration functions.
13755
13756         * gtk/gtkbindings.c:
13757         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
13758         gone.
13759
13760         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
13761
13762         * gtk/gtkobject.c:
13763         (gtk_object_destroy):
13764         (gtk_object_shutdown): fixed recursion guards. basically we have to
13765         catch the case where any of GObject.shutdown() or gtk_object_destroy()
13766         is called during ::destroy, and avoid recursion there.
13767
13768         * gtk/gtktypeutils.c:
13769         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
13770         boxed_copy/boxed_free. this needs a more general solution based on a
13771         publically installed code-generator utility.
13772
13773         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
13774         glib's gobject has support for that now.
13775         define GtkSignalMarshaller in terms of GSignalCMarshaller.
13776
13777 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
13778
13779         * gtk/gtksignal.[hc]:
13780         * gtk/gtkmarshal.[hc]:
13781         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
13782         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
13783         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
13784         care of that.
13785
13786         * *.c: marshaller name fixups.
13787
13788         * gtk/gtkmarshal.list: added a comment briefing the format.
13789
13790 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
13791
13792         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
13793         compatibility macros here now. more specifically, most of
13794         the API is preserved (yes, _most_, nonwithstanding the
13795         following exceptions listed, the API is stil lHUGE ;)
13796         things that got removed completely:
13797         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
13798         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
13799         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
13800         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
13801         gtk_signal_remove_emission_hook().
13802         non-functional functions variants:
13803         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
13804         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
13805         not supported anymore.
13806         (gtk_signal_compat_matched): new internal function to aid
13807         implementation of the compatibility macros, it  provides
13808         functionality to block/unblock/disconnect handlers based
13809         on func/data.
13810
13811         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
13812
13813         * *.c: adaptions to new type registration API signatures.
13814
13815 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
13816
13817         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
13818
13819 2000-10-25  Robert Brady  <robert@suse.co.uk>
13820
13821         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
13822         gdk_property_delete): If window == NULL, assume the root window.
13823         (restoring the behaviour that was in 1.2).
13824         
13825         * gtk/testtext.c (save_buffer): Allow creation of new files when
13826         saving.
13827
13828         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
13829         calls to read().
13830
13831 2000-10-25  Tor Lillqvist  <tml@iki.fi>
13832
13833         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
13834
13835         * gdk/win32/gdkdrawable-win32.c
13836         * gdk/win32/gdkimage-win32.c
13837         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
13838         X11 backend.
13839
13840         * gdk/win32/gdkcc-win32.c
13841         * gdk/win32/gdkcolor-win32.c
13842         * gdk/win32/gdkfont-win32.c
13843         * gdk/win32/gdkinput-win32.c
13844         * gdk/win32/gdkmain-win32.c
13845         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
13846
13847 2000-10-24  Havoc Pennington  <hp@redhat.com>
13848
13849         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
13850         it a static function
13851
13852         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
13853         redraw text when a tag is applied to it.
13854
13855         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
13856         (gtk_text_tag_affects_nonsize_appearance): private functions to
13857         see if a tag requires various kinds of redraw/layout to be queued
13858         up.
13859
13860         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
13861
13862         * gtk/testtext.c (fill_example_buffer): Put the cursor 
13863         at the start of the buffer, so search works by default
13864
13865         * gtk/gtktextiter.c (lines_match): init match_start always
13866
13867         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
13868         function, get iter at a line + a byte index
13869
13870         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
13871         to set byte position within a line
13872         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
13873
13874 2000-10-23  Havoc Pennington  <hp@redhat.com>
13875
13876         * gtk/testtext.c: Re-enable the "find" dialog
13877
13878         * gtk/testgtk.c: Add test for gdk_drawable_get_image
13879         
13880         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
13881         the arguments to gdk_draw_drawable were in the wrong order
13882         (gdk_window_paint_init_bg): This function was ignoring the
13883         init_region, instead of clipping to it, so the entire backing
13884         pixmap was cleared on every begin_paint()
13885         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
13886         was in here again, the loop kept using the same GtkWindowPaint
13887         over and over.
13888         (gdk_window_begin_paint_region): Fix a bug where we had two
13889         x_offset instead of x_offset and y_offset
13890
13891         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
13892         before we get the image.
13893         (gdk_draw_drawable): get the composite before we draw the drawable.
13894         (gdk_drawable_real_get_composite_drawable): default
13895         get_composite_drawable implementation that returns the drawable 
13896         itself
13897
13898         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
13899         get_composite_drawable virtual function
13900
13901         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
13902         list-walking bug
13903
13904         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
13905         make this work if the source drawable is a GdkDrawableImplX11
13906         instead of a public drawable type. This is really broken; the
13907         problem is that GdkDrawable needs a virtual method get_xid(), but
13908         of course that doesn't work in practice. Enter RTTI.
13909
13910         Also, improve mismatched depth message.
13911
13912         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
13913         GdkPixmap
13914
13915         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
13916         install _gdk_x11_get_image as our implementation of get_image
13917         
13918         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
13919         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
13920
13921         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
13922         gdk_drawable_get_image
13923
13924         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
13925
13926         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
13927         get_image
13928
13929         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
13930         trailing semicolon after for loop
13931
13932 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
13933
13934         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
13935         where font_desc for widget's context lagged widget's font_desc by
13936         one step.
13937
13938 2000-10-22  Tor Lillqvist  <tml@iki.fi>
13939
13940         * gdk/win32/gdkgc-win32.c
13941         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
13942
13943         * gtk/makefile.mingw.in
13944         * gtk/gtk.def: Updates.
13945
13946         * gtk/testgtk.c: sleep() is called _sleep in MS's C
13947         library.
13948
13949         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
13950
13951         * gtk/makefile.msc: Remove
13952
13953         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
13954
13955         * gtk/Makefile.am: Add it.
13956
13957         * configure.in: Generate it.
13958
13959         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
13960         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
13961         something even if not implemented, to satisfy picky MSVC.
13962
13963         Patches by Hans Breuer:
13964         
13965         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
13966         SetBkMode() and SetTextAlign() before calling
13967         pango_win32_render().
13968
13969         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
13970         Set hcliprgn to NULL after destroying it.
13971         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
13972
13973         * gdk/win32/gdkgeometry-win32.c
13974         (_gdk_windowing_window_queue_antiexpose): More effective
13975         implementation.
13976
13977         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
13978         depth as default, not the visual's.
13979
13980         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
13981         against empty title.
13982
13983         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
13984         IMAGE_PRIVATE_DATA.
13985
13986         * gdk/win32/gdkimage-win32.c: Use it.
13987
13988 2000-10-22  Robert Brady  <robert@suse.co.uk>
13989
13990         * configure.in: Check for bind_textdomain_codeset
13991
13992         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
13993         present, make use of it.
13994
13995         Add a translatable string "default:LTR" which, if translated
13996         to "default:RTL", will cause the default direction to be
13997         Right-to-Left.
13998
13999         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
14000         direction if marked as flippable.
14001
14002         * gtk/gtkhscale.c: Mark widget as flippable.
14003         
14004 2000-10-04  Havoc Pennington  <hp@redhat.com>
14005
14006         * gtk/testgtk.c (create_buttons): create some stock buttons
14007         with the default accel group
14008         (create_image): test some new GtkImage features
14009         (make_message_dialog): test GtkMessageDialog
14010         (create_modal_window): fix someone's bizzarro indentation
14011
14012         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
14013         GTK_WIN_POS_CENTER_ON_PARENT. 
14014         Add "destroy with parent" setting, which means the window goes
14015         away with its transient parent.
14016         (gtk_window_get_default_accel_group): get the default accel group
14017         for the window.
14018         (gtk_window_set_destroy_with_parent): set/unset destroy with
14019         parent flag
14020         (gtk_window_read_rcfiles): invalidate icon set caches
14021         after reloading rcfiles 
14022
14023         * gtk/gtkenums.h (GtkWindowPosition): add
14024         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
14025         on its parent window when the dialog is mapped for the first time.
14026
14027         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
14028         a simple message dialog class
14029         
14030         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
14031         handler to emit response signal, and maybe later it would
14032         honor a hide_on_delete flag - though that isn't there yet.
14033         Set border width on the vbox to 2, so we get some padding.      
14034         Use a button box for the action area.
14035         (gtk_dialog_key_press): synthesize a delete event if Esc
14036         is pressed and the GtkWidget key press handler didn't 
14037         handle the escape key.
14038         (gtk_dialog_new_with_buttons): new function creates a dialog
14039         with some default buttons in it.
14040         (gtk_dialog_add_action_widget): add an activatable widget
14041         as a button in the dialog - you can also add a non-activatable
14042         widget by accessing the action area directly.
14043         (gtk_dialog_add_button): add a simple button - stock ID or 
14044         label - to the action area
14045         (gtk_dialog_response): emit response signal
14046         (gtk_dialog_run): block waiting for the dialog, return 
14047         the response. Override normal delete_event behavior, so that 
14048         delete_event does nothing inside gtk_dialog_run().
14049
14050         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
14051         emitted when an action widget is clicked or the dialog gets
14052         delete_event
14053
14054         * gtk/gtk.h: add gtkmessagedialog.h
14055
14056         * gtk/Makefile.am: add gtkmessagedialog.[hc]
14057
14058 2000-10-18  Havoc Pennington  <hp@redhat.com>
14059
14060         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
14061         where any number of empty lines would get skipped
14062
14063         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
14064         edge.
14065
14066         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
14067         warning about invalid iterators (explain more thoroughly)
14068         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
14069
14070         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
14071         big
14072
14073         * demos/*.c: Add error handling
14074
14075         * gtk/gtktextbuffer.c: don't modify const iterators
14076
14077         * gtk/gdk-pixbuf-loader.c: Add full error handling here
14078
14079         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
14080         on file load
14081
14082         * gtk/gtkiconfactory.c: Update to reflect addition of error
14083         handling to gdk-pixbuf loaders
14084
14085 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
14086
14087         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
14088         move to new modularized testgtk.
14089
14090 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
14091
14092         * gtk/gtktreeview.c: Draw the arrows correctly.
14093
14094         * gtk/gtktreemodel.c: Added user docs.
14095
14096         * gtk/gtk.h: remove gtktreedatalist.h.
14097
14098         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
14099         parent when generating my type.
14100
14101         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
14102         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
14103
14104 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14105
14106         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
14107         GtkTreeModel from object to interface.
14108
14109 2000-10-16  Havoc Pennington  <hp@redhat.com>
14110
14111         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
14112         compilation
14113
14114 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14115
14116         * gtk/gtktreeselection.c: Add API documentation to all public
14117         functions.
14118
14119         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
14120         functions.
14121
14122 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
14123
14124         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
14125         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
14126         docs to all public functions.
14127
14128         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
14129         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
14130         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
14131         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
14132         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
14133         issue.
14134
14135 2000-10-14  Robert Brady  <robert@suse.co.uk>
14136
14137         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
14138
14139 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
14140
14141         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
14142         values other then G_TYPE_STRING.
14143         * gtk/gtktreeselection.c: Minor commenting updates.
14144         * gtk/gtktreeview.c: Format updates.
14145
14146 2000-10-09  Tor Lillqvist  <tml@iki.fi>
14147
14148         * README.win32: Update.
14149
14150         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
14151         lines that had been deleted by mistake (?).
14152
14153         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
14154         also the case fg==white and bg==black (but still not randomly
14155         coloured cursors). Thanks to Wolfgang Sourdeau.
14156
14157         * gdk/win32/*.c: Silence gcc -Wall.
14158
14159         * gtk/gtk.def: Add missing entry points.
14160
14161         Fixes by Hans Breuer:
14162
14163         * gdk/makefile.msc
14164         * gdk/win32/makefile.msc: Update.
14165
14166         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
14167         some MSVC thing, presumably), cause breakpoint on failures. Add
14168         GDK_NOR case. Call g_log_set_always_fatal.
14169
14170         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
14171         should be pased by reference.
14172         
14173         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
14174         
14175         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
14176
14177         * gdk/win32/gdkevents-win32.c
14178         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
14179
14180         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
14181         implementation object.
14182
14183         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
14184         not just windows.
14185         
14186         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
14187         Use the wrapper object.
14188         
14189 2000-10-06  Havoc Pennington  <hp@redhat.com>
14190
14191         * Makefile.am (SRC_SUBDIRS): contrib subdir
14192
14193         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
14194         so it can be used in Xlib version
14195
14196         * demos/testpixbuf.c (update_timeout): error checking from 1.0
14197         tree
14198
14199         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
14200         change from 1.0 tree that returns first frame of animation
14201         if the loaded file is an animation.
14202
14203         * contrib: add new directory to hold stuff that comes with GTK+
14204         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
14205         
14206         * configure.in: add contrib/*
14207
14208 2000-10-05  Havoc Pennington  <hp@redhat.com>
14209
14210         * demos/testpixbuf-save.c: add pixbuf save test
14211
14212         * demos/Makefile.am: add testpixbuf-save.c
14213
14214 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
14215
14216         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
14217         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
14218         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
14219         * gtk/gtktreeselection.[ch]: Replaced
14220         "node_selected"/"node_unselected" signal with "selection_changed"
14221         signal.
14222
14223 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14224
14225         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
14226         tree widget.
14227
14228 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14229
14230         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
14231         drawing.
14232
14233 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
14234
14235         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
14236         Move list pointer forwards before removing item from
14237         list. (Crash reported by Salmaso Raffaele)
14238
14239         * gdk/gdkwindow.h: Remove spurious trailing ,
14240
14241         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
14242         dependencies on uninstalled libraries, sorry folks.
14243
14244 2000-10-04  Havoc Pennington  <hp@redhat.com>
14245
14246         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
14247         gtk/gtkiconfactory.c: Fix copyrights    
14248
14249         * demos/testpixbuf.c: add inline pixbuf test
14250         
14251 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
14252
14253         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
14254         Add gdk_window_iconify.
14255
14256         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
14257         (gdk_window_set_geometry_hints): Add win_gravity
14258         to geometry structure.
14259
14260         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
14261         Implement _NET_WM_PING.
14262
14263         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
14264         Set _NET_WM_PID on the client leader.
14265
14266         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
14267         Handle UTF-8 better.
14268
14269         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
14270         UTF-8 better, set _NET_WM_NAME as well. Only set
14271         icon name if it hasn't previously been explicitely 
14272         set.
14273
14274 2000-10-03  Havoc Pennington  <hp@redhat.com>
14275
14276         * gtk/testtextbuffer.c: clean up trailing whitespace,
14277         add extensive tests for tag toggle iteration.
14278         
14279         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
14280         distance
14281
14282         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14283         optimize case where the tag root is on level 1
14284         (gtk_text_line_previous_could_contain_tag): attempt to implement
14285         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
14286         functionality
14287
14288         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
14289         Implement this, though not very efficiently.
14290
14291         * gtk/gtktextiterprivate.h: reformat
14292
14293         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
14294         iterator
14295
14296         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
14297         this to properly revalidate the iterators.
14298
14299         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
14300         properly at the end of the line (and therefore on empty lines)
14301
14302         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
14303         maybe we should return a value...
14304
14305 2000-10-03  Tor Lillqvist  <tml@iki.fi>
14306
14307         * config.h.win32: Guard definition of alloca(). glib.h now handles
14308         that.
14309
14310         * gdk/gdk.def
14311         * gtk/gtk.def: Add new entry points.
14312
14313         Changes just to make GTK+ build without errors on Win32. No hope
14314         of it working in its current state, though...:
14315         
14316         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
14317         some functions from the X11 backend, just to make GTK+ build.
14318
14319         * gdk/makefile.mingw.in
14320         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
14321         number. Add new object files.
14322
14323         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
14324         GetMessageTime to get timestamp (where on X11 uses
14325         gdk_x11_get_server_time()).
14326
14327 2000-10-02  Havoc Pennington  <hp@pobox.com>
14328
14329         * gtk/gtktextview.c: text_window_* weren't static and should have
14330         been.
14331         Start work on child widgets; not yet complete, syncing to 
14332         office computer.
14333
14334         * gtk/gtktextchild.h: change this to contain a public interface,
14335         starting work on child interfaces.
14336         * gtk/gtktextchildprivate.h: move private interfaces here
14337
14338         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
14339
14340         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
14341         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
14342         gtk/gtktextmark.c: copyright notices
14343
14344         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
14345         internal functions      
14346
14347         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
14348         internal function
14349
14350         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
14351         Reformatting    
14352
14353 2000-09-30  Havoc Pennington  <hp@pobox.com>
14354
14355         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
14356         NULL start/end pointers
14357
14358         * gtk/gtktextbuffer.c: Write some docs
14359         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
14360         NULL, so you can just check whether there's a selection.        
14361
14362         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
14363         cleanup_line or segments_changed ourselves, it gets done 
14364         in unlink_segment
14365
14366         * gtk/gtktextmark.h:
14367         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
14368         
14369         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
14370
14371         * gtk/gtktextmark.c: delete some more old Tk cruft
14372
14373         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
14374         mark before removing it, so we can emit MARK_DELETED with a valid
14375         pointer.
14376         (gtk_text_buffer_mark_set): hold ref across signal emission
14377
14378         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
14379         whining about attempts to delete special marks
14380
14381         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
14382         underscore, since it's internal.
14383
14384         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
14385         now implemented in terms of iterators in gtktextiter.h
14386
14387         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
14388         New function, destructively sets contents of buffer. Also 
14389         a convenient way to clear the buffer by setting text to ""
14390
14391         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
14392         multiline string literal
14393
14394         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
14395         text changes.
14396
14397         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
14398         is not dereferenceable
14399         (gtk_text_iter_forward_lines): fix return value
14400
14401 2000-09-29  Havoc Pennington  <hp@redhat.com>
14402
14403         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
14404
14405         * gtk/gtktextview.c: Implement drag thresholding; change functions 
14406         that set border window size to have nicer name
14407         (gtk_text_view_mark_set_handler):  Fix this to have the 
14408         right signature.
14409
14410         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
14411
14412         * gtk/testtext.c: Update with API changes, put line numbers on 
14413         both sides.
14414         
14415         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
14416         with this
14417
14418         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
14419         pixbuf; delete a big block of #if 0 Tk code
14420
14421         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
14422         insert_pixmap with insert_pixbuf
14423
14424 2000-09-29  Martin Baulig  <baulig@suse.de>
14425
14426         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
14427         confusion with the GdkPixbuf of the GNOME 1.x platform.
14428
14429 2000-09-29  Havoc Pennington  <hp@pobox.com>
14430
14431         * gtk/gtktextview.c: Implement the side windows.
14432
14433         * gtk/testtext.c: Implement simple line numbering in the 
14434         left side window; seems to make scrolling sloooow. Oops.
14435         Also, cursor blink is for some reason causing redraws
14436         of the line numbers. Should investigate...
14437
14438 2000-09-28  Havoc Pennington  <hp@redhat.com>
14439
14440         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
14441         scrolling child windows, and draw focus rectangle properly.
14442         
14443         (gtk_text_view_buffer_to_window_coords):
14444         Coordinate transformation to deal with all these freaking windows
14445         and offsets
14446         (gtk_text_view_window_to_buffer_coords): transform the other way
14447
14448         * gtk/testtext.c (create_buffer): Update to match Pango API change
14449
14450         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
14451         anonymous tags
14452         (foreach_unref): don't emit remove signal from finalize, just
14453         set tag's parent to NULL
14454
14455 2000-09-26  Havoc Pennington  <hp@redhat.com>
14456
14457         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
14458         Fix some warnings       
14459
14460 2000-09-26  Havoc Pennington  <hp@redhat.com>
14461
14462         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
14463         headers into the private header list
14464
14465         * Makefile.am (pkgconfig_DATA): install pkg-config files
14466
14467         * configure.in: add pkg-config files
14468
14469         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
14470
14471         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
14472         outstanding icon caches on theme change.
14473
14474         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
14475         important types:
14476
14477         (GtkIconSource): Specification for creating a pixbuf 
14478         appropriate for a direction/state/size triplet from 
14479         a source pixbuf or filename
14480
14481         (GtkIconSet): List of GtkIconSource objects that are used to
14482         create the "same" icon (e.g. an OK button icon), and cache for
14483         rendered icons
14484
14485         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
14486         up the icon set for a given stock ID.  GTK maintains a stack of
14487         GtkIconFactory to search, and applications or libraries can add
14488         additional icon factories on top of the stack
14489         
14490         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
14491         the set of GtkIconSource specified for a given stock ID into 
14492         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
14493         RcStyle, under the specified stock ID.
14494
14495         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
14496         render_icon used to derive a GdkPixbuf from a GtkIconSource.
14497         This allows people to theme how prelight, insensitive, etc. are
14498         done.
14499
14500         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
14501         icon factories for a style, and return the resulting 
14502         icon set if any.
14503
14504         (gtk_style_render_icon): Render an icon using the render_icon 
14505         method in the GtkStyleClass.
14506
14507         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
14508         Use the style for a given widget to look up a stock ID, get the
14509         icon set, and render an icon using the render_icon method 
14510         of the style
14511
14512         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
14513         (contains information about a stock item), the built-in stock item
14514         IDs, and functions to add/lookup stock items.
14515
14516         * gtk/stock-icons/*: Stock icons that come with GTK
14517
14518         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
14519         a button based on a GtkStockItem
14520         (gtk_button_new_accel): Takes a uline string and accel group, and
14521         installs the accelerator.
14522
14523         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
14524         image-display widget.
14525
14526 2000-09-25  Havoc Pennington  <hp@redhat.com>
14527
14528         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
14529
14530         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
14531         Fix a bug when removing node data, we didn't properly 
14532         re-splice the linked list after removing the data.
14533
14534         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
14535         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
14536
14537         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
14538
14539         * gtk/gtktextlayout.c (set_para_values): Set tab array 
14540         for the layout from the GtkTextTag.
14541
14542         * gtk/gtktexttypes.h: delete tab and search cruft, 
14543         remove g_convert() in favor of GLib version
14544
14545         * gtk/gtktexttypes.c: remove tab implementation from here,
14546         move to Pango
14547
14548         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
14549         tab stuff using new PangoTabArray from Pango
14550
14551         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
14552         unused border_width stuff
14553
14554 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
14555
14556         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
14557         glib) and now useless utf_to_latin1() latin1_to_utf()
14558
14559         * gtk/gtktextview.[ch]: Change ::move_insert and
14560         ::delete_text action signals to ::move and ::delete;
14561         create the signals with the right enumeration type,
14562         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
14563         C-v bindings, change Home, End to move to beginning/end
14564         of line, Add C-Home C-End to move to beginning/end
14565         of buffer. Change ::cut_text to ::cut_clipboard, etc;
14566         combine ::scroll_text into ::move; use new GtkSelectionData
14567         functions to simplify DND text handling.
14568         
14569         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
14570         deletion enumerations here, rename enumeration values to 
14571         be consistently plural.
14572
14573         * gtk/gtktextbuffer.c: Use new clipboard interfaces
14574         for cut/copy/paste and primary selection.
14575
14576         * gtk/gtktextbuffer.[ch]: Remove excess time and
14577         'interactive' arguments from cut/copy/paste;
14578         rename cut to cut_clipboard, etc; remove
14579         gtk_text_buffer_get_clipboard_contents().
14580
14581         * gtk/gtktextlayout.[ch]: Add 
14582         gtk_text_layout_move_iter_to_line_end() to move the iter to 
14583         line ends.
14584
14585         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
14586         Functions to set or get a UTF-8 string on the selection
14587         data.
14588
14589         * gtk/gtkclipboard.[ch]: New, simplified selection handling
14590         interfaces.
14591
14592         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
14593         created widgets - one of these is useless if we don't.
14594
14595         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
14596         a public function clear all targets registered for the
14597         widget.
14598
14599         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
14600         Never call gtk_widget_realize() - that was just asking
14601         for bizarre side-effects.
14602
14603         * gtk/gtkselection.c (gtk_selection_owner_set): Call
14604         gdk_selection_owner_set even if the widget is the
14605         same so that we reliably update the timestamp on
14606         the server.
14607
14608         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
14609         gdk_x11_get_server_time() function.
14610         
14611         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
14612         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
14613         Add some tricky filtering on serial numbers for
14614         selection clear events to fix up long-standard
14615         race condition FIXME's in gtkselection.c.
14616
14617         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
14618         routines to convert from utf8 to compound text or
14619         STRING and from a text property to UTF-8.
14620
14621         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
14622         a convenience function gdk_get_current_event_time().
14623
14624         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
14625         and free selection_data->data properly
14626
14627 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
14628
14629         * gtk/gtkthemes.c: Remove some unecessary includes.
14630
14631 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
14632
14633         * gtk/gtktextdisplay.c
14634         * gtk/gtktextlayout.c
14635         * gtk/gtktexttag.c
14636         * gtk/gtktexttag.h
14637         * gtk/testtext.c: Change the overstrike property to strikethrough,
14638         to closer match pango.
14639
14640 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
14641
14642         * gtk/gtktextview.c: Fix up visibility so that focus,
14643         cursor_visible and blink interact properly.  Reenable cursor blink
14644         which had been roughly disabled. Make blink and focus
14645         properly per-view.
14646
14647         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
14648         Add a flag for whether to display insertion cursor and
14649         a function to set the flag.
14650
14651         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
14652         get_line_y() to get_line_yrange(), to be a bit more generally
14653         useful.
14654
14655 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
14656
14657         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
14658           do stop_navigating_submenu, to clear last timeout properly.
14659           Also in gtk_menu_motion_notify move ignore_enter above
14660           the conditional to make it always happen as suggested by Owen
14661
14662 2000-09-07  Tor Lillqvist  <tml@iki.fi>
14663
14664         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
14665
14666         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
14667         w32api headers.
14668
14669         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
14670         declarations.
14671
14672         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
14673         (gdk_win32_get_colormap): A line had been deleted by mistake.
14674
14675         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
14676         (gdk_event_translate): Handle more virtual keycodes to be able to
14677         generate GDK events for Control-comma, Control-period, etc.
14678
14679         * gtk/gtk.def: Add some missing entry points.
14680
14681 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
14682
14683         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
14684         Doc comment fixing. (Mostly non-matching parameter names.)
14685
14686         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
14687         comments a little to avoid looking like a doc comment.
14688
14689         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
14690         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
14691         conversions be changed to GError?)
14692
14693         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
14694         Move private #defines into .c file.
14695
14696         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
14697         order of argument addition, remove duplicates.
14698
14699         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
14700         parent class is FrameClass, not BinClass.
14701
14702         * gtk/gtk.h: Add gtkinvisible, which was missing.
14703         (It's occasionalyl useful for client apps, if seldom.)
14704
14705         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
14706         #define.
14707
14708 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
14709
14710         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
14711         coordinates when creating window, instead of GDK-space
14712         coordinates. (Avoid BadValue on too large windows.)
14713
14714 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
14715
14716         * configure.in (use_mmx_asm): Remove conftest* after use along the
14717         lines of AC_TRY_COMPILE.        
14718         
14719         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
14720         of g_dirname, which is deprecated.
14721         (gtk_rc_parse_any): Removed calls to
14722         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
14723
14724         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
14725         Removed calls to g_hash_table_{freeze,thaw}, as they are
14726         deprecated now.
14727
14728         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
14729         instead of g_basename.
14730         
14731 2000-09-04 Elliot Lee <sopwith@redhat.com>
14732         
14733         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
14734         ANSI warning.
14735
14736 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
14737
14738         * gtk/gtkwidget.h:  Add some documenting comments about 
14739           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
14740           just as owen said on irc.
14741
14742         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
14743           set HAS_DEFAULT.  Only set it if there isn't another window
14744           holding it (a focus window which RECEIVES_DEFAULT) and only unset
14745           it if the widget is not the focused window with RECEIVES_DEFAULT.
14746           This fixes weird double default bugs in dialogs which has things
14747           call gtk_window_set_default at times.
14748
14749 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
14750
14751         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
14752         Nils Barth and David Santiago to improve submenu
14753         navigation. The patch does this by creating a triangular
14754         region from the point where the pointer leaves the
14755         menu to the submenu.  While the pointer is in
14756         that region and a timeout has not expired, events 
14757         that would cause the active submenu to change are
14758         ignored.
14759
14760 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
14761
14762         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
14763         moving a toplevel window immediately after sizing it would
14764         result in it being sized back to the old size since 
14765         impl->width, impl->height aren't updated until we hear
14766         back from the server. There is still a (longstanding) bug
14767         here that gdk_window_get_size() will give the wrong size
14768         until we do hear back.
14769
14770 2000-08-31  Havoc Pennington  <hp@redhat.com>
14771
14772         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
14773         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
14774         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
14775         Rename GtkTextStyleValues to GtkTextAttributes
14776
14777 2000-08-31  Havoc Pennington  <hp@pobox.com>
14778
14779         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
14780         for rapid testing whether an iterator is the end iterator
14781         (gtk_text_btree_new): init end line cache
14782         (gtk_text_line_is_last): use fast cached line to 
14783         see if we're the last line.
14784         (get_last_line): use cached line here too, should 
14785         speed up some random unrelated code.
14786         
14787 2000-08-30  Havoc Pennington  <hp@pobox.com>
14788
14789         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
14790         signals.
14791
14792         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
14793         delete_text signals. This allows the signals to be used for
14794         implementing undo.
14795
14796         * gtk/gtktextbuffer.c: Change signal handler signatures; 
14797         provide "interactive" argument when emitting insert_text or
14798         delete_text signal.
14799         
14800 2000-08-30  Havoc Pennington  <hp@pobox.com>
14801
14802         * gtk/gtktextbuffer.c: Docs
14803
14804 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
14805
14806         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
14807         from switch statements, since Tor removed the enumeration
14808         value.
14809         
14810         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
14811         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
14812
14813 2000-08-29 Elliot Lee <sopwith@redhat.com>
14814         * */*.h: Use G_GNUC_CONST.
14815
14816 2000-08-27  Havoc Pennington  <hp@pobox.com>
14817
14818         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
14819         minor indentation fixes, inserted some FIXME about stuff I
14820         realized was broken while documenting it.
14821         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
14822         GTK convention  
14823
14824 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
14825
14826         * gtk/testgtk.c (create_styles): Fix double free of
14827         font desc.
14828
14829 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
14830
14831         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
14832         
14833         * gtk/testgtk.c (create_styles): Add a test for modifying
14834         the style through gtk_widget_modify_*.
14835
14836         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
14837         a function to get the current modifier style.
14838
14839         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
14840         of the passed in GtkRcStyle instead of ref'ing it.
14841
14842         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
14843
14844 2000-08-20  Tor Lillqvist  <tml@iki.fi>
14845
14846         * gdk/gdkimage.h
14847         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
14848         shared memory image+pixmap GdkImage type, or
14849         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
14850         I am dropping that.
14851
14852         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
14853         actually call gtk_init_abi_check(), passing also
14854         sizeof(GtkWindow). Ditto for gtk_init_check(). 
14855
14856         * gtk/gtk.def
14857         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
14858         New functions, used to check that the GTK+-using code has been
14859         compiled using the correct compiler and switches. In particular,
14860         with gcc one has to use the -fnative-struct switch as GTK+ is
14861         compiled with that.
14862
14863 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
14864
14865         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
14866         ->prev fields when merging lists. (Found simultaneously
14867         by Pawel Salek and Jakub Jelinek)
14868
14869 2000-08-12  Tor Lillqvist  <tml@iki.fi>
14870
14871         * gdk/gdk.def
14872         * gtk/gtk.def: Add missing entries.
14873
14874         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
14875         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
14876
14877         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
14878         function. Dummy implementation at this point.
14879
14880         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
14881         rules. Undefine GTK_COMPILATION when compiling the test programs.
14882         
14883         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
14884
14885 2000-08-11  Tor Lillqvist  <tml@iki.fi>
14886
14887         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
14888         to convert back and forth from UTF-8 and the "system" (or "current
14889         locale") charset when necessary. Indentation/spacing cleanup.
14890
14891 2000-08-10  Havoc Pennington  <hp@redhat.com>
14892
14893         * Makefile.am (snapshot): Change the format of the snapshot
14894         version to match glib
14895
14896         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
14897         from EXTRA_DIST since it doesn't seem to exist
14898
14899 2000-08-10  Tor Lillqvist  <tml@iki.fi>
14900
14901         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
14902         version of the directory name (not the UTF-8 one) when building
14903         the path name to stat().
14904
14905 2000-08-03  Elliot Lee  <sopwith@redhat.com>
14906
14907         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
14908         PANGO_ATTR_SHAPE set.
14909
14910 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
14911
14912         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
14913         Peter Osterlund to simplify the code while keeping the
14914         functionality the same.
14915
14916 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
14917
14918         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
14919         is_viewable() test further inside the function, since removing the 
14920         window from the redraw list without clearing ->update_area
14921         was also very broken.
14922
14923 2000-08-02  Tor Lillqvist  <tml@iki.fi>
14924
14925         * configure.in: Check for <unistd.h>.
14926
14927 2000-08-01  Martin Baulig  <baulig@suse.de>
14928
14929         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
14930         to display the message that this is a development version of GTK+.
14931
14932 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
14933
14934         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
14935         was depending on widget->allocation instead of the width of text_area,
14936         which was incorrect for subclasses like GtkSpinButton.
14937
14938         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
14939         with width == 1 tests that should be width == -1.
14940
14941 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
14942
14943         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
14944         (broken, Elliot, every single window blank on X) custom code with call
14945         to gdk_window_is_viewable() which a) prevents code duplicate and
14946         b) works. 
14947
14948 2000-07-31  Elliot Lee  <sopwith@redhat.com>
14949
14950         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
14951         to get the GDK_PARENT_ROOT() macro to work.
14952         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
14953         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
14954         of, windows that aren't shown.
14955         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
14956         pointer grab stuff.
14957
14958 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
14959
14960         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
14961           s/gtk_main_iteration/g_main_iteration/
14962
14963           Did this already in change:
14964                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
14965           don't know how it got reverted.
14966
14967 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
14968
14969         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
14970         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
14971
14972         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
14973         not gdk_pixbuf.
14974
14975 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
14976
14977         * configure.in,po/{sp,sr}.po: Added Serbian files
14978
14979 2000-07-30  Tor Lillqvist  <tml@iki.fi>
14980
14981         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
14982
14983         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
14984         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
14985         GIOChannel implementation.
14986
14987         * gdk/win32/gdkinput.c
14988         * gdk/win32/gdkpango-win32.c: Update license name here, too.
14989
14990         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
14991         definition to match prototype.
14992
14993         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
14994
14995 2000-07-27  Elliot Lee  <sopwith@redhat.com>
14996
14997         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
14998         function, to allow handling image formats that cannot be detected
14999         by looking at content alone.
15000
15001 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
15002
15003         * docs/tutorial/*.gif *.jpg *.eps
15004           Update these to the same look-n-feel.
15005           Why does including images in DocBook suck so badly?
15006
15007 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
15008
15009         * gtk/gtktable.c: applied patch from Phil Thompson
15010         <phil@river-bank.demon.co.uk> that enables space settings for
15011         the last row/columns as well.
15012
15013 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
15014
15015         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
15016         updates the license headers to the GNU Lesser General Public License,
15017         as well as updating the copyright year to 2000.
15018
15019 2000-07-26  Robert Brady  <rwb197@zepler.org>
15020
15021         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
15022           and po/Makefile, was installing and looking for them under gtk20
15023           and gtk2 respectively.
15024
15025 2000-07-25  Havoc Pennington  <hp@redhat.com>
15026
15027         * gtk/testtext.c: Comment out some stuff that depends on the rest
15028         of my patches.
15029
15030 2000-07-25  Havoc Pennington  <hp@redhat.com>
15031
15032         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
15033         buffer
15034
15035 2000-07-25  Havoc Pennington  <hp@redhat.com>
15036
15037         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
15038         widget changes.
15039
15040         * gtk/gtktextview.h: To be consistent with usage of "line"
15041         throughout the API to mean "newline-terminated thingy", change
15042         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
15043         to MOVEMENT_LINE.
15044
15045         (GtkTextView): Add flags for default editability, and whether to
15046         show the cursor. Add functions to get/set that. Add 
15047
15048         (gtk_text_view_get_iter_location): new function
15049
15050         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
15051         gtktextlayout.h
15052         (g_convert): Add g_convert temporarily, will go in glib in a bit
15053         
15054         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
15055         GtkTextTagTableForeach instead of brokenly using GHFunc.
15056         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
15057
15058         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
15059         moved to public header.
15060
15061         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
15062         "invisible", since "elide" was a bad name.
15063         (gtk_text_tag_get_priority): Added
15064
15065         (GtkTextStyleValues): put this in public header, along with
15066         functions to use it.
15067
15068         * gtk/gtktextmarkprivate.h: Include more headers, since we no
15069         longer include gtktextbtree.h.
15070
15071         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
15072         gtk_text_mark_deleted
15073
15074         * gtk/gtktextlayout.h: Don't include the "really private" headers,
15075         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
15076         to make this possible. Now we only need to install
15077         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
15078         (However the Makefile.am isn't changed yet because of the
15079         logistics of merging gtk-hp-patches piecemeal)
15080
15081         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
15082         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
15083         gtk_text_iter_get_line is now used in the public API for a
15084         different purpose.
15085
15086         * gtk/gtktextiter.h: Clean up function names to be more
15087         consistent. Always call char offset "offset" and byte index
15088         "index". A "line" is always a line number. 
15089
15090         (gtk_text_iter_is_last): new function, more efficient than 
15091         the existing way to check
15092         (gtk_text_iter_is_first): new function, also more efficient
15093
15094         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
15095
15096         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
15097         gtk_text_iter_forward_char, etc.
15098
15099         (gtk_text_iter_forward_to_tag_toggle): Renamed from
15100         forward_find_tag_toggle, since this isn't a linear search
15101
15102         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
15103
15104         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
15105         New functions, search for a buffer substring.
15106
15107         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
15108         interactive and default editable (since we need to store that info
15109         until we receive the selection data).
15110
15111         Remove all the _at_char and at_line etc. versions of functions;
15112         only have iterator versions.
15113
15114         Add _interactive() versions of functions, that consider the
15115         editability of text. (FIXME add interactive flag to the 
15116         insert/delete signals per Darin's suggestion)
15117
15118         (gtk_text_buffer_get_tag_table): new function, demand-creates the
15119         tag table if necessary
15120
15121         Remove declaration of gtk_text_buffer_get_iter_from_string
15122
15123         (_gtk_text_buffer_get_btree): private/internal function, added.
15124         
15125
15126         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
15127         (gtk_text_line_is_last): new function
15128
15129 2000-07-25  Havoc Pennington  <hp@redhat.com>
15130
15131         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
15132         using GtkProgressBar. See Changes-2.0.txt for details.
15133
15134         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
15135         "pulse_step" which are the equivalent of
15136         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
15137         Implement new API.
15138         
15139         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
15140         (use_text_format) to mark whether text set on the progress bar is
15141         a format string. Deprecate entire GtkProgress interface.
15142
15143         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
15144         (gtk_progress_build_string): make this a no-op if use_text_format
15145         is FALSE
15146
15147         * docs/Changes-2.0.txt: Describe progress bar changes.
15148
15149 2000-07-25  Tor Lillqvist  <tml@iki.fi>
15150
15151         * Makefile.am: Include the build directory.
15152
15153         * configure.in: Generate build/Makefile, build/win32/Makefile,
15154         gdk/, gdk/win32/, and gtk/makefile.mingw.
15155
15156         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
15157         Add GETTEXT_PACKAGE.
15158         
15159         * gdk/gdk.def
15160         * gtk/gtk.def: Updates.
15161
15162         * gdk/gdkfont.h
15163         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
15164         need them any longer.
15165
15166         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
15167
15168         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
15169         PANGOWIN32_LIBS and gdk_pixbuf.
15170
15171         * gdk/win32: Compiles, but no doubt doesn't work at all.
15172
15173         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
15174
15175         * gdk/win32/gdkinput.c: New file, temporarily.
15176         
15177         * gdk/win32/gdkinput-win32.h: New file
15178
15179         * gdk/win32/gdkinputprivate.h: Remove.
15180
15181         * gdk/win32/gdkpango-win32.c: New file.
15182
15183         * gtk/makefile.mingw.in: New file
15184
15185         * gtk/makefile.cygwin: Removed
15186         
15187         * gtk/Makefile.am: Update accordingly.
15188
15189         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
15190         made externally visible.
15191
15192         * gtk/gtkmain.c: Use it.
15193         
15194         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
15195         is enough.
15196
15197         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
15198
15199 2000-07-24 Elliot Lee <sopwith@redhat.com>
15200         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
15201         individual backends already.
15202         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
15203         again. Yes, there really is a good reason for this, if you are using the gdkregion
15204         internals, and if you're not, why do you care?
15205         * gdk/gdkwindow.c: Fix inverted condition
15206         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
15207         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
15208         * gtk/gtkrange.c: Redraw trough when moving.
15209         * gtk/gtktypeutils.c: Fix warning by adding const cast.
15210         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
15211
15212 2000-07-23  Tor Lillqvist  <tml@iki.fi>
15213
15214         * configure.in: Check for mkstemp and sigsetjmp. Output
15215         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
15216
15217         More work on GDK for Win32. Still in an intermediate state.
15218
15219         * gdk/makefile.cygwin
15220         * gdk/win32/makefile.cygwin: Removed.
15221         
15222         * gdk/makefile.mingw.in
15223         * gdk/win32/makefile.mingw.in: New files.
15224
15225         * gdk/Makefile.am
15226         * gdk/win32/Makefile.am: Generate and distribute them.
15227
15228         * gdk/win32/gdkwindow-win32.h
15229         * gdk/win32/gdkdrawable-win32.h
15230         * gdk/win32/gdkpixmap-win32.h: New files.
15231
15232         * gdk/win32/gdkcolor-win32.c
15233         * gdk/win32/gdkcursor-win32.c
15234         * gdk/win32/gdkdrawable-win32.c
15235         * gdk/win32/gdkgc-win32.c
15236         * gdk/win32/gdkimage-win32.c
15237         * gdk/win32/gdkprivate-win32.h
15238         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
15239         Rename fields and variables called xcursor, xid, etc (these names
15240         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
15241
15242 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
15243
15244         * gtk/gtkentry.[ch]: Fix some problems with vertical
15245         alignment.
15246
15247         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
15248         char/byte confusion.
15249
15250 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
15251
15252         * gtk/gtktextview.c (changed_handler): Fix bug where
15253         redraw wasn't being done properly when height of
15254         dirty region changed.
15255
15256         * demos/Makefile.am: Remove various references to
15257         -lgmodule
15258
15259 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
15260
15261         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
15262         PangoAttrShape to reserve space for pixmaps, add 
15263         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
15264         in the display functions.
15265         
15266         * gtk/testgtk.c (create_layout): Set some more exotic
15267         scrolled window options
15268
15269         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
15270         Add function to set the shadow type of a window, to allow
15271         putting a shadow around widgets such as GtkLayout or GnomeCanvas
15272         which don't draw their own frame.
15273
15274 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
15275
15276         * docs/tutorial/package-db-tutorial.sh: New file for
15277           packaging DocBook format tutorial
15278
15279 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
15280
15281         * docs/tutorial/gtk-tut.sgml: Minor updates
15282
15283         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
15284
15285 2000-07-19  Tor Lillqvist  <tml@iki.fi>
15286
15287         * gtk/gtksignal.c: Fix C++ comment.
15288
15289         * gtk/gtkimmulticontext.c
15290         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
15291         don't return value from void functions.
15292
15293         * gtk/gtk.def: Add gtk_rc_style_unref.
15294
15295 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15296
15297         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
15298         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
15299         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
15300         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
15301         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
15302         gtk/gtktypeutils.h: Include files outside of the extern "C"
15303         block. Makes some C++ compiler happy. Reported by Denis Vakatov
15304         <vakatov@peony.nlm.nih.gov>.
15305
15306 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
15307
15308         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
15309           Completes first pass. Hurrah!
15310
15311 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
15312
15313         * docs/tutorial/gtk-tut.sgml: More clean ups.
15314
15315 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
15316
15317         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
15318         paint the background of the text area which was accidentally
15319         removed at some point.
15320
15321         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
15322           
15323          - Move most of the functionality from the theme vtable
15324            into GtkRcStyleClass and GtkStyleClass. The moved
15325            vtable functions were changed a bit in the move to
15326            work better in their new home.
15327
15328          - Get rid of the engine and engine_data fields from
15329            GtkRcStyle and GtkStyle; instead the theme
15330            engine derives theme-specific subclasses of GtkRcStyle
15331            and GtkStyle
15332
15333          - Add extra dlsym() found entry point to themes,
15334            theme_create_rc_style().
15335
15336         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
15337         in gtk_style_real_copy.
15338
15339         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
15340         to register a type associated with an engine. (The engine
15341         won't be unloaded as there is an instance of the type.)
15342
15343
15344 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
15345
15346         * docs/tutorial/gtk-tut.sgml: Clean ups.
15347
15348 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
15349
15350         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
15351           of cleaning up to do.
15352
15353 2000-07-15  Tor Lillqvist  <tml@iki.fi>
15354
15355         * gdk/testgdk.c: New file, quick hack to test backends for
15356         pixel-by-pixel correctness of the most simple graphic operations.
15357
15358 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
15359
15360         * Really release 1.3.1
15361         
15362         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
15363         include structure.
15364
15365 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
15366
15367         * Released 1.3.1
15368
15369 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
15370
15371         * gtk/gtktextlayout.c: use FALSE for size_only most
15372         of the time when calling gtk_text_layout_get_line_display()
15373         to avoid causing double reshapes when a redraw follows
15374         immediately after.
15375
15376 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
15377
15378         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
15379         appropriate region and gdk_window_process_updates() so trough
15380         updating doesn't lag behind the window being scrolled.
15381
15382         * gdk/gdkgc.c: Make parent_class pointer static.
15383          
15384 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
15385
15386         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
15387         include <string.h>.
15388          
15389         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
15390         cut-and-paste error in computing memory offset for 4 channels.
15391
15392 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
15393
15394         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
15395         gtk_rc_append_default_pixmap_path(), since it wasn't
15396         adding an interesting path and we don't have a meaningful
15397         default for this value.
15398
15399 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
15400
15401         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
15402         gtk-config to gtk-config-2.0 move gtk_.m4 to
15403         gtk-2.0.m4
15404
15405         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15406         gdk/Makefile.am demos/Makefile.am: Change 
15407         library names to libgtk-1.3.la, etc, so that we
15408         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
15409
15410         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15411         gdk/Makefile.am gdk/x11/Makfile.am
15412         Move include files into /usr/include/gtk-2.0, 
15413         /usr/lib/gtk-2.0/include/
15414          
15415         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
15416         gtk/gtkintl.h: Change package for gettext from 
15417         gtk+ to gtk20. Put hack in autogen.sh to modify
15418         po/Makefile.in.in after gettextize to make this
15419         possible.
15420
15421         * gtk+.spec: Some updates, not tested.
15422
15423         * gdk-pixbuf/Makefile.am: Move loaders into
15424         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
15425
15426         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
15427         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
15428         to THEMENAME/gtk-2.0/. Move engine directory  to
15429         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
15430         
15431 2000-07-12  Tor Lillqvist  <tml@iki.fi>
15432
15433         Win32 changes, still doesn't build though.
15434
15435         * gdk/makefile.cygwin
15436         * gdk/win32/makefile.cygwin
15437         * gtk/makefile.cygwin: Updates.
15438
15439         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
15440         default values for fg and bg pixel as X11 does (0 and 1), not
15441         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
15442         Use 0 for pen width by default (treated as 1 anyway later, but for
15443         apps that might check the value in the GdkGC).
15444         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
15445         interface to gdk_gc_predraw and _postdraw.
15446
15447         * gdk/win32/gdkwin32.h
15448         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
15449
15450         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
15451         extraneous semicolon.
15452
15453         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
15454
15455         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
15456         not the Win32 bitspixel value.
15457
15458         * gdk/win32/gdkcc-win32.c:
15459         * gdk/win32/gdkcolor-win32.c 
15460         * gdk/win32/gdkprivate-win32.h
15461         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
15462         GDK object structure.
15463
15464 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
15465
15466         * docs/tutorial/gtk_tut_12.es.sgml (name): 
15467         * docs/tutorial/gtk_tut_it.sgml (name): 
15468         * docs/tutorial/gtk_tut_fr.sgml (name): 
15469         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
15470         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
15471
15472 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
15473
15474         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
15475           small changes.
15476
15477 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
15478
15479         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
15480         a bug here, never been here and never fixed anything ;(
15481         (don't segfault if tree->root_tree is NULL, which happens prior
15482         to widget realization, but puke instead).
15483
15484 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
15485
15486         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
15487         add the necessary tokens.
15488
15489         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
15490         (gtk_rc_style_to_style): copy thicknesses.
15491         (gtk_rc_init_style): apply thicknesses.
15492         (gtk_rc_parse_style): parse xthickness and ythickness.
15493
15494         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
15495
15496         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
15497         (gdk_window_new): 
15498         (_gdk_windowing_window_init): 
15499         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
15500         (gdk_pixmap_create_from_data): 
15501         (gdk_bitmap_create_from_data): 
15502         (gdk_pixmap_new): 
15503         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
15504         (gdk_image_new): 
15505         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
15506         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
15507         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
15508         (gdk_colormap_get_system): 
15509         (gdk_colormap_new): 
15510         * gdk/gdkwindow.c (gdk_window_init): 
15511         * gtk/gtkstyle.c (gtk_style_new):
15512         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
15513         * gdk/gdkpixmap.c (gdk_pixmap_init): 
15514         * gtk/gtkrc.c (gtk_rc_style_new):
15515         use g_object_new() instead of g_type_create_instance() which
15516         is a private function for fundamental type implementations.
15517
15518 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
15519
15520         * configure.in: Add check for db2html
15521
15522 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
15523
15524         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
15525         hack to set glib_debug_objects based on gtk_debug_flags.
15526
15527 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
15528
15529         * INSTALL.in: Update the Prerequisites section.
15530
15531         * Makefile.am demos/Makefile.am docs/Makefile.am
15532         docs/tutorial/Makefile.am gdk/x11/Makefile.am
15533         gdk/linux-fb/Makefile.am: Dist fixes
15534
15535 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
15536
15537         * NEWS: 10,000 foot view of 1.3.1 changes.
15538
15539 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
15540
15541         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
15542         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
15543         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
15544         gdk/x11/gdkmain-x11.c: 
15545
15546         Patch from George Lebl to add a GdkGrabStatus enumeration to use
15547         as a return value of gdk_*_grab(). Previously, we just
15548         returned the X11 values directly.
15549
15550 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
15551
15552         * gdk/x11/Makefile.am: Patch from George Lebl to 
15553         install all the headers in the right place.
15554
15555 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
15556
15557         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
15558           initial conversion to DocBook.
15559
15560 2000-07-04  Tor Lillqvist  <tml@iki.fi>
15561
15562         * README.win32: Improve a bit.
15563
15564         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
15565         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
15566         Alt+0nnn on the numpad (used to enter characters by numeric code
15567         from current DOS or ANSI codepage) working correctly, as in other
15568         Windows apps.
15569
15570         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
15571         same argument validity tests as in X11 version.
15572         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
15573
15574         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
15575         definitions in case missing from headers.
15576
15577         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
15578         destroy the window-specific cursor.
15579         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
15580         calling GetModuleHandle(NULL).
15581         (gdk_window_set_cursor): Reworked to always copy the passed cursor
15582         with CopyCursor before setting it as the window-specific
15583         cursor. It is OK for the caller to destroy the GdkCursor (and thus
15584         also its Windows cursor) after calling this function. Destroy any
15585         previous window-specific cursor.
15586
15587 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
15588
15589         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
15590         font charset is iso8859-1, not iso-8859-1.
15591
15592 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
15593
15594         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
15595         Use g_get_charset() instead of g_get_codeset().
15596
15597         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
15598         Comment out some strdup'ing functions to keep timj
15599         happy until we finish fighting this out.
15600
15601 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
15602
15603         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
15604         <= width or height.
15605
15606         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
15607         from 1.2 for parent/child states.
15608
15609         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
15610         of typos.
15611
15612         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
15613         event structures, replace with a generic axes field. Replace 
15614         deviceid/sourec with GdkDevice *device.
15615
15616         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
15617         to extract particular axis use value from event. (Also
15618         can be used for normal X/Y.)
15619
15620         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
15621         allow for arbitrary number of axes, namespace everything
15622         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
15623         everywhere.
15624
15625         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
15626         Get rid of the gdk_input_vtable setup if favor of simply
15627         defining the functions in gdkinput-none/gxi/xfree.c in
15628         a similar fashion to the way that the port structure is 
15629         done.
15630
15631         * gtk/gtkdnd.c: Fix fields of synthesized button press event
15632         for new event structures. 
15633
15634         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
15635         new device interfaces.
15636
15637 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
15638
15639         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
15640         set the initial text.
15641
15642         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
15643         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
15644         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
15645         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
15646
15647         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
15648         pango_layout_set_font_description to simplify.
15649
15650 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
15651
15652         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
15653         pango_layout_set_font_description to simplify.
15654
15655 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
15656
15657         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
15658         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
15659         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
15660
15661         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
15662         PANGO_PIXELS() macro.
15663
15664 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
15665
15666         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
15667         that returns a PangoContext owned by the widget and updated to
15668         match future changes in the widget. Also, make 
15669         gtk_widget_create_pango_layout() use this context. If we ever
15670         add a ::changed signal to PangoContext, this will make things
15671         much more convenient. 
15672
15673         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
15674         in the appropriate places instead of destroying the layouts and
15675         creating new ones.
15676
15677         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
15678         in a few strategic places.
15679
15680 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
15681
15682         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
15683         gtk_widget_size_request() on reparented child, if one. Otherwise,
15684         queue_resize() on the child never results in it getting size-requested
15685         at all.
15686
15687         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
15688         in option menus, so that (with luck) people won't copy it into
15689         their apps in the future.
15690
15691         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
15692         to gtk_option_menu_calc_size. This isn't perfect, but should fix
15693         a lot of problems with changing the size of the menu's menu
15694         items after adding it to the option menu.
15695
15696         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
15697
15698         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
15699         the text direction for a widget changes.
15700
15701         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
15702         ::direction_changed to get rid of various hacks.
15703
15704 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
15705
15706         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
15707         name.
15708
15709 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
15710
15711         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
15712         flag to the structure. Do not call XFreePixmap on pixmaps created
15713         by gdk_pixmap_foreign_new().
15714
15715 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
15716
15717         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
15718         value using GdkRGB functionality given GdkColormap and GdkColor.
15719         (name not final, waiting for inspiration.)
15720         
15721         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
15722         set the foreground/background of a GC using the GC's colormap
15723         and GdkRGB. (name not final, waiting for inspiration.)
15724
15725         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
15726         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
15727
15728         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
15729         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
15730         purely a function of the corresponding colormap. Make
15731         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
15732
15733         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
15734         gdk_pixbuf_*create_from_xpm_* in terms of
15735         gdk_pixbuf_new_from_xpm_data(), move into platform independent
15736         code.
15737
15738         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
15739         advantage of the new draw_rgb_32_image_dithalign.
15740
15741         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
15742
15743         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
15744         on each created GC.
15745
15746         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
15747
15748         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
15749         which we initialize from the drawable when the GC is created,
15750         if the drawable has a colormap.
15751
15752         * gdk/x11/gdkgc-x11.c: include string.h for memset.
15753
15754         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
15755
15756         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
15757
15758 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
15759
15760         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
15761         actually returning expose events, make sure to set
15762         the count field properly.
15763
15764         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
15765         accidentally reintroced bug which always cleared
15766         the graphics_exposures value. 
15767
15768 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
15769
15770         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
15771
15772 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
15773
15774         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
15775
15776 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
15777
15778         * docs/faq/gtk-faq.sgml: Start of Section 6.
15779
15780 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
15781
15782         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
15783         
15784         (Fixes problem with drawing childless frames. Pointed out
15785         by and a first patch from Anders)
15786         
15787         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
15788         compute a child_allocation, even if we don't have a child.
15789
15790         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
15791         Always chain to the parent's impl, even if we don't have a child.
15792
15793 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
15794
15795         * gdk/gdkrgb.c: If possible, create only a single shm segment and
15796         use multiple parts of it instead of creating a bunch of separate
15797         segments, since the maximum number of segments per system is not
15798         large. (This might be worth backporting to GTK+-1.2.x if we make a
15799         new release )
15800
15801         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
15802         structure in preparation for per-colormap GdkRGB.
15803
15804         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
15805         to False when we get EINVAL from shmget so that the caller of
15806         gdk_image_new can retry with a smaller segment size.
15807
15808 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
15809
15810         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
15811
15812 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
15813
15814         * configure.in: make the current version number 1.3.1 (binary age 0,
15815         interface age 0).
15816         
15817         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
15818         gtkcompat.h is all we want.
15819
15820         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
15821         GLib primitive types. fixed g_type_register_fundamental() argument
15822         ordering.
15823
15824         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
15825         compiles.
15826
15827         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
15828         object code cleanup, comment trigraph fixes, etc...
15829
15830 2000-06-23  Havoc Pennington  <hp@redhat.com>
15831
15832         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
15833         instead of making up a bogus name for first_para_mark
15834
15835         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
15836         0 as a context ID
15837
15838 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
15839
15840         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
15841
15842 2000-06-21  Havoc Pennington  <hp@pobox.com>
15843
15844         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
15845         we didn't check window->bg_pixmap != GDK_NO_BG.
15846
15847         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
15848         gdk-pixbuf
15849
15850 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
15851
15852         * docs/faq/gtk-faq.sgm: Move file to here.
15853           TODO: Update Makfile.am 
15854
15855 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
15856
15857         * docs/gtk-faq.sgm: Add Section 2
15858
15859 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
15860
15861         * docs/gtk-faq.sgm: New file. Start of DocBook
15862           version of the FAQ.
15863
15864 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
15865
15866         * configure.in (GDK_PIXBUF_MAJOR): Define version
15867         numbers for GDK_PIXBUF_*, as they get substituted
15868         into a header file. Need to consider versioning
15869         for gdk-pixbuf more carefully later.
15870
15871 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
15872
15873         Work with srcdir != builddir.   
15874         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
15875         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
15876         * demos/testpixbuf.c: Likewise.
15877         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
15878         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
15879         <gdk/x11/gdkx.h>.
15880         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
15881         "gdk-pixbuf.h".
15882         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
15883
15884 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
15885
15886         * TODO.xml: Change 1.4 version numbers to 2.0.
15887
15888 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
15889
15890         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
15891         fixups to GTK+ standard.
15892
15893 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
15894
15895         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
15896         gdk-pixbuf.
15897
15898         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
15899         fixups for GObject.
15900
15901         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
15902         gdk-pixbuf with GDK dependencies moved into GDK.
15903         
15904         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
15905         move gdk-pixbuf-loader here until GObject has signals.
15906
15907         * demos/: New directory of demos. Move demos from
15908         gdk-pixbuf here.
15909
15910         * demos/pixbuf-init.c: Small bit of code to check for
15911         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
15912         set GDK_PIXBUF_MODULEDIR appropriately.
15913
15914         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
15915         define which no longer makes sense.
15916
15917 2000-06-21  Havoc Pennington  <hp@redhat.com>
15918
15919         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
15920         gtk_get_default_language
15921
15922         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
15923         new function to get the default language
15924
15925         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
15926         s/gtk_text_view_style_values/gtk_text_style_values/
15927
15928         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
15929         Add a "language" field to tags.
15930
15931         (gtk_text_tag_set_arg): Fix bug in setting
15932         "bg_full_height_set" tag.
15933
15934 2000-06-21  Havoc Pennington  <hp@redhat.com>
15935
15936         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
15937         in the interfaces
15938
15939         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
15940         stuff instead when possible.
15941
15942         * gtk/gtktexttypes.h: Delete some unused constants
15943
15944         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
15945         testtextbuffer.c: use glib instead of custom unicode routines
15946
15947 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
15948
15949         * docs/es/: Removed mistakenly added generated sgml
15950
15951         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
15952         Remove outdated info files.
15953
15954         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
15955         Moved tutorial files into subdir
15956
15957         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
15958         subdir.
15959
15960         * docs/man/gtk_button.pod: Remove. (contents will be
15961         integrated into gtk-reference button page.)
15962
15963         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
15964         docs/faq/Makefile.am: Adjust for new organization
15965
15966 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
15967
15968         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
15969         not $(MKINSTALLDIRS)
15970
15971 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
15972
15973         * gtk/testgtk.c (create_text): Finish the job Elliot started
15974         of removing font setting test for text widget. (Since text widget
15975         and GdkFont are not deprecated, and cause portability problems.)
15976
15977 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
15978
15979         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
15980         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
15981         Remove use of libunicode in favor of new GLib functions.
15982
15983         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
15984         nano-x, framebuffer. The X11 include is just a hack until we get
15985         the necessary functions in gdkcolor.h, so there is no reason to
15986         add other includes of platforms.
15987
15988         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
15989         window bigger than the screen change.
15990
15991         * gtk/testgtk.c: Revert some random changes from Elliot
15992         that had no particular point and were causing testgtkrc
15993         not to function correctly.
15994         
15995         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
15996         because GdkSegment and GdkRegionBox have the same fields,
15997         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
15998         results in clearer code.
15999
16000         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
16001         gdk_input_translate_coordinates): Fix missed GdkObjectification
16002
16003 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16004
16005         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
16006         * gtk/gtk{plug,socket}.h: Missed commits from previous.
16007
16008 2000-06-20  Havoc Pennington  <hp@redhat.com>
16009
16010         * modules/linux-fb/Makefile.am: Make this compile
16011         without framebuffer enabled
16012
16013         * gdk/linux-fb/Makefile.am: Add conditional to not build
16014         framebuffer unless specified in configure
16015
16016         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
16017         the size of the target instead of source if -1 was passed for
16018         width/height
16019
16020         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
16021         width/height confusion.
16022
16023 2000-06-19  Havoc Pennington  <hp@redhat.com>
16024
16025         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
16026         GDK_DRAWABLE_XID. In the future, we probably want to make it
16027         faster with G_DISABLE_CHECKS turned on.
16028
16029 2000-06-14  Havoc Pennington  <hp@redhat.com>
16030
16031         * gdk/Makefile.am: add gdkpixmap.c
16032
16033         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
16034         s/gdk_image_init/_gdk_windowing_image_init
16035
16036         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
16037         ref/unref
16038
16039         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
16040
16041         * gdk/gdkcompat.h: remove GdkWindowType compat, since
16042         GdkWindowType is now non-deprecated; 
16043         change gdk_window_get_type() compat to be
16044         gdk_window_get_window_type().
16045
16046         * gdk/gdkdnd.h: make GdkDragContext a GObject.
16047
16048         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
16049         virtual GObject. Make all functions call into the vtable.
16050         Move gdk_image_put() guts in here. Remove GdkDrawableType
16051         and gdk_drawable_get_type(), these are now GdkWindow-specific.
16052         draw_image, get_depth, get_size, set_colormap, get_colormap,
16053         get_visual added to the vtable.
16054         
16055         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
16056         GObject. Virtualize everything. 
16057         (gdk_gc_new_with_values): remove check for destroyed window,
16058         because now GdkWindow::create_gc will check this.
16059         (gdk_gc_set_values): New function to set GC values, this 
16060         was already implemented but wasn't in the header
16061
16062         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
16063
16064         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
16065         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
16066         remove _gdk_window_class; add _gdk_window_impl_get_type() and
16067         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
16068         _gdk_windowing_window_init, rename gdk_image_init to
16069         _gdk_windowing_image_init.
16070         
16071         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
16072         (gdk_draw_layout): Remove check for destroyed window, 
16073         because all the drawable methods already check it.
16074         
16075         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
16076         Add gdkpixmap.c which contains implementation of GdkDrawable
16077         virtual table (by chaining to a platform-specific implementation
16078         object).
16079         
16080         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
16081         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
16082         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
16083         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
16084         GdkColormapPrivate. 
16085
16086         * gdk/gdktypes.h: #include <glib-object.h>
16087
16088         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
16089         Move most functionality to platform-specific implementation
16090         object. GdkWindow itself now handles the backing store, then
16091         chains to the platform-specific implementation.
16092         (gdk_window_get_window_type): return GdkWindowType of the window.
16093         (gdk_window_peek_children): New routine, returns the children of 
16094         a GdkWindow
16095         (gdk_window_get_children): Was in X11-specific code and did 
16096         XQueryTree. Changed to simply return a copy of window->children; 
16097         so it can go in cross-platform code.
16098         
16099         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
16100
16101         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
16102         GdkColormap; just changed to use the new private data instead
16103         of casting to GdkColormapPrivate.
16104
16105         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
16106         gdk_cursor_new().
16107
16108         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
16109         (private data member in the GObject). 
16110         (xdnd_manager_source_filter): Function had broken 
16111         error handling, fix it (use gdk_error_trap_push).
16112
16113         * gdk/x11/gdkdrawable-x11.c: This file now implements
16114         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
16115         base class is purely for the convenience of the X port,
16116         and not part of the interface to cross-platform GDK.
16117
16118         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
16119         
16120         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
16121         specific to X, and returned by the create_gc virtual method
16122         of GdkDrawableImplX11. 
16123         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
16124         rather than gchar, this was also changed in the GdkGC vtable.
16125         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
16126         mask is 0, return immediately, instead of checking every flag.
16127         This is faster, and keeps us from segfaulting if values is NULL
16128         and the mask contains some nonzero flags.
16129
16130         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
16131         GdkWindow.
16132
16133         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
16134         GdkWindowPrivate is gone.
16135
16136         * gdk/x11/gdkim-x11.c: rename things that got renamed.
16137
16138         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
16139         remove the image_put stuff that got transferred to GdkDrawable.
16140         
16141         * gdk/x11/gdkinput.c: renamings
16142
16143         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
16144
16145         * gdk/x11/gdkpixmap-x11.c: GObject conversion
16146
16147         * gdk/x11/gdkprivate-x11.h: indentation fixes
16148
16149         * gdk/x11/gdkproperty-x11.c: renamings
16150
16151         * gdk/x11/gdkselection-x11.c: renamings
16152
16153         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
16154         implements the platform-specific "impl" object.
16155         Moved gdk_window_get_children to gdk/gdkwindow.c
16156
16157         * gdk/x11/gdkx.h: Remove all the private structs and private datas
16158         that no longer exist. Add declaration of GdkGCX11 object here.
16159         Fix all the macros to still work. 
16160
16161         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
16162         GdkDragContext from the boxed types since they are now GObjects.
16163
16164         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
16165         moved xthickness/ythickness into the instance. GtkStyleClass
16166         functions are now in the standard vtable for GtkStyle, so you have
16167         to create a GObject subclass to write a theme engine.
16168         (gtk_style_copy): fixed a leaked PangoFontDescription
16169         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
16170         can be the standard GObject function.
16171         
16172         * Throughout GTK:
16173         s/style->klass->[xy]thickness/style->[xy]thickness
16174         s/pango_layout_unref/g_object_unref/
16175
16176         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
16177         
16178         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
16179         accessing GDK internals.
16180
16181         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
16182         accessing GDK internals.
16183
16184 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16185
16186         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
16187
16188         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
16189         problem by calculating event position relative to the trough
16190         rather than the slider.
16191         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
16192
16193         * gdk/gdkgc.h: Add GDK_NOR.
16194
16195         * configure.in, Makefile.am: Add modules top level dir
16196         * configure.in: Only use pangox library if building x11 target.
16197         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
16198
16199 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16200
16201         * gtk/gtkcolorsel.c: Change private class member to be named
16202         private_data throughout the file.
16203
16204         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
16205         private_data to avoid clashing with keyword.
16206
16207 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16208
16209         * gdk/gdkdnd.h: Add comment to remove warning.
16210
16211 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
16212
16213         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
16214         Byelorussian language; changed the Makefile and file names 
16215         to reflect that.
16216
16217 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
16218
16219         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
16220         rather than gdk_window_hide; this makes things work
16221         correctly if the window is programmatically hidden while
16222         iconified.
16223
16224 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
16225
16226         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
16227         cut and paste typo where wrong pixmap was being
16228         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
16229
16230 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
16231
16232         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
16233         Add helper function to compute format / bytes 
16234         relationship. Use in a couple places to fix up
16235         errors which assume 8 * format.
16236
16237         * gtk/gtkselection.c (gtk_selection_request): Use 32
16238         rather than 8 * sizeof (GdkAtom), to work correctly
16239         on Alpha.
16240
16241 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
16242
16243         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
16244         libgtk.la
16245         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
16246         versions
16247
16248         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
16249         checking macros return NULL since the function has a return value.
16250
16251 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
16252
16253         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
16254         GTK+ from building at all.
16255
16256         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
16257
16258 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
16259
16260         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
16261         gtk/Makefile.am: make it possible to configure gtk for different
16262         targets on the same platform. The library name is now 
16263         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
16264         flag. Only the x11 target compiles right now.
16265         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
16266         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
16267         * gdk/nanox/gdk*generic*: delete generic region code.
16268         * gdk/linux-fb/gdk*generic*: delete generic region code.
16269         * README.nanox: update information.
16270         
16271 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
16272
16273         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
16274         prepend not append. (Pointed out by Brett Hall.)
16275
16276 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
16277
16278         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
16279
16280 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
16281
16282         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
16283         need this later, and this makes sure that the atexit for
16284         glib gets called after that for GDK, so atexits are
16285         properly ordered for object leak checking.
16286
16287         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
16288
16289         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
16290         pango_x_shutdown_display()
16291
16292         * gtk/simple.c (main): Close window on destroy.
16293
16294 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
16295
16296         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
16297         to treat initial creation different from setting with 
16298         regards to the graphics-exposures parameter, so add a parameter
16299         indicating whether this is initial or not.
16300
16301 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
16302
16303         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
16304         to sort of work by adding an extra return_exposes arg
16305         to gdk_event_translate() - it might be better to simply
16306         deprecate the function altogether and force people to rewrite
16307         without it. gdk_window_scroll() handles most of it, and where
16308         gdk_window_scroll() doesn't work, simply redrawing more does.
16309
16310         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
16311         assertion.
16312
16313         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
16314
16315         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
16316         bunch of pretty much useless /* Print debugging info */ comments 
16317         which had drifted away from the code they were commenting.
16318
16319 2000-06-02  Havoc Pennington  <hp@pobox.com>
16320
16321         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
16322         is in working order.
16323         
16324         * gtk/testtext.c: Change to reflect anonymous mark API
16325
16326         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
16327
16328         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
16329         field, which was unused.
16330
16331         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
16332         saves some typing.
16333
16334         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
16335
16336         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
16337         flag on the insertion point and selection bound
16338
16339         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
16340         make mark-manipulation functions take a GtkTextMark* instead of a
16341         mark name.
16342         
16343         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
16344         GtkTextMarkBody; will be used to detect attempts to delete
16345         the permanent marks (insert and selection bound)
16346
16347         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
16348
16349 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
16350
16351         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
16352         flag to on.
16353
16354         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
16355         Honor DOUBLE_BUFFRED_FLAG
16356
16357         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
16358         function to set the DOUBLE_BUFFERED flag.
16359
16360         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
16361         or not exposes done on the widget should be double-buffered.
16362
16363         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
16364         to be what would be expected. (Fixes problem with a
16365         g_return_if_fail() validating a TextDirection enumeration)
16366
16367 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
16368
16369         * gtk/gtkwidget.c: Remove all references to 
16370         offscreen flag which was no longer used.
16371
16372         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
16373
16374         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
16375         for non-null label_widget->parent.
16376
16377         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
16378         which no longer was used.
16379
16380         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
16381
16382         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
16383         for null arguments.
16384
16385         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
16386         check for destroyed windows.
16387
16388 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
16389
16390         * gtk/gtkimmulticontext.c: Add a finalize method and unref
16391         the slave context there.
16392
16393         * gtk/gtkinvisible.[ch]: Make reference counting behavior
16394         identical to GtkWindow.
16395
16396 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
16397
16398         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
16399         pangox to here, so we can write them independent of rendering
16400         system, using GDK primitives.
16401
16402         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
16403         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
16404         since we have a rendering-system independent implementation in
16405         terms of draw_glyphs().
16406         
16407         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
16408         function to render a single line.
16409
16410         * gdk/x11/gdkpango.c: Move the guts of this file mostly
16411         into ../gdkpango.c, which simplifies things, since we
16412         don't have to deal with raw X gc's.
16413
16414 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
16415
16416         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
16417         get the logical attributes for a given GtkTextLine.
16418
16419 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
16420
16421         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
16422         g_locale_get_codeset() to g_get_codeset() change.
16423
16424 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
16425
16426         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
16427         descriptions.
16428
16429         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
16430         the entry.
16431
16432         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
16433         redoing (vastly simplifying) for Pango. Still needs quite
16434         a bit of work. (Size selection is currently poor. List of 
16435         predefined sizes is not a good idea, since all of these
16436         sizes won't necessarily be distinct.)
16437
16438 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
16439
16440         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
16441         CODESET results for LANG=C.
16442
16443 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
16444
16445         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
16446         which takes a stringized pango font description;
16447         ignore the older 'font' and 'fontset' declarations.
16448
16449         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
16450         field with a GdkFont derived via gdk_font_from_description(),
16451         for compatibility. (Should we just remove it entirely?
16452         Probably too much compatibility breakage, but people
16453         should be migrating to the new Pango stuff as quickly
16454         as possible.)
16455
16456 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
16457
16458         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
16459
16460 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
16461
16462         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
16463         redoing; there are some bugs in size allocation right
16464         now, the semi-existant distinction between header / day
16465         fonts was removed, but, with Pango, could actually
16466         be made functional in a nice way.
16467         
16468         * gtk/testcalender: Move calender from examples into this
16469         directory as a test program. (We really need to restrcture
16470         testgtk into a whole directory full of tests for every
16471         widget or functionality group, separated into multiple .c
16472         files.)
16473
16474 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
16475
16476         * gtk/testgtk.c (file_exists): Fix stupid typo that
16477         was keeping RC file from being loaded.
16478
16479         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
16480         RC file font code.
16481
16482 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
16483
16484         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
16485         Add function to load a GdkFont from a PangoFontDescription.
16486
16487 2000-05-29  Tor Lillqvist  <tml@iki.fi>
16488
16489         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
16490         variable should be of type GdkEventPrivate.
16491
16492 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
16493
16494         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
16495         to have any widget for the label, use a GtkLabel widget
16496         to display the text. (Based partially on a patch from
16497         Anders Carlson.)
16498
16499         (Quite a bit of code reorganization - strip 90% of the
16500         guts out of gtkaspectframe and add a single virtual
16501         func to GtkFrameClass - compute_child_allocation.)
16502
16503 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
16504
16505         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
16506         (Removed clist->row_center_offset field because caching
16507         it wasn't saving time or code, added private function
16508         _gtk_clist_create_cell_layout()).
16509
16510 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
16511
16512         * gtk/gtkaccellabel.c: Pangoized.
16513
16514         * gtk/[hv]ruler.c: Pangoized
16515
16516 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
16517
16518         * gtk/gtkfilesel.c (gtk_file_selection_init):
16519         Use gtk_clist_set_column_auto_resize() to remove need
16520         need for manual column width computations.
16521
16522 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
16523
16524         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
16525         ensuring Pango correctness, and considerably simplifying the
16526         code.
16527         
16528         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
16529
16530         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
16531         getting of numbers of lines.
16532
16533         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
16534         to the actual requested width of the lable, not to the wrap
16535         width we set.
16536
16537         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
16538
16539         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
16540           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
16541
16542         * gtk/gtktextview.c: Fix structure inheritance.
16543
16544         * gtk/gtkprogressbar.c: Pangoize.
16545
16546 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
16547
16548         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
16549         in a function.
16550
16551         * gtk/gtktextlayout.c (find_display_line_above): Fixed
16552         bug with computing line tops.
16553
16554         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
16555
16556 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16557
16558         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
16559         and y_offset coordinates to do what we need now. (The offset between
16560         buffer and layout coordinates has been reintroduced, but is a 
16561         bit different than before.)
16562
16563         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
16564         handle the adjustments ourselves, and scroll as necessary using
16565         the new gdk_window_scroll().
16566         
16567         The advantage of this is that when we are incrementally revalidating,
16568         we are essentially rearranging things around the visible portion
16569         of the screen. With the old setup, the visible portion of the
16570         screen was moved around in the layout, so scrolling and redrawing
16571         to track that caused jumping of the display. Since we now
16572         control the scrolling ourselves, we can suppress this and
16573         only redraw when things actually change.
16574
16575 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
16576
16577         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
16578         the region not just redisplay it after-all, since we store the
16579         cursors in the LineDisplay. (Ugly interactions here between
16580         GtkLayout and GtkTextBTree here.)
16581         
16582         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
16583
16584 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
16585
16586         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
16587         Added function to scroll contents of a window while keeping the
16588         window constant. Works by XCopyArea or guffaw-scrolling depending
16589         on the details of how the window is set up. (guffaw-scrolling
16590         still needs to be filled in.)
16591
16592 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
16593
16594         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
16595         move the debugging that was tied to a global variable
16596         to that.
16597
16598         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
16599
16600         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
16601         validated flag, in line data instead of setting height/width to
16602         -1. This allows us to perform operations with partially invalid
16603         buffer (using the old size for invalid lines) and thus to do
16604         incremental vaidation. Keep height/width aggregates up to date
16605         when deleting text and rebalancing the tree.
16606
16607         * gtk/gtktextbtree.[ch]: Add functions validate a line
16608         (gtk_text_btree_validate_line), and to validate up
16609         to a number of pixels (gtk_text_btree_validate).
16610
16611         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
16612         that indicates that something is changed and a revalidation
16613         pass is needed. Change ::need_repaint to ::changed, and
16614         make it take old and new yranges instead of a rectangle.
16615
16616         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
16617         the line_data_destroy() function from 
16618         gtk_text_btree_add_view() to a virtual function in 
16619         GtkTextLayout
16620
16621         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
16622         since we are handling partial repaints in a different fashion
16623         now.
16624
16625         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
16626         of the selection instead of queueing a repaint on the
16627         entire widget.
16628
16629         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
16630         get_selection_bounds() down to btree, make the function
16631         in buffer a wrapper around the btree function.
16632
16633         * gtk/gtktextlayout.[ch]: Add functions to check if the
16634         layout is valid and to recompute either a range of pixels
16635         aroudn a line or a certain total number of pixels.
16636
16637         * gtk/gtktextlayout.[ch]: Cache a single line display;
16638         now that we only redraw the needed portions, the hit rate
16639         for this cache is quite high.
16640         
16641         * gtk/gtktextview.[ch]: Keep track of the first paragraph
16642         on the screen so that when re-laying-out the buffer, we can
16643         keep the same place. This requires connecting to ::value_changed
16644         on the adjustments
16645
16646         * gtk/gtktextview.[ch]: Add idle functions to revalidate
16647         the buffer after we receive an ::invalidated signal.
16648         
16649 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
16650
16651         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
16652         to max of allocation and layout size, not just to the
16653         layout size.
16654
16655         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
16656         Invalidate window so it gets redrawn properly.
16657
16658         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
16659         to mean the entire window.
16660
16661         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
16662         into public header.
16663
16664 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
16665
16666         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
16667         to get the name of a mark.
16668
16669         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
16670         to find the paragraph from a y position.
16671
16672 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
16673
16674         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
16675         nodes have width/height >= 0, not > 0.
16676
16677 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
16678
16679         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
16680         Add a size_only flag, so when we only need the size, we don't create
16681         useless appearance attributes.
16682
16683         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
16684         duplicate setting of font description.
16685
16686         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
16687
16688 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
16689
16690         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
16691         EXTRA_DIST. It does not work well when the file that
16692         everything depends on is not in the tarball.
16693
16694 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
16695
16696         * gtk/testgtk.c: Some hacks and fixes so that it basically
16697         works when not sitting in the GTK+ build tree.
16698
16699 2000-05-03  Havoc Pennington  <hp@redhat.com>
16700
16701         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
16702         Properly determine the ordering of the tag root and the current
16703         line within the tree. Previous algorithm only worked if the tag
16704         root's immediate parent was the common root of both the current
16705         line and the tag root.
16706
16707 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
16708
16709         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
16710         alignment.
16711
16712         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
16713         the widget text directional dynamically.
16714
16715         * gtk/gtktextview.[ch]: Added functions to get and set default
16716         wrap mode.
16717
16718 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
16719
16720         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
16721         in cursor location computation.
16722
16723 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
16724
16725         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
16726         vadjusment values properly when layout gets smaller.
16727
16728         * gtk/gtktextview.c (need_repaint_handler): Areas being
16729         passed in are far completely inaccurate, and sometimes
16730         too small, so, for now, just queue a redraw on the
16731         whole visible region.
16732
16733 2000-04-25  Havoc Pennington  <hp@redhat.com>
16734
16735         * gtk/gtktextbtree.c (summary_destroy): new function to 
16736         destroy tag summary nodes
16737         (gtk_text_line_next_could_contain_tag): this function was 
16738         totally broken if the line passed in wasn't below the tag
16739         root. Fix it.
16740         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
16741         "wildcard" case, we have to do a linear scan. Blah.
16742         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
16743         we have to do the linear scan
16744         (tag_removed_cb): When a tag is removed from the tag table, 
16745         remove the GtkTextTagInfo node from the btree.
16746         (gtk_text_btree_spew): Implement the spew function, for 
16747         our debugging pleasure.
16748
16749 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
16750
16751         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
16752         a problem with referring to the wrong buffer.
16753
16754         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
16755
16756         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
16757         font description to gtk_style_new() - otherwise things
16758         don't work without a .gtkrc file.
16759
16760         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
16761         tags table if we create it ourself, too.
16762
16763         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
16764         it was conflicting with XKB modifiers.
16765
16766         * gtk/gtktextview.[ch]: Add simple support for 
16767         GtkIMContext.
16768
16769 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
16770
16771         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
16772         with deletion from last commit.
16773
16774 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
16775
16776         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
16777         in the context from the current locale.
16778         
16779         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
16780         context, not hardcoded value.
16781
16782         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
16783         not logical.
16784
16785 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
16786
16787         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
16788         attributes - that doesn't handle partial-glyph selection
16789         properly. Instead use new pango_layout_line_get_x_ranges()
16790         functionality to draw the selection.
16791
16792         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
16793         now properly handles out-of-range coordinates.
16794
16795         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
16796
16797         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
16798         public.
16799
16800         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
16801         for paragraphs opposite to the base direction of the widget.
16802
16803         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
16804
16805         * gtk/gtktextlayout.c: Don't split segments on marks, since that
16806         causes Arabic words to reshape as you cursor through.
16807
16808         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
16809         cursor position when moving vertically with the arrow keys and
16810         scrolling with page-up/page-down. (Arrow keys save only the X,
16811         scrolling saves both X and Y.)
16812
16813         This means you can line-up / line-down or page-up / page-down
16814         without losing your place, and also that moving vertically
16815         with the cursor keys keeps the same X position, not the same
16816         character count:
16817
16818         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
16819         arrow keys move by display lines, not paragraphs.
16820
16821 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
16822
16823         * gtk/gtklayout.c: Make sure that the bin window is at least
16824         as big as the allocation. (Should we also make sure that the
16825         bin window is big enough to completely cover widget->window?)
16826
16827         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
16828         function to get the onscreen rectangle.
16829
16830         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
16831         for offsets in window coordinates.
16832
16833 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
16834
16835         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
16836         confusion.
16837
16838         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
16839         from the widget direction.
16840
16841         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
16842         Add a "direction" attribute.
16843
16844         * gtk/gtktextview.c: global s/tkxt/text_view/.
16845
16846         * gtk/testtext.c: Added long block of text in Arabic, to test out
16847         the direction attributes. (Some problems with the shaping system
16848         for arabic become obvious - like the fact the cursor splits words
16849         into unjoined pieces.)
16850
16851 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
16852
16853         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
16854
16855         * gtk/gtktextlayout.c: Fix up alignment.
16856
16857         * gtk/testtext.c: Add some tests for centering, wrapping.
16858
16859 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
16860
16861         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
16862         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
16863         If we wrote GTK+-specific layout-render function this could just replace
16864         the draw_layout() operation in the vtable.
16865
16866         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
16867         pango_layout_get_cursor_pos() and use that function.
16868
16869         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
16870         is a non-static symbol.
16871
16872         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
16873         with gtk_text_btree_find_line_by_y()
16874
16875         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
16876         renderer that handles GtkTextAppearance attributes.
16877
16878         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
16879
16880           - Move the values in the style that don't affect geometry into a
16881             GtkTextAppearance structure.
16882           - Change underline to take a PangoUnderline and "font" a string
16883             representation of a font description
16884           - Add a "font_desc" attribute which takes a FontDescription structure.
16885
16886         * gtk/gtktextlayout.[ch]:
16887
16888           - Get rid of the display-line list per each line. Instead, we
16889             generate, on demand, a GtkTextLineDisplay structure which]
16890             contains a PangoLayout * and other necesary information
16891             (offsets, cursor locations) for displaying a paragraph.
16892           - Get rid of the code to wrap lines, create display chunks,
16893             etc. Instead, we just go through a paragraph and convert
16894             it into the necessary inputs to a PangoLayout.
16895           - Implement a new attribute type, GtkTextAttrAppearance. This
16896             holds a GtkTextAppearance, and is used to pass colors, 
16897             stipple, etc, through from the layout to the display without
16898             having to use lots and lots of individual attributes.
16899           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
16900             in terms of PangoLayout functions.
16901         
16902         * gtk/gtktextview.c: 
16903          
16904           - Handle passing the necessary PangoContext to the layout
16905           - Some fixups in painting to deal with the automatic backing store
16906             and offsetting of GTK+-1.4
16907           - Add a style_set handler so that the default style reacts
16908             properly to theme changes.
16909         
16910         * gtk/gtktext?*.[ch]: Random code-style fixes.
16911
16912         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
16913
16914 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
16915
16916         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
16917         in original form preparatory to Pango-ization and gdkimcontext-ization.
16918
16919 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
16920
16921         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
16922         so that we can derive from gtkimcontext in language bindings properly.
16923
16924 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
16925
16926         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
16927         Add a compose table including (almost) all the compose combinations
16928         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
16929         data in the XIM implementation.
16930
16931         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
16932         Moved functions to convert keyvalues from and to unicode here from
16933         the win32 port and made them public.
16934
16935 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
16936
16937         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
16938
16939 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
16940
16941         * gtk/gtkimcontext.[ch]: Base class for new input context system
16942
16943         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
16944         the real input context implementation to be loaded from modules
16945         and switched on the fly.
16946
16947         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
16948         context that just does direct keysymbol => unicode translation.
16949
16950         * gtk/gtkentry.[ch]: Start switching editing over to using
16951         GtkInputContext. (No handling of preedit yet.)
16952
16953 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
16954
16955         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
16956         many substitutions. (klass should not be subsituted.)
16957
16958 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
16959
16960         * configure.in: Add checks for Pango
16961
16962         * configure.in docs/Makefile.am: Add test for sgml2html
16963         and allow 'make dist' without building html, but print out
16964         warnings in that case. (For making snapshots)
16965
16966         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
16967         Add Pango libraries and C flags
16968
16969         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
16970         Add function (gdk_draw_layout) to draw a pango layout.
16971
16972         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
16973         for getting Pango contexts for GDK.
16974
16975         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
16976
16977         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
16978         editing.
16979
16980         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
16981         keysym => unicode translations. More languages can be added
16982         here, but real input-method support is needed.
16983
16984         * docs/Changes-1.4.txt: Added note about entry behavior.
16985         
16986         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
16987         to set the reading direction for a widget and the global direction.
16988         Add test which allows toggling the global direction. Two private
16989         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
16990
16991         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
16992           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
16993
16994         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
16995
16996         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
16997         underlining now handled by Pango.
16998
16999         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
17000         to RCStyle and Style. (Having both this and the old font name and GdkFont 
17001         is temporary.)
17002
17003         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
17004         convenience functions for creating contexts and layouts for widgets.
17005
17006         * gtk/testgtk.c: Enhance label tests with multilingual labels.
17007
17008 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
17009
17010         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
17011         titles to be active, even if they aren't visible.
17012         (gtk_clist_column_titles_passive):  Ditto.
17013
17014 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
17015
17016         * gtkmenu.c:
17017         * gtkmenu.h:
17018         * gtktypeutils.h: Spelling/grammar fixes in comments.
17019
17020 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
17021
17022         * gdk/nanox/*.h: add missing header files.
17023
17024 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
17025
17026         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
17027         send_event to TRUE.
17028         (gtk_drawing_area_size): queue a resize.
17029
17030 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
17031
17032         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
17033         the handlers, also invalidate them. bug nailed down by Karl Nelson
17034         <kenelson@ece.ucdavis.edu>.
17035
17036 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
17037
17038         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
17039         "(nil)" foundries, patch from Grigorios Magklis.
17040
17041         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
17042         on non-available fonts, based on a patch by Grigorios Magklis
17043         <maglis@cs.rochester.edu>.
17044
17045 2000-05-18  Elliot Lee  <sopwith@redhat.com>
17046
17047         * gdk/x11/gdkregion-generic.c: If a region does not have any
17048         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
17049         instead of GDK_OVERLAP_RECTANGLE_IN.
17050
17051 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
17052
17053         * gtk/gtklayout.c (gtk_layout_map): Remove references to
17054         OFFSCREEN, as it is no longer necessary.
17055
17056 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
17057
17058         * gtk/gtkcolorsel.c: Patch from David Santiago
17059         <mrcooger@cyberverse.com> to change things so that the 
17060         indicator of the active palette entry is done independently,
17061         not via the focus, since it should always be visible.
17062
17063 2000-05-17  Tor Lillqvist  <tml@iki.fi>
17064
17065         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
17066         refcount leaks as in the X11 backend.
17067
17068         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
17069         cosmetics.
17070
17071         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
17072         backend. Add _gdk_windowing_window_destroy().
17073
17074         * gtk/gtkcolorsel.c: Include correct backend-specific header.
17075         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
17076         either, but these probably do exist on nanox?)
17077         
17078         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
17079         which isn't necessarily defined by <math.h>.
17080
17081         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
17082         ancestry past GtkObject.
17083
17084         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
17085         from DLL on Win32.
17086
17087         * gtk/gtk.def: Update corresponding to recent changes.
17088
17089         * gtk/makefile.{cygwin,msc}: Updates.
17090
17091 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
17092
17093         * docs/Changes-1.4.txt: A bit of editing.
17094
17095         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
17096         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
17097         to clear the update area for the window, and clear it
17098         when hiding a window.
17099
17100         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
17101         if window destroyed.
17102
17103         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
17104
17105         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
17106         gdk_window_destroy() to the generic code, since there was a lot of 
17107         window-system-independent logic it in. Add a function:
17108         
17109          _gdk_window_destroy() 
17110
17111         to the internal API to destroy a window without unreferencing it.
17112         Add a function:
17113
17114          _gdk_windowing_window_destroy()
17115
17116         That does the windowing-system-dependent part of destroying 
17117         the window.
17118
17119 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
17120
17121         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
17122
17123 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
17124
17125         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
17126         Make gtk_widget_shape_combine_mask() keep a reference count on
17127         the pixmap since it keeps it around.
17128
17129 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
17130
17131         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
17132         leak.
17133
17134         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
17135         leak with event filters.
17136
17137 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
17138
17139         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
17140         signal handlers with the right data arguments. (Fixes
17141         some warnings when a widget was repeatedly set as a drag
17142         destination.)
17143
17144         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
17145         window so we can avoid avoid setting the DND properties on the
17146         toplevel window repeatedly.
17147
17148 2000-05-13  Tor Lillqvist  <tml@iki.fi>
17149
17150         * gdk/win32/gdkwin32.h: Define more message types missing from
17151         mingw headers.
17152
17153         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
17154         call gdk_window_destroy_notify(). It was never called. This
17155         probably meant that the GdkWindow was never freed. Thanks Owen for
17156         noticing (!).
17157
17158         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
17159         window as destroyed before calling DestroyWindow(). DestroyWindow()
17160         causes a call to the window procedure (gdk_WindowProc), which
17161         calls gdk_event_translate(), which calls
17162         gdk_window_destroy_notify(), which gets confused unless the window
17163         is set as destroyed.
17164
17165         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
17166         this function to indicate it's win32 only. Put inside #ifdef
17167         G_ENABLE_DEBUG.
17168
17169         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
17170         debugging function. (gdk_event_translate:) Add a default branch
17171         that uses the above function to print debug messages with all
17172         Windows messages symbolically.
17173
17174         * gdk/win32/gdkprivate-win32.h: Declare it, and
17175         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
17176
17177 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
17178
17179         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
17180         public header file.
17181
17182 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
17183
17184         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
17185
17186         * gtk/gtktext.c: made the adjustments no-construct args, simply
17187         provide default adjustments.
17188         (gtk_text_destroy): release adjustments.
17189
17190         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
17191         adjustment argument non-construct.
17192
17193         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
17194         instead of in finalize.
17195         (gtk_progress_get_text_from_value): 
17196         (gtk_progress_get_current_text): 
17197         (gtk_progress_set_value): 
17198         (gtk_progress_get_percentage_from_value): 
17199         (gtk_progress_get_current_percentage): 
17200         (gtk_progress_set_percentage): 
17201         (gtk_progress_configure): ensure an adjustment is present.
17202
17203 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
17204
17205         * gtk/gtkcolorsel.[hc]:
17206         * gtk/gtkcolorseldialog.[hc]:
17207         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
17208         their parent implementation, use bit fields for boolean values, don't
17209         create unused widgets, usage of glib types, braces go on their own
17210         lines, function argument alignment, #include directives etc. etc. etc..
17211
17212         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
17213
17214 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
17215
17216         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
17217
17218         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
17219         of NULL.
17220
17221         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
17222         to freed data.
17223         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
17224
17225         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
17226         to NULL when the toplevel is getting destroyed.
17227         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
17228         (gtk_menu_destroy): 
17229         (gtk_menu_init): store the information of whether we have to
17230         readd the initial child ref_count during destruction in a new
17231         GtkMenu field needs_destruction_ref_count.
17232
17233         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
17234         here, those reading: learn from my mistake! ;)
17235         in order for set_?adjustment to support a default adjustemnt if
17236         invoked with an adjustment pointer of NULL, the code read (pseudo):
17237         if (v->adjustment) unref (v->adjustment);
17238         if (!adjustment) adjustment = adjustment_new ();
17239         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
17240         now imagine the first unref to actually free the old adjustment and
17241         adjustment_new() creating a new adjustment from the very same memory
17242         portion. here, the latter comparision will unintendedly fail, and
17243         all hell breaks loose.
17244         (gtk_viewport_set_hadjustment):
17245         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
17246         after unreferencing it.
17247
17248         * gtk/gtkcontainer.[hc]: removed toplevel registration
17249         functions: gtk_container_register_toplevel(),
17250         gtk_container_unregister_toplevel() and
17251         gtk_container_get_toplevels() which had wrong semantics
17252         anyways: it didn't reference and copy the list.
17253
17254         * gtk/gtkwindow.c: we take over the container toplevel registration
17255         bussiness now. windows are registered across multiple destructions,
17256         untill they are finalized. the initial implicit reference count
17257         users are holding on windows is removed with the first destruction
17258         though.
17259         (gtk_window_init): ref & sink and set has_user_ref_count, got
17260         rid of gtk_container_register_toplevel() call. add window to
17261         toplevel_list.
17262         (gtk_window_destroy): unref the window if has_user_ref_count
17263         is still set, got rid of call to
17264         gtk_container_unregister_toplevel().
17265         (gtk_window_finalize): remove window from toplevel list.
17266         (gtk_window_list_toplevels): new function to return a newly
17267         created list with referenced toplevels.
17268         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
17269
17270         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
17271         adjustment a non-construct arg.
17272         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
17273         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
17274         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
17275
17276         * gtk/gtkrange.c: added some realized checks.
17277         (gtk_range_destroy): get rid of the h/v adjustments in the
17278         destroy handler instead of finalize. remove timer.
17279         (gtk_range_get_adjustment): demand create adjustment.
17280
17281         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
17282         we simply create them on demand now and get rid of them in
17283         the destroy handler.
17284         (gtk_viewport_destroy): get rid of the h/v adjustments in the
17285         destroy handler instead of finalize.
17286         (gtk_viewport_get_hadjustment): 
17287         (gtk_viewport_get_vadjustment): 
17288         (gtk_viewport_size_allocate): demand create h/v adjustment
17289         if required.
17290
17291         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
17292         gtk_widget_real_destroy () functionality.
17293         (gtk_widget_real_destroy): reinitialize with a new style, instead
17294         of setting widget->style to NULL.
17295
17296 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
17297
17298         * gtk/gtkcalendar.c:
17299         * gtk/gtkbutton.c: ported _get_type() implementation over to
17300         GType, either to preserve memchunks allocation facilities,
17301         or because Gtk+ 1.0 GtkTypeInfo was still being used.
17302
17303         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
17304         over. prepare for ::destroy to be emitted multiple times.
17305         removed reference tracer magic. chain into GObjectClass.shutdown()
17306         to emit ::destroy signal.
17307
17308         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
17309         fundamental.
17310
17311         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
17312         cludge.
17313
17314         * gtk/gtksocket.c:
17315         * gtk/gtkplug.c:
17316         * gtk/gtklayout.c:
17317         * gtk/gtklabel.c:
17318         * gtk/gtkargcollector.c:
17319         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
17320         not being a fundamental anymore, and to work with the new
17321         type system (nuked fundamental type varargs clutter).
17322
17323         * gtk/*.c: install finalize handlers in the GObjectClass
17324         part of the class structure.
17325         changed direct GTK_OBJECT()->klass accesses to
17326         GTK_*_GET_CLASS().
17327         changed direct object_class->type accesses to GTK_CLASS_TYPE().
17328
17329         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
17330         GType. made most of the GTK_*() type macros and Gtk* typedefs
17331         simple wrappers around macros and types provided by GType.
17332         most notably, a significant portion of the old API vanished:
17333         GTK_TYPE_MAKE(),
17334         GTK_TYPE_SEQNO(),
17335         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
17336         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
17337         GTK_TYPE_ARGS,
17338         GTK_TYPE_CALLBACK,
17339         GTK_TYPE_C_CALLBACK,
17340         GTK_TYPE_FOREIGN,
17341         GtkTypeQuery,
17342         gtk_type_query(),
17343         gtk_type_set_varargs_type(),
17344         gtk_type_get_varargs_type(),
17345         gtk_type_check_object_cast(),
17346         gtk_type_check_class_cast(),
17347         gtk_type_describe_tree(),
17348         gtk_type_describe_heritage(),
17349         gtk_type_free(),
17350         gtk_type_children_types(),
17351         gtk_type_set_chunk_alloc(),
17352         gtk_type_register_enum(),
17353         gtk_type_register_flags(),
17354         gtk_type_parent_class().
17355         replacements, where available are described in ../docs/Changes-1.4.txt.
17356         implemented compatibility functions for the remaining API.
17357
17358         * configure.in: depend on glib 1.3.1, use gobject module.
17359
17360 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
17361
17362         * TODO.xml: Various updates to current status.
17363
17364 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
17365
17366         * gtk.m4: Print out version when test succeeds.
17367
17368 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
17369
17370         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
17371         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
17372         
17373         (Original triangle color selector from Simon Budig
17374         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
17375         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
17376         Santiago <mrcooger@cyberverse.com>)
17377
17378         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
17379         out into a separate widget.
17380
17381         * gtk/testgtk.c: Add some checkbuttons for toggling palette
17382         and opacity controls.
17383
17384 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
17385
17386         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
17387         snuck in prematurely.
17388
17389 2000-05-07  Tor Lillqvist  <tml@iki.fi>
17390
17391         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
17392         had deleted a ! operator by mistake, which caused
17393         GDK_SELECTION_CLEAR events never to be generated, which caused
17394         only the first copy to the clipboard from an gtkeditable to
17395         actually cause a copy to the Windows clipboard.
17396
17397 2000-05-06  Tor Lillqvist  <tml@iki.fi>
17398
17399         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
17400         compilation, too. Current mingw gcc distributions include the
17401         necessary headers. Also the necessary IIDs are now in mingw
17402         headers/libraries, and own definitions unnecessary.
17403
17404         More hacking on OLE2 DND, still doesn't work though, and thus
17405         ifdeffed out.
17406
17407         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
17408         here, too.
17409
17410 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
17411
17412         * gdk/nanox/*: nano-X port work in progress.
17413         * gdk/simple.c: simple test for Gdk.
17414         * README.nanox: notes about the port: read this first!
17415         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
17416         with nano-X.
17417
17418 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
17419
17420         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
17421         gdk_window_clear() into common code, implement in terms of
17422         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
17423         not redirected to the backing rectangle.
17424
17425 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17426
17427         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17428         EXTRA_DIST. It does not work well when the file that
17429         everything depends on is not in the tarball.
17430
17431 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
17432
17433         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
17434         with recursion where process_updates() is called from
17435         an expose handler. (GtkTextView is highly broken in
17436         doing this, but it should work, so it is a nice test
17437         case.)
17438
17439 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17440
17441         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
17442         handle the case where updates are queued during processing of
17443         updates.
17444
17445 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17446
17447         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
17448         window is on gdk_display - use that instead of segfaulting.
17449
17450 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
17451
17452         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
17453         broken and require an empty arg, give it to them.
17454
17455 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
17456
17457         * gtk/gtklabel.h: indentation fixes.
17458
17459 2000-05-02  Tor Lillqvist  <tml@iki.fi>
17460
17461         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
17462         draw too narrow or too low arcs, they seem to fail, at least with
17463         some display drivers.
17464
17465         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
17466
17467         Large changes to the Win32 backend, partially made necessary by
17468         the changes to the backend-independent internal
17469         structures. Attempts to implement similar backing store stuff as
17470         on X11. The current (CVS) version of the Win32 backend is *not* as
17471         stable as it was before the no-flicker branch was merged. A
17472         zipfile with that version is available from
17473         http://www.gimp.org/win32/. That should be use by "production"
17474         code until this CVS version is usable. (But note, the Win32
17475         backend has never been claimed to be "production quality".)
17476
17477         * README.win32: Add the above comment about versions.
17478
17479         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
17480
17481         * gdk/gdk.def: Update.
17482
17483         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
17484         presumably be replaced by some more better mechanism as 1.4 gets
17485         closer to release shape.
17486
17487         * gdk/makefile.{cygwin,msc}: Update.
17488
17489         * gdk/win32/*.c: Correct inclusions of the backend-specific and
17490         internal headers. Change code according to changes in these. Use
17491         gdk_drawable_*, not gdk_window_* where necessary.
17492
17493         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
17494         our old DND.
17495
17496         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
17497         to interpret single characters as UTF-8. Thanks to Hans Breuer.
17498         Use correct function name in warning messages.
17499
17500         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
17501         GSourceFuncs gdk_event_prepare and gdk_event_check.
17502         (gdk_event_get_graphics_expose): Do implement, use
17503         PeekMessage. Thanks to Hans Breuer.
17504         (event_mask_string): Debugging function to print an GdkEventMask.
17505         (gdk_pointer_grab): Use it.
17506
17507         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
17508         (old) book I used claimed was Hangul actually is CJK Unified
17509         Ideographs Extension A. Also, Hangul Syllables were missing.
17510         Improve logging.
17511
17512         * gdk/win32/gdkgc-win32.c: Largish changes.
17513
17514         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
17515         g_win32_getlocale() from GLib, and not setlocale() to get current
17516         locale name.
17517
17518         * gdk/win32/gdkprivate-win32.h
17519         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
17520         gdkwin32.h, similarily as in the X11 backend.
17521
17522         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
17523         assignment was used instead of equals in if test. Thanks to Hans
17524         Breuer.
17525
17526         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
17527         the X11 version.
17528
17529         * gdk/win32/makefile.{cygwin,msc}
17530         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
17531         path to the Win32 headers that works also with the mingw compiler.
17532
17533         * gtk/gtkstyle.c: Include <string.h>.
17534
17535 2000-04-26  Havoc Pennington  <hp@redhat.com>
17536
17537         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
17538         replacing the broken gtk_label_get ()
17539
17540 2000-04-15  Havoc Pennington  <hp@pobox.com>
17541
17542         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
17543         this keeps scanner scripts from getting confused.
17544
17545         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
17546         data, rather than void
17547
17548 2000-04-15  Tor Lillqvist  <tml@iki.fi>
17549
17550         * gtk/gtkclist.c (gtk_clist_motion)
17551         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
17552         with is_hint FALSE, get x and y from the event. They used to be
17553         used uninitialised. The Win32 backend never sends motion events
17554         marked as hints. This for instance fixes the annoying file and
17555         font selector behaviour in the Win32 version.
17556
17557 2000-04-14  Tor Lillqvist  <tml@iki.fi>
17558
17559         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
17560         gtk_private_n_signals variables, they are used by some software,
17561         sigh.
17562
17563         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
17564         installation directory from the Registry, where the installer
17565         should have put it.
17566
17567 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
17568
17569         * gdk/x11/Makefile.am: Fix problem with installation directory for
17570         gdkx.h
17571
17572         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
17573         <mrcooger@cyberverse.com> so that when selecting menus with the
17574         mouse, the first item will not be selected, but when selecting
17575         with an accelerator, or navigating left-right on a menubar with
17576         the menus popped up, the first item will be selected.
17577
17578 2000-04-05  Dan Damian  <dand@dnttm.ro>
17579
17580         * configure.in: Added "ro" to ALL_LINGUAS.
17581
17582 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
17583
17584         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
17585         indentation.
17586
17587         * Makefile.am (EXTRA_DIST): Fix typo.
17588
17589         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
17590         to catch gdkconfig.h
17591
17592         * gtk/gtkitemfactory.c: Added FIXME.
17593
17594 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
17595
17596         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
17597         s/return_if_fail/return_val_if_fail/g and add a return value.
17598
17599 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
17600
17601         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
17602         merge slipup.
17603
17604         * gdk/gdkinput.h: Fix missing line from merge.
17605
17606 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
17607
17608         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
17609         instead of gdkprivate.h.
17610
17611 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
17612
17613         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
17614         parent class to correctly be GtkDialogClass.
17615
17616 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
17617
17618         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
17619         toplevel windows and their immediate children by their parents,
17620         since the size of toplevel windows is out of our immediate
17621         control and we don't get any real benefit from trying to track
17622         this size for clipping.
17623
17624         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
17625         for input_only windows.
17626
17627         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
17628         to fix some hacks and make sure that we don't try to set the
17629         background of input only windows.
17630
17631 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
17632
17633         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
17634         the _really_ internal stuff, and leave gdkprivate.h for the fake private
17635         stuff that we've traditionally exposed.
17636
17637         * gdk/**.c: Use gdkinternals.h where appropriate.
17638
17639         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
17640         not include gdkprivate-x11.h, move all stuff of conceivable public
17641         interest into gdkx.h; keep all really private stuff in
17642         uninstalled header gdkprivate-x11.h.
17643
17644         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
17645         image->image_put on windows through a new function _gdk_window_draw_image()
17646         to allow us to do backing store for images. (Sort of ugly)
17647
17648         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
17649         contexts locally so that we can offset them properly when drawing 
17650         onto backing pixmaps.
17651
17652         * gdk/gdkinput.h: Reindented
17653
17654         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
17655         pixmap or color for the window, so we can properly initialize
17656         our double-buffer pixmaps, and also so that we temporarily set
17657         a background of None while scrolling.
17658
17659         * gdk/gdkregion.h: Revise region boolean operators to have an
17660         interface that is actually convenient - switch from creating new
17661         regions on every op, to "methods" that modify existing regions
17662         (A = A OP B). 3 argument forms which allow dest == src, would also
17663         be possible, but the current interfaces seem to map nicely
17664         onto what needs to be done. (There is quite a lot of region
17665         code in GDK now.)
17666
17667         * gdk/gdkregion.h: Add constructor from rectangle and a copy
17668         operator.
17669
17670         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
17671         gdkpoly-generic.h: Copy region code from Xlib, switch it over
17672         to 32 bit coordinates, modify it to be mostly GTK+ style
17673         and to have interfaces that match gdkregion.h.
17674
17675         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
17676         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
17677         create a backing pixmap and redirect all drawing to
17678         that backing pixmap until a matching gdk_window_end_paint().
17679
17680         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
17681         Create a special drawable class for GtkWindow's that 
17682         redirects the drawing to the backing pixmap as necessary
17683         and then calls the real operations in _gdk_windowing_window_class.
17684
17685         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
17686         Store invalid region for each window. Generate expose events for invalid
17687         region in an idle. This replaces both the expose compression
17688         and the redrawing queuing in GTK+. It is both more efficient and
17689         simpler than either one individually and far more so then the
17690         combination.
17691
17692         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
17693         Emulate 32 bit coordinates for windows with 16 bit coordinates
17694         by offsetting drawing, guffaw scrolling techniques and
17695         mapping/unmapping child windows as necessary.
17696
17697         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
17698         where, when invalid regions are processed, the region is stored,
17699         and if expose events come in that are detectably duplicate
17700         the processed exposes (by comparison of event serial numbers),
17701         the stored region is subtracted out of those exposes.
17702
17703         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
17704         regions newly exposed when scrolling or resizing windows.
17705         This, combined with forcing processesing of queued invalidated
17706         regions, gives nice flicker-free scrolling.
17707
17708         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
17709         invalidated regions after every scroll.
17710
17711         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
17712         emulation in GDK. Its, for all practical purposes just a
17713         GtkViewport/GtkFixed hybrid now.
17714
17715         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
17716         (16-bit) structures as necessary instead of just casting.
17717
17718         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
17719         in terms of the structures from gdkregion-generic.c, using appropriate
17720         offsets from GDK to X11 coordinates. Cache clip mask and
17721         origin and ts origin locally and only flush to the server
17722         when drawing, to avoid constantly setting and resetting these
17723         values when offsetting GC's for scrolling and backing pixmaps.
17724
17725         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
17726
17727         * gtk/gtkcontainer.c: Call process_all_updates at end
17728         of resizing to reduce flicker. (Avoids having redraw
17729         lag arbitrarily behind resize under some circumstances)
17730
17731         * gtk/gtkentry.c: Remove old backing store code, and simply take
17732         advantage of the new backing store capabilities of GDK.
17733
17734         * gtk/gtkmain.c: Simple implementation of widget backing
17735         store - simply push a paint while handling each expose.
17736         (Should really be configurable widget for widget.)
17737         
17738         * gtk/gtkwidget.c: Remove all the old complicated redraw
17739         code, and simply invalidate the GDK windows from
17740         gdk_window_queue_clear(), etc. (Sigh, so much carefully
17741         debugged complexity ... gone to the winds.)
17742
17743         Remove all the code for suppressing expose events while
17744         resizes are pending; this isn't needed since the invalid
17745         areas won't be processed until after the resizes are
17746         processed, since they are in a lower priority idle.
17747
17748 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
17749
17750         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
17751         and height of dest rectangle for non-intersecting rectangles.
17752
17753 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
17754
17755         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
17756         for GdkRectangle.
17757
17758 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
17759
17760         * gdk/gdk{events,image,private,types,window}.h
17761          gdk/x11/gdkinputprivate.h: Change all coordinates
17762          from int16 to int. Also, Change width and height from
17763          unsigned to signed to avoid all the stupid C 
17764          signedness bugs.
17765
17766 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
17767
17768         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
17769         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
17770         Add some more detailed checking.
17771
17772         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
17773         New function to retrieve the depth of a drawable.
17774
17775         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
17776         field, reorder fields to save memory. 
17777
17778 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
17779
17780         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
17781         of the background image instead of scaling the background down to
17782         a line.
17783
17784         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
17785         which temporarily set slider to wrong size.
17786
17787         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
17788         queue_clear().
17789
17790 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
17791
17792 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
17793
17794         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
17795
17796 2000-03-17  Tor Lillqvist  <tml@iki.fi>
17797
17798         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
17799         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
17800
17801         * gdk/win32/gdkfont-win32.c
17802         * gdk/win32/gdkproperty-win32.c
17803         * gdk/win32/gdkselection-win32.c
17804         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
17805         now declared such.
17806
17807 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
17808
17809         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
17810
17811 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
17812
17813         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
17814         is called without trapping X errors.
17815
17816 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
17817
17818         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
17819         way into the fontset lists.
17820
17821 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
17822
17823         * gtk/gtkthemes.h: add extern "C" scope.
17824
17825 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
17826
17827         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
17828         to make appends to the list constant. (gtk-guy-990901-0.patch)
17829
17830 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
17831
17832         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
17833         for the typename hash table.
17834
17835 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
17836
17837         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
17838         to make sure we never divide by zero. 
17839         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
17840
17841 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
17842
17843         * gtk/gtkfontsel.c: Apply patch from
17844         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
17845         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
17846
17847         Also, some cleanups in atom handling.
17848
17849 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
17850
17851         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
17852         not GtkWidget.
17853
17854 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
17855
17856         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
17857         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
17858         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
17859         more guint wrap-around bugs before going to bed.
17860
17861 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
17862
17863         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
17864         guint wrap arounds in allocation.width.
17865
17866         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
17867         process untill we fit the allocation given.
17868
17869 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
17870
17871         * gtk/gtkwidget.c:
17872         (gtk_widget_unrealize): guard widget access with ref/unref
17873         around signal emission.
17874         (gtk_widget_hide): same here, but also check its destroyed
17875         state before queueing a resize.
17876
17877 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
17878
17879         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
17880         of gtk_default_insensitive_bg as insensitive base color.
17881
17882         * gtk/gtktext.c (gtk_text_style_set): set the background color according
17883         to the widget's state.
17884         (gtk_text_realize): same here.
17885         (gtk_text_state_changed): same here.
17886         (draw_bg_rect): compare background color against base[] from
17887         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
17888
17889 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
17890
17891         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
17892         grabs are active, unless a delete event is send to the toplevel
17893         of the currently grab holding widget.
17894
17895 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
17896
17897         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
17898         debugging g_print's.
17899
17900 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
17901
17902         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
17903         ever make the scrolled-window requisition ever depend on the 
17904         visibility state of the scrollbars for the AUTOMATIC policy. 
17905         This breaks the GTK+ requisition model, and causes loops.
17906
17907 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
17908
17909         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
17910         the default font to avoid problems with XFree86-4.0 where the
17911         default charset is iso10646-1, not iso8859-1.
17912
17913 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
17914
17915         * acinclude.m4
17916         * config.guess
17917         * config.sub
17918         * ltconfig
17919         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
17920
17921         * gtk/Makefile.am: minor cosmetic consistency tweak
17922
17923 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
17924
17925         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
17926         the activate_time to 0, so that we handle a quick
17927         press/release press/release properly and don't suppress
17928         the second release. (Red Hat bug #7545)
17929
17930 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
17931
17932         * gtk/gtkctree.c (row_delete):
17933         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
17934         bugs with destruction notifier, *always* update internal
17935         structures *before* calling user code.
17936
17937 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
17938
17939         A few more fixes for bug #5487, #2051, #2677.
17940         * gtk/gtkclist.c : 
17941         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
17942         not GDK_BUTTON_PRESS.
17943         (resync_selection): resync only if selection_mode is
17944         GTK_SELECTION_EXTENDED
17945         * gtk/gtkctree.c (resync_selection): same here
17946
17947 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
17948
17949         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
17950         gdk_drag_get_selection() and gtk_menu_detach().
17951
17952         [ From Jeroen Ruigrok/Asmodai ]
17953
17954 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
17955
17956         * gtk/gtknotebook.c (gtk_notebook_size_request): 
17957         page->tab_label can be NULL.
17958
17959 2000-01-25  Havoc Pennington  <hp@pobox.com>
17960         
17961         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
17962         arg is boolean
17963
17964         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
17965
17966         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
17967
17968         * gdk/gdkproperty.c (gdk_property_get): return boolean
17969
17970         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
17971
17972         * gdk/gdkim.c (gdk_im_ready): return boolean
17973
17974         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
17975
17976         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
17977         glib clash, should fix glib)
17978
17979         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
17980         (gdk_get_show_events): return gboolean, and canonicalize 
17981         to TRUE/FALSE
17982
17983         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
17984         colormap is private
17985         (gdk_colors_alloc): gboolean whether to be contiguous
17986         (gdk_color_equal): return gboolean since we are a predicate
17987         and not a qsort() (this looks semi-wrong due to glib breakage,
17988         IMO glib should be fixed)
17989         
17990         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
17991         (gdk_get_use_xshm): return gboolean
17992         (gdk_pointer_is_grabbed): return gboolean
17993
17994         * gdk/gdk.h: Change prototypes to match all the above changes,
17995         and re-run egtk-format-protos as required.
17996
17997 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
17998
17999         * gtk/gtkctree.c (resync_selection): 
18000         * gtk/gtkclist.c (resync_selection):
18001
18002         Return immediately if clist->drag_pos < 0. This is a workaround
18003         for the corrupt state that the clist gets into when a
18004         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
18005
18006         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
18007         
18008         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
18009         variable from recent commit.
18010
18011 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
18012
18013         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
18014
18015 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
18016
18017         * gtk/Makefile.am: prefix all autogenerated source that get build in
18018         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
18019         in builddir. since we subsequently cd into srcdir for autogeneration,
18020         the paths have to be stripped from the target file names, thusly we
18021         use $(@F) as target names now.
18022         put a comment about configure.in's --disable-rebuilds option,
18023         which can be used for non-writable source directories, for development
18024         setups though, srcdir has to be *writable*.
18025
18026 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
18027
18028         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
18029           Finish the job of allowing event to be NULL.
18030           (Fixes bug #4283, reported by Chris Blizzard)
18031
18032         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
18033           things so that the cursor appears on screen, properly
18034           take into account INNER_BORDER.
18035           (Fixes bug #4754, reported by Antonio Campos)
18036
18037 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
18038
18039         * gtk/gtknotebook.c (gtk_notebook_map): Don't
18040           show the tab_label unless it itself is visible.
18041
18042           gtk/gtknotebook.c (gtk_notebook_size_request):
18043           Do a better job of making sure that the visibility
18044           of the tab label corresponds to whether it should
18045           be mapped or not.
18046
18047 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
18048
18049         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
18050           Use the requisition, not the allocation, since the
18051           allocation has not necessarily been computed yet.
18052           (Pointed out by Eugene Osintsev)
18053
18054 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
18055
18056         * gtk/gtkstyle.c (gtk_style_new): Dont' set
18057           style/base[GTK_STATE_INSENSITIVE] both to
18058           gtk_default_insensitive_bg!
18059           (Bug #2187, reported by Jonathan Blandford)
18060
18061         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
18062           Add Alt_L, Alt_R to list of invalid accelerators.
18063           (Bug #3736, reported by Vlad Harchev)
18064
18065 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
18066
18067         * gtk/gtkfilesel.c (open_ref_dir): Fix several
18068         bugs which occured after an attempt to open 
18069         invalid home directory left cmpl_state->reference_dir == NULL.
18070
18071          - completion on files in home directory didn't work
18072          - completion on an empty string caused  segfault
18073
18074          (Bug #3678, reported by Steve Ratcliffe)
18075
18076         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
18077         cut and paste error that was causing scales to
18078         be incorrectly positioned.
18079         (Bug #2956,
18080          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
18081
18082 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
18083
18084         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
18085         when checking for dcgettext, if we've found we needed
18086         it for dgettext.
18087 +
18088 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
18089
18090         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
18091         queue_clear on NO_WINDOW widgets during a reparent,
18092         since at that point the window and widget heirarchies
18093         are out of sync. This stops crashing in some cases
18094         (the scrolled window reparent test, for instance), and
18095         _probably_ won't cause drawing errors.
18096
18097         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
18098         test do what it was supposed to do and be robust against
18099         window closings, etc. (Bug #2443)
18100
18101 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
18102
18103         * gtk/gtkentry.c: Fix return values on mouse events.
18104         (Bug #2686, Sky <seb_sky@yahoo.com>)
18105
18106         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
18107         (pointed out by George Lebl)
18108
18109         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
18110         (From Ettore Perazzoli  <ettore@helixcode.com>)
18111  
18112 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
18113
18114         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
18115         clicks between rows or outside calender area correctly.
18116         (Patch from Damon Chaplin)
18117
18118         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
18119         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
18120           Call destroy function when overwriting existing data. 
18121           (Pointed out by Damon Chaplin)
18122
18123 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
18124
18125         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
18126           which was causing problems on various systems with Xmu.
18127           This hasn't been needed for a very long time.
18128           (Fixes #1185 3167)
18129
18130 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
18131
18132         * gdk/gdki18n.h: Include <ctype.h> when defining
18133           gdk_isw* in terms of is* as a fallback.
18134           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
18135
18136 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
18137
18138         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
18139           realize the widget when it is size allocated!
18140           (old, old bug)
18141
18142         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
18143           Removed unused call to gdk_window_get_size() that
18144           showed up when the above was fixed.
18145
18146 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
18147
18148         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
18149           fix up widget->window when the widget is a
18150           NO_WINDOW container widget.
18151
18152 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
18153
18154         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
18155           to account for the fact that feof() does _not_ 
18156           return TRUE on errors, and thus avoid infinite loops
18157           when trying to use gdk_pixmap_create_from_xpm()
18158           on unreadable values.
18159
18160 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
18161
18162         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
18163
18164 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
18165
18166         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
18167           gdk_gc_set_dashes to take gint8 instead of gchar to
18168           make it clearer that it is _not_ a NULL terminated string.
18169
18170         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
18171           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
18172           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
18173           arguments.
18174
18175 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
18176
18177         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
18178         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
18179         background size relative to our allocation, guard against small
18180         allocations, we may have not yet been size allocated.
18181
18182 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
18183
18184         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
18185         not just version == 3. We implement all 3 + most of 4 - 
18186         (we don't support matching text/plain;charset=iso-8859-1
18187         to a dest that expects text/plain). We'll still advertise
18188         3 to be safe, but any client implementing version >= 3
18189         must interoperate with 3.
18190         
18191 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
18192
18193         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
18194         background and gc members, add a warning in gtk_tooltips_set_color()
18195         indicating that this function is deprecated.
18196
18197 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
18198
18199         * docs/gtkfaq.sgml: FAQ Update:
18200           - Minor cleanups (Emmanuel, me)
18201           - New questions:
18202                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
18203                 How can I retrieve the text from a GtkMenuItem? (timj)
18204                 How do I validate/limit/filter the input to a GtkEntry? (me)
18205                 Memory does not seem to be released when I free the list
18206                         nodes I've allocated (timj)
18207
18208 2000-03-07  Tor Lillqvist  <tml@iki.fi>
18209
18210         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
18211         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
18212         for which it is no use to call GetLastError onWin9x.
18213         (gdk_other_api_failed) New function, for general error
18214         reporting without calling GetLastError.
18215         (gdk_win32_api_failed) OTOH, this function always calls
18216         GetLastError. (gdk_win32_last_error_string) Remove this function,
18217         GLib has the equivalent now.
18218
18219         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
18220         call them with function name, file name and line number in the
18221         arguments.
18222
18223         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
18224         functions.
18225         
18226         * gtk/gtk.def: Add some missing entry points.
18227
18228         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18229         gtk_paned_set_gutter_size, which don't exist any longer, as void.
18230         
18231         Fixes by Hans Breuer:
18232
18233         * gdk/makefile.msc: Update for debugging.
18234
18235         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
18236         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
18237         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
18238         in the dash_list.
18239
18240         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
18241         the x11 backend.
18242
18243         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
18244
18245         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
18246
18247 2000-03-04  Tor Lillqvist  <tml@iki.fi>
18248
18249         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
18250         just pixel value of background colour.
18251
18252         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
18253         containing code snippet previously duplicated in a couple of
18254         places.
18255         
18256         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
18257         gdk_colormap_color.
18258
18259         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
18260         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
18261         events for autorepeated Shift, Control and Alt keys. Use
18262         gdk_colormap_color.
18263
18264         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
18265         pointer is inside the window the cursor of which we are setting,
18266         call SetCursor immediately.
18267
18268         * gdk/win32/makefile.cygwin
18269         * gtk/makefile.cygwin: If we don't have the build number stamp
18270         file, use zero.
18271
18272         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18273         gtk_paned_set_gutter_size as empty.
18274
18275         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
18276         
18277 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
18278
18279         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
18280           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
18281           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
18282           docs/gtk_tut.sgml docs/gtk.texi TODO:
18283
18284           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
18285
18286 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
18287
18288         * gtk/gtkcalendar.c: Implement num_marked_dates,
18289           and don't emit mutiple day_selected signals on
18290           month_prev.
18291
18292 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
18293
18294         * docs/make-todo (lineno): let title and logo be configurable so
18295         that GNOME can use this script too.
18296
18297         * TODO.xml: added logourl and a title
18298
18299 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
18300
18301         * TODO.xml: Added some UI items, and an explanatory
18302         comment at the top of the file.
18303
18304 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
18305
18306         * TODO.xml: some updates, added abunch of new entries.
18307         a note for those fiddeling with this file, when done
18308         with it, invoke:
18309         $ ./docs/make-todo TODO.xml >/dev/null
18310         and correct output errors before comitting changes.
18311
18312 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
18313
18314         * TODO.xml: Added XML-structured TODO file.
18315         * docs/make-todo: python script to turn TODO.xml into
18316           pretty XML output. 
18317
18318 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
18319
18320         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
18321         the function to let it draw the seven dots, instead of the old,
18322         much maligned, method.
18323         (draw_dot): New function to draw a dot.
18324
18325         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
18326         to draw the handle inside the border width as opposed to outside.
18327         Use paint function instead of gdk_draw_point.
18328
18329         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
18330         to draw the handle inside the border width as opposed to outside.
18331         Use paint function instead of gdk_draw_point.
18332
18333         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
18334         Change indenting to be more GTK like.
18335
18336 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
18337
18338         * docs/gtk_tut.sgml: New section on GtkCalendar
18339         * examples/calendar: Update example code
18340
18341 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
18342
18343         * docs/gtkfaq.sgml: FAQ Update
18344
18345 2000-02-19  Anders Carlsson  <andersca@gnu.org>
18346
18347         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
18348         to prevent the scroll event to be propagated upwards.
18349
18350 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
18351
18352         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
18353         OwnerGrabButtonMask from button entries for
18354         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
18355
18356         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
18357         to the event mask (which will result in button/press release
18358         being added to the event mask on Unix) so scrolling works
18359         for layouts in scroll windows.
18360
18361         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
18362
18363         Patch from Anders Carlsson  <andersca@gnu.org> to add
18364         a scroll event.
18365
18366         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
18367         scrolling to the "Test Scrolling" part of testgtk.
18368  
18369         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
18370  
18371         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
18372         it against GDK_SCROLL.
18373  
18374         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
18375         way of mouse wheel scrolling.
18376  
18377         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
18378  
18379         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
18380  
18381         * gtk/gtkmain.c: Removed previous mouse wheel hack.
18382  
18383         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
18384         gdk_event_mask_table.
18385  
18386         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
18387         GdkEventScroll handler.
18388  
18389         * gdk/gdkevents.h: Added GdkEventScroll structure.
18390  
18391 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
18392
18393         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
18394         and Anders Carlsson to change the Paned widgets so that they
18395         can be dragged from anywhere along the length. Also change
18396         the way that this is drawn to make this apparent.
18397
18398         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
18399         from George Lebl to check that option_menu->menu is present
18400         before getting history.
18401
18402 2000-02-14  Tor Lillqvist  <tml@iki.fi>
18403
18404         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
18405         before the assertion for non-NULL segment list.
18406
18407         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
18408         Seems that pattern brushes *must* be 8x8 pixels! At least on my
18409         machine, but it might be display driver dependent. Sigh, so make
18410         sure the stipple is that size. Does Windows suck or what?
18411
18412         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
18413         places.
18414
18415 2000-02-13  Havoc Pennington  <hp@pobox.com>
18416
18417         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
18418         refcount to 1
18419         (gdk_cursor_new): init refcount to 1
18420
18421         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
18422
18423 2000-02-13  Tor Lillqvist  <tml@iki.fi>
18424
18425         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
18426         so that we don't have to do unnecessary settings to the HDC.
18427
18428         * gdk/win32/gdkdrawable-win32.c
18429         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
18430         gdk_gc_predraw.
18431
18432         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
18433         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
18434         GDI paths, call WidenPath to get the outline of the stroken path,
18435         and then fill the outline (with the brush that was built from the
18436         stipple).
18437
18438         * gdk/win32/gdkgc-win32.c: Factor out common code from
18439         _gdk_win32_gc_new and gdk_win32_gc_set_values into
18440         gdk_win32_gc_values_to_win32values. Use correct colour for
18441         SetBkColor() (Until now the code actually used a random colour in
18442         the call to SetBkColor()... but that didn't show up as not many
18443         GDI APIs use the background colour. Pattern (opaque stippled)
18444         brushes do.)
18445
18446         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
18447         gdk_win32_api_failed): New functions for error logging.
18448
18449         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
18450         WIN32_API_FAILED to call them, passing function or file name and
18451         line number.
18452
18453         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
18454
18455         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
18456         GdkColor for foreground and background in GdkGCWin32Data.
18457
18458         * gdk/makefile.cygwin: Link in the resource object separately.
18459
18460         * gdk/win32/rc/gdk.rc
18461         * gtk/gtk.rc (New file)
18462         * gdk/win32/makefile.cygwin
18463         * gtk/makefile.cygwin: Update build number in DLLs automatically,
18464         as in GLib.
18465
18466 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
18467
18468         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
18469         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
18470         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
18471         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
18472         parameters given and cursor->ref_count. coding style fixups.
18473
18474         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18475         not GtkWidget.
18476         
18477         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
18478         fix up widget macros and add _GET_CLASS() variant.
18479         
18480         * gtk/*.c: some GtkType fixups.
18481
18482 2000-02-09  Tor Lillqvist  <tml@iki.fi>
18483
18484         * gdk/win32/gdkproperty-win32.c
18485         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
18486         were reversed.
18487
18488 2000-02-04  Tor Lillqvist  <tml@iki.fi>
18489
18490         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
18491         g_filename_to_utf8 to convert the font names Windows gives us from
18492         whatever is the default codepage to UTF-8.
18493         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
18494         in the other direction.
18495
18496         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
18497         error in debugging output.
18498
18499 2000-02-02  Tor Lillqvist  <tml@iki.fi>
18500
18501         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
18502         and height parameters to gdk_window_clear_area(). Not minus one.
18503
18504 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
18505
18506         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
18507         checks if the widget passed to gtk_drag_get_data() was not the
18508         dest widget.
18509
18510 2000-02-01  Tor Lillqvist  <tml@iki.fi>
18511
18512         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
18513         g_filename_from_utf8 functions (which were added a moment ago to
18514         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
18515         size buffers.
18516
18517         gtk_file_selection_get_filename returns the filename in the C
18518         runtime encoding. It calls g_filename_from_utf8, but copies the
18519         returned string to a static buffer, which is returned. I think
18520         this is better than returning the result from g_filename_from_utf8
18521         directly, which would mean all apps that use it would have to free
18522         the return value. Or should this function care about this issue at
18523         all? Maybe a new function with clearly defined semantics.
18524
18525         * gtk/gtkfilesel.h: Add comment about
18526         gtk_file_selection_get_filename returning the filename in the C
18527         runtime's encoding.
18528
18529         * README.win32
18530         * gdk/gdk.def
18531         * gdk/makefile.{cygwin,msc}
18532         * gtk/gtk.def: Updates.
18533
18534         * gdk/gdkcursor-win32.c: Initialise refcount.
18535
18536 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
18537
18538         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
18539
18540 2000-01-30  Havoc Pennington  <hp@pobox.com>
18541
18542         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
18543         destroy
18544
18545         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
18546
18547         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
18548         implemented in platform-specific code
18549
18550         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
18551
18552         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
18553         underscore in front
18554
18555         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
18556         put an underscore in front
18557
18558         * gdk/gdkcursor.c: new file, implements
18559         gdk_cursor_ref/gdk_cursor_unref
18560
18561         * gdk/gdkcursor.h: Refcount GdkCursor
18562
18563         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
18564
18565 2000-01-29  Tor Lillqvist  <tml@iki.fi>
18566
18567         * gdk/gdkwindow.h
18568         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
18569
18570 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
18571
18572         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
18573         structures to properly inherit from GtkWidget not GtkBin.
18574
18575 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
18576
18577         * gtk+.spec.in: Added lib/gtk+/include/* to %files
18578         (bug #5178 - Peter Wainright)
18579         
18580         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
18581         so that it will be installed.
18582         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
18583
18584 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
18585
18586         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
18587         for the GtkStyleClass vtable const.
18588
18589         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
18590         take a const string argument like GtkTranslateFunc. This will
18591         require changes in use code.
18592
18593 2000-01-19  Tor Lillqvist  <tml@iki.fi>
18594
18595         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
18596         semantics (to mimic the X11 backend, which just calls XClearArea)
18597         is to check for zero width (and height), and in that case use the
18598         window's width minus x (height minus y). This fixes for instance
18599         some redraw problems with gtkclist, which were easily noticeable
18600         in the gtk file selection widget.
18601
18602         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
18603         windows.
18604
18605 2000-01-13  Tor Lillqvist  <tml@iki.fi>
18606
18607         * configure.in
18608         * gdk/Makefile.am
18609         * gdk/x11/Makefile.am
18610         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
18611         (bug #5177).
18612         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
18613         out later.
18614
18615 2000-01-09  Tor Lillqvist  <tml@iki.fi>
18616
18617         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
18618         WM_MOVE for iconified or invisible windows. This fixes various
18619         problems when minimising windows. Thanks to Bernd Herd.
18620
18621 2000-01-05  Tor Lillqvist  <tml@iki.fi>
18622
18623         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
18624         backend's draw_lines method, not draw_points.
18625
18626 2000-01-02  Tor Lillqvist  <tml@iki.fi>
18627
18628         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
18629         before Owen's reorganisation: Don't have queued_events and
18630         queued_tail statics in this file, but use gdk_queued_events and
18631         gdk_queued_tail. This makes exposure event compression work again.
18632
18633         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
18634         seem to be needed?
18635
18636 1999-12-30  Tor Lillqvist  <tml@iki.fi>
18637
18638         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
18639         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
18640         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
18641         doesn't do anything.
18642
18643         * gdk/gdk.def: Add gdk_xid_table_insert.
18644
18645         * gdk/win32/gdkprivate-win32.h
18646         * gdk/win32/gdkevents-win32.c
18647         * gdk/win32/gdkinput-win32.c
18648         
18649         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
18650         extension_events field in the GdkWindowWin32Data struct. Use only
18651         the extension_events field in GdkWindowPrivate. Previously one was
18652         set, and the other one tested, which broke tablet
18653         functionality. Thanks to Keishi Suenaga for pointing this out.
18654
18655 1999-12-18  Tor Lillqvist  <tml@iki.fi>
18656
18657         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
18658         When handling a single character (text length == 1), don't handle
18659         it as if it was UTF-8.
18660
18661 1999-12-11  Tor Lillqvist  <tml@iki.fi>
18662
18663         * Makefile.am: Distribute README.win32.
18664         
18665         * gdk/Makefile.am
18666         * gdk/win32/Makefile.am: Distribute Win32 files.
18667
18668         * gdk/makefile.msc: New file.
18669
18670         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
18671         after label).
18672
18673         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
18674         gdk_error_code as GDKVAR, as they are referred outside GDK.
18675
18676         * gdk/win32/makefile.msc: Update.
18677
18678         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
18679         tweaks. Check only if at least one of those Unicode subrange bits
18680         we care for is set. If no code page bits are set, guess (wildly)
18681         based on the charset.
18682
18683         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
18684
18685         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
18686         non-NULL.
18687
18688         * gtk/gtkdnd.c
18689         * gtk/gtklayout.c
18690         * gtk/gtkplug.c
18691         * gtk/gtkselection.c
18692         * gtk/gtksocket.c
18693         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
18694         appropriate. There must be a cleaner way to handle this?
18695
18696         * gtk/gtkrc.c: Must include windows.h on Win32.
18697
18698         * gtk/testgtk.c: No need to include gdkx.h.
18699
18700         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
18701
18702 1999-12-07  Tor Lillqvist  <tml@iki.fi>
18703
18704         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
18705         the rbearing is set to the same as the width, but this should be
18706         fixed.
18707
18708 1999-12-06  Tor Lillqvist  <tml@iki.fi>
18709
18710         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
18711         function. If Windows doesn't tell us what Unicode subranges a font
18712         covers, guesstimate based on the codepages it covers. This will
18713         hopefully help those Windows versions or fonts that don't give us
18714         any useful Unicode subrange information with GetTextCharsetInfo.
18715         Call this function in gdk_font_load_internal.
18716
18717         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
18718         minor changes.
18719
18720 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
18721
18722         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
18723         New function, long needed.
18724
18725 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
18726
18727         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
18728         only_if_exists argument of gdk_atom_intern to
18729         bool.
18730
18731 1999-11-25  Tor Lillqvist  <tml@iki.fi>
18732
18733         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
18734         Fix two copy&paste errors.
18735
18736         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
18737         win32 has changed.
18738
18739         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
18740         GdkWin32SingleFont struct.
18741
18742         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
18743         subranges of loaded fonts. Clear font signature first, in case
18744         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
18745         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
18746
18747         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
18748         Unoffset clip region.
18749
18750 1999-11-23  Tor Lillqvist  <tml@iki.fi>
18751
18752         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
18753         event->any.window before calling filter functions.
18754
18755 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
18756
18757         * gtk/gtkgamma.h: Adapt cast macros to standard.
18758
18759 [ Merges from 1.2 ]
18760
18761 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
18762
18763         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
18764         If translation does not include a '/', use entire
18765         translation instead of crashing.
18766
18767 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
18768
18769         * docs/gtk_tut.sgml:
18770         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
18771
18772 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
18773
18774         * gtk/gtkselection.c (gtk_target_list_remove): Use
18775         g_list_remove_link, not g_list_remove.
18776
18777         [ From Geert Bevin <gbevin@thunderstorms.org> ]
18778         
18779 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
18780
18781         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
18782         statement upon unselection (how the heck did that slip in?).
18783
18784 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
18785
18786         * gtk/gtktext.c (gtk_text_freeze): 
18787         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
18788         in frozen state (and aparently crashes). patch provided by Anders
18789         Melchiorsen <and@kampsax.dtu.dk>.
18790
18791 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
18792
18793         * fix insensitive default/focus widget activation,
18794         reported by Matt Goodall <mgg@isotek.co.uk>.
18795
18796         * gtk/gtkwindow.c (gtk_window_key_press_event): 
18797         (gtk_window_activate_default):
18798         (gtk_window_activate_focus):
18799         return handled=FALSE for actiavtion of insensitive default
18800         widgets. return handled=TRUE for activation of insensitive
18801         focus widgets. don't activate in either case.
18802
18803 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
18804
18805         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
18806         and $glib_cflags to match library order and in the
18807         theory that an old version of GLib is more likely to
18808         be in the include directory for X then vice-versa.
18809         (Bug #2776)
18810
18811 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
18812
18813         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
18814         to determine the locale for fontsets, not LC_MESSAGES;
18815         the user may want English messages with a handling
18816         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
18817         will still be broken) (Bug #2891)
18818
18819 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
18820
18821         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
18822
18823 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
18824
18825         * gtk/gtkrc.ko: Changed the Korean default fontset.
18826
18827 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
18828
18829         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
18830         where when scrolling to the left or top double exposes
18831         were done, causing major slowdowns.
18832
18833 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
18834
18835         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
18836         names to lowercase and alphanumeric, before looking
18837         them up.
18838
18839         * gtk/Makefile.am: Install codeset variant gtkrc files
18840         with normalized names.
18841
18842 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
18843
18844         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
18845         popup menus when the menu is already visible, but its parent
18846         is still hidden, (happens after tornoff window got hidden).
18847
18848 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
18849
18850         * gtk/Makefile.am (install-data-local): Fix
18851         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
18852         deleted, causing error messages on install.
18853
18854 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
18855
18856         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
18857         the handle as well, since we now sometimes ignore
18858         exposes on the handle while resizing.
18859
18860 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
18861
18862         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
18863         extra g_free introduced in one of the last one or two 
18864         commits.
18865
18866 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
18867
18868         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
18869         consistent, put each style that a gtkrc.* file creates
18870         in a unique namespace, remove old files before installing.
18871
18872 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
18873
18874         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
18875         gtk_rc_init is called multiple times. (Yes, people who
18876         do that have bugs in their code.)
18877
18878 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
18879
18880         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
18881         Remove it since it's generated by the Makefile anyway
18882
18883 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
18884
18885         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
18886         device->info.axes for core pointer.
18887
18888 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
18889
18890         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
18891         idle_id, to deal with obsolete, broken C libraries.
18892
18893 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
18894
18895         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
18896         allocation->x/y twice!
18897
18898         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
18899         consistent with gtk_vscale_pos_trough().
18900
18901 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
18902
18903         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
18904         be queueing a resize on a toplevel container between
18905         the time we show it and when we map it. So, we need
18906         to test GTK_WIDGET_VISIBLE() for toplevels, and only
18907         use GTK_WIDGET_DRAWABLE() for child windows.
18908
18909 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
18910
18911         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
18912         (fixes bug #2144)
18913
18914 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
18915
18916         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
18917         container DRAWABLE (instead of VISIBLE), so we don't queue
18918         resizes on non-toplevel containers.
18919
18920 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
18921
18922         * gtk/gtkselection.[ch]: Make the data argument
18923         const guchar *.
18924
18925 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
18926
18927         * gtk/gtkwindow.c: Try to behave sensibly if 
18928         the focus widget is the window itself. (Should
18929         we allow this at all?)
18930
18931 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
18932
18933         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
18934         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
18935         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
18936         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
18937         in prototypes and implementations consistent (Tomas Ogren).
18938
18939         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
18940         before the widget is unparented (reported by damon).
18941
18942         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
18943         since we provide unsigned data anyways.
18944
18945 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
18946
18947         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
18948         the call to gtk_tooltips_layout_text() until later.
18949
18950         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
18951         Call gtk_widget_ensure_style() before using the style.
18952
18953 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
18954
18955         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
18956         for old widgets that don't propagate draws to all
18957         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
18958
18959 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
18960
18961         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
18962         for a redraw but just the widget that requested the resize.
18963
18964 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
18965
18966         * gtk/gtkcontainer.c: added new widget level method
18967         gtk_container_set_reallocate_redraws() and a GtkContainer flag
18968         reallocate_redraws : 1 to reflect the setting, exported this through
18969         the argument system as a boolean ::reallocate_redraws.
18970
18971         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
18972         on the widget because the allocation changes, do so as well for
18973         widget->parent if the parent has reallocate_redraws set to TRUE.
18974         with that containers requesting reallocation redraws get automatically
18975         redrawn if their children changed allocation (this unfortunately
18976         affects also other children that didn't change allocation, but we
18977         cannot work around that before 1.3).
18978
18979 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
18980
18981         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
18982         _and_ height are >0 (not _or_).
18983
18984         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
18985         instead of gtk_container_queue_resize(), which is a core gtk internal
18986         function (must have been on crack when i queued that).
18987
18988         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
18989         we can check more reliably if we want to discard expose events.
18990         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
18991         flag.
18992         
18993         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
18994         we simply trust these events. for deciding whether to discard exposes,
18995         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
18996         
18997 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
18998
18999         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
19000         queues of areas that are completely off screen.
19001
19002         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
19003         logic for handleboxes.
19004
19005         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
19006         check on width/height.
19007
19008 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
19009
19010         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
19011         we are fine with using $@ the way we do (if we actually encounter
19012         brokeness with $@ in VPATH builds because of additional path prefixes,
19013         we need to use $(@F) actually).
19014
19015 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
19016
19017         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
19018         short lived bugs, that would allow language bindings to do surgeries
19019         to our guts.
19020
19021 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
19022
19023         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
19024         where comparison was being done against an uninitialized
19025         value causing intermittant results depending on
19026         compiler flags. Also make it clearer that we aren't
19027         ever initializing the child as 0x0 (though this will
19028         be caught in gtk_widget_size_allocate())
19029
19030 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
19031
19032         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
19033         gtk_window_unset_transient_for() call after we do checks
19034         involving the old transient parent.
19035         [ From Lance Capser <lmc@cyberhighway.net> ]
19036
19037 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
19038
19039         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
19040         an empty file.
19041
19042 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
19043
19044         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
19045         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
19046
19047 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
19048
19049         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
19050         `$@' is valid only in the build dir, not after we've done 
19051         `cd $srcdir'.  Also use `test -f' instead of less portable
19052         `test -e'.
19053
19054 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
19055
19056         * gtk/gtktext.c (correct_cache_insert): Rewrite
19057          for simplicity, and hopefully correctness.
19058          (Fixes bug #1322, which was a segfault when
19059           on some insertions with the properties around
19060           the insertion set up just wrong.)
19061
19062         * gtk/gtktext.c (gtk_text_adjustment): When we receive
19063          a "changed" signal, clamp the new value to the adjustment
19064          bounds to avoid segfaulting if someone tries to change
19065          the adjustment to a bogus value. (Bug #1795)
19066
19067 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19068
19069         * gtk/gtkmain.c: Ignore unexpected destroy notifies
19070         for children, for toplevel windows handle them
19071         like delete_event.
19072
19073         * gtk/gtkplug.c: Add an unrealize handler so that
19074         we unref plug->socket_window when we are done
19075         with it.
19076
19077 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
19078
19079         * gtk/gtktext.c (clear_area): Fix stupid signedness
19080          problem that was causing background to sometimes
19081          be misaligned.
19082
19083 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
19084
19085         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
19086         
19087         * gtk/gtkmenu.c (gtk_menu_position): Make
19088          sure we never position menus with negative x, y,
19089          since gtk_widget_set_uposition() can't handle that.
19090
19091         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
19092          Modify the positioning code a bit so that we always
19093          put the top-left corner onscreen. (This is for
19094          UI reasons, gtk_menu_position() now takes care of
19095          gtk_widet_set_uposition() brokeness.)
19096
19097 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
19098
19099         * gtk/Makefile.am: fixed up things for -jx, x > 1.
19100
19101 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
19102
19103         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
19104           RC style that is passed in. The lack of the ref
19105           before was a bug. If people worked around this
19106           bug, this will introduce a slight memory leak
19107           in their code. The code should typically look like:
19108
19109             rc_style = gtk_rc_style_new ();
19110             [...]
19111             gtk_widget_modify_style (widget, rc_style);
19112             gtk_rc_style_unref (rc_style);
19113
19114         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
19115           the style if it was already set.
19116
19117         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
19118           style if it was set before.
19119
19120 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19121
19122         * gtk/testgtk.c (main): Add a check to see if we
19123           are being run from the correct directory and
19124           to quit nicely if we are not.
19125
19126         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
19127           static.
19128
19129 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
19130
19131         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
19132
19133         * gtk/gtkwindow.c:
19134         queue resizes unconditionally (gtk_widget_queue_resize will figure
19135         what to do if the window is not realized).
19136         (gtk_window_move_resize): only recenter the window
19137         for GTK_WIN_POS_CENTER_ALWAYS.
19138         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
19139         the same way as GTK_WIN_POS_CENTER.
19140
19141 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
19142
19143         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
19144         with (!(info->last_flags & GDK_HINT_POS)) instead of
19145         (!info->last_flags & GDK_HINT_POS).
19146
19147         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
19148         new_height unconditionally, because we use these values even if
19149         !default_size_changed && !hints_changed.
19150         comented the (default_size_changed || hints_changed) case with
19151         respect to resize rejects from the window manager.
19152
19153         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
19154         in the zvt condition hack, since this includes the window hints, set
19155         the hints after the handling_resize case.
19156
19157         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
19158         window is initially shown with to the geometry.
19159
19160 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
19161
19162         * gtk/gtkwindow.c (gtk_window_move_resize):
19163         s/size_changed/default_size_changed/g so i know what's
19164         really going on (frying brain on smaller flame now).
19165
19166 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
19167
19168         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
19169         we have size_changed upon handling_resize. this is a gross
19170         workaround for the broken zvt widget and should be removed in
19171         1.3 again (search for FIXME).
19172         Owen provided an accurate comment for this:
19173
19174         /* We could be here for two reasons
19175          *  1) We coincidentally got a resize while handling
19176          *     another resize.
19177          *  2) Our computation of size_changed was completely
19178          *     screwed up, probably because one of our children
19179          *     is broken. It's probably a zvt widget.
19180          *
19181          * For 1), we could just go ahead and ask for the
19182          * new size right now, but doing that for 2)
19183          * might well be fighting the user (and can even
19184          * trigger a loop). Since we really don't want to
19185          * do that, we requeue a resize in hopes that
19186          * by the time it gets handled, the child has seen
19187          * the light and is willing to go along with the
19188          * new size. (this happens for the zvt widget, since
19189          * the size_allocate() above will have stored the
19190          * requisition corresponding to the new size in the
19191          * zvt widget)
19192          *
19193          * This doesn't buy us anything for 1), but it shouldn't
19194          * hurt us too badly, since it is what would have
19195          * happened if we had gotten the configure event before
19196          * the new size had been set.
19197          */
19198
19199 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
19200
19201         * gtk/gtkrc.c: deal properly with the fact that RC
19202           style lists may include rc styles more than once.
19203
19204         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
19205           unused static function.
19206
19207         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
19208           stack of directories of RC files currently being
19209           parsed and implicitely add them to pixmap path.
19210           
19211           This fixes a bug where the directory would get
19212           appended then overwritten by pixmap_path declarations.
19213
19214           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
19215
19216         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
19217           theme's exit function. (Patch from Peter Wainwright,
19218           bug #1454)
19219
19220         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
19221           Add a destroy() handler to take care of removing
19222           group for menu item. (Fixes bug #1197)
19223
19224         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
19225           in warning message.
19226
19227 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
19228
19229         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
19230         roundtrip to figure window's width and height, since we know that
19231         anyways from widget->allocation.
19232
19233 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
19234
19235         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
19236           the hints after we request the new size.
19237
19238 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
19239
19240         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
19241           GTK_WIDGET_REALIZED() assertion - we can compute the
19242           hints before we are realized.
19243
19244         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
19245           hint changing so that we have a value of hints_changed
19246           when we decide whether to constrain the window size.
19247
19248         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
19249
19250         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
19251         change back to G_MAXINT.
19252
19253 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
19254
19255         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
19256         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
19257         contain uncluttered values.
19258         (gtk_window_compute_hints): simply assert that window is realized
19259         and that geometry_info is valid, since we rely on this anyways.
19260         (gtk_window_constrain_size): major cleanups to the code.
19261         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
19262         for the base size, instead of the minimums. use 32767 as max width
19263         and height (like in gtkwindow.c) instead of G_MAXINT.
19264
19265 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
19266
19267         * cleaned up the GtkContainer.need_resize flag handling mess, we
19268         only need to force resize requests when we were prematurely
19269         realized, or our widget tree was modified when we were temporarily
19270         hidden. handling these cases directly upon showing the window (i.e.
19271         while the GdkWindow is still unmapped) avoids the need to wait for
19272         a configure event response and therefore makes the GUI more snappier
19273         and avoids blank windows during the roundtrip.
19274
19275         * gtk/gtkwidget.c:
19276         (gtk_widget_hide): 
19277         (gtk_widget_show): don't queue resizes on toplevels, they know how
19278         to deal with matters.
19279
19280         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
19281         flag directly for not visible resize containers and spare us unecessary
19282         signal emissions.
19283
19284         * gtk/gtkwindow.c:
19285         (gtk_window_realize): if we need to enforce premature size allocation,
19286         queue a container resize so we are correctly resized later on.
19287         (gtk_window_init):
19288         (gtk_window_size_request):
19289         don't freak around with the ->need_resize flag,
19290         gtk_container_queue_resize() will care about that.
19291         (gtk_window_show):
19292         handle initial resizing issues here, we can handle matters better in
19293         this place, especially since we know that our GdkWindow is still
19294         unmapped.
19295         (gtk_window_move_resize):
19296         don't care about ->need_resize at all.
19297         handle size changes properly that occoured while we waited for a
19298         configure event.
19299
19300 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
19301
19302         * gtk/gtkwidget.c (gtk_widget_set_uposition):
19303         * gtk/gtkwindow.[hc] (gtk_window_reposition):
19304         Move the hint setting code from gtk_widget_set_uposition
19305         to here; set the hints so that we respect any previously
19306         set geometry hints.
19307
19308         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
19309         change the window hints here or move the window here,
19310         let that happen in gtk_window_move_resize().
19311
19312 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
19313
19314         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
19315         to already queued resizes (and therefore redraws) on a widget, check
19316         its anchestry as well.
19317
19318         * gtk/gtkcontainer.c:
19319         (gtk_container_queue_resize): clear resize widgets for resize
19320         containers before aborting prematurely. this is especially important
19321         for toplevels which may need imemdiate processing or their resize
19322         handler to be queued.
19323         (gtk_container_dequeue_resize_handler): added new internal function for
19324         gtkwindow.c.
19325
19326         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
19327         configure event, take possible changes in window position into account
19328         as well.
19329         if we request a new window size, queue up a resize handler that will
19330         last until the configure event response arrives.
19331         combined the ->need_resize case (initial show) with the general size
19332         (hints) changed case and added even more comments.
19333         if !auto_shrink, only revert to the old allocation if the new size
19334         is smaller than the current allocation.
19335
19336 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
19337
19338         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
19339                            gtk_window_set_geometry_hints
19340                            gtk_window_set_default_size):
19341         When hints are set, queue a resize so that the hints will
19342         be eventually reset on the toplevel.
19343
19344         * gtk/gtkwindow.c (gtk_window_show): Use
19345         gtk_window_compute_default_size(). Clear the need_resize flag
19346         on the initail map so that we don't unnecessarily trigger the
19347         resize code.
19348
19349         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
19350         into separate functions. Compare the hints we are setting
19351         with what we set last time so that we can accurately
19352         tell when we need to reset the hints.
19353
19354         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
19355         function to figure out the size from requisition
19356         and default_size.
19357
19358         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
19359         from fvwm to constrain a size to the geometry hints.
19360
19361         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
19362         to compare two sets of geometry hints.
19363
19364         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
19365         from gtk_window_set_hints(), just compute the hints,
19366         don't set them.
19367
19368         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
19369         code from gtk_window_move_resize() to separate function,
19370         rationalize a bit.
19371
19372 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
19373
19374         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
19375         structure into a new private structure.
19376
19377         * gtkrc.c: Split GtkRcStyle into public/private.
19378         In the private part, add a list of pointers to the
19379         RcStyle lists this RcStyle participates in.
19380
19381         * gtkrc.c: When a RcStyle is free, remove all
19382         lists referencing it from the 
19383         realized_style_ht hash, and free those lists.
19384         
19385         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
19386         gtk_rc_init(), since that adds the default styles
19387         to the list of parsed RC files again.
19388
19389         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
19390         
19391 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
19392
19393         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
19394         checks that ensure that a widget's allocation is at least 1 in width
19395         and height. (GNOME note: this doesn't affect old panel code anymore,
19396         because GtkSocket will request width and height of at least 1 since
19397         Fri Jul 23).
19398
19399         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
19400         allocated yet (happens if the user realizes the window prematurely),
19401         size request and allocate it.
19402         (gtk_window_size_allocate): guard against guint underflows.
19403
19404 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
19405
19406         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
19407         in gtk_built_sources, so gtk.defs gets built prior to all other
19408         sources.
19409
19410 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19411
19412         * gtk/Makefile.am:
19413         invoke indent on gtkmarshal.*. 
19414         rewrote source generation rules, use COPYING as oldest source tag for
19415         a piggyback rule to generate all sources from (don't touch it ;).
19416         major cleanups, strip spaces on build rules for GNU Make.
19417
19418         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
19419         source and target files from commandline arguments. don't invoke indent.
19420
19421 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19422
19423         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19424         notebook after switch to avoid drawing problems.
19425         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19426         
19427         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19428         show them instead. 
19429         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19430
19431 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19432
19433         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19434         notebook after switch to avoid drawing problems.
19435         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19436         
19437         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19438         show them instead. 
19439         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19440
19441 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
19442
19443         * gtk/gtkwindow.c:
19444         we use window->need_resize from configure_event now, to indicate that
19445         the gtkwindow should keep its allocation (e.g. because the user resized
19446         the window through window manager handles). resize_count is now reliably
19447         used to figure whether we got the allocation we requested from the
19448         window manager.
19449         configure events get queued as resizes now, the real stuff (size
19450         computation and allocation) now only goes on in gtk_window_move_resize().
19451         GtkWindow's requisition now contains its *real* requisition (like all
19452         other widgets), *not* taking usize into account.
19453         geometry_info->last_{width|height} is now updated from set_hints() only
19454         so it always contains the last hints we set for the window manager.
19455         made some event handlers return TRUE instead of FALSE.
19456         the overall code should be much more straight forward now, and the
19457         significant code portions are accompanied by comments now.
19458         (gtk_window_set_hints):
19459         removed requisition argument and made it
19460         fetch the requisition through gtk_widget_get_child_requisition.
19461         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
19462         does that now.
19463         (gtk_window_show):
19464         ensure that the widget is realized before calling 
19465         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
19466         ensure that we got properly size requested and allocated before
19467         realization.
19468         (gtk_window_configure_event):
19469         ignore plain window moves, or reallocate the widget tree through the
19470         resize queue otherwise.
19471         (gtk_window_move_resize):
19472         mostly rewrote this function to figure window manager hints more
19473         reliably, coalesce window moves and resizes to reduce configure events
19474         and do actuall size allocations.
19475
19476 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19477
19478         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
19479         that have a resize pending, because a redraw is already queued for them.
19480
19481         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
19482         hack to clear resize_widgets.
19483
19484         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
19485         for resize containers prior to size allocation. (this is also a bit
19486         ugly, but avoids side effects for stopped emissions and is thus more
19487         reliable).
19488         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
19489
19490         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
19491         function from gtk_tooltips_expose, as we connect to ::expose_event
19492         *and* ::draw now.
19493
19494 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
19495
19496         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
19497         checks.
19498         (gtk_target_list_unref): Likewise.
19499
19500         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
19501
19502 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
19503
19504         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
19505         guard against division by zero. (Fixes bug #1339)
19506
19507 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
19508
19509         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
19510         Prevent the trivial leak of information of allowing
19511         word motion when the entry is not visible.
19512
19513 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
19514
19515         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
19516         modality to error dialog as well as confirmation dialogs.
19517         (Bug #1803, reported by Rosanna Wing Sze Yuen)
19518
19519 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
19520
19521         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
19522         tree->view_lines.
19523         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
19524
19525         * gtk/Makefile.am (install-data-local): Solaris apparently
19526         has various troubles with ln -f; use rm first instead.
19527         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
19528
19529 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
19530
19531         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
19532         use `cp' followed by `rm' (the `rm' was already there).
19533
19534 July 30, 1999 Elliot Lee <sopwith@redhat.com>
19535         
19536         * configure.in: Fix autoconf warnings about cross compilation by
19537         trying to provide sane defaults for AC_TRY_RUN.
19538         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
19539         put them into $(srcdir) when generated. Also add a dependency of
19540         gtksignal.h on gtkmarshal.h for -j builds. 
19541         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
19542
19543 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
19544
19545         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
19546         GDK_THREADS_{LEAVE,ENTER} pair.
19547         (From Paul Fisher <pnfisher@redhat.com>)
19548
19549 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
19550
19551         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
19552         width and height are always >0 (owen).
19553
19554 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
19555
19556         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
19557         change that assured that a widget's allocated with and height are
19558         always >1, since this breaks *buggy* panel code. unfortunately this
19559         back-breaks the gimp's color selector.
19560
19561         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
19562         allocation is always >0 in width and height, before sending the
19563         configure event; this is a *gross* hack to get the gimp back to work.
19564         
19565         * marked both cases with TODO-1.3
19566
19567 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
19568
19569         * gtk/gtktext.c: Don't display wrap indicators when
19570         text is not editable and word wrap is on.
19571
19572 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
19573
19574         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
19575         option menus here as they are not derived from menu shell, assure that
19576         the option menu has a menu we can add items to.
19577
19578 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
19579
19580         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
19581         width/height to (gint) before calculations and check against < 0 to
19582         avoid guint wraparounds.
19583
19584 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
19585
19586         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
19587         width and height is never zero. sanity check both dimensions against
19588         32767 and issue a warning if the allocation is greater than that.
19589
19590 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
19591
19592         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
19593         to g_main_pending() as well.
19594
19595 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
19596
19597         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
19598         call to g_main_iteration() - since that will regrab
19599         GTK+ lock to process events.
19600
19601 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
19602
19603         * gtk/gtkwindow.c
19604         - Regularize with the rest of GTK+ by making widget->requisition
19605           not reflect the set_usize()
19606         - Always recompute geometry hints, then check if they
19607           changed before sending them to the X server. The
19608           previous checks for changes would fail in a number
19609           of circumstances. 
19610
19611 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
19612
19613         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
19614
19615 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
19616
19617         * gtk/gtkdnd.c:
19618         - Code cleanups
19619         - Instantaneously update on modifier key presses
19620         - Allow cancellation of the drag with Escape.
19621
19622 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
19623
19624         * gtk/testgtk.c (create_handle_box): Set the policy
19625         to auto_shrink - otherwise the appearance is rather
19626         strange when flipping between horizontal and vertical.
19627
19628 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
19629
19630         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
19631         (gtk_window_set_default_size): don't change a value if it's < 0.
19632         queue a resize.
19633
19634 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
19635
19636         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
19637
19638 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
19639
19640         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
19641         add an extra "/" when concating "/" + filename.
19642         (From Matt Grossman <mattg@oz.net>)
19643
19644 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
19645
19646         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
19647         for fg_gc if we set it for drawing pixmap.
19648
19649 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
19650
19651         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
19652         
19653         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
19654         already set, call old engine's destroy function and
19655         unref the old engine.
19656
19657 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
19658
19659         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
19660
19661 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
19662
19663         * gtk/gtkaccelgroup.h: mark certain functions as internal.
19664
19665 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
19666
19667         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
19668         expand behaviour changed.
19669
19670         * gtk/gtklabel.c (gtk_label_set_pattern):
19671         (gtk_label_set_justify):
19672         (gtk_label_set_line_wrap):
19673         don't bother invoking queue_clear, the reallocation does
19674         that for us, always free_words so the upcoming resize will
19675         relayout the label's contents.
19676
19677 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
19678
19679         * applied argument implementation patches from Elena Devdariani
19680         <elena@cogent.ca>.
19681
19682         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
19683         ::space_style, ::relief
19684         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
19685         * gtk/gtkpreview.c: ::expand
19686         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
19687         * gtk/gtknotebook.c: ::homogeneous
19688         * gtk/gtklabel.c: ::wrap
19689         * gtk/gtklist.c: ::selection_mode
19690         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
19691         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
19692         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
19693         * gtk/gtkclist.c: ::sort_type
19694         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
19695         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
19696
19697 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
19698
19699         * gtk/gtkstyle.c: Removed ill-thought-out part of last
19700         comment.
19701
19702 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
19703
19704         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
19705         counting right when we have to attach a new style
19706         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
19707
19708         * gtk/gtkstyle.c: Documented the refcounting
19709         peculularities of gtk_style_attach.
19710
19711 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
19712
19713         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
19714         window types.
19715
19716         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
19717         of GTK_TOPLEVEL for creating the window.
19718
19719 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
19720
19721         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
19722         the last argument (reported by Per Winkvist).
19723         
19724 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
19725
19726         Fixes for invisible XOR lines (Frank Loemker
19727         <floemker@TechFak.Uni-Bielefeld.DE>)
19728         
19729         * gtk/gtkclist.c (gtk_clist_realize): Always use
19730         a non-zero pixel for GDK_XOR.
19731
19732         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
19733         Use GDK_INVERT instead of GDK_XOR.
19734
19735 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
19736
19737         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
19738         signals if h/voffsets differ from adjustment values.
19739         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
19740
19741 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
19742
19743         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
19744         ::selection-done emissions up to the topmost menu shell.
19745
19746 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
19747
19748         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
19749         the user data on the window before destroying it.
19750
19751         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
19752         unrealize handler to take care of destroying 
19753         notebook->panel properly. 
19754         (Bug #1198 - Morten Welinder <terra@diku.dk>)
19755
19756         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
19757         of g_new and g_realloc to stop memory leak. (Actually,
19758         we could just use g_realloc(), but I'm not 100% sure
19759         that is portable).
19760         (Bug #1196 - Morten Welinder <terra@diku.dk>)
19761
19762 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
19763
19764         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
19765
19766         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
19767         for fontsets.
19768
19769         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
19770         with bin/button confusion.
19771
19772 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
19773
19774         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
19775         and show how preselection of radio items is done.
19776
19777 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
19778
19779         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
19780         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
19781         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
19782         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
19783         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
19784         * gtk/gtktable.c (gtk_table_attach): 
19785         * gtk/gtklist.c (gtk_list_insert_items): 
19786         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
19787         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
19788         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
19789         * gtk/gtkbin.c (gtk_bin_add): 
19790         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
19791         * gtk/gtkfixed.c (gtk_fixed_put): 
19792         * gtk/gtklayout.c (gtk_layout_put):
19793         general fixups to container_add logic. always realize child if
19794         child->parent is realized, only map the child and queue a resize
19795         if child and child->parent are both visible.
19796
19797 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
19798
19799         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
19800         instead of gtk_container_foreach to walk and unrealize children, so
19801         composite children get also unrealized.
19802         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
19803         (gtk_widget_map): assert that the widget is visible (basic constrain).
19804         (gtk_widget_real_map): assert that the widget is realized (basic
19805         constrain).
19806
19807 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
19808
19809         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
19810
19811 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
19812
19813         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
19814         file for iso-8859-2 locales.
19815
19816         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
19817
19818 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
19819
19820         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
19821          (Pointed out by andy@rz.uni-karlsruhe.de and others).
19822          Remove some suspicious and useless lines. 
19823
19824 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
19825
19826         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
19827         width,height = 0, 0 to mean - here to edge of window,
19828         instead of -1, -1, since the former is all we support.
19829
19830 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
19831
19832         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
19833         when removing from quit_functions list.
19834
19835 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
19836
19837         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
19838
19839 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
19840
19841         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
19842          When redrawing characters on non-visible entry, use appropriate
19843          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
19844
19845 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
19846
19847         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
19848         from drag coordinates.
19849         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
19850         use drag_dest_cell.
19851
19852         * gtk/gtktree (drag_dest_cell)
19853         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
19854         (Bug #1129)
19855
19856 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
19857
19858         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
19859         translate_* fields.
19860         (gtk_item_factory_finalize): invoke translate_notify independant from
19861         translate_data.
19862         (gtk_item_factory_set_translate_func): likewise.
19863         (gtk_item_factory_destroy): only remove ifactory pointer from those
19864         widgets that belong to us (stupid me).
19865
19866 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
19867
19868         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
19869         rc_style list when lookup succeeeds.
19870
19871 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
19872
19873         * gtk/gtkctree.c (resync_selection): 
19874         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
19875         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
19876         bug.
19877
19878 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
19879
19880         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
19881         Add some missing GDK_THREADS_ENTER()/LEAVE around
19882         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
19883
19884 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
19885
19886         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
19887         rather than emit_by_name.
19888
19889         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
19890         on the widget across multiple signal emissions.
19891         (gtk_editable_delete_text): same here.
19892         (gtk_editable_class_init): set widget_class->activate_signal after
19893         editable_signals[ACTIVATE] has been created.
19894
19895 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
19896
19897         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
19898         position here prematurely -- we might not have the
19899         right ->min_position and ->max_position yet.
19900
19901 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
19902
19903         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
19904         Add error traps so if the other end of the connection
19905         dies, we survive.
19906
19907         * gtk/gtkselection.c (gtk_selection_notify): Clean
19908         up properly when selection property retrieval fails.
19909         
19910         * gtk/gtkselection.c (gtk_selection_request): Correctly
19911         reject SelectionRequest notifies where the handler
19912         returns no data.
19913
19914 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
19915
19916         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
19917         when we've previously highlighted.
19918
19919         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
19920         emit two "drag_leave" signals for Motif drops.
19921
19922         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
19923         back the correct status messages when dropping from
19924         Motif onto a proxy window that is rejecting the
19925         drop.
19926
19927 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
19928
19929         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
19930         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
19931         to compare two argument values. added gtk_arg_to_valueloc() to set a
19932         variable from an arg through its location (pointer).
19933
19934         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
19935         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
19936         as gfloat*, uchars are collected as guchar*, ints are collected as
19937         gint*, etc...
19938
19939 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
19940
19941         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
19942         Include <string.h> instead of <strings.h>.
19943
19944         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
19945         (actually, a lot more duplicate includes occur if
19946          you trace through the sequence of #include's)
19947         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
19948         
19949 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
19950
19951         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
19952         gtk-a-higuti-990322-[0-3]
19953
19954         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
19955         that was causing -DX_LOCALE not to work.
19956
19957         * gtk/gtkrc.c (gtk_rc_init):
19958         X_LOCALE will never have LC_MESSAGES defined
19959
19960 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
19961
19962         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
19963         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
19964
19965         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
19966         left/right as well (gtk-michael-980726-0.patch.gz).
19967
19968         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
19969         for pointer values, use gchar instead of char. fixed uline allocation
19970         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
19971         chunks instead of G_ALLOC_ONLY.
19972         (gtk_label_size_request): always alter requisition as passed and leave
19973         widget->requisition alone.
19974         (gtk_label_set_text): allow NULL strings.
19975         (gtk_label_new): likewise.
19976
19977 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
19978
19979         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
19980
19981 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
19982
19983         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
19984         *and* mapped (i.e. drawable).
19985         (gtk_bin_expose): only send exposes to drawable children.
19986
19987         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
19988         (gtk_box_expose): only send exposes to drawable children.
19989
19990         * gtk/gtkhscale.c (gtk_hscale_draw): 
19991         * gtk/gtkvscale.c (gtk_vscale_draw):
19992         hm, this is an ugly one. we first compute the size of our trough area
19993         here (window relative) and then check intersection with the draw_area
19994         which is parent relative because we're a NO_WINDOW widget, so we need
19995         to offset the trough area by allocation.x and allocation.y before the
19996         check. (this must not be done for the background area though, since
19997         that's already computed parent relative).
19998
19999 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
20000
20001         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
20002         unrealize title buttons.
20003
20004 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
20005
20006         * gtk/gtkclist.c (gtk_clist_column_title_passive)
20007         (gtk_clist_column_title_active): 
20008         only connect/disconnect to GtkWidgetClass::event to block mouse events.
20009
20010         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
20011         zero initialize event, removed superfluous gdk_window_get_pointer call
20012
20013         * gtk/gtklist.c (gtk_list_vertical_timeout)
20014         (gtk_list_horizontal_timeout): removed superfluous
20015         gdk_window_get_pointer call
20016
20017 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
20018
20019         * plugging problems reported by "Bruce Mitchener, Jr."
20020         <bruce@puremagic.com> due to a purify session.
20021
20022         * gtk/gtkstyle.c:
20023         (gtk_style_ref): 
20024         (gtk_style_unref): assert ref_count to be > 0.
20025
20026         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
20027         the requisition.
20028         (gtk_clist_set_shift): likewise.
20029
20030         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
20031         adjustments.
20032
20033         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
20034         event before sending it and set send_event to TRUE (which needs to
20035         be done for *all* synthesized events).
20036         (gtk_list_vertical_timeout): likewise.
20037
20038         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
20039         leaks.
20040
20041         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
20042         to TRUE when synthesizing events.
20043
20044 [ *** end of merges from 1.2 *** ]      
20045         
20046 1999-11-21  Tor Lillqvist  <tml@iki.fi>
20047
20048         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
20049         (or copied from gdkconfig.h.win32 on Win32, sigh).
20050
20051         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
20052
20053         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
20054
20055         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
20056
20057         * gdk/gdkconfig.h.win32: New file.
20058
20059         * gdk/win32/makefile.cygwin: Build just a static archive here.
20060
20061         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
20062         for the DLL from the static archive built above.
20063
20064         * gdk/gdk.def: Moved here from the win32 subdirectory.
20065
20066         * gdk/win32/*: Adapt for the changed private struct organisation.
20067
20068         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
20069
20070 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
20071
20072         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
20073         for wheel mice (buttons 4 and 5).
20074
20075 1999-11-18  Tor Lillqvist  <tml@iki.fi>
20076
20077         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
20078         drawables use just the pixel field in the foreground and
20079         background GdkColor of the GdkGC.
20080
20081         gdk_gc_set_{fore,back}ground() are called in the GIMP with
20082         GdkColors containing uninitialized (red,green,blue) fields, and
20083         just the pixel field filled in, and furthermore in the
20084         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
20085         It thus turns out that we really don't need to have the full
20086         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
20087         it later to have just the pixel values.
20088
20089 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
20090
20091         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
20092
20093 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
20094
20095         * docs/gtkfaq.sgml: threads example from Erik Mouw.
20096         New question on GtkLabel background colors.
20097
20098         * docs/gtk_tut.sgml:
20099           - Correct the example code callback
20100             function definitions.
20101           - Update the gtkdial example code, from Frans van Schaik.
20102           - Update setselection.c to current API.
20103
20104         * examples/Makefile examples/*/*.c: Update to code
20105         listed in tutorial.
20106
20107 1999-11-10  Tor Lillqvist  <tml@iki.fi>
20108
20109         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
20110         subrange table (from the "Developing International Software for
20111         WIndows 95 and Windows NT" book) was missing the Hangul syllable
20112         block... Get the loaded font's charset correctly.
20113
20114         (Note that this, and the other *-win32.c files, still really are
20115         the old ones, the win32 subdirectory is not ready for compilation
20116         yet after the reorg.)
20117
20118 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
20119
20120         * gtk/gtkclist.c: Fix off-by-one bug in parameter
20121         check.
20122
20123 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
20124
20125         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
20126         on results of XQueryDeviceState().
20127
20128 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
20129
20130         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
20131         we need to accesss only ->children. We need an accessor
20132         for the children.
20133
20134         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
20135         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
20136         to get rid of gdkx.h include.
20137         
20138         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
20139         and random references to 'None'.
20140
20141         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
20142         Get rid of unused #include <gdk/gdkx.h>
20143
20144         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
20145         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
20146         gdkconfig.h.
20147
20148 1999-11-08  Tor Lillqvist  <tml@iki.fi>
20149
20150         * gdk/win32/gdkdraw.c
20151         * gdk/win32/gdkfont.c
20152         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
20153         following yesterday's changes. (Unrelated to Owen's reorg.)
20154
20155 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
20156
20157         * gdk/x11/gdkinput-gxi.c: Add missing include,
20158           fix GdkWindowPrivate => GdkDrawablePrivate.
20159
20160         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
20161
20162         * gdk/x11/Makefile.am (xinput_sources): Add missing
20163         backslash to fix building with --with-xinput=none
20164
20165 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
20166
20167         Move all X specific code into the x11/ directory.
20168         Aside from shuffling things around, did the following:
20169
20170        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
20171          gdk_arg_context_* - a simple argument parsing system
20172          in the style of popt.
20173
20174        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
20175          gdk/x11/gdkprivate-x11.h:
20176          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
20177          add ->klass and ->klass_data fields. The klass_data
20178          field points to an auxilliary structure that is
20179          windowing system dependent.
20180
20181        * gdk/gdkfont.c: Make most of the measurement functions
20182          simply wrappers around gdk_text_extents().
20183
20184        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
20185          _gdk_font_strlen() function that hides the weird
20186          behavior in gtk+-1.[02] where a string is interpreted
20187          differently for 8-bit and 16-bit fonts.
20188
20189        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
20190          to store common code for synthesizing double/triple
20191          press events.
20192         
20193        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
20194          Make all the function that modify an existing GC
20195          simply wrappers around gdk_gc_set_values().
20196          
20197        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
20198          for throwing out later.
20199
20200        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
20201          GdkImagePrivate and GdkColormapPrivate to have a
20202          windowing system dependent part (GdkFontPrivateX etc.)
20203          that "derives" from the system-independent part.
20204
20205        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
20206          Got rid of the included-source-files for XInput in
20207          favor of automake conditionals. (Which didn't exist
20208          when XInput support was originally added.)
20209
20210        * gdk/gdkrgb.c: Remove the visual id from the debugging
20211          statements since that is X11 specific; print out
20212          type/depth info instead.
20213          
20214
20215 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
20216
20217         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
20218         loading duplicates of hashed fonts.
20219
20220         * gdk/gdk.c (gdk_keysym_convert_case): rename
20221         gdk_XConvertCase to gdk_keysym_convert_case, allow
20222         results to be NULL in the GTK+ style.
20223
20224         * gdk/gdkcompat.h: Started compatibility header
20225         for renames.
20226
20227 1999-11-07  Tor Lillqvist  <tml@iki.fi>
20228
20229         * gdk/win32/gdkprivate.h: New font private structures, related to
20230         fontsets.
20231
20232         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
20233         gdk_font_list_free(). On X11, will just be wrappers to
20234         XListFonts() and XFreeFontNames(). On Win32, the code previously
20235         in gtkfontsel.c is now here.
20236
20237         New function gdk_font_xlfd_create(). On X11 will get the FONT
20238         property of the font (for GDK_FONT_FONTs), or call
20239         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
20240         builds a XLFD style name from the font information in the LOGFONT
20241         struct(s).
20242
20243         New function gdk_font_xlfd_free(), which correspondingly frees the
20244         string returned by gdk_font_xlfd_create().
20245
20246         Implement fontsets on Win32. Add a function that iterates over a
20247         wide char string and calls a callback function for each substring
20248         of wide chars from the same Unicode subrange (and thus probably
20249         available in the same real font).
20250
20251         Improve the XLFD emulation a bit.
20252
20253         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
20254
20255         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
20256         Beta3, WM_IME_CHAR messages don't seem to contain the composed
20257         multi-byte char as with the Active IMM on Win9x. Oh well, handle
20258         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
20259         ImmGetCompositionStringW() to get the composed Unicode chars.
20260
20261         * gdk/win32/gdkgc.c
20262         * gdk/win32/gdkdraw.c: Changes needed because of the font private
20263         struct changes.
20264
20265         * gdk/win32/gdk.def: Add the new functions.
20266
20267 1999-11-04  Tor Lillqvist  <tml@iki.fi>
20268
20269         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
20270         get the Platform SDK to get <dimm.h>.
20271
20272         * gdk/win32/gdkevents.c: More event handling fixes and
20273         simplification. Never generate motion events with is_hint true. We
20274         used to do that on bogus grounds earlier. Windows sends
20275         WM_MOUSEMOVE messages on button events even if the mouse hasn't
20276         moved, ignore these.
20277
20278         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
20279
20280         * gdk/win32/gdkglobals.c
20281         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
20282         the TrackMouseEvent function, and use it.
20283
20284         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
20285         char before calling WideCharToMultiByte in order to get a string
20286         for the window title.
20287
20288         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
20289
20290         * gdk/win32/gdk.def: Remove obsolete functions.
20291
20292         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
20293         /nodefaultlib and /defaultlib switches.
20294
20295         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
20296
20297 1999-10-31  Tor Lillqvist  <tml@iki.fi>
20298
20299         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
20300         EuroSign).
20301
20302         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
20303         same type as GdkWChar, especially on Win32.
20304
20305         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
20306
20307         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
20308         before passing to Windows GDI for drawing etc. Convert to the
20309         system default codepage before passing to Windows as window
20310         titles.
20311
20312         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
20313         support changing input locale on the fly.
20314
20315         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
20316         on-the-fly changes. Convert incoming characters from the current
20317         codepage to Unicode (and then to a UTF-8 multi-byte string) based
20318         on the current input language. Use keysym<->Unicode mapping tables
20319         and functions borrowed from xterm sources.
20320
20321         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
20322         editions of Win9x, use the ActiveX-based Active IMM (Input Method
20323         Manager) if available. IMEs and the Active IMM are available under
20324         the disguise of Chinese, Korean and Japanese support for IE and
20325         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
20326         support is present in all editions (as long as you install it).
20327
20328         Call DispatchMessage from gdk_events_queue() (and thus
20329         gdk_WindowProc()), instead of duplicating the code in
20330         gdk_WindowProc().
20331
20332         Reworked the grab handling and propagation code, factored out
20333         duplicated code snippets into separate functions. Other cleanups,
20334         too.
20335
20336         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
20337         the <dimm.h> header describing the Active IMM.
20338
20339         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
20340         just do the same as for "single" fonts.
20341
20342         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
20343         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
20344         the new keysyms from gdkkeysyms.h.
20345
20346         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
20347         fontset, so that gtkentry uses wide characters.
20348
20349         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
20350         GTk+'s system directory "gtk+", not "gtk".
20351
20352 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
20353
20354         * docs/gtkfaq.sgml: FAQ update
20355
20356 1999-10-21  Tor Lillqvist  <tml@iki.fi>
20357
20358         * gdk/win32/gdkprivate.h: Add more font private data.
20359
20360         * gdk/win32/gdkfont.c
20361         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
20362         fonts and strings. Now works much better. You still have to
20363         have a correct font selected, though. No fontset emulation yet.
20364
20365 1999-10-19  Tor Lillqvist  <tml@iki.fi>
20366
20367         * gtk/maketypes.awk: Use G_OS_WIN32.
20368
20369         * gtk/gtk.def: Add some missing entry points. Also some non-public
20370         ones, but PyGTK porter claims to need them.
20371
20372         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
20373         built-in type generation.
20374
20375 1999-10-14  Tor Lillqvist  <tml@iki.fi>
20376
20377         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
20378         GDK_FONT_FONT fonts (which is all we have for now, we don't
20379         emulate fontsets). The X11 version uses plain XDrawString in that
20380         case, too. The string passed to gdk_draw_text_wc seems to be in
20381         fact (at least, when used by gtkentry and gtktext) either in a
20382         single-byte charset, or a DBCS. Not Unicode.
20383
20384         This fixes the problem in gtkfontsel, where even if you had
20385         selected a font with a non-Latin1 charset (windows-greek, for
20386         instance), the preview still used Latin-1 glyphs.
20387
20388         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
20389         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
20390         (gdk_font_load): Recognize the demibold etc weights, even if we
20391         don't have the corresponding constants in the headers.
20392         (gdk_font_hash_insert): Use same hash mechanism as in the X11
20393         version. Should save font resources a bit, when we don't have
20394         multiple HFONTs for the same font.
20395
20396         * gdk/win32/gdkprivate.h: Add the names field as in the X11
20397         version.
20398
20399 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
20400
20401         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
20402         X values
20403
20404 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
20405
20406         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
20407         layout support (as mentioned on
20408         http://www.jcinteractive.com/gnome-ui/software/widgets/)
20409
20410 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
20411
20412         * gtk/fnmatch.c
20413         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
20414
20415 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
20416
20417         * configure.in (ALL_LINGUAS): Added Galician (gl)
20418
20419 1999-10-05  Tor Lillqvist  <tml@iki.fi>
20420
20421         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
20422
20423         * gdk/win32/gdkcompat.c: New file, actually provide an
20424         implementation for the deprecated functions. (Just temporarily.)
20425
20426         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
20427
20428         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
20429
20430         * gdk/win32/gdk.def gtk/gtk.def: Updates.
20431
20432 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
20433
20434         * configure.in: Added "uk" to ALL_LINGUAS.
20435         
20436 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
20437
20438         * configure.in: correct checking for BeOS check
20439
20440         * gdk/gdktypes.h
20441         * gtk/fnmatch.c
20442         * gtk/gtkfilesel.c
20443         * gtk/gtkitemfactory.c
20444         * gtk/gtkmain.[ch]
20445         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
20446
20447 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
20448
20449         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
20450         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
20451         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
20452         by Bulgarian). 
20453
20454 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
20455
20456         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
20457         Fix a reference to window_private->destroyed.   
20458
20459         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
20460         (ugly) setting of an internal GdkWindow member to use
20461         a _slightly_ cleaner macro.
20462
20463         * gdk/gdkprivate.h: Split GdkWindowPrivate into
20464         GdkDrawablePrivate and GdkWindowPrivate.
20465         Add extra macros for accessing GDK_DRAWABLE_ components.
20466
20467         * *.[ch]: Massive adjustments for the above, use the
20468         new macros in a lot of places.
20469
20470 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
20471
20472         * gdk/gdktypes.h: Make GdkDrawable the base type,
20473         not GdkWindow.
20474
20475 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
20476
20477         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
20478
20479 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
20480
20481         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
20482
20483 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
20484
20485         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
20486         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
20487
20488         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
20489
20490         * docs/gtk-config.1: Now autogenerated.
20491         * docs/Changes-1.4.txt: started
20492         
20493 1999-10-03  Tor Lillqvist  <tml@iki.fi>
20494
20495         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
20496         to #ifdef also here.
20497
20498         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
20499         Owen did to the X11 backend.
20500
20501         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
20502         ScrollWindowEx when blitting inside a window, it can't be correct
20503         in the general case.
20504
20505         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
20506         WM_GETMINMAXINFO is easier.
20507
20508         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
20509         depth equal to the bitspixel value, not the visual's depth.
20510
20511         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
20512         to 24 even if the bitspixel value is 32.
20513
20514         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
20515         need to check for depth==32 when bpp==32, depth will always be 24.
20516
20517 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
20518
20519         * docs/Changes-1.4.txt: Started
20520         
20521         * gtk/Makefile.am (gdk_headers): Include all the new headers.
20522
20523         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
20524         
20525         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
20526         into C file.
20527         
20528         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
20529         header to gdkinputprivate.h.
20530
20531         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
20532         unused since before 1.2.
20533
20534 1999-09-30  Tor Lillqvist  <tml@iki.fi>
20535
20536         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
20537         expand possible hex escapes in the font family (put there by
20538         logfont_to_xlfd if the font name isn't a legal XLFD font family,
20539         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
20540         On Win32, add hex escapes here, too.
20541
20542 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
20543
20544         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
20545         to #ifdef GDK_WINDOWING_X11.
20546
20547 [ Merges from gtk-1-2 ]
20548
20549 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
20550
20551         * configure.in: fixed "GNU Make" check to pass with new make version
20552         3.77.95.
20553
20554 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
20555
20556         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
20557         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
20558         AM_PATH_GTK() macros don't get confused by the -pre1.
20559
20560 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
20561
20562         * configure.in (REBUILD): Change check for perl5
20563           to check explicitely for v >= 5.002. (5.001
20564           does not work with our scripts.)
20565
20566 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
20567
20568         * configure.in: evaluate $PERL for the perl version check. added
20569         --disable-rebuilds to give the user an option to completely disable
20570         any source autogeneration rules.
20571
20572 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
20573
20574         * configure.in: evaluate $ac_make when checking for GNU Make.
20575
20576 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
20577
20578         * docs/Makefile.am: added generation.txt.
20579
20580         * Makefile.am: require automake 1.4, build README from README.in and
20581         INSTALL from INSTALL.in in dist-hook.
20582         
20583         * README.in:
20584         * INSTALL.in: new files to autogenerate README and INSTALL from.
20585
20586         * configure.in: figure whether we have GNU Make
20587
20588         * docs/generation.txt: minor additions/corrections.
20589
20590 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
20591
20592         * docs/gtkfaq.sgml: FAQ Update
20593
20594 July 30, 1999 Elliot Lee <sopwith@redhat.com>
20595         
20596         * configure.in: Fix autoconf warnings about cross compilation by
20597         trying to provide sane defaults for AC_TRY_RUN.
20598
20599 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
20600
20601         * ltconfig
20602         * ltmain.sh: upgrade to libtool 1.3.3
20603
20604 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
20605
20606         * INSTALL: Indicate that the --with-glib= configure
20607         time flag is unsupported.
20608
20609 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
20610
20611         * docs/generation.txt: Added a file that gives
20612         documenation about the autogeneration process for
20613         various autogenerated files.
20614         
20615 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
20616
20617         * configure.in (LIBS): Look for libgmodule in the
20618         right location.
20619
20620 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
20621
20622         * docs/gtk_tut.sgml: Removed references to
20623         code examples in my directory on gtk.org as
20624         they should all be in the tutorial now.
20625
20626         * docs/gtk_tut.sgml: Added sources for dial-test
20627         and scribble-xinput programs that were previously
20628         missing.
20629
20630 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
20631
20632         * TODO: Added entry about menu keyboard navigation, removed
20633         some finished items.
20634
20635 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
20636
20637         * acinclude.m4: Standardize on func_dgettext
20638         not func_gettext, so that the checks for dgettext
20639         actually are paid attention to.
20640
20641 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
20642
20643         * configure.in (LIBS): Add $INTLLIBS into $LIBS
20644         directly, rather than repeating the checks for
20645         gettext.
20646
20647         * INSTALL: Added information about gettext and
20648         NLS support.
20649
20650         * acinclude.m4 (LIBM): Check for dgettext, not
20651         just gettext. This should hopefully fix things wrt
20652         systems with old versions of GNU gettext installed.
20653
20654 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
20655
20656         * configure.in (LIBS): Look for libgmodule in the
20657         right location.
20658
20659 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
20660
20661         * autogen.sh: add --enable-maintainer-mode
20662
20663         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
20664
20665 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
20666
20667         * docs/gtk-config.1.in:
20668           docs/Makefile.am:
20669           configure.in: gtk-config is now generated.
20670
20671         * docs/gtk-config.1: Removed, now generated.
20672
20673 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
20674
20675         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
20676         handle CreateNotify itself, still put out a debuging message for
20677         --gdk-debug=events. made the ReparentNotify debugging message more
20678         verbose.
20679         wrap xcoords translation for ConfigureEvents into an error trap,
20680         a destroy event may already be pending, and in that case, the
20681         actuall coordinate values are not at all critical.
20682
20683 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
20684
20685         * gdk/gdkcc.c: Stop leaking the color_hash all over
20686         the place. Simplify and improve the logic.
20687
20688 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
20689
20690         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
20691         for prototypes and function implementations consistent (reported
20692         by Tomas Ogren).
20693
20694 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
20695
20696         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
20697         send_event set in debugging output.
20698         (gdk_compress_exposures): default initialize the event so we don't
20699         operate on bogus values (namely send_event).
20700
20701 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
20702
20703         * gdk/gdkwindow.c: When we receive an unexpected
20704         destroy notify on one of our windows, don't just
20705         warn about it, also mark our windows as destroyed.
20706
20707 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
20708
20709         * gdk/gdkfont.c (gdk_font_hash_insert): Add
20710           name => font and name => fontset hashes. The 
20711           name => fontset hash is a _big_ win since we
20712           weren't previously caching fontsets at all and loading
20713           fontsets is expensive. The name => font hash
20714           is less of a win, but it does save us from doing
20715           repeated XQueryFont calls on the same font.
20716
20717         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
20718           list so we can remove font/fontset from hash.
20719
20720 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
20721
20722         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
20723           and slightly confusing test. [ XInternAtom (,,TRUE)
20724           will never return None ].
20725
20726 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
20727
20728         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
20729           gdk/gdkwindow.c (gdk_window_set_hints):
20730
20731         Don't omit setting the properties if flags == 0 -
20732         there may be an existing set of properties there
20733         already. (Very old bug. Would it be better to
20734         delete the property instead?)
20735
20736         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
20737           spelling error in comment.
20738
20739 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
20740
20741         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
20742           to avoid stomping over gdk_error_warnings.
20743
20744         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
20745           as (bits_per_pixel + 7) / 8. This gives the same
20746           result as before for multiples of 8, but actually
20747           a "reasonable" value for 1bit or 4bit displays.
20748
20749 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
20750
20751         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
20752         GNU Make.
20753
20754 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
20755
20756         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
20757         discarding configure events.
20758
20759 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
20760
20761         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
20762         refcount is greater than zero.
20763
20764         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
20765
20766         * gdk/gdkfont.c (gdk_font_unref): Likewise.
20767
20768         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
20769
20770         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
20771
20772 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
20773
20774         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
20775         that format 32 => sizeof(item) == 4. It really is
20776         sizeof(long).
20777
20778 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
20779
20780         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
20781         core dump at all on X IO errors, only core dump
20782         if --enable-debug for X errors.
20783
20784 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
20785
20786         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
20787         unknown window:" message. disabled ConfigureNotify discarding code,
20788         because it led to events being processed out of order.
20789
20790 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
20791
20792         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
20793
20794         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
20795         we export this function, supress error warnings and don't reset the
20796         error code in the first half of this function.
20797
20798         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
20799         code (instead of just -1) so gdk_error_trap_pop() reveals something
20800         actually informative about the error that happened.
20801
20802         * gdk/*.c:
20803         don't rely on gdk_error_code being -1 if an error occoured, but just
20804         gdk_error_code != 0.
20805
20806 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
20807
20808         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
20809         pointer *before* invoking the filter function, so we at least don't
20810         crash if a filter is removed that is currently executed. window filters
20811         *really* need to be made truely reentrant at some point.
20812
20813 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
20814
20815         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
20816         PropertyNotify debug messages.
20817
20818 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
20819         
20820         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
20821         
20822         * gdk/gdkim.c: Fix cut-and-paste errors for 
20823         x/y and PreeditAttributes/StatusAttributes.
20824
20825 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20826
20827         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
20828         G_MAXINT to 2^16 to alleviate overflow problems in
20829         various window managers.
20830
20831 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
20832
20833         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
20834         for fontsets.
20835
20836 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
20837
20838         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
20839         Initialize size_hints.x and size_hints.y because kwm
20840         brokenly pays attention to them.
20841         (Bug #1181 -  Lars Heete <hel@admin.de>)
20842
20843 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
20844
20845         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
20846         return value of gdk_list_visuals(). 
20847         (Bug #1193 - Morten Welinder <terra@diku.dk>)
20848
20849 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
20850
20851         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
20852         XSetIMValues to (void *) when comparing to NULL, to workaround
20853         the problem of some compilers barfing since older X headers don't
20854         have the prototype for it.
20855
20856 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
20857
20858         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
20859         for pseudocolor where colormap->colors was double
20860         allocated.
20861
20862         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
20863         color value in the hash table with the pixel filled
20864         in so when we do later hash table lookups, the color
20865         value is correct.
20866         
20867 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
20868
20869         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
20870         making the call
20871
20872 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
20873
20874         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
20875         pointed out by Morten Welinder <terra@diku.dk>.
20876
20877 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20878
20879         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20880           default filter from the list
20881
20882 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
20883
20884         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
20885           default filter from the list
20886
20887 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
20888
20889         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
20890
20891         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
20892         g_strdup_printf instead of calcing the length separately
20893
20894 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
20895
20896         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
20897         that we don't do in many other places. (Fixing duplicate 
20898         #include of config.h)
20899
20900         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
20901         Otherwise, #ifndef XINPUT_NONE check in the latter
20902         doesn't work. (Bug #546)
20903
20904 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
20905
20906         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
20907         "None" case insensitive.
20908
20909 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
20910
20911         * gdk/gdkselection.c: 
20912         Add error traps so if the other end of the connection
20913         dies, we survive.
20914
20915 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20916
20917         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
20918         dest_xid field into two fields - one for the window
20919         to send in messages, one to indicate the last looked
20920         up window for caching purposes. This is needed, so
20921         that Leave messages get the correct window.
20922
20923 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
20924
20925         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
20926         Fix warning created by people mucking around
20927         with the gsource API.
20928
20929         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
20930         Change mapping between GIOCondition and GdkInputCondition
20931         to match the way the Linux kernel does it. This should
20932         fix problems where closed pipes were no longer signalling
20933         GDK_INPUT_READ on systems with a native poll().
20934
20935 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
20936
20937         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
20938         explicitly for the string "None" - it is in the XPM
20939         spec and some servers treat unknown colors in odd ways
20940         (like asking the user!)
20941
20942 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
20943
20944         * gdk/gdkevents.c: made "->" into a "." of previous change so
20945         it compiles
20946
20947 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
20948
20949         * gdk/gdkevents.c (gdk_compress_exposures): Set the
20950         window field of the event structure before calling
20951         user filters.
20952
20953 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
20954
20955         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
20956         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
20957
20958 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
20959
20960         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
20961         intermediate text property - prevents major memory
20962         leak when gdk_use_mb.
20963         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
20964
20965 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
20966
20967         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
20968         gtk-a-higuti-990322-[0-3]
20969
20970         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
20971         sizeof(wchar_t) != sizeof (GdkWChar)
20972
20973         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
20974         that was causing -DX_LOCALE not to work.
20975
20976         * gtk/gtkrc.c (gtk_rc_init):
20977         X_LOCALE will never have LC_MESSAGES defined
20978
20979         * gdk/gdk.c (gdk_init_check):
20980         Remove --xim-preedit and --xim-status from argv properly.
20981
20982         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
20983         that the client window is present on the X server
20984         before we pass it to the input method.
20985
20986 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
20987
20988         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
20989         if --display is specified on the command line, than
20990         the drag window will not be created on that display.
20991         
20992 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
20993
20994         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
20995         lookups with only_if_exists == TRUE were inserting
20996         bogus values into the atom cache.
20997
20998 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
20999
21000         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
21001         then reset it to NULL.
21002
21003         * gdk/gdkcolor.c:
21004         (gdk_colors_free): 
21005         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
21006         key for g_hash_table_remove() in both functions, this prevents us
21007         from accessing possibly uninitialized portions of a GdkColor structure
21008         where we are only interested in its pixel value.
21009
21010 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21011
21012         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21013         font hash table, if we have a GdkFontPrivate entry for this font
21014         already, simply increment its reference count, provided by Olaf Dietsche
21015         <olaf.dietsche+list.gtk@netcologne.de>.
21016
21017 1999-09-21  Tor Lillqvist  <tml@iki.fi>
21018
21019         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
21020         just to be sure.
21021
21022         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
21023         unused variables, leftovers from the X11 version.
21024
21025         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
21026
21027         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
21028         downcase fields on X11.
21029
21030 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
21031         
21032         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
21033         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
21034
21035 1999-09-17  Tor Lillqvist  <tml@iki.fi>
21036
21037         * gdk/win32/gdk.def: Add gdk_threads_mutex.
21038
21039         * gtk/makefile.msc: Correct path to libintl.
21040
21041         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
21042         use of gint vs. int, and gint vs. gboolean in headers and
21043         definitions. Use GtkType for the *_get_type functions. Note that
21044         these changes preserve binary compatibility.
21045
21046         * gdk/gdk.c
21047         * gdk/win32/gdk.c
21048         * gdk/gdk.h: Fix inconsistencies: gint vs int.
21049
21050         * gtk/gtkmain.c
21051         * gtk/gtkclist.c
21052         * gtk/gtkmenufactory.c
21053         * gtk/gtknotebook.c
21054         * gtk/gtkwidget.c: Fix inconsistencies, also gint
21055         vs. gboolean.
21056
21057         * gtk/gtkcolorsel.[ch]
21058         * gtk/gtkcombo.[ch]
21059         * gtk/gtkdrawingarea.[ch]
21060         * gtk/gtkgamma.[ch]
21061         * gtk/gtkhandlebox.[ch]
21062         * gtk/gtkhpaned.[ch]
21063         * gtk/gtkhruler.[ch]
21064         * gtk/gtkplug.[ch]
21065         * gtk/gtkpreview.[ch]
21066         * gtk/gtkruler.[ch]
21067         * gtk/gtksocket.[ch]
21068         * gtk/gtkstatusbar.[ch]
21069         * gtk/gtktoolbar.[ch]
21070         * gtk/gtkvbbox.[ch]
21071         * gtk/gtkvpaned.[ch]
21072         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
21073         functions.
21074
21075         * gtk/gtkgamma.h: Fix bug, missing () in call of
21076         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
21077
21078 1999-09-14  Tor Lillqvist  <tml@iki.fi>
21079
21080         * gdk/gdkcolor.c (gdk_colormap_new)
21081         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
21082         colormap->colors was allocated twice.
21083
21084         * gdk/win32/gdk.c: Remove some unused stuff.
21085
21086         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
21087         colormap.
21088
21089         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
21090         * gtk/gtklabel.h (gtk_label_get_type)
21091         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
21092         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
21093         in a couple of places, not guint.
21094
21095 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21096
21097         * configure.in,po/et.po: added Estonian language file
21098
21099 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21100
21101         * configure.in,po/da.po: added Danish file
21102
21103 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
21104
21105         * docs/gtkfaq.sgml: Minor FAQ Update
21106
21107 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
21108
21109         * docs/gtkfaq.sgml: FAQ update
21110
21111 1999-08-27  Tor Lillqvist  <tml@iki.fi>
21112
21113         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
21114         way to get window contents continually refreshed while resizing. I
21115         didn't like the effects myself, so it's not on by default.
21116
21117         * gdk/win32/gdkprivate.h: New flag variable
21118         gdk_event_func_from_window_proc, FALSE by default.
21119
21120         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
21121         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
21122         are passed --gdk-event-func-from-window-proc.
21123
21124         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
21125         and we have am event_func, call it instead of enqueing the event.
21126
21127 1999-08-23  Tor Lillqvist  <tml@iki.fi>
21128
21129         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
21130         Kelley: Set expose_count in GdkEventExposes correctly.
21131
21132         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
21133         MULTIPLE_WINDOW_CLASSES).
21134
21135         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
21136         for bug in NT, apparently NT *does* draw the end pixel, too, in
21137         LineTo with a one-pixel pen, so we don't have to do it ourselves.
21138
21139 1999-08-21  Tor Lillqvist  <tml@iki.fi>
21140
21141         Improvements by Hans Breuer: 
21142
21143         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
21144
21145         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
21146         CS_?REDRAW flags as they cause lots of (late) redraws when "show
21147         window contents while dragging" is turned on. Allocate at least
21148         one unique class for every GdkWindowType. If support for single
21149         window-specific icons is ever needed (eg. Dialog specific), every
21150         such window should get its own class.
21151
21152 1999-08-19  Tor Lillqvist  <tml@iki.fi>
21153
21154         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
21155         error that caused crashes.
21156
21157 1999-08-17  Tor Lillqvist  <tml@iki.fi>
21158
21159         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
21160         window, use ScrollWindowEx, and call UpdateWindow. This prevents
21161         bugs when for instance part of the window was outside the
21162         display. Thanks to Philippe Colantoni for finding and fixing this.
21163
21164 1999-08-16  Tor Lillqvist  <tml@iki.fi>
21165
21166         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
21167         endpoint calculations which were totally wrong. (A little RTFMing
21168         helps a lot ;-)
21169
21170         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
21171         from a separate directory, not from gettext, because of licensing
21172         issues (we want to use the LGPL version).
21173
21174         * README.win32: Mention the intl from glibc vs from gettext issue.
21175
21176 1999-08-13  Tor Lillqvist  <tml@iki.fi>
21177
21178         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
21179         in the key event handling: Now AltGr chars work again. Also,
21180         now Alt-digits are passed up as well as Control-digits.
21181         Pass keypad plus and minus as normal plus and minus.
21182
21183 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21184
21185         * docs/gtkfaq.sgml: FAQ Update
21186
21187 1999-07-25  Tor Lillqvist  <tml@iki.fi>
21188
21189         * README.win32
21190         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
21191         the Wintab SDK.
21192
21193         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
21194         OK, but getting closer. Guard against bogus tilt data from Wacom
21195         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
21196         enable easier building without Wintab.
21197
21198         * gdk/win32/gdkinput.h
21199         * gdk/win32/gdkevents.c 
21200         * gdk/win32/gdkwindow.c: Minor changes related related to above.
21201         
21202         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
21203         code. As we have just one visual on Win32, no sense to have it in a
21204         table, and no need for the hash table.
21205
21206         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
21207         better on white background.
21208
21209 1999-07-21  Tor Lillqvist  <tml@iki.fi>
21210
21211         * README.win32: Update gcc build instructions. Mention gettext is
21212         GPL.
21213
21214         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
21215         supported cursor size with GetSystemMetrics.
21216
21217         * gdk/win32/gdkfont.c
21218         * gtk/gtkfontsel.c: Guard against some font weight and charset
21219         symbols being undefined (in mingw32 headers).
21220
21221         * gdk/win32/makefile.cygwin
21222         * gtk/makefile.cygwin
21223         * gtk/gtkthemes.c: No longer need to have differently named
21224         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
21225
21226 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
21227
21228         * docs/gtkfaq.sgml: Long awaited FAQ update.
21229
21230 1999-07-15  Tor Lillqvist  <tml@iki.fi>
21231
21232         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
21233         it. Obscure bit manipulation needed.
21234
21235         * gdk/win32/gdkevents.c: Logging.
21236         
21237         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
21238         style (file name include compiler name) for theme engines.
21239
21240 1999-07-13  Tor Lillqvist  <tml@iki.fi>
21241
21242         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
21243
21244         * gdk/win32/gdkevents.c: Fix long-standing bug in key
21245         events. The key.string wasn't zero-terminated, still we strdup'ed
21246         it in gdk_event_copy(). Synthesize crossing events for button
21247         events before possible propagation.
21248
21249         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
21250
21251         * gdk/win32/makefile.cygwin
21252         * gtk/makefile.cygwin: Use new DLL naming style for the
21253         GCC-compiled ones.
21254
21255         * gdk/win32/makefile.msc
21256         * gtk/makefile.msc: Cosmetics mostly.
21257
21258         * gtk/gtk.def: Add missing entry points.
21259
21260         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
21261
21262 1999-07-09  Tor Lillqvist  <tml@iki.fi>
21263
21264         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
21265         or height is zero. Don't print a warning if Pie or Arc fails, they
21266         always fail (?) for very narrow ellipses.
21267
21268         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
21269         the part or the destination window corresponding to source area
21270         outside of the source drawable's boundary.
21271
21272         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
21273         anything if less than two points.
21274
21275         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
21276         return NULL. Gtk cut-and-paste inside a single program works
21277         better this way. (It always gets the clipboard contents from
21278         Windows, not from its own copy, which is cleared anyway. I can't
21279         say I fully understand what happens... Emulating the X selection
21280         and property stuff is a bit of a mess.)
21281
21282         * gdk/win32/gdkevents.c
21283         * gdk/win32/gdkproperty.c: A bit more verbose logging.
21284
21285         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
21286         that never got deleted). Revamp gdk_region_shrink.
21287
21288         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
21289         after use.
21290
21291         * gtk/gtk.def: Add some missing entry points.
21292
21293         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
21294         component.
21295
21296 1999-07-04  Tor Lillqvist  <tml@iki.fi>
21297
21298         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
21299         Control-digits specially.
21300
21301 1999-07-03  Tor Lillqvist  <tml@iki.fi>
21302
21303         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
21304
21305 1999-06-28  Tor Lillqvist  <tml@iki.fi>
21306
21307         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
21308         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
21309         finding this.)
21310
21311 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
21312
21313         * gtk+.spec.in: Corrected some typos in files section.
21314         
21315 1999-06-15  Tor Lillqvist  <tml@iki.fi>
21316
21317         * README.win32: Mention using GNU gettext.
21318         * config.h.win32: Enable NLS stuff.
21319         * gtk/makefile.msc: Use GNU gettext.
21320         * gdk/win32/gdkdnd.c: Minor header reorg.
21321         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
21322         cosmetics.
21323         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
21324         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
21325
21326 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
21327
21328         * acinclude.m4
21329         * config.guess
21330         * config.status
21331         * ltconfig
21332         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
21333
21334 1999-05-30  Tor Lillqvist  <tml@iki.fi>
21335
21336         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
21337         SafeAdjustWindowRectEx. Don't override all calls to
21338         AdjustWindowRectEx by it, but use it only in two places: When
21339         creating a new top-level window and when moving a top-level
21340         window.
21341
21342         Use screen coordinate rectangle, not client rectangle, in
21343         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
21344         when we try to place a window so that the decoration (mainly,
21345         title bar) isn't visible.
21346
21347         These changes fix the bug that showed up for instance as the
21348         GIMP's saved top-level windows moving right and down (by an amount
21349         equal to the window decoration) for each session. This bug showed
21350         up also in testgtk's "Saved Position".
21351
21352         gdk_window_resize also redone a bit.
21353
21354 1999-05-25  Tor Lillqvist  <tml@iki.fi>
21355
21356         * gtk/testgtkrc: Add (commented out) Windows-style theme
21357         include line.
21358
21359         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
21360
21361 1999-05-18  Tor Lillqvist  <tml@iki.fi>
21362
21363         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
21364         gdkx.h to a gdk subdirectory, so that applications can include
21365         these with <gdk/*.h> without trouble.
21366
21367         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
21368         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
21369         have their bitmap destroyed.
21370
21371         * gdk/win32/gdk.def: Add gdk_root_parent.
21372
21373 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
21374
21375         * configure.in
21376           gtk-config.in
21377           ltconfig
21378           ltmain.sh     
21379           gtk/Makefile.am: changes to compile nicely (with xlib) 
21380           on BeOS
21381
21382 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
21383
21384         * acinclude.m4
21385         * config.guess
21386         * config.sub
21387         * ltconfig
21388         * ltmain.sh: upgrade to libtool 1.3
21389
21390 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
21391
21392         * gtk/gtkclist.c:
21393         * gtk/gtkctree.c: merges from gtk-1-2
21394
21395 1999-04-25  Tor Lillqvist  <tml@iki.fi>
21396
21397         Support added for building using a GNU toolchain on Win32,
21398         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
21399
21400         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
21401         * config.h.win32: Changes for gcc.
21402         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
21403         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
21404         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
21405         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
21406         Protect shl stuff unavaiilable with mingw32 headers.
21407         * gdk/win32/gdkevents.c: Fix typo.
21408         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
21409         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
21410         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
21411         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
21412         the mingw32 headers.
21413         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
21414         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
21415         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
21416         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
21417         Test for NATIVE_WIN32, not _MSC_VER.
21418         * gtk/gtkmain.c: No use warning about developer version on Win32,
21419         there aren't any non-developer versions anyhow.
21420         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
21421         * gtk/makefile.msc: Use pthread from another directory. Minor other
21422         changes. 
21423
21424 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21425
21426         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21427           default filter from the list
21428
21429 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
21430
21431         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
21432          when gtk_widget_grab_default() is called for a widget that
21433          is not within a GtkWindow.
21434
21435 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
21436
21437         * docs/gtk_tut.sgml, examples/clist.c: use a
21438           scrolled window in the clist example. Minor
21439           tutorial fixes.
21440
21441 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
21442
21443         * docs/gtk_tut.sgml: Style check from David King
21444           <dking@youvegotmail.net>
21445
21446 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
21447
21448         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
21449         compile with unknown value of GDK_WINDOWING
21450
21451 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
21452
21453         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
21454         after the rule is fired.
21455         (install-exec-local): Install gdkconfig.h only if the contents are
21456         different from the currently installed gdkconfig.h.
21457
21458 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
21459
21460         * gdk/Makefile.am (configexecincludedir): Rename from 
21461         configincludedir so that gdkconfig.h will be installed 
21462         as part of `make install-exec'. 
21463
21464 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
21465
21466         * acinclude.m4
21467         * config.guess
21468         * config.sub
21469         * ltconfig
21470         * ltmain.sh: upgrade to libtool 1.2f
21471
21472         * autogen.sh: libtool is not required to autogen gtk+
21473
21474         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
21475         needed)
21476
21477 1999-03-18  Tor Lillqvist  <tml@iki.fi>
21478
21479         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
21480         declaring gdk variables exported/imported from the DLL. New image
21481         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
21482         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
21483         GDK_DRAG_PROTO_OLE2.
21484
21485         * gdk/gdk.h: Merge in Win32 version: Two new functions,
21486         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
21487         declared only for the Win32 version, but could be in the X11
21488         version as well. (Needed for a Xlib-less gdk_imlib.)
21489         gdk_color_hash should have only one parameter. Declare
21490         gdk_threads_mutex with GDKVAR.
21491         
21492         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
21493         just one parameter.
21494
21495         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
21496         per pixel, not bits.
21497
21498         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
21499         Fetch bpp (which means bits-per-pixel here) from another place on
21500         Win32. Accept also depth==32 (which we might get on Win32) with
21501         bpp==32.
21502
21503         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
21504         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
21505         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
21506         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
21507         in the backend-dependent directory, not in the common gdk
21508         directory.
21509
21510         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
21511         headers.
21512
21513 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
21514
21515         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
21516         want to use the Gtk+ devel version (which is true, and yes - even i am
21517         currently working with the 1.2.x branch). so everyone reading this, you
21518         probably want to issue
21519         cvs checkout -r glib-1-2 glib
21520         and
21521         cvs checkout -r gtk-1-2 gtk+
21522         as your next two comands.
21523
21524 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
21525
21526         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
21527         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
21528
21529         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
21530         file. strongly deprecated the GTK_HAVE_* macros, we provide
21531         GTK_CHECK_VERSION() for people that need to check for certain
21532         Gtk+ versions.
21533
21534         * gtk/gtkcompat.h: removed this from CVS.
21535         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
21536         idea right from the start, it just didn't seem like that back then.
21537
21538 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
21539
21540         * merges from gtk-1-2:
21541
21542 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
21543
21544         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
21545         item factory class has been created.
21546         (gtk_item_factory_parse_rc): likewise.
21547
21548         * gtk/gtkmenu.c:
21549         keep proper references for old_active_menu_item.
21550         (gtk_menu_reparent): unset the usize of the new parent,
21551         so the menu can sanely be size requested and we don't get nasty screen
21552         artefacts upon next reparentation.
21553         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
21554         enter notify. only synthesize enter notifies if the pointer really is
21555         inside the event window.
21556         (gtk_menu_popdown): use gtk_menu_shell_deselect().
21557         (gtk_menu_popup): move the background setting stuff into
21558         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
21559
21560         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
21561         gtk_menu_shell_select_item() to select the new item.
21562         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
21563         do the right thing for deselection as well.
21564
21565 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
21566
21567         * gtk/gtkwidget.[hc]:
21568         (gtk_widget_accelerators_locked): return whether a widget's accelerators
21569         are locked.
21570
21571         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
21572         existing accelerators if the widget's accelerators are locked.
21573
21574 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
21575
21576         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
21577
21578         * gtk/gtkmenu.c: truely forward key press and key release events to
21579         the menu widget from the toplevel or tearoff window. we can't simply
21580         connect to that, we need to stop further processing of the events as
21581         well.
21582
21583 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
21584
21585         * gtk/gtkmenu.c:
21586         (gtk_menu_key_press): pass event->keyval, event->state to
21587         gtk_accelerator_valid, instead of event->keyval twice.
21588         refuse to install single letter accelerators for menus that use
21589         single letter shortcuts.
21590
21591         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
21592         gtk_menu_ensure_uline_accel_group().
21593
21594         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
21595         which will always return an uline accel group, made
21596         gtk_menu_get_uline_accel_group() return NULL if the group isn't
21597         yet created.
21598
21599 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
21600
21601         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
21602
21603         * gtk/gtkclist.c (gtk_clist_column_title_passive):
21604         Leave button sensitive, trap  button_press, button_release,
21605         motion_notify, enter_notify and leave_notify events instead.
21606         (gtk_clist_column_title_active): disconnect event handler.
21607         (gtk_clist_drag_data_get): fixed memory leak. Reported by
21608         Guillaume Laurent <glaurent@worldnet.fr>
21609
21610 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
21611
21612         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
21613         width/height mixups.
21614
21615         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
21616         if needed.
21617
21618 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
21619
21620         * gtk/testgtk.c (create_item_factory): unref the item factory after
21621         window's destruction.
21622
21623         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
21624         count on the menu shell around the menu item's activation, since the
21625         signal emission may cause menu shell destruction.
21626
21627         * gtk/gtkitemfactory.c:
21628         the previous code leaked one accel group per menu. we use
21629         gtk_menu_get_uline_accel_group() now to fix that, and with that
21630         also create the underline accelerator group of the menus only if
21631         required (i.e. an underline accelerator has been specified).
21632         (gtk_item_factory_construct):
21633         (gtk_item_factory_create_item): removed code that would create an
21634         extra accel group for the menu (and leak references).
21635         (gtk_item_factory_create_item): adapted the underline accelerator
21636         installation code to properly feature gtk_menu_get_uline_accel_group().
21637
21638         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
21639         menu->accel_group, this may return NULL if the accelerator group
21640         hasn't been set yet.
21641         added gtk_menu_get_uline_accel_group() to retrive the underline
21642         accelerator group of the menu, this will be created on demand
21643         and proper care is taken about its reference count.
21644
21645         * gtk/gtkitemfactory.h:
21646         * gtk/gtkitemfactory.c:
21647         dumped the approach of keeping a widgets by action list on the
21648         factory since the factory<->widget destroy negotiation didn't work
21649         and would be hard to get going at all. instead we keep a list of
21650         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
21651         persistant throughout a program's life time).
21652         also, i removed the static const gchar *key_* variables, and made
21653         them inline strings (they weren't actually used anyways).
21654         (gtk_item_factory_add_item): update ifactory->items.
21655         (gtk_item_factory_destroy): destroy ifactory->items (and remove
21656         the item factory pointer from the remaining ifactory widgets).
21657         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
21658         list to find the widget.
21659         (gtk_item_factory_get_item): new function that works around
21660         gtk_item_factory_get_widget() limitations, this function will only
21661         return menu items, even for <Branch> entries.
21662
21663 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21664
21665         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21666         font hash table, if we have a GdkFontPrivate entry for this font
21667         already, simply increment its reference count, provided by Olaf Dietsche
21668         <olaf.dietsche+list.gtk@netcologne.de>.
21669
21670         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
21671         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
21672
21673 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
21674
21675         * gtk/gtkcontainer.c:
21676         (gtk_container_add_with_args):
21677         (gtk_container_addv):
21678         (gtk_container_add): before adding a child to a conatiner, make sure
21679         it is (default) constructed, this is neccessary because under certain
21680         circumstances the child will get relized and mapped immediatedly, in
21681         which case it has to be constructed already.
21682
21683 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
21684
21685         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
21686         values > 1 as TRUE also.
21687
21688 1999-03-16  Tor Lillqvist  <tml@iki.fi>
21689
21690         * README.win32: New file.
21691                 
21692         * configure.in: Check for lstat.
21693
21694         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
21695         completeness.
21696
21697         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
21698
21699         * gtk/gtk.def: Removed CRs.
21700
21701         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
21702         ..\gdk\win32).
21703
21704         * gdk/win32/makefile.msc: Correct upwards relative paths.
21705         
21706 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
21707
21708         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
21709           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
21710           it was connecting a void function to expose_event and the int
21711           returning function to the draw signal
21712
21713 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
21714
21715         * configure.in:
21716         Use correct path to libgmodule.la when ref'ing uninstalled copy
21717         of glib.  (Already in stable branch, Bug #417)
21718
21719 1999-03-15  Tor Lillqvist  <tml@iki.fi>
21720
21721         Win32 merge and general portability stuff:
21722                 
21723         * acconfig.h,configure.in: Check for <sys/time.h>.
21724
21725         * gdk/win32: New directory (actually, been there for a while).
21726         
21727         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
21728         NATIVE_WIN32, and use these. Always case fold on Win32. No
21729         backslashed escapes on native Win32.
21730
21731         * gtk/{gtk.def,makefile.msc}: New files.
21732
21733         * gtk/Makefile.am: Add above new files.
21734         
21735         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
21736         instead of <strings.h>.
21737
21738         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
21739         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
21740         <unistd.h> appropriately.
21741
21742         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
21743         Use ABS() (from <glib.h>) instead of abs().
21744         
21745         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
21746         of gtk (and thus glib) headers, so that WIN32 will be
21747         defined. With MS C, include <direct.h> for mkdir prototype.
21748
21749         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
21750         some casts, needed by MS C.
21751
21752         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
21753         implemented).
21754
21755         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
21756         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
21757         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
21758
21759         * gtk/gtkmain.h: Mark variables for export/import on Win32.
21760                 
21761         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
21762         the event is not a hint, or its window is not the slider. Needed
21763         on Win32, at least.
21764
21765         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
21766         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
21767         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
21768         a subdirectory of the Windows directory as gtk system
21769         configuration directory.
21770
21771         * gtk/gtkselection.c: No chunks on Win32.
21772
21773         * gtk/gtksocket.c: Not implemented on Win32.
21774
21775         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
21776
21777         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
21778
21779         * gtk/maketypes.awk: Declare variables with a macro that expands to
21780         necessary export/import magic in the case of Win32.
21781                 
21782         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
21783
21784 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
21785
21786         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
21787         since those were meant only for gdki18n.h.  
21788         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
21789         for widechar tests.
21790         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
21791
21792 1999-03-13  Tor Lillqvist  <tml@iki.fi>
21793
21794         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
21795         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
21796
21797         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
21798         installed) to CFLAGS.
21799
21800         * gdk/Makefile.am: Add rules for gdkconfig.h.
21801
21802         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
21803         APIs.
21804
21805         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
21806         gdkx.h anyway when compiling for X11.
21807         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
21808         general): Merge in Win32 version.
21809         
21810         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
21811         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
21812         expansion (if we don't have HAVE_PWD_H), allow for drive
21813         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
21814         included code from Craig Setera's port to Win32 (the one that uses
21815         X11, and the cygwin dll), even if it probably will be abandoned.
21816
21817         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
21818         the user entered one herself.  This way one can complete *.h and
21819         don't get matches on any .help files, for instance.
21820         
21821 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21822
21823         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21824         font hash table, if we have a GdkFontPrivate entry for this font
21825         already, simply increment its reference count, provided by Olaf Dietsche
21826         <olaf.dietsche+list.gtk@netcologne.de>.
21827
21828         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
21829         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
21830
21831 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
21832
21833         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
21834         the number of calls to gdk_draw_point() (and thus to X) by
21835         clipping the points by hand.
21836
21837         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
21838         the clip parameter.
21839         (gtk_handle_box_paint): Only paint the handle if the expose area
21840         intersects it.
21841
21842 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
21843
21844         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
21845
21846 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
21847
21848         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
21849         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
21850
21851 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
21852
21853         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
21854          textmode (O_TEXT) for OS/2 version.
21855
21856 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
21857
21858         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
21859         GtkSpinButton, "input" and "output", to make the output more flexible.
21860         The user has to provide a mapping between adjustment->value and the
21861         output string (and vice versa, if the spin button is editable). 
21862         See testgtk for examples.
21863
21864 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
21865
21866         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
21867         new one.
21868         
21869         * configure.in: set gtk+ version to 1.3.0.