]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-2
Redo Xft support to go directly to Picture objects instead of using
[~andy/gtk] / ChangeLog.pre-2-2
1 Mon Nov  5 12:46:44 2001  Owen Taylor  <otaylor@redhat.com>
2
3         * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
4         gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h
5         gdk/x11/gdkwindow-x11.c: Redo Xft support to go
6         directly to Picture objects instead of using XftDraw.
7         This fixes the problem where we weren't able to 
8         properly destroy XftDraw objects before destroying
9         the accompanying windows, and probably improves
10         efficiency a bit too. (#50214)
11
12 Mon Nov  5 10:01:49 2001  Owen Taylor  <otaylor@redhat.com>
13
14         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): 
15         Clamp max window width/height to 32767, not 32768 since
16         we have to be able to deal with a dx/y of -32768 without
17         getting a width of 65536 when guffaw scrolling.
18
19         * gdk/x11/gdkgeometry-x11.c: Implement gdk_window_scroll()
20         for the guffaw scrolling case, fixing some problems with
21         copy-area case as well. Fix BadValue bug with moving windows
22         by large amounts.
23
24         * gdk/x11/gdkgeometry-x11.c (gdk_window_clip_changed): Update
25         clip in window structue before calling gdk_window_invalidate_region
26         since that trims new invalidations to the window's visible
27         region.
28
29         * gdk/x11/gdkwindow-x11.c (gdk_window_set_static_gravities): 
30         Really set the static window gravity on the children, not
31         repeatedly on the window.
32
33         * gtk/testgtk.c: Add a torture test for big windows and 
34         gdk_window_scroll().
35
36 Sun Nov  4 17:36:08 2001  Manish Singh  <yosh@gimp.org>
37
38         * acconfig.h configure.in: sigsetjmp is macroized in some places,
39         so use AC_TRY_LINK instead of AC_CHECK_FUNCS for the check.
40
41 Sun Nov  4 19:16:23 2001  Owen Taylor  <otaylor@redhat.com>
42
43         * gdk/gdkcolor.c (gdk_color_parse): Implement gdk_color_parse()
44         in terms of pango_color_parse().
45
46         * gdk/{linux-fb,win32,x11}/gdkcolor-*.c: Remove port-specific
47         gdk_color_parse() implementations.
48
49 Sun Nov  4 18:39:43 2001  Owen Taylor  <otaylor@redhat.com>
50
51         * gtk/gtksizegroup.c (gtk_size_group_set_mode): 
52         queue_resize_on_group with both the old and new mode, not
53         just the new mode. (#60171, Nicolas Setton). Also, notify
54         the "mode" property.
55         
56 Sun Nov  4 16:02:08 2001  Owen Taylor  <otaylor@redhat.com>
57
58         * gdk/gdkwindow.[ch]: Add a function gdk_window_invalidate_maybe_recurse() 
59         for use in "shallow invalidation" of a widget. (Windows belonging
60         to the widget, but not to the widget's children)
61
62         * gtk/gtkprivate.h gtk/gtkwidget.c gtk/gtksizegroup.c: Add private
63         flags GTK_ALLOC_NEEDED, GTK_REQUEST_NEEDED.  These flags are set
64         up on ancestors up to the resize container on queue_resize. Size
65         requests only actually take place if GTK_REQUEST_NEEDED, size
66         allocations only take place if GTK_ALLOC_NEEDED or the size
67         changed.
68
69         * gtk/gtkcontainer.c gtk/gtkwidget.c: Remove
70         container->resize_widgets and the RESIZE_NEEDED flag since the
71         above flags are sufficient to figure out what needs to be
72         resized/reallocated. Remove code manipulating
73         container->resize_widget.
74
75         * gtk/gtkwidget.[ch]: Add gtk_widget_set_redraw_on_alloc(); this
76         allows widgets to turn off being automatically invalidated is when
77         they are resized.
78
79         * gtk/gtkwidget.[ch] (gtk_widget_size_allocate): Invalidation when
80         a widget is resized or moved is "shallow" as described above -
81         only the windows that need to be invalidated are invalidated.
82
83         * gtk/gtkbox.c gtk/gtktable.c gtk/gtkalignment.c docs/Changes-2.0.txt: 
84         Make these widget's init functions call 
85         gtk_widget_set_redraw_on_allocate(widget,FALSE).
86
87         * gtk/gtkwindow.c (gtk_window_configure_event): Call 
88         _gtk_container_queue_resize(), since we don't want
89         redrawing. (Probably could be done for other 
90         calls to gtk_widget_queue_resize() in gtkwindow.c,
91         but this is the most important one.)
92
93         * gtk/gtkwindow.c (gtk_window_move_resize): Don't call
94         gtk_widget_queue_draw() - size_allocate() handles
95         that as appropriate.
96
97         * gtk/gtkframe.c (gtk_frame_size_allocate): Invalidate instead
98         of queue_clear() to avoid invalidating children.
99
100 2001-11-04  jacob berkman  <jacob@ximian.com>
101
102         * gtk/gtkmain.c (find_module): don't free the module name until
103         after we load the module
104
105 Sat Nov  3 13:57:21 2001  Owen Taylor  <otaylor@redhat.com>
106  
107         * gtk/gtkctree.c: Convert GTK_TYPE_CTREE_NODE to pointer
108         derivation instead of boxed derivation.
109  
110         * gtk/gtkmarshal.list: Remove some now unused marshallers.
111  
112 2001-11-04  Tor Lillqvist  <tml@iki.fi>
113
114         * gtk/gtkimmodule.c: Can't include gtkprivate.h (I added the
115         include yesterday, without really thinking), as that defeats the
116         working of correct_libdir_prefix() (it becomes a no-op.). Add
117         comment mentioning that. Thanks to Hans Breuer for noticing.
118         
119 2001-11-03  Daniel Elstner  <daniel.elstner@gmx.net>
120
121         * gtk/gtkwindow.h (frame_event): Use GtkWindow* as first
122         signal argument (was GtkWidget*).
123
124         * gtk/gtkwindow.c (gtk_window_frame_event),
125           gtk/gtkwindow-decorate.c (gtk_decorated_window_frame_event):
126         Fixed argument types as above, removed GTK_WINDOW casts and
127         added some GTK_WIDGET casts instead.
128
129 2001-11-03  Hans Breuer  <hans@breuer.org>
130
131         * gtk/gtkfilesel.c (gtk_file_selection_finalize) : chain
132         finalize to parent class to get removed from the toplevel_list.
133         Should fix 'random' crashes of #63474.
134
135         * gtk/gtktreemodelsort.c : chain finalize() to parent class
136
137 2001-11-03  Tor Lillqvist  <tml@iki.fi>
138
139         * modules/input/Makefile.am: Use -no-undefined on Windows. Look
140         for .dll or .so as appropriate as module suffix.
141
142         * gtk-zip.sh.in: Use correct import library names.
143
144         * gtk/gtk.def: Add a couple of missing entry points. (#63585)
145
146         * gtk/gtkimmodule.c (correct_libdir_prefix): New function, used on
147         Windows to turn build-time paths from a gtk.immodules distributed
148         as part of a binary package into runtime ones in the
149         end-user-chosen installation directory.
150         (gtk_im_module_init): Use it for module path and domain
151         directory.
152
153 2001-11-02  Tor Lillqvist  <tml@iki.fi>
154
155         * gtk/gtkrc.c (gtk_rc_make_default_dir): Fix typo: extraneous
156         comma.  Include gtkprivate.h for GTK_LIBDIR etc definitions on
157         Windows.
158
159 2001-10-30  Tor Lillqvist  <tml@iki.fi>
160
161         * Makefile (install-data-hook): Use cp, not $(LN_S) on the .pc
162         files. Configure on Win32 (running on Cygwin) thinks symlinks
163         exist, but pkg-config is not necesarily a Cygwin program, and
164         doesn't understand them.
165
166 Fri Nov  2 16:45:17 2001  Jonathan Blandford  <jrb@redhat.com>
167
168         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Clean up height code
169         a bit.  I don't think it's completely correct yet, but it's
170         getting there.
171
172 Fri Nov  2 16:14:15 2001  Owen Taylor  <otaylor@redhat.com>
173
174         * gtk/gtkviewport.c (gtk_viewport_size_request): Remove
175         random + 5 for width and height. If people want padding,
176         they should add padding. (Note the +5 isn't padding
177         that will always appear - it just appears in the case
178         where the widget is allocated it's requisition.)
179         (#51018, Janet Davis)
180
181 Fri Nov  2 15:53:23 2001  Owen Taylor  <otaylor@redhat.com>
182
183         * gtk/gtkimcontext.h (struct _GtkIMContextClass): Pad
184         the structure for future expansion.
185
186 Fri Nov  2 15:30:34 2001  Owen Taylor  <otaylor@redhat.com>
187
188         Patch from HideToshi Tajima (#51922)
189         
190         * gtk/gtkimmulticontext.c: Proxy set_use_preedit().
191
192         * gtk/modules/input/gtkimcontextxim.[ch]: Implement
193         set_use_preedit().
194         
195         * gtk/modules/input/gtkimcontextxim.[ch]: If we have
196         to destroy the input context because we change the
197         client window or use_preedit, make sure we empty
198         the preedit string.
199
200 Fri Nov  2 14:55:53 2001  Owen Taylor  <otaylor@redhat.com>
201
202         * gtk/{gtkcolorseldialog.c,gtkfilesel.c,gtkfontsel.c,
203         gtkgamma.c,gtkmessagedialog.c}: Go to the GUP
204         proposed ordering of buttons with [OK] in the lower
205         right hand corner. Patch from Gregory Merchan,
206         #56331.
207
208 Fri Nov  2 11:51:49 2001  Jonathan Blandford  <jrb@redhat.com>
209
210         * gtk/gtklabel.c (gtk_label_select_region_index): remove
211         extraneous gtk_label_clear_layout (label)
212
213 2001-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
214
215         * tests/makefile.msc, gtk/makefile.msc.in: Removed
216         -DGTK_DISABLE_COMPAT_H.
217
218         * docs/Changes-2.0.txt:
219         s/GDK_DISABLE_COMPAT_H/GDK_DISABLE_DEPRECATED/
220
221         * gtk/gtkcompat.h.in, gdk/gdkcompat.h: Removed from CVS.
222
223 Fri Nov  2 10:21:03 2001  Owen Taylor  <otaylor@redhat.com>
224
225         * examples/**/Makefile.am: Convert to use pkg-config
226         rather than gtk-config. (#53375, Skip Montanaro)
227
228 2001-11-02  Matt Wilson  <msw@redhat.com>
229
230         * gtk/gtkdialog.c (find_child_by_response_id): remove totally
231         broken unused, non-compiling, static function.
232
233 Fri Nov  2 08:17:06 2001  Owen Taylor  <otaylor@redhat.com>
234
235         * gtk/gtkdialog.c (gtk_dialog_set_response_sensitive): 
236         Iterate through children of the action area, not of
237         the vbox. (#58278, Sergey Kuzminov)
238
239 2001-11-01  Havoc Pennington  <hp@pobox.com>
240
241         * gtk/gtktext.c (gtk_text_set_position): handle -1 argument in
242         order to remove a workaround in Nautilus that forced
243         GTK_ENABLE_BROKEN
244
245         * gtk/gtkwidget.c (gtk_widget_modify_style): fix typos in the docs
246
247 Thu Nov  1 20:09:31 2001  Owen Taylor  <otaylor@redhat.com>
248
249         * gtk/gtkrange.c: Patch from George Lebl to 
250         fix division by zero for full scroll bars. (#62114)
251
252 Thu Nov  1 19:56:40 2001  Owen Taylor  <otaylor@redhat.com>
253
254         * gtk/gtkmain.c (gtk_main_do_event): ref/unref
255         around gtk_widget_event() if we are going to
256         set a flag afterwards. (#63464)
257
258 Thu Nov  1 19:44:48 2001  Owen Taylor  <otaylor@redhat.com>
259
260         * gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am: 
261         Actually add the missing/broken image icon as the
262         image for the "missing image" stock icon.
263
264 Thu Nov  1 19:18:34 2001  Owen Taylor  <otaylor@redhat.com>
265
266         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
267         Set a reasonable default height for the window.
268
269         * demos/gtk-demo/stock_browser.c (id_to_macro): Fix
270         bug where subsequent '-' weren't converted to '_'.
271         (#59550, Matthias Clasen)
272
273         * demos/gtk-demo/appwindow.c (menu_items): Don't right 
274         justify the Help menu - just include a comment on
275         how to do it. (#63539,  Marius Andreiana)
276
277         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): Don't 
278         list GTK_ICON_SIZE_INVALID.
279
280         * demos/gtk-demo/stock_browser.c: Show the biggest available
281         size, not a fixed size. (Often reported, including #63539, 
282         Marius Andreiana)
283
284 Thu Nov  1 19:11:35 2001  Jonathan Blandford  <jrb@redhat.com>
285
286         * gtk/gtkrbtree.c (gtk_rbtree_reorder_fixup): Fix reorder_fixup,
287         #59583
288
289         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): fix
290         warning.
291
292 Thu Nov  1 16:54:00 2001  Owen Taylor  <otaylor@redhat.com>
293
294         * gtk/gtktypeutils.h: Make GtkFunction return boolean, not gint.
295         (Daniel Elstner).
296
297 Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>
298
299         * gtk/gtkimcontext.[ch]: Add:
300           - A ::retrieve_surrounding signal that asks the widget for
301             context around the insertion point.
302           - A ::delete_surrounding signal that asks the widget to 
303             delete context aroudn the insertion point.
304           - gtk_im_context_set_context() for widgets to set context
305             around the insertion point in response to ::retrieve_context.
306           - gtk_im_context_get_context() for context to get context
307             around the insertion point
308
309         * gtkmarshal.list: Add BOOL:INT,INT
310
311         * gtk/gtkimmulticontext.c: Proxy the get_surrounding() /
312         set_surrounding() methods, and the ::retrieve_surrounding /
313         ::delete_surrounding signals.
314
315         * gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
316         GtkIMContext::retrieve_surrounding / ::delete_surrounding
317         signals.
318
319 Thu Nov  1 15:45:04 2001  Jonathan Blandford  <jrb@redhat.com>
320
321         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
322         it's amazing how well things work sometimes, even when they're
323         completely wrong.
324
325         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
326         where you could try to collapse a node w/o it having children.
327
328         (gtk_tree_view_class_init): remove Shift L<->R as they already
329         existed for expand/collapse.
330
331 Thu Nov  1 12:21:31 2001  Jonathan Blandford  <jrb@redhat.com>
332
333         * gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Fix crash
334         found by Matt Wilson.
335
336 Thu Nov  1 00:44:50 2001  Jonathan Blandford  <jrb@redhat.com>
337
338         * gtk/gtktreeview.c (gtk_tree_view_class_init): Support Shift,
339         Control, and Shift|Control L<->R, #63475
340
341 Wed Oct 31 18:53:51 2001  Jonathan Blandford  <jrb@redhat.com>
342
343         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): fix
344         infinite loop noticed by yosh.
345
346 2001-11-01  Michael Meeks  <michael@ximian.com>
347
348         * gtk/gtksocket.c (gtk_socket_unrealize): unset the
349         GTK_REALIZED flag so we don't re-enter when we are
350         destroyed from the plug side.
351
352 Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>
353
354         * gtk/gtkoptionmenu.c (gtk_option_menu_detacher): 
355         Add a "menu" property and notify on it. (#62798,
356         Padraig O'Briain)
357
358         * gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
359         gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}: 
360         Fix set_text to take a gchar, not a guchar, and to have 
361         a len argument.
362
363 Wed Oct 31 15:31:13 2001  Manish Singh  <yosh@gimp.org>
364
365         * gtk/gtkstock.c: fix typo to make it compile
366
367 Wed Oct 31 17:27:20 2001  Jonathan Blandford  <jrb@redhat.com>
368
369         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): if
370         the widget is insensitive, draw the text insensitively, #63306
371
372 2001-10-31  Matthias Clasen  <matthiasc@poet.de>
373
374         * gtk/gtkstock.c: Add stock items for most stock icons. (#61757)
375
376 Wed Oct 31 16:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
377
378         * gtk/gtktreednd.c (gtk_tree_set_row_drag_data): rename
379         gtk_selection_data_set_tree_row, #60218
380         (gtk_tree_get_row_drag_data): rename
381         gtk_selection_data_get_tree_row, #60218
382
383         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): Actually
384         get this right, after the third try, #63122.
385
386 2001-10-31  jacob berkman  <jacob@ximian.com>
387
388         * gdk/gdkselection.h (GDK_TARGET_STRING): 
389         (GDK_SELECTION_TYPE_STRING): these should be 31, not 3.  Hooray
390         for Xatoms (and not using the XA_* macros)!
391
392 Wed Oct 31 15:38:14 2001  Owen Taylor  <otaylor@redhat.com>
393
394         * gtk/gtkwindow.[ch] (gtk_window_get_focus): Add a
395         gtk_window_get_focus() getter to determine the currently
396         focused widget within the window. (#63145, request
397         from Damian Ivereigh)
398
399 Wed Oct 31 14:45:08 2001  Jonathan Blandford  <jrb@redhat.com>
400
401         * gtk/gtkenums.h (enum): Add GTK_SELECTION_NONE enum, #61695
402
403         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Handle new
404         GTK_SELECTION_NONE enum.
405         (_gtk_tree_selection_internal_select_node): ditto
406
407         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): add
408         constness.
409
410         * gtk/gtkcellrenderertoggle.c: more yummy constness.
411
412         * gtk/gtkclist.c (gtk_clist_set_selection_mode): g_return_if_fail
413         if mode == GTK_SELECTION_NONE
414
415 Wed Oct 31 14:05:17 2001  Jonathan Blandford  <jrb@redhat.com>
416
417         * gtk/gtktreeview.c (gtk_tree_view_class_init): Added a
418         "cursor_changed" signal, #62850.
419
420 2001-10-31  Matt Wilson  <msw@redhat.com>
421
422         * gtk/gtktreedatalist.c (_gtk_tree_data_list_alloc): after
423         allocating the treedatalist, zero it to make sure the values are
424         cleared from any garbage that was in this chunk.
425
426 2001-10-31  Murray Cumming  <murrayc@usa.net>
427
428         * gtk/cellrenderertext.h: "edited" default signal handler
429         gchar* args are now const.
430         gtk/cellrenderertoggle.h: "toggled" default signal handler
431         gchar* arg is now const.
432         Also changed other signal handlers for "edited" and "toggled" to
433         have the same signature.
434
435 Tue Oct 30 19:17:57 2001  Jonathan Blandford  <jrb@redhat.com>
436
437         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): massize
438         rewrite.  Static models now totally work.  I'm not 100% sure about
439         row_inserted and row_changed, but I'll get those later.
440
441 2001-10-30  Sven Neumann  <sven@gimp.org>
442
443         * configure.in: use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper
444         output for configure --help.
445
446 2001-10-30  Havoc Pennington  <hp@pobox.com>
447
448         * gtk/gtktextview.c (changed_handler): Update the IM spot location
449         here, if text was invalidated in the visible area, because the
450         scroll offset doesn't normally change in that case, and the mark
451         isn't set, just implicitly moved over as text is added/removed
452         
453 Mon Oct 29 19:18:35 2001  Jonathan Blandford  <jrb@redhat.com>
454
455         * gtk/gtkseparatormenuitem.c: Code cleanup.
456         (gtk_separator_menu_item_class_init): Fix bugs in this code.
457
458 2001-10-29  jacob berkman  <jacob@ximian.com>
459
460         * gdk/Makefile.am (LDFLAGS): 
461         * gtk/Makefile.am (LDFLAGS): automake doesn't support conditionalized
462         LDFLAGS, so put win32 flags in here
463
464 Mon Oct 29 15:41:58 2001  Jonathan Blandford  <jrb@redhat.com>
465
466         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): Darn.
467         I can't believe this took this long to fix.
468
469 Mon Oct 29 13:54:49 2001  Jonathan Blandford  <jrb@redhat.com>
470
471         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered): fix
472         reordered signal.
473
474 Mon Oct 29 12:27:51 2001  Owen Taylor  <otaylor@redhat.com>
475
476         * gtk/gtkfilesel.c (gtk_file_selection_rename_file): Grab
477         the focus to the fileop entry for create dir / rename
478         file. (#62838)
479
480 Mon Oct 29 12:21:49 2001  Owen Taylor  <otaylor@redhat.com>
481
482         * configure.in: Don't use AC_CHECK_FILE to check for a 
483         file since it always spits warnings about cross compilation,
484         use -f instead. It's not like we cross compile properly
485         anyways.
486
487         * configure.in (gtktargetlib): Move call to AC_PROG_CC
488         to suppress autoconf warning.
489
490         * acconfig.h: Add some missing #undefs from recent
491         Win32 additions.
492
493 Mon Oct 29 11:31:40 2001  Owen Taylor  <otaylor@redhat.com>
494
495         * m4macros/gtk-2.0.m4: Don't try to use pkg-config
496         when we didn't find it. (#62944, Eric Lemings)
497
498         * m4macros/gtk-2.0.m4: Fix problem with spaces around =
499         sign in assignment. (#63209, Arkadiusz Miskiewicz)
500
501 2001-10-29  Anders Carlsson  <andersca@gnu.org>
502
503         * gtk/gtktreeview.c (gtk_tree_view_size_request): Calculate
504         the buttons size request before using it. Fixes #61696.
505
506 2001-10-29  Tor Lillqvist  <tml@iki.fi>
507
508         * README.win32: Updates.
509
510         * gtk-zip.sh.in: New file, used to build distribution package for
511         Windows.
512
513         * gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
514         applicable with GDKVAR.
515
516         * gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
517         Wintab library.
518
519         * gdk/win32/gdkwin32.h
520         * gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
521         X11 headers better, and to enable gdkwin32.h to be installed and
522         included from applications, but not the *-win32.h headers.
523
524         * gdk/win32/*.c: Corresponding small changes, simplifications of
525         #includes.
526         
527         * gdk/win32/gdkregion-win32.c: Remove.
528
529         * gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.
530
531         * gdk/win32/gdkfont-win32.c
532         * gdk/win32/gdkgeometry-win32.c: Remove unused variables.
533
534         * gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
535         GDK_NONE values into hash table.
536
537         * gtk/gtk.def: Update.
538
539         * gtk/gtkfilesel.c: Include <winsock.h> (if available) for
540         gethostname().
541
542         * gtk/gtkmain.c 
543         * gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
544         entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
545         GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
546         g_win32_get_package_installation_subdirectory() with the actual
547         DLL name saved above. Redefine above directory name macros to call
548         these functions. Remove some ifdefs.
549
550         * gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
551         variable for export on Win32) also to the _vars file.
552
553         Changes for autoconfiscated build on Win32, and addition of Win32
554         backend to the related files:
555         
556         * configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
557         when forming DLL name in some files. Set MS_LIB_AVAILABLE is
558         lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
559         PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
560         win32 target, using pangowin32. Don't use the
561         -export-symbols-regex option on Win32, we use .def files to list
562         exported symbols. Check <winsock.h> (for gethostname() in
563         gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
564         prevent premature m4 expansion.
565
566         * acconfig.h: Add HAVE_WINTAB.
567
568         * gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
569         macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
570         MS_LIB_AVAILABLE, build MS import library. Install the import
571         libraries. If HAVE_WINTAB, link with the Wintab library.
572
573         * gdk/win32/Makefile.am: Actually enable building the win32
574         objects here, not just list all files in EXTRA_DIST. Link in the
575         compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
576         copy the Wintab library into the .libs directory. 
577
578         * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
579         name of the GDK DLL when fetching the icon. Use the HMODULE saved
580         in gdk_dll_hinstance by DllMain.
581
582         * gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
583         build/win32/lt-compile-resource script.
584
585         * gdk/win32/rc/gdk.rc.in
586         * gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
587
588         * gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
589         macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
590         file. Install import libraries.
591
592 2001-10-29  Anders Carlsson  <andersca@gnu.org>
593
594         * gtk/gtkiconfactory.c (get_default_icons): Fix build.
595
596 2001-10-28  Hans Breuer  <hans@breuer.org>
597
598         * gdk/gdk.c gdk/gdkevents.c
599           gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
600           gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
601           gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
602           gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
603           gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
604           gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
605           gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
606         static correct-ness, underscore prefixing of library internal 
607         functions
608         (applied the undisputed and the win32 part. Of the latter 
609          I'm probably the one who will change it back again, if Owen
610          decides that the Gdk*Impl types should not be private to Gdk)
611
612         * gdk/gdk.def : added the remaining exported functions
613
614 2001-10-28  Matthias Clasen  <matthiasc@poet.de>
615
616         * gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
617         gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
618         gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.
619
620 2001-10-28  jacob berkman  <jacob@ximian.com>
621
622         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
623         gtk_settings_get_default() here as that requires an X connection
624         (which breaks doc building with no X connection) and is not
625         multihead safe
626         (gtk_color_selection_init): delay palette loading until realize
627         time
628         (gtk_color_selection_realize): load the palette, and initialize
629         the global palette if it hasn't been already
630
631         * gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
632         visual/cmap fields of klass->info since they are gone
633         (gtk_preview_get_visual): just return gdk_rgb_get_visual ()
634         (gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
635         (gtk_preview_realize): don't set VISUAL and COLORMAP attributes
636
637         * gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
638         cmap fields
639         (gtk_preview_get_visual):
640         (gtk_preview_get_cmap): mark as deprecated
641
642         * docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
643         changes
644
645 Sun Oct 28 09:15:39 2001  Owen Taylor  <otaylor@redhat.com>
646
647         * gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
648         structure to have GObject not GtkObject as
649         parent_instance. (Jeff Franks.)
650
651 2001-10-27  Matthias Clasen  <matthiasc@poet.de>
652
653         * gdk/x11/gdkinput.c: Typo fix.
654
655 2001-10-26  Havoc Pennington  <hp@pobox.com>
656
657         * gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
658         update_im_spot_location here explicitly
659         (gtk_text_view_reset_im_context): don't update the spot location
660         here
661
662 2001-10-27  Anders Carlsson  <andersca@gnu.org>
663
664         * gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
665         This fixes #62942.
666
667         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): 
668         Clarify that we're returning a spin button in the _new function.
669         This fixes #54097.
670         
671 Fri Oct 26 20:55:57 2001  Owen Taylor  <otaylor@redhat.com>
672
673         * gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST. 
674         Unfortunately, people apparently erroneously connect
675         to ::clicked for GtkToggleButton and expect
676         they know what happened in the default signal handler
677         instead of appropriately connecting to notification
678         signal ::toggled. When the revolution comes, such
679         people will be first against the wall.
680
681         We'll just have to go back to the old less-reliable
682         set-it-back hacks for handling model-view check
683         buttons and radio buttons. :-(. 
684
685 2001-10-27  Hans Breuer  <hans@breuer.org>
686
687         * gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
688           gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
689           gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
690           gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
691           gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
692           gtk/gtktreestore.c gtk/gtkvbbox.c : 
693         to simplify parsing for exported functions:
694         - made implementation signature static, when the local 
695           prototype already was
696         - put the functions return value on it's own line
697         - added as space between the function name and the 
698           opening bracket
699
700         * gtk/gtk.def : added the remaining exported functions
701
702 2001-10-27  Anders Carlsson  <andersca@gnu.org>
703
704         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
705         Add note about width having to be greater than 0. This fixes
706         #55574. 
707
708         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start): 
709         Fix docs to say previous instead of next.
710         (gtk_text_iter_backward_word_start): Likewise.
711         This fixes bug #62980.
712
713         * gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
714         that the valid width is in range 0-65535 pixels. Fixes bug 
715         #56754.
716
717         * gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
718         a dot in the documentation. Fixes bug #62632.
719
720         * gdk/x11/gdkmain-x11.c: Replace int and guint with
721         long and gulong in some places to make the code 64-bit
722         clean.
723         (_gdk_windowing_init_check): Replace gint with gulong.
724         This patch was made by George Lebl and fixes bug #62113.
725
726         * tests/testgtk.c (create_range_controls): Don't set a 
727         fixed height on the hscale widget. This fixes "bug" 
728         #55840.
729         (create_window_states): Set up destroy signals so that
730         all windows will be destroyed when one is. This fixes 
731         bug #58133.
732
733 2001-10-26  Anders Carlsson  <andersca@gnu.org>
734
735         * gtk/gtktreeview.c: 
736         (gtk_tree_view_class_init): Create new "indent_expander"
737         style property.
738
739         (gtk_tree_view_get_arrow_xrange): Add a tree argument
740         to the function since the xrange can change depending
741         on where in the tree we are. 
742         
743         (coords_are_over_arrow): Update function call to
744         gtk_tree_view_get_arrow_xrange.
745         (gtk_tree_view_draw_arrow): Likewise.
746         
747         (gtk_tree_view_real_expand_collapse_cursor_row):
748         Call real_{expand|collapse}_row, so that we'll have an
749         animation.
750
751 Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>
752
753         * tests/Makefile.am: fixed a small typo
754
755 Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>
756
757         * demos/gtk-demo/list_store.c (create_model): Anders
758         Carlsson suggested to use G_N_ELEMENTS here
759
760 2001-10-26  Sven Neumann  <sven@gimp.org>
761
762         * gtk/gtkbutton.[ch]
763         * gtk/gtkdnd.c: fixed inline comments
764         
765         * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
766
767 2001-10-26  Hans Breuer  <hans@breuer.org>
768
769         * gdk-pixbuf/gdk_pixbuf.def : 
770         * gdk/gdk.def : 
771         * gtk/gtk.def : updated externals
772
773         * gdk/win32/gdkpixmap-win32.c : removed duplicate of
774         gdk_window_lookup implementation. It already was in
775         gdk/win32/gdkwindow-win32.c
776
777         * gdk/win32/gdkproperty-win32.c : made it compile again
778         after GdkAtom API change
779
780         * gtk/gtk/makefile.msc.in : updated
781
782 Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>
783
784         * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
785         require GLib 1.3.10.
786
787         * NEWS: updates.
788
789 Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>
790
791         * gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
792         invalid nodes.
793          (_gtk_rbnode_rotate_right): Ditto.
794          (_gtk_rbtree_node_mark_invalid): New function.
795          (_gtk_rbtree_node_mark_valid): New function.
796
797         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
798         GObject, not a GtkObject.
799         (gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
800         correct.
801         (gtk_tree_model_sort_row_deleted): ditto.
802         (gtk_tree_model_sort_{un,}ref_node): Fix.
803
804         * gtk/gtktreeview.c: Protean incremental reflow support (commented
805         out)
806
807         * gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
808         to const char *key.
809
810         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
811         Important 1 line fix to fix a lot of refcounting woes.
812
813 2001-10-25  Matt Wilson  <msw@redhat.com>
814
815         * gtk/gtktextview.c (gtk_text_view_destroy): call
816         gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
817         now invalidates) so that we remove our idle functions.
818         (gtk_text_view_destroy_layout): remove the first_validate_idle as
819         well.
820
821         * gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
822         the 'indent' property is G_MININT to G_MAXINT.  Don't use
823         -G_MAXINT for the minimum of the 'rise' property, use G_MININT
824         instead.
825
826 2001-10-24  Anders Carlsson  <andersca@gnu.org>
827
828         * gtk/gtktreeview.c: 
829         (gtk_tree_view_real_expand_row): add an animate argument
830         (gtk_tree_view_real_collapse_row): likewise
831         
832         (gtk_tree_view_button_press), (gtk_tree_view_button_release), 
833         (gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
834         (gtk_tree_view_collapse_row): update functions that call
835         real_{expand|collapse}_row to set the animate argument 
836         accordingly.
837         
838 2001-10-24  Alex Larsson  <alexl@redhat.com>
839
840         * gdk/linux-fb/gdkfont-fb.c:
841         Update to new Pango APIs
842
843         * gdk/linux-fb/gdkproperty-fb.c:
844         Update to new GdkAtom APIs
845
846         * gdk/linux-fb/gdkwindow-fb.c:
847         Remove warnings
848
849 Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>
850
851         * gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
852
853 Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>
854
855         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
856         s_path as a child path
857
858 Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>
859
860         * gtk/gtktreemodelsort.c: more changes in an attempt to get
861         it right. It's not yet ready for general consumption.
862
863         * tests/treestoretest.c: add a button and entry for the new
864         iter_change function
865         (iter_change): new function, to test
866         the row_changed signal implementation of the GtkTreeModelSort
867
868         * tests/testtreesort.c: cleanups, changes to test more features
869         of the GtkTreeModelSort at once
870
871 2001-10-24  Havoc Pennington  <hp@redhat.com>
872
873         * gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
874         remove hack to strip off the bogus newline, since we killed the
875         bogus newline; fixes #61779
876
877 2001-10-24  Havoc Pennington  <hp@redhat.com>
878
879         * gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
880         create layout if we didn't have one
881         (gtk_text_view_set_buffer): invalidate so we get the idle handlers
882         as appropriate, avoids blanking the screen 
883         (gtk_text_view_invalidate): new function to do invalidation,
884         containing old guts of invalidated_handler
885
886 Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>
887
888         * gtk/gtkalignment.c (gtk_alignment_class_init): Improve
889         dreadful tooltips.
890
891 Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>
892
893         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always 
894         set window->parent (except or the root window itself); if 
895         the window's parent is not a GdkWindow, or is a window of 
896         type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
897
898         * gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
899         windows of type GDK_WINDOW_FOREIGN.
900
901 2001-10-24  Havoc Pennington  <hp@pobox.com>
902
903         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
904         the front of a segment, use the "slow" technique for moving
905         backward, so we don't mess up the any_segment field in the iter. 
906         Fixes #57707
907
908         * tests/testtextbuffer.c: add code to detect #57707, to avoid
909         regression
910
911 2001-10-23  Havoc Pennington  <hp@redhat.com>
912
913         * gtk/gtktextview.c (popup_targets_received): only sensitize Cut
914         if selection contains some editable text, #60975
915         (gtk_text_view_scroll_to_iter): remove warning about scrolling
916         prior to map; it should actually be OK to do so in many cases, 
917         it would be nice to warn about scrolling when many lines have
918         height 0, but I don't know what to do about that. Perhaps 
919         move part of flush_scroll into this function? comment added 
920         to consider this.
921
922 2001-10-23  Havoc Pennington  <hp@redhat.com>
923
924         * gtk/gtktextview.c (changed_handler): Correctly keep the same
925         text on the top of the screen, considering that the changed region
926         may have overlapped the first paragraph. Should fix msw's "text
927         widget scrolled to wrong place on map" bug, and probably some
928         other scrolling cases as well.
929         (gtk_text_view_set_scroll_adjustments): start adjustments at 0.0, 
930         instead of some random value
931
932         * gtk/gtktextview.c (gtk_text_view_class_init): actually override
933         grab_focus, so #59708 is really fixed
934
935 2001-10-24  Anders Carlsson  <andersca@gnu.org>
936
937         * gtk/gtkentry.c: (append_action_signal): Use an image menu item here
938         (popup_targets_received): Call append_action_signal with stock items
939         
940         * gtk/gtklabel.c: (append_action_signal): Use an image menu item here
941         (gtk_label_do_popup): Call append_action_signal with stock items
942         
943         * gtk/gtktextview.c: (append_action_signal): Use an image menu item here
944         (popup_targets_received): Call append_action_signal with stock items
945
946 2001-10-23  Havoc Pennington  <hp@redhat.com>
947
948         * gtk/gtktextview.c (changed_handler): queue a resize here; will
949         temporarily slow down the widget a lot, until we figure out how to
950         optimize to avoid full redraw everytime we queue a resize.
951
952 2001-10-23  Havoc Pennington  <hp@redhat.com>
953
954         * gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
955         0 and char_len == 0, bug #61729
956
957 2001-10-23  Havoc Pennington  <hp@redhat.com>
958
959         * gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
960         return value, #61714 (Vitaly Tishkov)
961         (gtk_text_iter_backward_sentence_starts): ditto
962         (gtk_text_iter_backward_word_starts): ditto
963         (gtk_text_iter_forward_word_ends): ditto
964         (gtk_text_iter_forward_sentence_ends): ditto
965         (gtk_text_iter_backward_cursor_positions): ditto
966
967 2001-10-23  Havoc Pennington  <hp@redhat.com>
968
969         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
970         fix from Dov Grobgeld, #61858
971
972 2001-10-23  Havoc Pennington  <hp@redhat.com>
973
974         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location): 
975         Update IM spot location at appropriate times, #50626
976         (Hidetoshi Tajima)
977
978 2001-10-23  Havoc Pennington  <hp@redhat.com>
979
980         * gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
981         on grab focus, unless it's caused by button click, #59708
982
983 Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>
984
985         * gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.
986
987         * gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
988         G_CONST_RETURN. (Murray Cumming)        
989
990         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
991         Make G_CONST_RETURN.
992
993         * gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
994         results of g_get_home_dir().
995
996         * gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated 
997         copy. Storing the return from gtk_entry_get_text() is evil.
998
999         * gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c 
1000         gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c 
1001         gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
1002         gtk/gtksignal.c: Add const.
1003
1004         * gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.
1005
1006         * gtk/gtktreeview.c: Namespace object data keys to be safe, even 
1007         if we are setting them on private widgets.
1008
1009         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
1010         Duplicate entry->text before setting it as object data.
1011
1012 2001-10-22  Havoc Pennington  <hp@redhat.com>
1013
1014         * gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
1015         up a char from the end iterator, fixes #61859 ("can't put cursor
1016         at the end of the buffer")
1017
1018         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
1019         to work with delimiters other than newline.
1020
1021         * tests/testtextbuffer.c: add some tests for get_chars_in_line,
1022         get_bytes_in_line
1023
1024         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
1025         last line, since the newline is no longer counted.
1026         (gtk_text_iter_get_bytes_in_line): ditto
1027
1028 2001-10-22  Havoc Pennington  <hp@redhat.com>
1029
1030         * gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that 
1031         #58290 would trigger if it reappeared, I think
1032
1033 2001-10-22  Havoc Pennington  <hp@redhat.com>
1034
1035         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
1036         add temporary code to dump btree contents on assertion failure
1037         described in #62656
1038         
1039         * gtk/gtktextbtree.c (ensure_end_iter_segment): add some
1040         assertions that we're getting the right end iter segment
1041
1042         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
1043         verify that we aren't on the end iterator after moving 
1044         forward one segment - fixes return value in an obscure case. 
1045         Also, some trivial code cleanup/rearranging.
1046         
1047 2001-10-22  Havoc Pennington  <hp@redhat.com>
1048
1049         * gtk/gtktextlayout.h: add a #error unless you define
1050         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally
1051
1052         * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
1053         
1054 2001-10-22  Havoc Pennington  <hp@redhat.com>
1055
1056         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix 
1057         #62365
1058
1059 2001-10-22  Havoc Pennington  <hp@redhat.com>
1060
1061         * gtk/gtktextview.c (gtk_text_view_get_window_type): fix 
1062         #62436
1063
1064 2001-10-22  Havoc Pennington  <hp@redhat.com>
1065
1066         * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix 
1067         #62366
1068
1069 Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>
1070
1071         * gtk/gtklabel.c: Add cursor-position, selection-bound 
1072         properties. (#62148, reported by Padraig O'Briain)
1073
1074         * gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
1075         to cursor_position. (1.3.x addition, text_position is an awful
1076         name.) Make cursor_position read-only to avoid sticky questions
1077         of interaction with selection_bound. (#62636, reported by
1078         Padraig O'Briain)
1079
1080 Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>
1081
1082         Fixing popup menus to have "Paste" sensitized correctly. Original
1083         patches from Damian Ivereigh, much mangled.
1084
1085         * gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
1086         gtk_selection_data_targets_include_text(). (#60854)
1087
1088         * gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
1089         the clipboard has text" function gtk_clipboard_wait_is_text_available.
1090         (#60854)
1091
1092         * gtk/gtkentry.c: Only enable the paste item if the clipboard
1093         contains text. (#60973)
1094
1095         * gtk/gtktextview.c: Only enable the paste item if the clipboard
1096         contains text. (#60975)
1097
1098 2001-10-22  Havoc Pennington  <hp@redhat.com>
1099
1100         * gtk/gtktextview.c (gtk_text_view_class_init): rip out
1101         "height_lines" and "width_columns" properties, it doesn't make
1102         sense to set the size request on a text view really. #62103
1103
1104 Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>
1105
1106         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
1107         g_node_depth is broken, and that it's not worth being consistent
1108         with it.
1109
1110 2001-10-22  Havoc Pennington  <hp@redhat.com>
1111
1112         * gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
1113         docs, #61777
1114         (gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
1115         change the two boolean args to a flags field, so we can extend 
1116         to add case insensitive, regexp searches later. #61852
1117
1118 Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>
1119
1120         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
1121         reflect reality, #62810
1122
1123 Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>
1124
1125         * demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
1126
1127         * gtk/gtktreeview.c (size_allocate): Move to a different drawing
1128         system.  Instead of having a window the size of the tree, we have
1129         a window the size of widget->allocation, and simply draw with the
1130         offset.
1131         (coords_are_over_arrow): ditto.  Move to window coordinates.
1132         (do_prelight): ditto
1133         (do_unprelight): ditto
1134
1135         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
1136         Minor fix from Kristian Rietveld to fix unsorted case.
1137
1138 2001-10-22  jacob berkman  <jacob@ximian.com>
1139
1140         * gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
1141         a PIXMAP cell (fixes crash when using PIXTEXT cells)
1142
1143 Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
1144
1145         * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
1146         (#58768, Vitaly Tishkov)
1147         
1148         * gtk/gtkobject.h: Deprecate with abandon. 
1149         (#61942, Vitaly Tishkov, Matthias Clasen)
1150
1151         * gtk/gtksignal.h: Deprecate everything.
1152
1153         * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
1154         all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
1155         (#61942, Matthias Clasen)
1156
1157         * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
1158         Havoc Pennington)
1159
1160         * gtk/gtkitemfactory.h: Deprecate compat functions
1161         for GtkMenuFactory code. (#62071)
1162
1163         * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
1164         gdk_draw_text,gdk_draw_text_wc. (#62071)
1165
1166 Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>
1167
1168         * gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
1169         g_thread_init(), we don't want to link to -lgthread if we don't
1170         have to.
1171
1172 Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>
1173
1174         * gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt: 
1175         Add a function, gdk_threads_init() that must be explicitely 
1176         called to enable the GDK thread mutex.
1177
1178 2001-10-22  Jakub Steiner <jimmac@ximian.com>
1179
1180         * gtk/stock-icons/stock_stop.png: no body parts
1181         
1182 Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>
1183
1184         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
1185         problem with g_return_if_fail return value.
1186
1187         * gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the 
1188         virtual atom code from the gdk-multihead branch, removing the per-display
1189         part. Virtualizing atoms needs to be done now to prevent compat
1190         breakage in direct Xlib accessing code in the future. (#62208)
1191  
1192         * gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
1193         gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().
1194  
1195         * gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
1196         an opaque pointer type so the compiler catches attempts
1197         to mingle it with X atoms.
1198
1199         * gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
1200           gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c, 
1201           gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
1202           gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
1203           tests/testdnd.c,tests/testselection.c: 
1204         Fix up for above atom changes.
1205
1206         * gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
1207         now have the ability to add custom predefines.
1208
1209         * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
1210         Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
1211         to gtk_clipboard_get().
1212
1213         * gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
1214         for GdkAtom => pointer change.
1215
1216         * gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
1217         atoms, fix for GdkAtom => pointer change.
1218
1219 Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>
1220
1221         * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
1222         new function spin_button_get_arrow_size() instead.
1223
1224         * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
1225         arrow was hardcoded, it's now variable.
1226
1227         Fixes bug #50200
1228
1229 Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>
1230
1231         * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
1232         PROP_EXPANDER_COLUMN can be NULL, so don't do a object cast check
1233         for those
1234
1235 Sat Oct 20 19:38:16 2001  Owen Taylor  <otaylor@redhat.com>
1236
1237         * demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
1238         in favor of g_signal_*, gtk_object_* in favor of 
1239         g_object_*.
1240
1241 Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>
1242
1243         * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
1244         from GObject now, we have to use the g_object_* functions, not
1245         gtk_object_*.
1246
1247 Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>
1248
1249         * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
1250         nailed down now (this code is not yet ready for general consumption)
1251
1252 Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>
1253
1254         * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
1255         for use_align
1256
1257 Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>
1258
1259         * gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
1260
1261 Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>
1262
1263         * gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
1264         modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
1265         imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
1266         GObject, not GtkObject. (#62621)
1267
1268 Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>
1269
1270         * tests/testsocket.c: Remove now useless include of unistd.h,
1271         fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
1272         
1273 Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>
1274
1275         * gdk/linux-fb/gdkfont-fb.c: Fix up for change to 
1276         Pango font API. #61933. (Untested, even for compilation.)
1277
1278 Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>
1279
1280         * gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
1281         export gtk_disable_setlocale(). (Caught by Sven Neumann)
1282
1283 2001-10-18  Havoc Pennington  <hp@redhat.com>
1284
1285         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
1286
1287 2001-10-18  Havoc Pennington  <hp@redhat.com>
1288
1289         * gtk/gtkbutton.c (gtk_button_class_init): Change button signals
1290         to GTK_RUN_LAST, #50239
1291
1292 2001-10-18  HideToshi Tajima  <hidetoshi.tajima@sun.com>
1293
1294         * gtk/gtkimmodule.c (match_locale):
1295         Support "*" for all locales with least priority
1296         when to select default im module, #58201
1297
1298 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
1299
1300         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): 
1301         Fix docs. (#61976)
1302  
1303         * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)
1304
1305         * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
1306
1307         * gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
1308         gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
1309         gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
1310         gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
1311         gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
1312         Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
1313         and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)
1314
1315         * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
1316
1317         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): 
1318         Don't restrict the width of the spinbutton entry field 
1319         to 10 digits. (#58681)
1320
1321 Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>
1322
1323         * tests/testtreeflow.c: new test program for the tree.
1324
1325 Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>
1326
1327         * gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
1328         reported by (Oleg Maiboroda), #62600
1329
1330 2001-10-18  Michael Meeks  <michael@ximian.com>
1331
1332         * gtk/gtkentry.c (gtk_entry_set_property),
1333         (gtk_entry_get_property): impl 'text'
1334         (gtk_entry_class_init): add the 'text' prop.
1335         (gtk_entry_insert_text): notify 'text' changed.
1336         (gtk_entry_delete_text): ditto.
1337
1338 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
1339
1340         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
1341         Documentation updates.
1342
1343 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
1344
1345         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
1346         in truncating length of text to MAX_SIZE. (Found by 
1347         Padraig O'Briain, #62055)
1348
1349 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
1350
1351         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
1352         MNEMONIC_ACTIVATE; signal was changed a long time
1353         ago.
1354
1355         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
1356         Fix wrong return statement. (Reported by HideToshi
1357         Tajima and others.)
1358
1359         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
1360         left over select_all vfunc.
1361
1362 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
1363
1364         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
1365         a utility function to translate coordinates relative to
1366         one widget's allocation to coordinates relative to another
1367         widget's allocation.
1368
1369         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
1370         that:
1371          - only accepts external focus if there is no active
1372            member of the group or the button is active.
1373          - makes arrow keys move the active button as well
1374            as the focus
1375          - make tab tab out directly.
1376         This makes a radio button group act as a single focus location.
1377         (#53577).
1378         
1379         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
1380         it was only a small optimization that didn't matter and made
1381         things more complicated.
1382
1383         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
1384         sorter for FOCUS_TAB as we did for the other focus directions,
1385         sort by center of widgets, not upper-left corner. (Shouldn't
1386         matter in general.)
1387
1388         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
1389         from the different types of focusing: encapsulate sorting the
1390         widgets for the focus direction into one routine
1391         (gtk_container_focus_sort()) and then share the work of moving the
1392         focus between the different focus directions.
1393
1394         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
1395         work correctly with focus chains containing non-immediate
1396         children. Sorting was being done using allocation coordinates for
1397         each widget in the focus chain, and if there were intermediate
1398         window-widgets, these allocations would not be in the same
1399         coordinate system.
1400
1401 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
1402
1403         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
1404         mnemonic_activate function to option menu.
1405
1406 2001-10-15  Murray Cumming <murrayc@usa.net>
1407
1408         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
1409           Corrected the type names used in some calls to g_signal_new().
1410         
1411 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
1412
1413         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
1414         specs, use g_pattern_spec_equal() instead of direct field accesses.
1415         upon compressing two equal paths of the same type, the resulting
1416         priority has to be the maximum.
1417         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
1418         GtkPathPriorityType enum and make it a macro.
1419
1420 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
1421
1422         * gtk/gtkwidget.c: Fix some doc comments.
1423
1424 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
1425
1426         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
1427         on empty models.
1428
1429 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
1430
1431         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
1432         Remove stale gdk backend includes.
1433  
1434 2001-10-10  Michael Meeks  <michael@ximian.com>
1435
1436         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
1437         and value_in_list properties.
1438         (gtk_combo_set_value_in_list): notify change.
1439         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
1440
1441 2001-10-11  James Henstridge  <james@daa.com.au>
1442
1443         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
1444         that gtk+ can be built with automake 1.5 while not breaking
1445         things for automake 1.4.
1446
1447 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
1448
1449         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
1450         (#60606)
1451
1452         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
1453         to disable calling setlocale (LC_ALL, "").
1454
1455         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
1456         docs that this function is not typically useful.
1457
1458         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
1459         Automatically initialize GDK for the current locale
1460         on gdk_init(). Don't reset locale to C when
1461         XSupportsLocale() fails.
1462
1463         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
1464         useless checks for UTF-8 locale breakage that mattered
1465         only for X.
1466
1467         * examples/calendar/calendar.c
1468         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
1469         gtk_set_locale().
1470
1471         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
1472         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
1473
1474 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
1475
1476         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
1477
1478         Fixes bug #61904
1479
1480 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
1481
1482         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
1483         new function, #61923
1484         (gtk_tree_selection_path_is_selected): Ditto
1485
1486 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
1487
1488         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
1489         not a GtkObject.  Thanks andersca.
1490
1491         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
1492
1493 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1494
1495         * gtk/gtktreeviewcolumn.c
1496         (gtk_tree_view_model_sort_column_changed): fix broken code.
1497
1498 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
1499
1500         * gtk/gtkselection.c: s/succesfully/successfully/g
1501
1502 2001-10-08  Havoc Pennington  <hp@pobox.com>
1503
1504         * demos/gtk-demo/stock_browser.c: remove unused enum
1505
1506         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
1507         pass the current selection state of the node in to the user
1508         selection func
1509
1510 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
1511
1512         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
1513         non-existent function gdk_x11_cursor_get_xid 
1514         by gdk_x11_cursor_get_xcursor.
1515
1516 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
1517
1518         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
1519         warning.
1520
1521         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
1522         unref nodes, #okay61676
1523
1524         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
1525         to the property; no need to clear the other columns.  Also, we go
1526         to 'unsorted' if the model supports it.
1527
1528 2001-10-05  Sven Neumann  <sven@gimp.org>
1529
1530         * demos/testpixbuf-save.c
1531         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
1532         feature.
1533
1534 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
1535
1536         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
1537         destroy the search dialog
1538
1539         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
1540         added check to prevent creation of a search dialog if there's
1541         already one around
1542
1543         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
1544         it instead of "search-dialog" (when getting/setting the search dialog
1545         widget).
1546
1547 2001-10-05  Jakub Steiner <jimmac@ximian.com>
1548
1549         * gtk/stock-icons/stock_broken_image.png: broken images icon
1550
1551 2001-10-04  Havoc Pennington  <hp@pobox.com>
1552
1553         Fix #56586
1554         
1555         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
1556         accelerator setting here...
1557
1558         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
1559         because we try to use it when a menu bar hasn't necessarily been 
1560         initialized.
1561
1562 2001-10-03  Havoc Pennington  <hp@redhat.com>
1563
1564         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
1565         it previously verified incorrect behavior
1566
1567         Fixes for #61565
1568         
1569         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
1570         off the end
1571         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
1572         the end
1573         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
1574         the end
1575         (gtk_text_iter_forward_lines): if on the last line, move to end of
1576         it
1577
1578         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
1579         don't return a line off the end
1580
1581 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
1582
1583         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
1584         functions to do_insert_text and do_delete_text, add signals
1585         insert_text, delete_text and changed
1586
1587         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
1588         and changed. Updates to match new situation.
1589
1590         * gtk/gtkspinbutton.c: updates to match new situation
1591
1592         * gtk/gtkoldeditable.h: remove signals changed, insert_text
1593         and delete_text
1594
1595         * gtk/gtkoldeditable.c: updates to match new situation
1596
1597         * gtk/gtktext.c: updates to match new situation
1598
1599         Fixes bug #59803
1600
1601 2001-10-03  Havoc Pennington  <hp@redhat.com>
1602
1603         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
1604         position
1605
1606         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
1607         changes
1608
1609         * tests/testtextbuffer.c (logical_motion_tests): updates
1610
1611 2001-10-03  jacob berkman  <jacob@ximian.com>
1612
1613         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
1614         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
1615         * gtk/gtksettings.c (apply_queued_setting): 
1616         * gtk/gtkmain.c (gtk_init_check): 
1617         * gtk/gtkcontainer.c (gtk_container_child_get_property):
1618         s/retrive/retrieve/
1619
1620 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
1621
1622         * gtk/gtktreemodelsort.[ch]: preparation for surgery
1623         * tests/testtreesort.c: ditto
1624
1625 2001-10-02  Havoc Pennington  <hp@redhat.com>
1626
1627         Throughout: assorted docs
1628         
1629         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
1630         gdk_window_set_geometry_hints() should be used instead.
1631
1632         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
1633         document them
1634
1635         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
1636         seem to exist in any .c files
1637
1638         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
1639         g_return_if_fail (pixel < colormap->size).
1640
1641 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
1642
1643         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
1644         NULL for @target_list to mean, use
1645         gtk_drag_dest_get_target_list (widget).
1646
1647         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
1648         drop could hang when calling gtk_drag_finish with 
1649         success == FALSE and del == TRUE.
1650
1651         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
1652         drops without a matching target found would propagate
1653         to the parent widget rather than being rejected.
1654
1655         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
1656         Use text_view->dnd_mark instead of mark name to be
1657         consistent with the rest of the code.
1658
1659         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
1660         pendantically correct for a drop-only-in-some-places
1661         widget. (Check whether you can insert in drag_drop,
1662         not just in drag_motion ... matters in theory, and
1663         for Motif drag and drop in practice.)
1664
1665         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
1666         Damian Ivereigh to not allow drops on non-editable
1667         entries. (#61124)
1668
1669         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
1670         text to be moved from a non-editable entry.
1671         
1672 2001-10-03  James Henstridge  <james@daa.com.au>
1673
1674         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
1675         s/width/fixed_width/ in order to get things to compile.
1676
1677 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
1678
1679         * gtk/gtkcelleditable.c: docs
1680
1681         * gtk/gtktreemodel.h: more docs.
1682
1683 2001-10-02  Havoc Pennington  <hp@redhat.com>
1684
1685         * gdk/x11/gdkwindow-x11.c: docs
1686
1687         * tests/testtextbuffer.c (logical_motion_tests): add sentence
1688         boundary tests
1689
1690 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
1691
1692         * demos/gtk-demo/Makefile.am: add editable_cells.c,
1693         list_store.c and tree_store.c
1694
1695         * demos/gtk-demo/appwindow.c: remove tearoff item from
1696         File menu, put menubar and toolbar in handle boxes.
1697
1698         * demos/gtk-demo/genincude.pl: various changes to support trees
1699
1700         * demos/gtk-demo/main.c: various changes to support trees
1701
1702         * demos/gtk-demo/stock_browser.c: changed name of demo
1703         to Stock Item and Icon Browser, so geninclude.pl doesn't see
1704         it as child
1705
1706         * demos/gtk-demo/editable_cells.c: new file/demo
1707         * demos/gtk-demo/list_store.c: new file/demo
1708         * demos/gtk-demo/tree_store.c: new file/demo
1709
1710 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
1711
1712         * gtk/gtkrc.c gtk/gtksettings.c: 
1713         g_string_printfa => g_string_append_printf.
1714
1715 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
1716
1717         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
1718         and destroy handler.
1719
1720         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
1721
1722         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
1723         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
1724         Singh <yosh@gimp.org>.
1725
1726 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
1727
1728         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
1729         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
1730
1731         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
1732
1733 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
1734
1735         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
1736         scroll_to_cell delayed code to happen in size_allocate.
1737
1738         * gtk/gtkstyle.c (gtk_default_draw_expander): change
1739         prelight/normal arrow drawing.
1740
1741         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
1742
1743         * gtk/gtktreestore.c: refactor.
1744
1745 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
1746
1747         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
1748         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
1749         centers the child in relation to the to indicator height.
1750
1751 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
1752
1753         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
1754         correct
1755
1756 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
1757
1758         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
1759         property code using g_param_spec_int and changed from
1760         g_value_get_enum to g_value_get_int instead. Probably a better way
1761         to fix the problem :-)
1762
1763 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
1764
1765     * gtk/gtkcellrenderertext.c changed "weight" property type from 
1766       g_param_spec_int to g_param_spec_enum.
1767
1768 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
1769
1770         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
1771         fix: s/Wether/Whether/ in reorderable property description
1772
1773 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
1774
1775         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
1776         start editing when you select with a keyboard.
1777
1778         (gtk_tree_view_button_press_event): much more graceful now.
1779
1780         * gtk/gtkstyle.c: Draw togglebutton better.
1781
1782 2001-09-26  Havoc Pennington  <hp@redhat.com>
1783
1784         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
1785         of passing non-stock label in to gtk_dialog_new_with_buttons
1786
1787         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
1788         debugging updates
1789
1790         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
1791         are private
1792
1793         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
1794         exist, fall back to mnemonic label, not plain label, bug #61184
1795         
1796 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
1797
1798         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
1799         stupid and emitting the signal every time.
1800
1801         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
1802
1803 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
1804
1805        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
1806
1807        * contrib/gdk-pixbuf-xlib/Makefile.am: install
1808        gdk-pixbuf-xlib-2.0.pc.
1809
1810 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
1811
1812         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
1813         problem where menmonic wasn't removed properly when
1814         setting a label when there already is a label.
1815         Also, handle setting the tab label back to the same
1816         value. (#61160, #61161)
1817
1818         * gtk/gtkentry.c (paste_received): Patch from 
1819         Damian Ivereigh to replace selection if there is 
1820         one. (#61121)
1821
1822 2001-09-25  Darin Adler  <darin@bentspoon.com>
1823
1824         * tests/.cvsignore: Ignore new test program.
1825
1826 2001-09-25  Havoc Pennington  <hp@redhat.com>
1827
1828         * gtk/gtktextview.c: fix for #50317
1829         
1830 2001-09-25  Havoc Pennington  <hp@redhat.com>
1831
1832         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
1833         gtk_text_iter_can_insert
1834         
1835         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
1836
1837         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
1838          (gtk_text_iter_can_insert): new function to fix #60282, should
1839         also fix msw's "can paste into empty buffer" bug.
1840
1841         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
1842         "event object,"  #59091
1843
1844         * gtk/gtktextbtree.c: indentation fixes
1845
1846         * gtk/gtktextiter.c (find_by_log_attrs): fixes
1847
1848 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1849
1850         * configure.in: Version 1.3.9, interface age 0, binary age 0.
1851
1852         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
1853
1854         * NEWS: Updates.
1855
1856 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
1857
1858         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
1859         function for drawing cursors between gtkentry/gtklabel/gtktextview.
1860         Should this be public? It has a bit of an odd interface, but
1861         custom editing widgets probably should be using it.
1862         Function will draw with wider width for taller cursors, and
1863         draws a little indicator arrow to indicate directoin for split 
1864         cursors.
1865
1866         * gtk/gtktextview.c: Add a "cursor_color" property.
1867
1868         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
1869         gtk_text_layout_draw().
1870
1871         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
1872         _gtk_draw_insertion_cursor().
1873
1874 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
1875
1876         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
1877         the behavior where you could turn family_set (etc) back on
1878         and get back the values you had before.
1879
1880         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
1881         g_string_ascii_up() rather than looping through the
1882         string ourself.
1883
1884 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
1885
1886         * gtk/gtktreeviewcolumn.c
1887         (gtk_tree_view_column_set_cell_renderer): Removed
1888         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
1889
1890         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
1891         Patch from Detlef Reichl
1892
1893 2001-09-25  Havoc Pennington  <hp@redhat.com>
1894
1895         * tests/testtextbuffer.c (line_separator_tests): Add tests for
1896         line separators, addresses bug #57428
1897
1898 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
1899
1900         * gtk/gtkentry.c: Make a GtkCellEditable
1901         (get_widget_window_size): Change to let it honor size_allocate
1902         when a CellEditable.
1903
1904         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
1905         editable changes.
1906         (gtk_tree_view_set_cursor): Now you can set the cursor
1907         horizontally, as well as start editing.
1908
1909         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
1910         code to look more like the other check buttons.
1911
1912         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
1913         Change the way we calculate cell size.
1914
1915         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
1916
1917         * demos/gtk-demo/sizegroup.c: Add mnemonics.
1918
1919         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
1920         Fix logic.
1921
1922         * gtk/gtkcellrenderertext.c: Change to be editable.
1923
1924         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
1925
1926         * test/testtreesort.c: Fix misspelling
1927
1928         * test/testreecolumns.c: Add mnemonics.
1929
1930         * test/testreeedit.c: New test program.
1931
1932 2001-09-25  Havoc Pennington  <hp@pobox.com>
1933
1934         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
1935         etc. docs about how these are not going to do what you want for 
1936         the X/win32 ports. Futile attempt to avoid a FAQ...
1937
1938 2001-09-24  James Henstridge  <james@daa.com.au>
1939
1940         * gtk/gtkmarshal.list (VOID): add marshal function types.
1941
1942         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
1943         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
1944         GTK_TYPE_POINTER.
1945         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
1946         with no-op copy/free functions.
1947
1948         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
1949         GtkCTreeNode get_type function.
1950
1951 2001-09-24  Havoc Pennington  <hp@redhat.com>
1952
1953         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
1954         gtktextlayout.c:
1955         Get rid of the newline-that-could-not-be-deleted; buffers may 
1956         now be zero-length. Much easier to fix than expected, once 
1957         I figured out the right way to do it. However, there are 
1958         various subtle bugs introduced by this that will have to get 
1959         sorted out. Please use bugzilla.
1960
1961 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
1962
1963         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
1964         response back from the window manager if our size hasn't changed 
1965         since we won't get a response back from the window manager;
1966         there was code in there to do this, but it was in the wrong
1967         place so if the hints change and the size didn't we'd expect
1968         a response.
1969
1970         Also, optimize the position-only-changed case by running
1971         the resize queue immediately, and clean up some comments
1972         for the changes.
1973
1974 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
1975
1976         * gtk/gtknotebook.h: Add a compat macro that got lost.
1977
1978         * gtk/gtktreestore.c: Doc fixes.
1979
1980         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
1981         leak for windows that receive events after being destroyed.
1982         (#60863, Joshua N. Pritikin)
1983
1984         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
1985         rather than gtk_container_queue_resize().
1986
1987         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
1988         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
1989         gtk_container_child_composite_name. (#60217.)
1990
1991 2001-09-22  Hans Breuer  <hans@breuer.org>
1992
1993         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
1994
1995 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
1996
1997         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
1998         weight value should be an int
1999
2000 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
2001
2002         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
2003         to gtk_menu_scroll_item_visible(). Only call
2004         gtk_menu_scroll_item_visible() if the menu widget has been
2005         realized. Fixes bug #55310.
2006
2007 2001-09-21  Havoc Pennington  <hp@redhat.com>
2008
2009         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
2010         key press to IM context if cursor isn't in an editable location;
2011         bug #58425, patch from Hidetoshi Tajima
2012
2013 2001-09-21  Havoc Pennington  <hp@redhat.com>
2014
2015         Bug #60862
2016         
2017         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
2018         (_gtk_text_btree_unref): fix up mark memory management
2019
2020         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
2021
2022 2001-09-20  Havoc Pennington  <hp@redhat.com>
2023
2024         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
2025         try to handle alignment here, because it's done by PangoLayout
2026         after we set the layout width. Fix from Dov.
2027
2028 2001-09-21  Hans Breuer  <hans@breuer.org>
2029
2030         * gdk/gdk.def :
2031         * gtk/gtk.def : updated externals
2032
2033         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
2034         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
2035         Also handle that Win32 pathes cann't be hard-coded      
2036
2037         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
2038         module, themes etc directory calculations
2039
2040         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
2041         >16 bit right. The size limit within Win9x appears _not_ to be 32767
2042         but slightly smaller ...
2043
2044         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
2045         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
2046
2047         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
2048
2049         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
2050         handling. I'm not sure if it is better now, but at least not worse
2051
2052         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
2053
2054         * gdk/win32/gdkwin32.h : reflect recent API restrictions
2055
2056 2001-09-21  Matt Wilson  <msw@redhat.com>
2057
2058         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
2059         radio_menu_item->group to NULL after removing it from the list, as
2060         it is no longer in the group. (#60869)
2061
2062         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
2063
2064 2001-09-20  Havoc Pennington  <hp@pobox.com>
2065
2066         * configure.in (PANGO_REQUIRED_VERSION)
2067         (ATK_REQUIRED_VERSION): add variables and checks for specific 
2068         versions of dependencies. Previously we didn't verify the 
2069         Pango or ATk versions.
2070
2071 2001-09-09  Havoc Pennington  <hp@pobox.com>
2072
2073         * gtk/gtktextiter.c: fool with indentation
2074         (gtk_text_iter_in_range): add g_return_if_fail
2075
2076 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
2077
2078         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
2079         ref count on new tag to be 1.  Update doc.  (#60836)
2080
2081 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
2082
2083         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
2084         call to gdk_image_new_bitmap(). (#59094, reported by
2085         by Sven Neumann)
2086
2087 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
2088
2089         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
2090         day, as well as the current month and year.
2091         (#59047, reported by Vitaly Tishkov)
2092
2093 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
2094
2095         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
2096         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
2097         
2098 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
2099
2100         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
2101
2102         (build_option_menu): add func argument, connect ::changed
2103         signal to option menu instead of connecting the ::activate
2104         signal to the menu items,
2105
2106         (toplevel): get rid of RADIOMENUTOGGLED macro,
2107
2108         (list_toggle_sel_mode), (clist_toggle_sel_mode),
2109         (ctree_toggle_line_style), (ctree_toggle_expander_style),
2110         (ctree_toggle_justify), (ctree_toggle_sel_mode),
2111         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
2112         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
2113
2114         (notebook_type_changed): merged standard_notebook(),
2115         notabs_notebook(), scrollable_notebook() and borderless_notebook()
2116         into notebook_type_changed()
2117
2118         (create_list), (create_ctree), (create_notebook),
2119         (create_progress_bar): changed OptionMenuItem arrays into
2120         gchar * arrays. Removed "Extended" item where used.
2121
2122         Fixes bug #59885
2123
2124 2001-09-20  Sven Neumann  <sven@gimp.org>
2125
2126         * configure.in
2127         * gdk/Makefile.am
2128         * gtk/Makefile.am
2129         * gtk/gtkselection.c
2130         * gtk/gtktreeview.c
2131         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
2132
2133 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
2134
2135         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
2136         a missing pango_layout_iter_free ().
2137
2138 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
2139
2140         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
2141         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
2142
2143         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
2144         the function definition so we don't accidentally rely on
2145         the compat #define from gtk_radio_menu_item_group.
2146         (#60782, Jeff Franks)
2147
2148 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
2149
2150         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
2151         incorrect values for top, right and bottom due to cut-and-paste
2152         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
2153
2154 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
2155
2156         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
2157         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
2158         window, not just on the client leader. (#58463)
2159
2160 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
2161
2162         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
2163
2164         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
2165         non-public _gtk_menu_item_set_placement.
2166
2167         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
2168
2169 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
2170
2171         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
2172           gdk/linux-fb/gdkcolor-fb.c:
2173         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
2174         (#59723)
2175
2176 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
2177
2178         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
2179         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
2180         #59723)
2181
2182 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
2183
2184         Patch from Frank Belew #59037 for Solaris compilation.
2185
2186         * gtk/maketypes.awk: Change syntax slightly for a call
2187         to sub(), apparently making awk on Solaris happier.
2188
2189         * gtk/gtktreeview.c: Remove C++ comments.
2190
2191 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
2192
2193         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
2194         to handle '99% of the time. (#60473, reported by Christian Rose)
2195
2196         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
2197         which no longer exists. (#60379, reported by Vitaly Tishkov)
2198
2199 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
2200
2201         * Released 1.3.8.
2202
2203         * gdk/Makefile.am: kill EXTRA_DIST clearing.
2204         
2205 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
2206
2207         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
2208         as its broken in automake 1.4, add explicit object rule to
2209         generate this.
2210         
2211         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
2212         get rid of uneccessary stamps, group stuff more logically, and build
2213         sources due to object rules. fix srcdir!=builddir.
2214
2215 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
2216
2217         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
2218         incorrect parameter to compute_double_length
2219         (#58680, patch from Matthias Clasen)
2220
2221         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
2222
2223         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
2224
2225         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
2226         for GDK_RELEASE_MASK to avoid warnings with Forte.
2227
2228         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
2229         break; statements.
2230
2231 2001-09-18  Alex Larsson  <alexl@redhat.com>
2232
2233         * gtk/gtkcheckbutton.c:
2234         * gtk/gtkradiobutton.c:
2235         Don't draw with GTK_STATE_ACTIVE.
2236
2237         * gtk/gtkclist.c:
2238         * gtk/gtkctree.c:
2239         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
2240
2241         * gtk/gtktextdisplay.c:
2242         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2243         unfocused with base_gc [GTK_STATE_ACTIVE].
2244         
2245         * gtk/gtkentry.c:
2246         Add select all menu-item.
2247         Default cursor color is red.
2248         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2249         unfocused with base_gc [GTK_STATE_ACTIVE].
2250
2251         * gtk/gtklabel.[ch]:
2252         Add keynav + menu to selectable lables.
2253         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2254         unfocused with base_gc [GTK_STATE_ACTIVE].
2255
2256         * gtk/gtkfilesel.c:
2257         Add drag and drop support.
2258
2259         * gtk/gtkstyle.c:
2260         (This was checked in earlier)
2261         New default values for text/base SELECTED and ACTIVE
2262         
2263 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
2264
2265         * configure.in: up version to 1.3.8, interface age 0,
2266         binary age 0, depend on glib 1.3.8.
2267
2268         * NEWS: 1.3.8 updates.
2269
2270 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
2271
2272         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
2273         the editing code
2274
2275         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
2276         reason to call it beyond emiting the two signals.
2277
2278         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
2279         to GtkEntry.
2280
2281 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
2282
2283         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
2284           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
2285         PangoFontDescription.
2286
2287         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
2288         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
2289         structure.
2290   
2291         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
2292
2293         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
2294         direct access to style->font. Deprecate gtk_style_ref/unref.
2295   
2296         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
2297         Remove gtk_style_ref/unref with g_object_ref/unref.
2298   
2299         * gtk/gtkcalendar.c: Remove leftover macros accessing
2300         style->font.
2301   
2302         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
2303         variable.
2304   
2305         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
2306         style->font.
2307
2308 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
2309
2310         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
2311         "can_activate" properties in favor of
2312         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
2313         and GTK_CELL_RENDERER_MODE_EDITABLE
2314
2315 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
2316
2317         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
2318         editable widgets.  This function is private, and should only be
2319         used by GtkTreeView.
2320
2321 2001-09-18  Matt Wilson  <msw@redhat.com>
2322
2323         * docs/Makefile.am (EXTRA_DIST): don't use += before =
2324
2325         * docs/faq/Makefile.am (EXTRA_DIST): likewise
2326
2327         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
2328         
2329         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
2330         (EXTRA_HEADERS): likewise
2331
2332         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
2333         (EXTRA_HEADERS): likewise
2334         (EXTRA_DIST): likewise
2335         (CLEANFILES): likewise
2336
2337         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
2338
2339         * tests/Makefile.am (EXTRA_DIST): likewise
2340         
2341         * Makefile.am (install-data-local): changed to use
2342         install-data-hook, which runs after install-pkgconfigDATA, so that
2343         the pkgconfigdir will have been created and populated first.
2344
2345 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
2346
2347         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
2348         be the last big GtkTreeView API change.
2349
2350         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
2351         replace with "activate" and "start_editing".  Also, added a
2352         "can_activate" and "can_edit" property.
2353
2354         * gtk/gtktreeviewcolumn.c: modify to use above.
2355
2356 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
2357
2358         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
2359
2360 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
2361
2362         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
2363         icon instead of one with ugly white background.
2364
2365 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
2366
2367         * demos/gtk-demo/stock_browser.c (id_to_macro): make
2368         the uppercasing work. (#59550)
2369
2370 2001-09-14  Jakub Steiner <jimmac@ximian.com>
2371
2372         * gtk/stock-icons/dialog_error.png:
2373         * gtk/stock-icons/dialog_question.png: more road signs
2374
2375 2001-09-13  Jakub Steiner <jimmac@ximian.com>
2376
2377         * gtk/stock-icons/dialog_question.png:
2378         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
2379           like a road sign.
2380
2381 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
2382
2383         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
2384         signals to make them more clear.  Also, change ::range_changed to
2385         ::row_changed.
2386         * gtk/gtktreemodel.c: Adjust to interface change
2387         * gtk/gtktreemodel.h: ditto
2388         * gtk/gtktreemodelsort.c: ditto
2389         * gtk/gtktreestore.c: ditto
2390         * gtk/gtkliststore.c: ditto
2391         * gtk/gtktreeview.c: ditto
2392         * tests/testtreecolumns.c: ditto
2393         * gtk/gtkmarshal.list: Actually remove a marshaller!
2394
2395 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
2396
2397         * gtk/gtktextview.c
2398         Add support for Ctrl+Up/Down arrow to move cursor to beginning
2399         of previous/next paragraph. If within a paragraph cursor moves to
2400         beginning of that paragraph.
2401
2402 2001-09-12  Jakub Steiner <jimmac@ximian.com>
2403
2404         * gtk/stock-icons/dialog_question.png: replacing the shaky
2405           question mark with a sans-serif one.
2406         * gtk/stock-icons/stock_top.png, stock_bottom.png,
2407      stock_first.png, stock_last.png: using the new style arrows
2408         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
2409      colors.
2410         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
2411      color.
2412         * gtk/stock-icons/stock_zoom*: anti-aliased
2413         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
2414      '-' with a '_', removed the wrong files
2415
2416 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
2417  
2418         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
2419  
2420         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
2421         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
2422         than in gtk-2.0/major.minor.micro/<type>/. This
2423         works better for a search path for modules.
2424  
2425         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
2426         gtk_binary_version variable holding major.minor.(micro-binary_age).
2427  
2428         * modules/input/Makefile.am (moduledir): Fix installation
2429         directory to match change in lookup location.
2430  
2431         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
2432         suffixes. Needs to be handled in g_module_build_path().
2433
2434         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
2435         appropriate.
2436  
2437 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
2438
2439         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
2440         causing RC properties not to work.
2441
2442 2001-09-11  Jakub Steiner <jimmac@ximian.com>
2443
2444         * gtk/stock-icons/dialog-error.png: less drastic
2445         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
2446           "STOP" is international enough.
2447         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
2448         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
2449
2450 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
2451
2452         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
2453         (add|remove)_selection_clipboard symmetric. (bug #59836)
2454
2455         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
2456         Avoid SEGV for empty tree. (bug #60243)
2457
2458 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
2459
2460         * tests/testgtk.c (create_idle_test): slight fix for
2461         g_object_set() not usable for nesting anymore.
2462
2463         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
2464         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
2465         properties, supply ::shadow_type properties instead as most
2466         other widgets do.
2467
2468 2001-09-10  Alex Larsson  <alexl@redhat.com>
2469
2470         * demos/gtk-demo/stock_browser.c:
2471         * gdk/gdkcolor.c:
2472         * gdk/gdkfont.c:
2473         * gdk/gdkcursor.c:
2474         * gdk/gdkevents.c:
2475         * gdk/gdkrectangle.c:
2476         * gtk/gtktypeutils.c:
2477         Update to use the new g_boxed_type_register_static API.
2478
2479 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
2480
2481         * gtk/gtktreestore.c:
2482         Fix looping in gtk_tree_store_init() waiting for zero random int.
2483
2484 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
2485
2486         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
2487         behaviour which havoc broke. they have to default to 1.0 for
2488         expand behaviour.
2489
2490         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
2491
2492 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
2493
2494         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
2495         Amend previous change to avoid runtime error in g_param_spec_ref()
2496
2497 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
2498
2499         * gtk/gtkrc.c (insert_rc_property): Fix blank line
2500         in the wrong place.
2501
2502 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
2503
2504         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
2505         do a lookup immediately after creating style->property_cache,
2506         since bsearch crashes on zero length for Solaris.
2507         (Found by Padraig O'Briain.)
2508
2509 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2510
2511         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
2512         Really return NULL if not set.
2513         (gtk_widget_init): Remove unused varaible.
2514         
2515 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2516
2517         * configure.in:
2518         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
2519         in cvs.
2520
2521 2001-09-08  Havoc Pennington  <hp@pobox.com>
2522
2523         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
2524         people might want to use
2525
2526 2001-09-08  Havoc Pennington  <hp@pobox.com>
2527
2528         * gtk/gtkalignment.c (gtk_alignment_class_init): default
2529         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
2530
2531         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
2532
2533         * gtk/gtktextiter.c: fix docs
2534         (gtk_text_iter_spew): get rid of this
2535
2536         * gtk/gtklayout.c: docs
2537
2538         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
2539         to center image and label together, instead of having image on
2540         left and label centered, patch/suggestion from Jacob
2541
2542         * gtk/gtkdialog.c: docs
2543
2544 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
2545
2546         * gtk/gtkliststore.c: Write documentation
2547         * gtk/gtktreestore.c: Write documentation
2548
2549 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
2550
2551         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
2552         with GArray and bsearch(), to remove dependency on a still
2553         evolving interface that we want to keep private to glib/gobject. 
2554
2555 2001-09-08  Havoc Pennington  <hp@pobox.com>
2556
2557         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
2558         docs fixes
2559
2560         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
2561
2562         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
2563
2564         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
2565
2566         * gtk/gtkscrolledwindow.h: docs fixes
2567
2568         * gtk/gtkimage.c (gtk_image_new): docs fixes
2569
2570 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
2571
2572         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
2573         false alarm  constness warning with a cast.
2574
2575         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
2576         for the inside-gdk case.
2577
2578 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
2579
2580         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
2581         remove g_print.
2582
2583         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
2584         change models, #59899
2585
2586 2001-09-07  Havoc Pennington  <hp@pobox.com>
2587
2588         * gtk/gtkmain.c: move some docs inline
2589
2590 2001-09-07  Havoc Pennington  <hp@pobox.com>
2591
2592         * gtk/gtk.h: tsk tsk, jrb broke the build
2593
2594 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
2595
2596         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
2597         Removed 'fill' attribute.  It was silly b/c that was a property of
2598         the cell renderer, anyway.
2599         (gtk_tree_view_column_render): Actually render the packed
2600         renderers.
2601         * doc/tree-column-sizing.txt: initial devel documentation.
2602         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
2603         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
2604
2605         * tests/testtreefocus.c: fix up to reflect above changes.
2606         * tests/testtreeview.c: ditto
2607         * demos/gtk-demo/stock_browser.c: ditto
2608
2609 2001-09-07  Alex Larsson  <alexl@redhat.com>
2610
2611         * gdk/linux-fb/gdkcolor-fb.c:
2612         Removed unused function.
2613         
2614         * gdk/linux-fb/gdkdrawable-fb2.c
2615         * gdk/linux-fb/gdkfont-fb.c:
2616         Use PangoLanguage functions.
2617
2618         * gdk/linux-fb/gdkinput.c:
2619         * gdk/linux-fb/gdkselection-fb.c:
2620         Fix const warnings.
2621         
2622         * gdk/linux-fb/gdkwindow-fb.c:
2623         Fix warning. Implement gdk_window_set_icon_list() and
2624         gdk_window_get_frame_extents(). (No icon support yet though.)
2625
2626         * gtk/gtkwindow.c (gtk_window_get_position):
2627         If window->frame is set get the extents of it instead.
2628         
2629 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2630
2631         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
2632         Make the default default colormap the GdkRGB colormap,
2633         not the system colormap.
2634
2635         * gtk/gtkinvisible.c (gtk_invisible_init) 
2636           gtk/gtkwindow.c (gtk_window_init): Set the current
2637         colormap, as returned by _gtk_widget_peek_colormap()
2638         on the widget.
2639
2640         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
2641         to GTK+. Make it return %NULL instead of the default
2642         colormap if no colormap has explicitely been pushed.
2643
2644         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
2645         colormaps on ancestral widgets before defaulting the
2646         the system default colormap.
2647
2648         * docs/Changes-2.0.txt: explain colormap changes.
2649
2650 2001-09-07  Havoc Pennington  <hp@redhat.com>
2651
2652         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
2653         #57424
2654
2655 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
2656
2657         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
2658         make gdk_set_use_xshm a noop. Remove --no-xshm command line
2659         option. If we aren't autodetecting properly, we need
2660         to fix the problem, or at least make it an environment
2661         variable setting, to avoid problems with propagating
2662         to embedded children, plugins, etc.
2663
2664         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
2665
2666         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
2667         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
2668         New function to render a pixmap and mask for a particular colormap.
2669
2670         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
2671         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
2672         of internal implementation of the same.
2673
2674 2001-09-07  Havoc Pennington  <hp@redhat.com>
2675
2676         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
2677         debug code that seems to have caused a breakpoint in valid cases
2678         
2679         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
2680         pointer on the first view when adding the second view, fixes
2681         crash when closing gtk-demo text test with active selection
2682
2683         * gtk/gtktextbuffer.c
2684         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
2685         clipboards in the list of clipboards - probably fixes #59836
2686
2687 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
2688
2689       Make gdkx.h the only installed header from gdk/x11.
2690       All structures in gdk/x11 are opaque.
2691
2692         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
2693         Don't install gdk{drawable,pixmap,window}-x11.h.
2694
2695         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
2696         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
2697         GdkVisualClass into C files.
2698
2699         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
2700
2701         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
2702         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
2703         Add public functions to replace previously exported direct
2704         structure access.
2705         gdk_x11_colormap_get_{xdisplay,xcolormap} 
2706         gdk_x11_cursor_get_{xdisplay,xcursor},
2707         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
2708         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
2709         gdk_x11_gc_get_{xdisplay,ximage}
2710         
2711         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
2712         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
2713
2714       Fix a number of variables and functions that were exported
2715       "accidentally" from GDK.
2716
2717         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
2718         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
2719         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
2720         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
2721         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
2722         gdk_event_queue_find_first, gdk_event_queue_remove_link,
2723         gdk_event_queue_append, gdk_event_button_generate,
2724         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
2725
2726         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
2727            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
2728         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
2729         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
2730         gdk_use_xshm, gdk_input_ignore_core.
2731
2732         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
2733         #defines to namespace functions into the private _gdk_ 
2734         namespace.
2735
2736         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
2737         to replace gdk_parent_root exported variable. Adjust and
2738         deprecate GDK_ROOT_PARENT().
2739
2740         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
2741         GDK_ROOT_PARENT usage, remove includes of port-specific
2742         headers.
2743
2744         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
2745         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
2746         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
2747
2748         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
2749         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
2750         gdk_wm_delete_window functions, gdk_wm_take_focus, 
2751         use gdk_atom_intern() instead.
2752
2753         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
2754           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
2755           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
2756           gtk/gtkselection.c 
2757         Unexport gdk_selection_property, just use 
2758         gdk_atom_intern ("GDK_SELECTION").
2759
2760         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
2761         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
2762         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
2763         GdkVisualprivate, gdk_x11_gc_flush.
2764
2765       Make a number of public exports of variables into functions
2766       to increase encapsulation.
2767
2768         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
2769         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
2770         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
2771
2772         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
2773         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
2774         gdk_error_warnings.
2775
2776         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
2777           docs/Changes-2.0.txt: 
2778         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
2779         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
2780         Add gdk_x11_get_default_xdisplay().
2781
2782         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
2783         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
2784         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
2785         Don't export gdk_progclass, move --class command line
2786         option and handling to common portion of GDK.
2787
2788       Miscellaneous fixes:
2789
2790         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
2791         g_return_val_if_fail that should have been g_return_if_fail.
2792
2793         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
2794         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
2795
2796         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
2797         X11 dependency.
2798
2799         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
2800         Remove unused gdk_key_repeat_disable/restore.
2801
2802         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
2803         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
2804         Remove unused gdk_null_window_warnings variable.
2805
2806         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
2807         it can be retrieved from the repository; it is too far
2808         from functional to be worth having people check out;
2809         it would be easier to start from scratch, I suspect.
2810
2811         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
2812
2813         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2814         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2815         Fix some accidentally global variables and unused global variables.
2816
2817         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2818         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2819         Fix some accidentally global variables and unused global variables.
2820
2821       Add some space for future expansion to multihead.
2822
2823         * gdk/gdkdrawable.h: Add four reserved function pointers
2824         for future expansion of GdkDrawableClass.
2825
2826         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
2827         where we can put a GdkScreen * later.
2828
2829 2001-09-07  Havoc Pennington  <hp@redhat.com>
2830
2831         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
2832         adjustments after validating destination yrange; fixes #53918
2833         (This may cause other issues, but I hope it won't)
2834         
2835 2001-09-05  Havoc Pennington  <hp@redhat.com>
2836
2837         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
2838         line into start line, update the character counts in parent nodes; 
2839         caused a bug when end and start line had different parent nodes.
2840
2841 2001-08-30  Havoc Pennington  <hp@redhat.com>
2842         
2843         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
2844         assertion that tag is in a table
2845
2846 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
2847
2848         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
2849         g_strcasecmp on NULL strings. (#59058)
2850
2851 2001-09-06  Alex Larsson  <alexl@redhat.com>
2852
2853         * gtk/gtkbin.c:
2854         * gtk/gtkfontsel.c:
2855         * gtk/gtkspinbutton.c:
2856         * gtk/gtktipsquery.c:
2857         Use GtkType/GType instead of uint.
2858
2859 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2860
2861         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
2862         sort column.
2863
2864         * gtk/gtktreestore.c (gtk_list_store_init): ditto
2865
2866         * gtk/gtktreesortable.c: add docs.
2867
2868 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
2869
2870         * Version 1.3.7
2871
2872         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
2873         docs for gtk-config
2874
2875         * modules/input/Makefile.am (install-data-local): Don't
2876         run gtk-query-immodules if DESTDIR is set.
2877
2878         * NEWS: Various additions.
2879
2880 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
2881
2882         * NEWS: updates for 1.3.7 release.
2883
2884 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
2885
2886         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
2887         handle default sort feature
2888
2889         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
2890         new function to handle default sort.
2891         (gtk_tree_sortable_has_default_sort_func): check if default sort
2892         is set.
2893
2894         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
2895         handle default sort feature
2896
2897 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
2898
2899         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
2900         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
2901         #59731
2902
2903 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2904
2905         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
2906         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
2907         time, #59727
2908
2909         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
2910         correctly.
2911
2912 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
2913
2914         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
2915         so that we don't eternally update the keymap after we
2916         get a change notification.
2917
2918         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
2919         incorrect cast.
2920
2921 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
2922
2923         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
2924         it working. It mostly works now, although there're still a few issues
2925         to be worked out.
2926
2927         * tests/testtreesort.c (main): changes to have a better test
2928         application for the GtkTreeModelSort.
2929
2930 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
2931
2932         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
2933         fix for bug #59222.
2934
2935         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
2936         gpointer search_data argument to function definition and
2937         prototype, to match GtkTreeViewSearchEqualFunc typedef.
2938
2939 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
2940
2941         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
2942         per jrb's request.
2943
2944 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
2945
2946         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
2947
2948         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
2949
2950 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2951
2952         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
2953         Instead of always mirroring the selection to a single PRIMARY
2954         selection, allow it to be mirrored to any number of clipboards.
2955
2956         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
2957         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
2958
2959         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
2960         GtkClipboard argument, and for paste_clipboard, the
2961         @override_location argument from @paste_primary.
2962
2963         * gtk/gtktextview.c: Adapt to above change.
2964         
2965 2001-08-30  Havoc Pennington  <hp@redhat.com>
2966
2967         * gtk/gtktextview.c (invalidated_handler): put validate idle at
2968         resize - 2 just for flexibility
2969
2970 2001-08-30  Havoc Pennington  <hp@redhat.com>
2971
2972         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
2973         object from the empty-child-anchor case by drawing a little box.
2974         
2975         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
2976         if the child anchor has no anchored widgets - fixes #59328.
2977
2978         Also, remove bizarre deletion of preedit string that seems to have
2979         gotten in here somehow.
2980
2981 2001-08-30  Havoc Pennington  <hp@redhat.com>
2982
2983         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
2984         to #58420 from Hidetoshi Tajima and Matthias Clasen
2985
2986 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
2987
2988         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2989         change color when the GtkTreeView loses focus.
2990
2991         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
2992         ditto.
2993         
2994         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
2995
2996 2001-08-28  Havoc Pennington  <hp@pobox.com>
2997
2998         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
2999
3000 2001-08-28  Havoc Pennington  <hp@pobox.com>
3001
3002         * demos/gtk-demo/main.c (setup_default_icon): add default icon
3003
3004         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
3005         warning fix
3006         (gtk_radio_button_new_with_label): warning fix
3007
3008         * gtk/gtkdnd.c: used some random GtkImage private structs, 
3009         update to reflect GtkImage changes
3010
3011         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
3012         whether the hint is supported, just always set the icon. A task
3013         list might want to use it even if the WM doesn't, and the WM may
3014         change over time. Also, XDeleteProperty() if list == NULL.
3015
3016         * gtk/gtkwindow.c (gtk_window_set_icon_list)
3017         (gtk_window_get_icon_list)
3018         (gtk_window_set_icon)
3019         (gtk_window_get_icon)
3020         (gtk_window_set_default_icon_list)
3021         (gtk_window_get_default_icon_list):
3022         new functions
3023
3024         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
3025
3026         * gtk/gtkimage.c: Implement property support, bug #59408
3027
3028         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
3029         on reparent-without-removing-first a bit more helpful.
3030         Let's just destroy this FAQ.
3031
3032 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
3033
3034         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
3035         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
3036
3037 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
3038
3039         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
3040         of use_text_format to the end of the function. (#56447)
3041
3042 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
3043
3044         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
3045         only in response to an area_prepared signal.
3046
3047 2001-08-28  Alex Larsson  <alexl@redhat.com>
3048
3049         * gtk/gtkwidget.c (gtk_widget_class_init):
3050         Make unrealize GTK_RUN_LAST.
3051
3052 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
3053
3054         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
3055         with_label and with_mnemonic should create radio buttons, not
3056         check buttons
3057
3058 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
3059
3060         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
3061         * tests/treestoretest.c (make_window): ditto
3062         * demos/gtk-demo/main.c (create_tree): ditto
3063         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
3064
3065 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
3066
3067         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
3068         GTK selection types rather than GtkTreeSelectionMode.
3069
3070         * docs/Changes-2.0: Add comment about selection change.
3071
3072 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
3073
3074         * gtk/gtkenums.h (GtkSelectionMode): deprecate
3075         GTK_SELECTION_EXTENDED.
3076
3077         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
3078         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
3079
3080         * gtk/gtkctree.c: ditto
3081
3082         * gtk/gtklist.c: ditto
3083
3084         * gtk/gtktree.c: ditto
3085
3086 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
3087
3088         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
3089         of typos in compat macros. (#59624, Skip Montaro)
3090
3091 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
3092
3093         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
3094         macro.
3095
3096          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
3097  
3098         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
3099         interface to be a standard setter from gtk_menu_item_right_justify.
3100         (gtk_menu_item_get_right_justified): a getter to go with the setter
3101
3102         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
3103         gtk_menu_item_right_justify.
3104
3105         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
3106         gtk_menu_item_set_right_justified.
3107  
3108 2001-08-27  Jens Finke <jens@gnome.org>
3109
3110         * gtk+.spec.in: Updated to match gpp requirements, reworked the
3111         files section to make it work with 1.3.x releases.
3112
3113 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
3114
3115         * gtk/gtkbutton.[ch]:
3116         Add properties for labels, mnemonics and stock items.
3117         Added C accessor functions for the properties.
3118         Removed deprecated button->child.
3119
3120         * gtk/gtkradiobutton.c:
3121         * gtk/gtktogglebutton.c:
3122         Update to use the functions in GtkButton.
3123
3124         * gtk/gtkcheckbutton.c:
3125         Update to use the functions in GtkButton.
3126         Changed size allocation of child. Now only gets as much
3127         space as it requests.
3128
3129         * gtk/gtkclist.c:
3130         Don't use GtkButton->child
3131
3132         * gtk/gtklabel.c:
3133         Fixed typo in docs
3134         
3135 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
3136
3137         * tests/testgtk.c:
3138         * tests/Makefile.am:
3139         Ressurect the properties test.
3140         I don't care if it is inferior, I just want to test my property code.
3141
3142 2001-08-25  Chema Celorio  <chema@celorio.com>
3143
3144         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
3145         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
3146         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
3147
3148 2001-08-24  Havoc Pennington  <hp@pobox.com>
3149
3150         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
3151         these are already in gtkmenu.h, and the copies
3152         here were broken.
3153
3154         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
3155
3156         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
3157         special-case bitmaps to allow no colormap
3158         (bitmap1): implement no-colormap bitmap-getting
3159         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
3160         alpha
3161         (rgb8): indentation
3162         (rgb1a, rgb1): change the way we read the data out of the image, 
3163         old way didn't seem to work quite right.
3164
3165         I'm pretty sure a lot of the rgbconvert code is still broken.
3166         
3167         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
3168         above position constraint (I really intended to do this before,
3169         don't know what's up with that)
3170         (gtk_XParseGeometry): shut up gcc
3171
3172         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
3173         and "0" should have been. remove the attempted 4-bytes-at-once
3174         optimization, it was totally broken.
3175
3176 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
3177
3178         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
3179         on push to buttons (based on patch from Soeren Sandmann, #54720)
3180
3181           - Add child_displacement_x/y style properties to control how far the
3182             child moves when the button is depressed.
3183
3184           - Add non-exported function _gtk_button_set_depressed to clean
3185             up the handling of the in/out shadow and separate it frmo
3186             widget->state.
3187
3188           - Lots of code cleanup and simplification of state handling
3189             for GtkButton/GtkToggleButton.
3190  
3191         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
3192         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
3193
3194 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
3195
3196         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
3197         and make gtk_image_new() take no arguments. The compiler will
3198         catch it, and it is vastly more useful than having
3199         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
3200
3201         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
3202         to add tearoff-title property (#51319, Lee Mallabone)
3203
3204 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
3205
3206         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
3207         gtk_menu_item_configure(). (#58925)
3208
3209 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
3210
3211         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
3212         "use_align" to give people the option to just make a cell visible.
3213
3214         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
3215         we were scrolling past the end of the tree.
3216
3217         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
3218         rename gtk_tree_view_column_pack_start_cell_renderer to
3219         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
3220
3221 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
3222
3223         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
3224         a stray g_object_ref() left over from gtk_object_ref/sink.
3225         (Pointed out by Josh Pritikin.)
3226
3227 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
3228
3229         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
3230         to gtk_container_get_children. Added deprecated compatibility
3231         macro. (Suggested by Vitaly Tishkov, #59051)
3232
3233         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
3234         calls.
3235
3236 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
3237
3238         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
3239         gtk_menu_bar_append/prepend/insert, forgot to do this
3240         when we deprecated gtk_menu_append/prepend/insert.
3241
3242         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
3243         compat macros.
3244
3245         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
3246         renamed by compat macro.
3247
3248         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
3249         gtk_font_selection_dialog_get_font(). (Suggested by
3250         Vitaly Tishkov, #59383)
3251
3252 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
3253
3254         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
3255         Rename from gtk_text_tag_table_size(). (#59366)
3256
3257 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
3258
3259         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
3260         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
3261         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
3262         (#59173).
3263
3264 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
3265
3266         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
3267         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
3268         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
3269
3270 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
3271
3272         [ Patch from Sebastian Wilhelmi, 52790 ]
3273
3274         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
3275
3276         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
3277         Move compatibility macros from g[dt]kcompat.h to within 
3278         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
3279
3280         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
3281
3282         * demos/Makefile.am demos/gtk-demo/Makefile.am 
3283           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
3284           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
3285
3286         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
3287                  testpixbuf.c}: Fix usages of deprecated functions.
3288
3289 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
3290
3291         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
3292         when changing models.
3293
3294 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
3295
3296         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
3297         We check the current event for modifiers rather than try to trap
3298         all presses.
3299
3300 2001-08-22  Anders Carlsson  <andersca@gnu.org>
3301
3302         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
3303         It's LIST_STORE, not LISTSTORE.
3304
3305 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
3306
3307         * gtk/gtk.h: Remove commented out gtkpacker reference.
3308
3309 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3310
3311         * configure.in (all_loaders): Add tga loader, 
3312         patch by Nicola Girardi. (#56067)
3313
3314 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
3315
3316         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
3317         a little.  More needs to be done tomorrow.
3318
3319 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
3320
3321         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
3322
3323 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
3324
3325         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
3326         reported by Kristian Rietveld <kristian@planet.nl> to handle row
3327         == NULL.
3328         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
3329         <kristian@planet.nl> to change destroy order.
3330
3331 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
3332
3333         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
3334         correct marshaller.
3335
3336 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
3337
3338         * gtk/gtkliststore.c: Fix up warnings, #58928.
3339
3340         * gtk/gtktreeselection.h: Change signal prototype, #58647
3341
3342         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
3343         #59221.
3344
3345         * gtk/gtkstyle.c: Actually prelight arrow, #50981
3346         
3347 2001-08-18  Hans Breuer  <hans@breuer.org>
3348
3349         * gdk/gdk.def : updated externals
3350
3351         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
3352         is required to get (at least) visible in entry fields. Some selections
3353         are really handled now - even on win32 - but copying via middle
3354         mouse button into a different app needs to wait ... 
3355
3356         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
3357         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
3358
3359         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
3360         handling. I'm not sure if it is better now, but at least not worse
3361
3362         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
3363         with SetWindowPos () which allows more fine-tuning backing-store wise
3364
3365         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
3366         Also changed move/resize to be more like the X version.
3367
3368         * gtk/gtk.def : updated externals
3369
3370 2001-08-19  Sven Neumann  <sven@gimp.org>
3371
3372         * gtk/gtktooltips.c
3373         * tests/testtreesort.c
3374         * tests/treestoretest.c: inserted some casts to get rid of compiler
3375         warnings.
3376
3377 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
3378
3379         * gtk/gtktreeviewcolumn.c
3380         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
3381
3382         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
3383         (_gtk_tree_view_find_node): If *node is NULL,
3384         *tree should be NULL too.
3385
3386         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
3387         column/renderers.
3388         * tests/testtreecolumns.c: ditto
3389         * tests/testtreefocus.c: ditto
3390         * tests/testtreesort.c: ditto
3391         * tests/testtreeview.c: ditto
3392         * tests/treestoretest.c: ditto
3393
3394 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
3395
3396         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
3397         signals; is_expander/is_expanded.
3398
3399         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
3400         pixbufs.
3401
3402         * gtk/gtktreeview.c: set above properties.
3403
3404 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
3405
3406         * gtk/gtkwidget.h: Really remove set_default_style().
3407
3408         * docs/Changes-2.0.txt: added a note about
3409         gtk_widget_push/pop/set_default_style.
3410
3411 2001-08-18  Havoc Pennington  <hp@pobox.com>
3412
3413         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
3414         hints_changed in addition to the other cases.
3415         (gtk_window_move_resize): include last position from configure
3416         notify in debug spew
3417
3418 2001-08-18  James Henstridge  <james@daa.com.au>
3419
3420         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
3421         second argument to the weak ref notify, cleaning up some uglyness.
3422         (gtk_accel_group_attach): remove and add the weak notifier when
3423         changing the accel groups slist.
3424         (gtk_accel_group_detach): same here.
3425
3426 2001-08-17  Darin Adler  <darin@bentspoon.com>
3427
3428         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
3429         missing parameters to utf8 functions to make it compile.
3430
3431 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
3432
3433         * gtk/gtktreeprivate.h:
3434         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
3435         (gtk_tree_view_init), (gtk_tree_view_set_property),
3436         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
3437         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
3438         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
3439         (gtk_tree_view_set_destroy_count_func),
3440         (gtk_tree_view_set_enable_search),
3441         (gtk_tree_view_get_enable_search),
3442         (gtk_tree_view_get_search_column),
3443         (gtk_tree_view_set_search_column),
3444         (gtk_tree_view_get_search_equal_func),
3445         (gtk_tree_view_set_search_equal_func),
3446         (gtk_tree_view_search_dialog_destroy),
3447         (gtk_tree_view_search_position_func),
3448         (gtk_tree_view_interactive_search),
3449         (gtk_tree_view_search_delete_event),
3450         (gtk_tree_view_search_button_press_event),
3451         (gtk_tree_view_search_key_press_event),
3452         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
3453         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
3454         * gtk/gtktreeview.h:
3455         Add heavily modified patch from Kristian Rietveld to handle
3456         interactive searching.
3457
3458 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
3459
3460         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
3461         string parameter.
3462
3463         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
3464         GtkMenuShell::selection_done, now that we have it, instead of 
3465         ::deactivate so we're not tearing the menu apart and notify
3466         the user prematurely.
3467
3468 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
3469
3470         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
3471         window, clear window->need_default_position to avoid infinite loops.
3472         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
3473
3474 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
3475
3476         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
3477         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
3478         (gtk_tree_view_set_property): don't cast possible NULL objects.
3479         (gtk_tree_view_destroy): reset the model to NULL.
3480
3481         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
3482         parent_class handler.
3483
3484 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3485
3486         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
3487
3488 2001-08-17  Anders Carlsson  <andersca@gnu.org>
3489
3490         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
3491         point numbers so that the result will be floating point.
3492
3493 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3494
3495         * tests/testgtk.c (create_handle_box): 
3496         (create_toolbar): Replace gtk_window_set_policy calls by
3497         gtk_window_set_resizable.
3498
3499 2001-08-16  Jakub Steiner <jimmac@ximian.com>
3500
3501         * gtk/stock-icons/dialog_info.png: new style bulb
3502         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
3503         * gtk/stock-icons/dialog_warning.png: need a hand?
3504         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
3505           the aa border gets chopped off ok
3506         * gtk/stock-icons/stock_colorselector.png: using the new hand
3507         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
3508           this one is for, but the old icon was butt ugly.
3509         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
3510         * gtk/stock-icons/stock*_insert_object.png: "
3511         * gtk/stock-icons/stock_index.png: using new hand icon
3512         * gtk/stock-icons/stock*_new.png: the document template being used 
3513           elsewhere too
3514         * gtk/stock-icons/stock*_print*.png: new print and print preview 
3515           icons (panel/menu)  
3516         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
3517           icons based on Tuomas' floppy image.
3518         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
3519         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
3520         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
3521         * gtk/stock-icons/stock*_undelete.png: "
3522         * gtk/stock-icons/stock_preferences.png: I have a version with a 
3523           document base if the sliders are no good.
3524         * gtk/stock-icons/stock_properties.png: properties 
3525         
3526
3527         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
3528           (tigert@ximian.com) clipboard icons
3529         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
3530         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
3531         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
3532           little bigger IMHO
3533
3534 2001-08-16  Sven Neumann  <sven@gimp.org>
3535
3536         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
3537
3538 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
3539
3540         * gtk/gtkcellrenderertext.c:
3541         Avoid warning when specifying NULL for "attributes" property
3542
3543 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3544
3545         * docs/debugging.txt: Add a warning about --enable-debug=no,
3546         some editorial changes.
3547
3548 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3549
3550         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
3551         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
3552         debugging info, remove unused debug flags. (#58330)
3553
3554 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
3555
3556         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
3557         (gtk_tree_selection_select_all): Remove strict checking for rows.
3558
3559 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3560         
3561         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
3562         Don't remove the tooltip window when the tip text changes. (#15891)
3563
3564 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
3565
3566         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
3567         $(srcdir).
3568
3569 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
3570
3571         * Makefile.am (EXTRA_DIST): Fix problem with trying to
3572         dist files from intl/, which is no longer there.
3573
3574 2001-08-11  Hans Breuer  <hans@breuer.org>
3575
3576         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
3577           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
3578           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
3579           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
3580           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
3581           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
3582
3583         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
3584           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
3585         GDK_TYPE_EVENT signals
3586
3587         * gtk/gtkalignment.c : removed 'direct allocation bug',
3588         which Tim discovered while reading the patch
3589
3590 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
3591
3592         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
3593         compat macros for push/pop/set_visual that were supposed
3594         to be added a long time ago, but got dropped. 
3595
3596 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
3597
3598         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
3599         property notifies.
3600
3601 2001-08-07  Havoc Pennington  <hp@pobox.com>
3602
3603         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
3604
3605         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
3606         some fixage is needed here, but nothing simple. Owen understands
3607         it. ;-)
3608
3609         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
3610         sizing and positioning.  Also, fix bug in compute_geometry_hints
3611         (width/height confusion for setting min size). 
3612         (gtk_window_move): new function
3613         (gtk_window_resize): new function
3614         (gtk_window_get_size): new function
3615         (gtk_window_get_position): new function
3616         (gtk_window_parse_geometry): new function
3617         
3618         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
3619         (gtk_widget_get_size_request): new function
3620         (gtk_widget_get_usize): delete, that was a short-lived function
3621         ;-)
3622         (gtk_widget_set_usize): deprecate
3623         (gtk_widget_set_uposition): deprecate, make it a trivial 
3624         gtk_window_move() wrapper
3625         (gtk_widget_class_init): remove x/y/width/height properties,
3626         add width_request height_request
3627         
3628         * demos/*: update to avoid deprecated functions
3629         
3630         * gtk/gtklayout.c: add x/y child properties
3631
3632         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
3633         uses of "gint16"
3634
3635         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
3636         sizing test
3637
3638         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
3639         configure events on toplevel windows are always in root window
3640         coordinates, following ICCCM spec that all synthetic events 
3641         are in root window coords already, while real events are 
3642         in parent window coords. Previously the code assumed that 
3643         coords of 0,0 were parent window coords, which was 
3644         really broken.
3645   
3646         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
3647         warning
3648  
3649         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
3650         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
3651         hints in gtk_window_parse_geometry()
3652  
3653         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
3654         new USER_POS USER_SIZE hints    
3655
3656 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3657
3658         * tests/prop-editor.c (properties_from_type): Use 
3659         g_object_class_list_properties to get the param specs 
3660         for a given type. (#58609)
3661
3662 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3663
3664         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
3665         free the text_aa parts. (#57549)
3666
3667 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3668
3669         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
3670         not the foreground color. (#57621)
3671
3672 2001-08-09  Alexander Larsson <alexl@redhat.com>
3673
3674         * gdk/win32/gdkfont-win32.c:
3675         Update to the new pango win32 api.
3676
3677 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
3678
3679         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
3680         COMPOUND_TEXT instead of TEXT
3681         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
3682         interpret the return value of g_string_to_compound_text()
3683         (#55152)
3684
3685 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3686
3687         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
3688         fail if iter is NULL. (#58347)
3689
3690 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3691
3692         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
3693         some off-by-one issues, fixing selection of line-ends. (#50323)
3694
3695 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3696
3697         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
3698         functions in order to make mouse operation work again in the
3699         color wheel. (#58604)
3700
3701 2001-08-07  James Henstridge  <james@daa.com.au>
3702
3703         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
3704         the accelerator when the accel object is changed.  Fixes bug
3705         #58628.
3706
3707 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
3708
3709         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
3710         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
3711         (gnome bugzilla #58202)
3712
3713 2001-08-06  Havoc Pennington  <hp@pobox.com>
3714  
3715         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
3716         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
3717         it was expecting a GdkWindow, not a GdkWindowImplX11.
3718  
3719         Also, we were getting the window rect in screen coords 
3720         and the screen rect in window coords then intersecting 
3721         them; instead, get window rect in window coords.
3722  
3723         Finally, there were codepaths that resulted in a stuck server grab
3724         (when the window was fully onscreen, or on gdk_image_new()
3725         failure); make the server ungrab thing a bit more
3726         robust/consistent.
3727
3728 2001-08-06  Sven Neumann  <sven@gimp.org>
3729
3730         * gdk/gdkpango.c (gdk_pango_context_destroy): 
3731         check if info->colormap != NULL before unref'ing it. It might have
3732         been set to NULL using gdk_pango_context_set_colormap().
3733
3734 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
3735
3736         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
3737         Fix conversion from float to int so that we don't get
3738         skew in the int => float => int roundtrip. 
3739         (#58120, reported by Vitaly Tishkov). Also fix problem
3740         where if no alpha was set, the returned alpha
3741         from (say) set_current_alpha() was returned as 1, not 65535.
3742
3743 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
3744
3745         * gtk/gtklist.c (gtk_list_clear_items): Fix
3746         problem with selecting a new focus child.
3747
3748         * gtk/gtklist.c (gtk_list_clear_items): Clear 
3749         list->undo/list_focus_child after unparenting
3750         child, since unparenting the child can result
3751         in list->last_focus_child being set. (#58024)
3752
3753         * Makefile.am (SUBDIRS): Add target specific pc
3754         files to DISTCLEANFILES.
3755
3756         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
3757         (58327, Matthias Clasen)
3758
3759 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
3760
3761         * tests/testgtk.c: Patch from Hans (with various modifications),
3762         to add the ability to use testgtk as a rough-and-ready
3763         benchmark. Try, 'testgtk --bench all:5' (if you want decent
3764         numbers, run without a window manager)
3765
3766 2001-08-04 Alexander Larsson <alexl@redhat.com>
3767
3768         * gdk/win32/gdkinput.c:
3769         Add #ifdef HAVE_WINTAB around wintab.h include.
3770
3771         * gtk/gtk.def:
3772         Removed marshals that have been moved to glib.
3773         Commented out plug and socket. They didn't compile for me 
3774         on win32.
3775
3776 2001-08-04  Hans Breuer  <hans@breuer.org>
3777
3778         * gtk/stocks-icons/makefile.msc : new file
3779         * gtk/makefile.msc.in : use it
3780
3781         * gtk/gtkstyle.c : not all platforms do provide M_PI and
3782         friends, but luckily there is G_PI
3783
3784         * gtk/gtk.def : updated
3785
3786         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
3787         windows WS_POPUP, but only those without a parent. This fixes the 
3788         mis-alignment between the selectable (temp, input only) window and 
3789         the window text of GtkLabel.
3790
3791         (gdk_window_show) : respect private->state when actually showing
3792         the window.
3793
3794         (gdk_window_set_transient_for) : Implementation from Wolfgang 
3795         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
3796         error handling. Should fix #50586.
3797
3798         * gdk/win32/gdkevents-win32.c : beautify log output
3799
3800 2001-08-04  Michael Natterer  <mitch@gimp.org>
3801
3802         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
3803         Need to show the image after adding it to the GtkImageMenuItem.
3804         This used to work without in testgtk because of the
3805         gtk_widget_show_all() at the end of the function.
3806         (Closes #54978).
3807
3808 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
3809
3810         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
3811         (gtk_notebook_set_child_property): fix finding of child's page,
3812         since we have to validly deal with labels and menus here as well.
3813         (gtk_notebook_get_child_property): fix warning.
3814         (gtk_notebook_class_init): property tab_pack is of type
3815         GTK_TYPE_PACK_TYPE (enum) not boolean.
3816         (gtk_notebook_find_child): don't always warn, we might be looking
3817         for a label or menu child.
3818         (gtk_notebook_map): fix mapping of panel.
3819
3820         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
3821         widget's mapped state, regardless of the value being set equals
3822         old settings, since things like REALIZED(parent) or MAPPED(parent)
3823         may have changed since the old value was set. make it an error to
3824         invoke this function on a toplevel widget.
3825
3826 2001-07-31  Darin Adler  <darin@bentspoon.com>
3827
3828         * gdk/gdkprivate.h:
3829         * gdk/x11/gdkx.h:
3830         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
3831
3832         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
3833         GTK_OBJECT.
3834
3835 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
3836
3837         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
3838         scoping error pointed out by matthiasc@poet.de.
3839
3840 2001-07-31  Sven Neumann  <sven@gimp.org>
3841
3842         * demos/gtk-demo/appwindow.c
3843         * demos/gtk-demo/item_factory.c
3844         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
3845
3846 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
3847
3848         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
3849         argument order for g_signal_has_handler_pending.
3850
3851 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
3852
3853         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
3854         instead of long deprecated g_scanner_stat_mode().
3855
3856 2001-07-29  Hans Breuer  <hans@breuer.org>
3857
3858         * gdk/makefile.msc : build in the backend dir after
3859         auto-generating files
3860
3861         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
3862         with code from win32-production-branch.
3863
3864         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
3865         before calling DestroyWindow, which indirectly calls 
3866         gdk_window_destroy_notify ()
3867
3868         (performance patch merged from win32-production-branch)
3869         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
3870         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
3871         R2_COPYPEN rop). It is claimed to be much faster.
3872
3873 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
3874
3875         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
3876         add an "attributes" property to the text renderer for ATK.
3877
3878 2001-07-26  Alex Larsson  <alexl@redhat.com>
3879
3880         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3881         Initialize image->bits_per_pixel from the drawable, not from
3882         the root window.
3883
3884         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
3885         Fix cast. argument is an IMPL already.
3886
3887 2001-07-15  James Henstridge  <james@daa.com.au>
3888
3889         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
3890         (gtk_window_remove_accel_group): same here.
3891         (gtk_window_key_press_event): same here.
3892
3893         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
3894         (gtk_widget_remove_accelerator): same here.
3895         (gtk_widget_remove_accelerators): same here.
3896
3897         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
3898
3899         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
3900         instead of GtkObject.
3901
3902         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
3903         now takes GObjects.
3904
3905         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
3906         pass a GObject to gtk_accel_group_entries_from_object.
3907         (gtk_item_factory_create_item): s/accel_widget/accel_object/
3908
3909         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
3910
3911         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
3912
3913         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
3914         GObjects can have accelerators set now.  Add compatibility
3915         defines.
3916
3917         * gtk/gtkmarshal.list: add missing marshallers.
3918
3919         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
3920         accelerators on plain GObjects.  gtk_accel_group_object_destroy
3921         has been converted into a weak reference, and
3922         gtk_accel_group_delete_entries is now a destroy notify for that
3923         piece of data.
3924
3925 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
3926
3927         * gdk/gdkdraw.c: Added a check on the colormap depth to
3928         gdk_drawable_set_colormap()
3929         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
3930         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
3931         for pixmaps without visuals (more specifically, bitmaps)
3932         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
3933         doesn't set a colormap with the wrong depth
3934
3935
3936 2001-07-22  Anders Carlsson  <andersca@gnome.org>
3937
3938         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
3939         expander_height and expander_width properties with a single
3940         property, expander_size.
3941         (gtk_tree_view_init): Set the tab_offset to expander_size
3942         plus some padding.
3943         (gtk_tree_view_unrealize): Remove the expand/collapse
3944         timeout if it exists.
3945         (coords_are_over_arrow): Fix a small bug.
3946         (gtk_tree_view_motion_draw_column_motion_arrow): Use
3947         expander_size.
3948         (gtk_tree_view_draw_focus): Use "treeview" instead of
3949         "add-mode" as detail when drawing the focus.
3950         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
3951         instead of "add-mode" as detail when drawing the focus.
3952         (gtk_tree_view_deleted): If we have a node currently being
3953         expanded or collapsed, remove the timeout and set the node 
3954         to NULL.
3955         (gtk_tree_view_queue_draw_arrow): New function that just
3956         redraws the arrow of a node.
3957         (gtk_tree_view_draw_arrow): Use expander_size instead of
3958         expander_width/expander_height, also pass a different
3959         expander_style to gtk_paint_expander depending on the 
3960         state of the node being drawn.
3961         (expand_collapse_timeout): New function for expanding 
3962         or collapsing a node depending on the previous state.
3963         (gtk_tree_view_real_expand_row): Add timeout and set 
3964         correct state for node being expanded.
3965         (gtk_tree_view_real_collapse_row): Add timeout and set
3966         correct state for node being collapsed.
3967
3968         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
3969         information about the node currently being expanded or
3970         collapsed, and also a timeout id.
3971
3972         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
3973         with expander_style for draw_expander.
3974
3975         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
3976         expander_style.
3977         (create_expander_affine): New function for creating an 
3978         expander affine.
3979         (apply_affine_on_point): New function for applying an 
3980         affine to a point.
3981         (gtk_default_draw_expander): Modified to take expander_style
3982         instead of is_open, and to draw the rectangle rotated differently
3983         depending on the expander style.
3984         (gtk_paint_expander): Replace is_open with expander_style.
3985
3986         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
3987
3988         * gtk/gtkenums.h: Add expander style enum.
3989
3990 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
3991
3992         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
3993         value from gtk_tree_model_get_iter, the model might be empty.
3994
3995 2001-07-20  Hans Breuer  <hans@breuer.org>
3996
3997         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
3998         gdk/gdkinput.c like the other backends
3999
4000         * gdk/win32/gdkinput-win32.h :
4001         * gdk/win32/gdkinput.c :
4002         * gdk/win32/gdkvisual-win32.c :
4003         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
4004         GdkVisual GObjectification. UNTESTED for pen-devices because
4005         I simply have none.
4006
4007         * gdk/gdk.def :
4008         * gtk/gtk.def : updated externals
4009
4010         * gtk/gtkiconfactory.c :
4011         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
4012         before passing &error to functions to avoid strange crashes
4013         
4014         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
4015
4016         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
4017
4018         * gtk/makefile.msc.in : updated
4019
4020 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
4021
4022         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
4023         Add property support. (#51858)
4024
4025 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
4026
4027         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
4028         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
4029         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
4030
4031 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
4032
4033         * gtk/gtkcolorsel.c: Add propery support (roughly
4034         based on patch from Lee Mallabone, #51014)
4035
4036         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
4037         deprecated, since we already g_warning() on it.
4038
4039 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
4040
4041         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
4042         typo that sometimes caused selection not to work properly.
4043
4044         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
4045         entry when tabbing in. (#57743)
4046         
4047         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
4048         user drags up above or down below the entry, move
4049         to the end or the beginning of the entry. (Suggestion
4050         from Jay Cox, #50940)
4051
4052         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
4053         a current selection, then when moving by chars or
4054         words, move to the end of the selection rather than
4055         from entry->current_pos. (Suggestion from Jay Cox,
4056         #50942)
4057         
4058 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
4059
4060         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
4061         set window->decorated. (Patch from Hidetoshi Tajima,
4062         #55846)
4063
4064 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
4065
4066         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
4067         the widget/child realization/mapping invariants.
4068
4069         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
4070         gtk_widget_[get/set]_child_visible() to control
4071         whether visible children of a mapped window are
4072         mapped.
4073
4074         * docs/widget_system.txt: Updated for changes in
4075         container contract, and addition of GTK_CHILD_VISIBLE.
4076
4077         * gtk/gtkcontainer.c: Add generic map()/unmap()
4078         functions that work for almost all containers.
4079
4080         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
4081         gtk_widget_set_child_visible() where necessary.
4082
4083         * gtk/*.c: Remove excess map(), unmap(), and 
4084         realization/mapping invariant enforcing code
4085         from many containers.
4086
4087 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
4088
4089         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
4090         Get the foreground color from 'text', nor 'fg'. (#57568)
4091
4092 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
4093
4094         * gtk/*.c: Patch from Matthias Clasen to remove remove
4095         all instances of g_return_if_fail (foo != NULL); that are
4096         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
4097         since the second check catches the NULL anyways.
4098
4099 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4100
4101         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
4102         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
4103         GDK_THREADS_ENTER()/LEAVE() pairs.
4104
4105         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
4106         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
4107         pairs. (Problem found by M. Meeks)
4108
4109 2001-07-18  Darin Adler  <darin@bentspoon.com>
4110
4111         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
4112         that we don't get a g_warning message every time we register a new
4113         icon size.
4114
4115         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
4116         using pixel variable of the correct type.
4117         
4118 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
4119
4120         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
4121         so that using X functions on a GdkWindow is possible, if
4122         a little hairy.
4123
4124         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
4125         and ts_origin of a GC, so that external parties can offset/restore
4126         a GC, when using gdk_window_get_internal_paint_info().
4127
4128 2001-07-17  Darin Adler  <darin@bentspoon.com>
4129
4130         * .cvsignore: Ignore the sgml directory made by gtkdoc.
4131         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
4132         instead of the deprecated gtk_window_set_policy.
4133         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
4134         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
4135         function to get rid of warning and some code too.
4136         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
4137         missing const.
4138         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
4139         unused local.
4140         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
4141         const.
4142         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
4143         (gdk_utf8_to_compound_text): Add missing const.
4144         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
4145         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
4146         cast and get rid of an unnecessary one.
4147         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
4148         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
4149         local.
4150         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
4151         Remove unused local.
4152         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
4153         missing const.
4154         * tests/testsocket.c: (add_child): Add cast so the printf format
4155         doesn't make us implicitly depend on what integer type
4156         gtk_socket_get_id returns.
4157         * tests/testtextbuffer.c: Add missing const.
4158         * tests/testtreefocus.c: (main): Remove unused local.
4159         * tests/treestoretest.c: (iter_remove): Remove unused local.
4160         (uppercase_value): Remove unused function.
4161         (make_window): Add statement to quiet the compiler's uninitialized
4162         variable warning.
4163
4164 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
4165
4166         * gtk/gtkrange.c:
4167         (second_timeout): 
4168         (initial_timeout): 
4169         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
4170         (gtk_range_calc_layout): compute the new layout based on an
4171         adjustment->value being passed in as argument.
4172         (gtk_range_button_press): for button2 slider warps, first recalc
4173         the layout, then adjust the value. also, use update_slider_position()
4174         for adjusting the value, so we keep pixel quantisation at which we
4175         usually operate (upon motion or button releases). the reason for this
4176         is that, we can't change the adjustment upon button2 presses to a non
4177         quantised value and upon button2 release re-quantise the value since
4178         that'd alter the value even if we didn't get any motion events (causing
4179         unexpected scroll area warps upon release and/or slider pixel-jitter).
4180         (gtk_range_motion_notify): update the slider position from queried
4181         coordinates, not event coordinates.
4182
4183 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
4184
4185         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
4186         the default gc values are: width=0, CapBut, JoinMiter.
4187
4188 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
4189
4190         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
4191         into account the xpad and ypad when calculating the width and the
4192         height of the pixbuf cel.
4193
4194 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
4195
4196         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
4197         Rename to gtk_radio_menu_item_get_group(), add deprecated
4198         alias. (#57044)
4199
4200         * gtk/gtkfilesel.c: Indentation fix.
4201
4202 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
4203
4204         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
4205         Hasselmann to fix warnings in compat macros. 
4206         (#56773)
4207
4208         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
4209         stupid wrong cast added in last patch.
4210
4211 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
4212
4213         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
4214         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
4215
4216 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
4217
4218         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
4219         missing cast.
4220
4221         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
4222         NULL/FALSE return value confusion.
4223
4224         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
4225         problem when scrollbar completely fills range. (Patch
4226         from  Matthias Clasen, #57047)
4227
4228 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
4229
4230         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
4231         clean up when handling events for move-resize emulation.
4232         (Problem traced down by Matthias Clasen, #57271)
4233
4234 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
4235
4236         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
4237           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
4238           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
4239           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
4240           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
4241           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
4242           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
4243         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
4244
4245 2001-07-09  Peter Williams  <peterw@ximian.com>
4246
4247         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
4248         for when srcdir != builddir
4249
4250 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
4251
4252         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
4253         gtk_tree_model_get_iter_root.
4254
4255         * gtk/gtkliststore.c: Add a bunch of g_return statements.
4256         (gtk_list_store_iter_n_children): Fix up.
4257
4258         * gtk/gtktreestore.c: Add a bunch of g_return statements.
4259
4260 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
4261
4262         * gtk/gtkwidget.c (gtk_widget_class_init):
4263         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
4264         restore some workingness.
4265
4266         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
4267         handle of window type for input-only windows.
4268
4269 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
4270
4271         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
4272         Patch from Gregory Merchan to add 
4273         gtk_button_box_set_secondary(), which separates
4274         the child into a separate group from the normal
4275         buttons. (#56331)
4276
4277         * gtk/gtkdialog.c: Make help buttons secondary by
4278         default.
4279
4280         * gtk/gtkbbox.c: Added a child property "secondary".
4281
4282         * gtk/testgtk.c: Turn on the help button for the 
4283         color selector to check that it properly appears
4284         as secondary.
4285
4286 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
4287  
4288         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
4289         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
4290         Add gdk_set_pointer_hooks() to allow pointer-querying to
4291         be hooked by an event record/playback system like GERD.
4292         (#56914)
4293         
4294 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
4295
4296         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
4297         in the right value of initial_emission to
4298         gtk_widget_set_style_internal (#57091)
4299
4300 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
4301
4302         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
4303         Make compile.
4304
4305         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
4306         with calling gtk_widget_set_style_internal() with
4307         the old style, not the new style. (#56989)
4308
4309 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
4310
4311         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
4312           gtk/gtkwidget.c:
4313         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
4314         not GTK_WIDGET_GET_ANCESTOR ... see 
4315         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
4316         Indicate the best practice in the docs for gtk_widget_get_toplevel().
4317
4318         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
4319         so GtkPlug can give the correct signals when transforming
4320         from a child to a toplevel.
4321         
4322         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
4323         reparentation correctly.
4324
4325         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
4326         Propagate the previous_toplevel argument down properly.
4327
4328         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
4329         of wrong atr list.
4330
4331         * gtk/gtkplug.[ch]: Add an "embedded" signal.
4332
4333         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
4334         signals.
4335
4336         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
4337         functions gtk_plug_get_id(), gtk_socket_get_id(),
4338         to avoid the user having to worry about realization,
4339         and gdkx.h.
4340
4341         * tests/testsocket.c: Extend to try out the new signals
4342         and gtk_plug/socket_get_id().
4343
4344         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
4345         setting of underline attributes.
4346
4347         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
4348         DestroyNotify events from SubstructureNotifyMask
4349
4350         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
4351         Switch GDK_WINDOW_TYPE (window) as needed.
4352
4353         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
4354         allow creation of toplevel windows as children of
4355         foreign windows.
4356
4357         * gtk/gtkplug.c: Remove hacks involving changing private
4358         fields of GdkWindow.
4359
4360         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
4361         exactly the same signals and notification
4362         be emitted for local embedding as for inter-process
4363         embedding.
4364
4365 2001-07-04  James Henstridge  <james@daa.com.au>
4366
4367         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
4368
4369 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
4370
4371         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
4372         XEMBED embedding add a _XEMBED_INFO property to the
4373         client with version number and a "mapped" flags.
4374         Use the mapped flag instead of the racy MapRequestEvent
4375
4376         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
4377         code to reliably set things (when the child is a passive
4378         embedder participating in the XEMBED protocol) intead
4379         of just being a hack for embedding non-participating
4380         programs. Fix various bugs and race conditions.
4381         
4382         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
4383         work by simply making the GtkSocket the gtk parent
4384         of the GtkPlug. Set a flag in this case and make
4385         the GtkPlug work like a normal container by overriding
4386         methods such as check_resize and "chaining past" GtkWindow
4387         to GtkBin.
4388
4389         * gtk/gtkentry.c (gtk_entry_real_activate)
4390           gtk/gtkmain.c (gtk_propagate_event): 
4391         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
4392         
4393         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
4394         gtk_widget_get_ancestor):
4395         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
4396         might not give the expected result and recommend
4397         an alternative.
4398
4399         * tests/testsocket.c tests/testsocket_child.c
4400         tests/testsocket_common.c tests/Makefile.am: Extended
4401         to test different type of adding plugs to sockets
4402         (local,active,passive), and to test mapping/unmapping
4403         the plug.
4404
4405         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
4406         mark the window as destroyed until after we
4407         called _gdk_windowing_window_destroy().
4408         (_gdk_windowing_window_destroy() may use GDK functions
4409         on the window.)
4410
4411         * gdk/x11/gdkinput.c: Remove the check for finalization - 
4412         devices can be finalized under some circumnstances.
4413  
4414         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
4415         small problem with GDK_TYPE_DEVICE.
4416  
4417 2001-07-02  Havoc Pennington  <hp@pobox.com>
4418
4419         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
4420         use constants not atoms.
4421
4422 2001-07-02  James Henstridge  <james@daa.com.au>
4423
4424         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
4425         PANGO_TYPE_TAB_ARRAY.
4426
4427         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
4428         for PANGO_TYPE_TAB_ARRAY.
4429
4430         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
4431         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
4432
4433         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
4434         the file.  Remove Pango types from defs -- they are now defined in
4435         libpango.
4436
4437 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
4438
4439         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
4440
4441         * gtk/gtkobject.c (gtk_object_destroy): invoke
4442         g_object_run_dispose().
4443
4444         * gtk/gtkwindow.c: 
4445         * gtk/gtkwidget.c: 
4446         * gtk/gtkobject.c:
4447         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
4448         method.
4449
4450 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
4451
4452         * gtk/gtktypeutils.c (gtk_type_class): Remove
4453         change check for GTK_TYPE_OBJECT derivation to
4454         G_TYPE_OBJECTS - it's Tim-approved to use this 
4455         for arbitary objects.
4456
4457         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
4458         prefix gtk_container_dequeue_resize_handler().
4459
4460         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
4461         to the hierarachy_changed signal, since you otherwise
4462         have to always keep that around.
4463
4464         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
4465         for extra argument to hierarchy_changed.
4466
4467 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
4468
4469         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
4470         for style to mean "revert to default style"
4471
4472         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
4473           gtk_widget_restore_default_style): Make this functions
4474         deprecated aliases for gtk_widget_set_style (widget, NULL).
4475
4476         * gtk/gtkwidget.[ch]: Remove:
4477            gtk_widget_set_default_style ()
4478            gtk_widget_push_style ()
4479            gtk_widget_pop_style ()
4480         These functions interact are overriden by RC files, and
4481         thus virtually useless, and complicated.
4482
4483 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
4484
4485         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
4486         most of the previous global variables in gtkrc.c. This is
4487         in preparation for multi-head, since each screen can
4488         have different GtkSettings and RC information.
4489
4490         * gtk/gtkrc.[ch]: 
4491
4492         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
4493         GtkSettings parameter to GtkRcStyle::parse.
4494
4495         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
4496         Add two new settings gtk-theme-name, gtk-key-theme-name,
4497         for RC files that are loaded by name after reading
4498         the default RC files.
4499         
4500         * gtk/gtkrc.c: Allow priorities for styles, as wll as
4501         bindings.
4502
4503         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
4504         and use it by default for RC files loaded via 
4505         gtk-theme-name, gtk-key-theme-name.
4506
4507         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
4508         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
4509         tests/testgtkrc: Require pathnames to be absolute.
4510
4511         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
4512         the source when parsing, since the operation of looking up a
4513         pixmap from an RC file depends on the parsing context.
4514
4515         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
4516         reset RC styles on all widgets when files are reparsed.
4517
4518         * tests/testgtk.c (create_rc_file) 
4519           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
4520         Simplify, now that gtk_rc_reparse_all() resets styles on
4521         all widgets itself.
4522
4523         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
4524         return value.
4525
4526         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
4527         GtkSettings argument.
4528
4529         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
4530         gtk_settings_get_global().
4531
4532         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
4533         to get the appropriate GtkSettings for a widget. (For now,
4534         just gets the default GtkSetttings.) 
4535
4536         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
4537           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
4538         changes.
4539
4540         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
4541         getting a style for a path without actually having a widget.
4542         (Allows using a style for a subpart of a widget, for
4543         example.)
4544
4545         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
4546         the RC files to be reloaded for just one GtkSettings
4547         (not sure how useful this really is.)
4548
4549         * gtk/gtkrc.h: Deprecate
4550         gtk_rc_add_widget_name/widget_class/class_style
4551
4552 2001-06-30  Alex Larsson  <alexl@redhat.com>
4553
4554         * gdk/linux-fb/gdkinput-none.c:
4555         * gdk/linux-fb/gdkinput.c:
4556         * gdk/linux-fb/gdkinputprivate.h:
4557         Convert GdkDevice to a GObject.
4558
4559         * linux-fb/gdkprivate-fb.h:
4560         * linux-fb/gdkvisual-fb.c:
4561         Convert GdkVisual to a GObject.
4562
4563 2001-06-29  Alex Larsson  <alexl@redhat.com>
4564
4565         * gdk/gdkvisual.h:
4566         * gdk/gdkcolor.c:
4567         * gdk/x11/gdkx.h:
4568         * gdk/x11/gdkvisual-x11.c:
4569         Convert GdkVisual to a GObject.
4570
4571         * gdk/gdkinput.h:
4572         * gdk/gdkevents.c:
4573         * gdk/x11/gdkinputprivate.h:
4574         * gdk/x11/gdkinput-gxi.c:
4575         * gdk/x11/gdkinput-none.c:
4576         * gdk/x11/gdkinput-x11.c:
4577         * gdk/x11/gdkinput-xfree.c:
4578         * gdk/x11/gdkinput.c:
4579         Convert GdkDevice to a GObject.
4580
4581 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
4582
4583         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
4584         to just plain new, fixing the number of columns, and column types
4585         at creation time.
4586
4587         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
4588
4589         * gtk/gtkcellrenderertext.c
4590         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
4591         height to a specific font.
4592
4593         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
4594
4595         * tests/*c: change to work with new store models.
4596
4597 2001-06-29  Havoc Pennington  <hp@redhat.com>
4598
4599        * Throughout: fixes to compile with G_DISABLE_COMPAT
4600         (s/g_signal_connectc/g_signal_connect/,
4601         s/g_signal_newc/g_signal_new/,
4602         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
4603
4604 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
4605
4606         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4607         add path argument to selection callbacks.
4608
4609 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
4610
4611         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
4612         walk through a model in a depth first manner, with the option to
4613         break out.
4614
4615 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
4616
4617         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
4618         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
4619         column and follow it when draged, rather than a location in the
4620         view. "expander_column" property and drawing functions changed
4621         accordingly.  Fixes bug #55942.
4622
4623         (gtk_tree_view_{set,get}_expander_column): Now works with a
4624         GtkTreeViewColumn* instead of int.
4625
4626 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
4627
4628         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
4629
4630 2001-06-28  Havoc Pennington  <hp@pobox.com>
4631
4632         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
4633         image data to the screen, using a server grab to avoid race
4634         conditions.
4635
4636         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
4637         check for NULL return from gtk_image_new_from_stock(), it never
4638         returns NULL.
4639         (gtk_item_factory_create_item): fix bug where we parsed the stock
4640         ID as an inline pixbuf
4641
4642         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
4643
4644         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
4645         support (should be using binding set here)
4646
4647         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
4648         support (should be using binding set here)
4649
4650         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
4651         support
4652
4653         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
4654
4655         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
4656
4657         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
4658
4659         * gtk/gtkimcontextsimple.c
4660         (gtk_im_context_simple_filter_keypress): keypad
4661
4662         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
4663
4664         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
4665
4666         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
4667
4668         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
4669         should be binding-setted)
4670
4671         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
4672
4673         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
4674
4675         * gtk/gtkcalendar.c: numeric keypad fixes
4676
4677         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
4678         support
4679
4680         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
4681         screwup
4682
4683         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
4684         clip the render area to the drawable's clip region in advance,
4685         so we don't get data from the server that we don't need.
4686
4687         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4688         check return value of gdk_pixbuf_get_from_drawable(), fall back 
4689         to bilevel alpha if we can't get the pixbuf to composite against.
4690
4691         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
4692
4693         * gdk/gdkimage.c (gdk_image_get_colormap): add
4694         gdk_image_set_colormap, gdk_image_get_colormap
4695
4696         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
4697         take a region of the image, instead of converting the entire
4698         image.
4699
4700         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
4701         keybinding signal. Add default bindings for it. Add default
4702         handler for show_help that shows the tooltip for the widget.
4703
4704         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
4705         "close" keybinding signal, remove key press handler.
4706
4707         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
4708         it's not our usual practice to leave a deprecated function around
4709         with a runtime warning, plus we don't want it to appear in docs,
4710         plus if we make them yellow no one will want to change them
4711         anyhow.
4712
4713 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
4714
4715         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
4716         GTK_WIDGET_REALIZE() for resize queueing.
4717
4718         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
4719         GTK_WIDGET_REALIZE() for post event delivery destruction upon
4720         GDK_DESTROY.
4721         
4722         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
4723         sompensate for former (pre-2.0) connect_after() facility.
4724         (gtk_widget_send_expose): 
4725         (gtk_widget_event): assert the widget is realized, since event delivery
4726         to non-realized widgets is essentially a bug. event handlers should
4727         be able to unconditionally rely on widget->window (unless they
4728         emit events on their own which can trigger widget destruction).
4729         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
4730         logic. event delivery happens as follows:
4731         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
4732         b) if !was_handled in (a) and the widget is still realized, emit event-
4733            specific signal (RUN_LAST handler). returns was_handled.
4734         c) emission of GtkWidget::event-after for notification if the widget is
4735            still realized (regardless of was_handled from previous stages, no
4736            class handler). no return value.
4737         d) was_handled gets passed on to caller, to determine further
4738            propagation. if the widget got unrealized meanwhile, was_handled
4739            is returned as TRUE.
4740
4741         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
4742         gdk_event_get_coords().
4743
4744 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
4745
4746         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
4747         age 0, binary age 0. depend on glib 1.3.7.
4748
4749         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
4750
4751         * gtk/gtkmenubar.c: same here.
4752         
4753         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
4754
4755         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
4756
4757         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
4758         
4759         * gtk/gtkmenubar.c (add_to_window): likewise.
4760         
4761         * gtk/gtktextbtree.c: and here...
4762         
4763         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
4764         
4765         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
4766         
4767         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
4768         
4769         * gtk/gtktreeviewcolumn.c:
4770         (_gtk_tree_view_column_set_tree_view): yet again.
4771
4772         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
4773         signal connections without g_signal_connect_data().
4774         
4775         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
4776         demo of the matter.
4777         
4778         * demos/testpixbuf.c (main): running out of equality phrases for the
4779         ChangeLog, but had to adapt connections here as well.
4780         
4781         * demos/testanimation.c (progressive_timeout): and for the fun of it,
4782         tackled this the same way.
4783         
4784         * tests/testtext.c (create_view): ok, it's becoming a pain at this
4785         point, but had enough enery for one more fix.
4786
4787         * tests/testtreecolumns.c (main): stand up man, do your work!
4788
4789         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
4790         fix, either that's been all of it or CVS gtk is broken yet again.
4791         
4792 2001-06-29  James Henstridge  <james@daa.com.au>
4793
4794         The following changes correspond to bug #56812
4795
4796         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
4797         code for GdkDevice.
4798
4799         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
4800         GdkCursor.
4801
4802 2001-06-19  Havoc Pennington  <hp@pobox.com>
4803
4804         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
4805         for mapping a window without fooling with stacking order, but
4806         updating the "withdrawn" flag
4807
4808         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
4809         filtering as soon as possible, moving move resize and wmspec_check
4810         handling after the event filter.  Make default filter apply to all
4811         events, not just those with no GdkWindow wrapped around the X
4812         window. Fix a FIXME about how the window could be a pixmap using 
4813         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
4814
4815         Also, be robust against events not on a known GdkWindow.
4816
4817         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
4818         gdk_x11_ungrab_server): export reference-counted server grabs, so
4819         other people can grab server over a GDK function that also does
4820         so.
4821
4822 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
4823
4824         * gtk/gtktreeviewcolumn.c
4825         (gtk_tree_view_column_pack_start_cell_renderer): New function to
4826         reflect that you can (hypothetically) pack cell renderers into a
4827         column.
4828         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
4829         (gtk_tree_view_column_cell_is_visible): Move more functionality to
4830         the column.
4831         (gtk_tree_view_column_cell_can_focus): Move more functionality to
4832         the column.
4833
4834         * gtk/gtktreeview.c: Move to use new column-packing code.
4835         (gtk_tree_view_real_expand_row): remove totally braindead code.
4836         (gtk_tree_view_real_collapse_row): ditto.
4837
4838 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
4839
4840         * gtk/gtktreeviewcolumn.c: Fix a typo.
4841         
4842 2001-06-26  Joel Becker  <jlbec@evilplan.org>
4843
4844         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
4845           at the end of the file
4846
4847 2001-06-26  Havoc Pennington  <hp@redhat.com>
4848
4849         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
4850
4851 2001-06-26  Havoc Pennington  <hp@redhat.com>
4852
4853         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
4854         property
4855
4856 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
4857
4858         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
4859         stupid missing statement
4860
4861         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
4862         private function for ATK.  It notifies you of how many _visible_
4863         children are deleted when a node is deleted.  Should be used by
4864         atk only.
4865
4866 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
4867
4868         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
4869         Use new pango_context_get_metrics() to fix problems
4870         with font lists in descriptions. (#56184, reported by
4871         Jonas Borgström)
4872
4873 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
4874
4875         * gtk/gtkiconfactory.c:
4876         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
4877         item factory so inlined pixbufs actually work.
4878
4879 2001-06-25  Havoc Pennington  <hp@redhat.com>
4880
4881         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
4882         s/RESIZEABLE/RESIZABLE/
4883
4884         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
4885
4886 2001-06-25  Alexander Larsson  <alexl@redhat.com>
4887
4888         * configure.in:
4889         Added --enable-fbmanager. This is some experimental code
4890         that lets several GtkFB apps coordinate their access to the
4891         framebuffer.
4892         
4893         * acconfig.h:
4894         Added ENABLE_FB_MANAGER.
4895
4896         * gdk/linux-fb/Makefile.am:
4897         Added gdkfbmanager and gdkfbswitch.
4898
4899         * gdk/linux-fb/gdkkeyboard-fb.c:
4900         * gdk/linux-fb/gdkmouse-fb.c:
4901         * gdk/linux-fb/gdkprivate-fb.h:
4902         Split device init and open so that
4903         they can be opened and closed while switched
4904         away.
4905
4906         * gdk/linux-fb/gdkmain-fb.c:
4907         Add the basic manager communication.
4908
4909         * gdk/linux-fb/gdkrender-fb.c:
4910         Don't update to the shadow fb if we're
4911         blocked by the fb manager.
4912
4913 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
4914
4915         * docs/Changes-2.0.txt: Add note about child property
4916         changes.
4917
4918 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
4919
4920         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
4921         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
4922
4923         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
4924         with un'reffing wrong list reported by Jeff Franks.
4925
4926         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
4927
4928         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
4929         for the default icon. Remove inline XPM.
4930
4931         * gtk/gtkstock.h gtk/gtkiconfactory.c:
4932         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
4933         is used for GTK_STOCK_DND, but it is a bit too small.)
4934
4935         * gtk/stock-icons/stock_dnd_multiple.png
4936         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
4937
4938         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
4939         TRUE when starting a drag. In other cases, we are
4940         just observing. (#52995)
4941
4942         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
4943         function to set the icon for a drag from a GdkPixbuf
4944         or stock ID.
4945
4946         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
4947         Likewise, for drag sources.
4948
4949         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
4950         (Now should be done using the stock system.)
4951
4952 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
4953
4954         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
4955         Removed - didn't work and not particularly useful anyways
4956         if it did. 
4957
4958 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
4959
4960         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
4961         introduced last night that was making things decidedly not work.
4962
4963         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
4964         so that we have getter/setter pairing everywhere it makes
4965         sense. (#55767)
4966
4967         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
4968         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
4969         deprecated compat macro. (#55516)
4970
4971         * gtk/gtklabel.[ch]: Add functions
4972         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
4973         gtk_label_set_label(), which mirror the property API for GtkLabel.
4974         Make gtk_label_get_attributes() only reflect the attributes
4975         set by gtk_label_set_attributes.
4976
4977         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
4978         from gtk_notebook_set_page().
4979
4980 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
4981
4982         * configure.in: Fix tests for XShm.h.
4983
4984         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
4985         gdk_image_new() by use of goto, properly use g_object_unref().
4986
4987 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
4988
4989         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
4990         calls, as GdkImage is an object. these should be g_obejct_unref()
4991         instead but that won't work because of the g_error() statement
4992         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
4993         to spot these places.
4994
4995 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
4996
4997         * modules/input/gtkimcontextxim.c: Fixup some problems with 
4998         text length handling in error cases.
4999
5000         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
5001         a bit to make test actually warn on attempt to allocation
5002         a negative size. (#56101, Matthias Clasen)
5003
5004 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
5005
5006         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
5007         noticed by Brian Cameron.
5008         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
5009         Cameron.
5010
5011 2001-06-22  Hans Breuer  <hans@breuer.org>
5012
5013         * gdk/gdk.def : updated externals
5014
5015         * gdk/win32/gdkdrawable-win32.c : corrected some casts
5016         in GDK_NOTEs
5017
5018         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
5019         to translate coordinates to the internal > 16 bit system
5020         Try to handle WM_WINDOWPOSCHANGED to get better performance for
5021         when moving/resizing
5022
5023         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
5024         and gdk_keymap_get_direction (). The latter is untested for
5025         the RTL case
5026
5027         * gtk/gtk.def : updated externals
5028
5029         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
5030         from pango_language_from_string (), not an already freed pointer
5031
5032         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
5033         binary (-kb) to be useable on windoze
5034  
5035 2001-06-21  Alexander Larsson  <alexl@redhat.com>
5036
5037         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
5038         Update to new PangoLanguage changes.
5039         
5040         * gtk/gtkwindow-decorate.c:
5041         * gtk/gtkwindow.[ch]:
5042         Added setting argument to gtk_window_set_has_frame ()
5043         
5044 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
5045
5046         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
5047         the case without XKB properly.
5048
5049         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
5050         unused gtk_rc_auto_parse variable.
5051
5052         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
5053         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
5054         longer needed with GdkPixbuf.
5055
5056         * gtk/gtkrc.c (_gtk_rc_init): Make private.
5057
5058 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
5059
5060         * gtk/gtkentry.h: Mark deprecated functions with
5061         GTK_DISABLE_DEPRECATED.
5062
5063 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
5064
5065         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
5066
5067         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
5068
5069         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
5070           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
5071           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
5072           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
5073           to recent changes in Pango.
5074
5075         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
5076           to test whether the basic engine honors them.
5077
5078 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
5079
5080         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
5081         gtk_container_child_get_property().
5082
5083 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
5084
5085         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
5086         (gtk_tree_view_move_cursor_page_up_down): implement.
5087
5088 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
5089
5090         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
5091         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
5092         don't use automatic fixed size buffer for printf-ing floats, doubles
5093         can expand to really _huge_ strings, use g_strdup_printf() instead.
5094
5095 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
5096
5097         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
5098         construct property in 1.2 and still needs to be.
5099
5100         * gtk/gtkwidget.c: "composite_child" is not a settable property.
5101
5102 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
5103
5104         * gtk/gtkliststore.c (gtk_list_store_clear): 
5105         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
5106         clear a model.
5107
5108 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
5109
5110         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
5111
5112         * gtk/Makefile.am:
5113         * gtk/gtk.h: disabled GtkPacker compilation.
5114
5115         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
5116
5117         * gtk/gtknotebook.c:
5118         * gtk/gtktable.c:
5119         * gtk/gtkbox.c: ported this over to child properties.
5120
5121         * gtk/gtksettings.c: fetch class properties via
5122         g_object_class_list_properties().
5123
5124         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
5125         child arg interface. use gobjectnotifyqueue.c for child property
5126         notification.
5127
5128         * gtk/gtkwidget.[hc]: provide necessary means for container child
5129         properties, i.e. ::child_notify signal,
5130         gtk_widget_freeze_child_notify(),
5131         gtk_widget_child_notify(),
5132         gtk_widget_thaw_child_notify().
5133
5134         * tests/testgtk.c: removed inferior property handling code, for
5135         property editing, a generic module should be used, and GLE
5136         coincidentally fullfills that purpose.
5137
5138         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
5139         needs to be adapted to g_object_class_list_properties() before this
5140         builds again.
5141
5142 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
5143
5144         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
5145         test if a node is expanded.
5146
5147 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
5148
5149         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
5150         where collapsing a selected row would result in the cursor/anchor
5151         getting screwed up.
5152
5153 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
5154
5155         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
5156         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
5157         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
5158         Now I can really reorder/sort all Store widgets.  treesorttest
5159         seems to just work now.
5160         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
5161         testtreesort worked through a big coincidence all this time.
5162         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
5163         code.
5164         * tests/testtreecolumns.c: Big 'ol warning at the top letting
5165         people know that this code should never ever ever be copied.
5166
5167 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
5168
5169         * gtk/gtkwindow.h: Fixed a small typo, it should be
5170         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
5171         on line 134.
5172
5173 2001-06-14  Havoc Pennington  <hp@redhat.com>
5174
5175         Docs fixups, and:
5176         
5177         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
5178         GTK_DISABLE_DEPRECATED
5179
5180 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
5181
5182         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
5183         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
5184         finish it off tonight, though it basically works now when it's a
5185         list.  Also, I have a sinking feeling neither GtkTreeStore or
5186         GtkListStore actually resort when adding a new item.  I'll look
5187         into it.
5188
5189 2001-06-14  Havoc Pennington  <hp@redhat.com>
5190
5191         * demos/gtk-demo/main.c (load_file): fix bug identified by
5192         warnings I just added to gtktextbuffer
5193
5194 2001-06-14  Havoc Pennington  <hp@redhat.com>
5195
5196         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
5197
5198         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
5199
5200         * gtk/gtktextbtree.c: don't leak node data all over the place.
5201
5202         * demos/gtk-demo/main.c (main): create fontify tags for the right
5203         buffer
5204
5205         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
5206         to mention tags in the same table can't have the same name,
5207         suggested by Skip Montanaro
5208
5209 2001-06-11  Havoc Pennington  <hp@redhat.com>
5210
5211         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
5212         for trying to add two tags with same name to the tag table
5213
5214         * demos/gtk-demo/main.c (main): fix colors ;-)
5215
5216 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
5217
5218         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
5219         that allows grouping together multiple windows so that grabs
5220         within that set of windows only affect those windows.
5221
5222         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
5223         signal for notification when a widget becomes shadowed
5224         by a grab or is no longer shadowed by a grab.
5225
5226         * gtk/gtkwidget.c (gtk_widget_propagate_state)
5227           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
5228         insenstive widgets to maintain a grab.
5229
5230 2001-06-14  Alexander Larsson  <alexl@redhat.com>
5231
5232         * docs/README.linux-fb:
5233         Add some example config files that can be used with the URW fonts.
5234         
5235         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
5236         Set up the color ramps for DirectColor mode.
5237
5238 2001-06-11  Havoc Pennington  <hp@redhat.com>
5239
5240         * Release 1.3.6
5241          
5242 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5243
5244         * gdk/linux-fb/gdkwindow-fb.c:
5245         Unify shaped window code and make it repaint the area that used
5246         to be part of the shape, but isn't anymore.
5247
5248 2001-06-11  Havoc Pennington  <hp@redhat.com>
5249
5250         * NEWS: Updates
5251
5252         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
5253
5254         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
5255         
5256 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5257
5258         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
5259         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
5260         passes zero instead, so do we.
5261         
5262 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5263
5264         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5265         Deep copy dash_list too.
5266         (_gdk_fb_gc_new): Set default cap_style before
5267         setting values.
5268
5269 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
5270
5271         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
5272         gdk_keymap_get_direction): New functions.
5273
5274 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
5275
5276         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
5277         gtk_tree_model_get_flags by adding a second flag for atk.
5278
5279         * gtk/gtktreemodel.c: make cursor behavior interact better with
5280         mouse presses.
5281
5282 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
5283
5284         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
5285         expand_row/collapse_row to be 2 signals each -- test_expand_row
5286         and row_expanded as well as test_collapse_row and row_collapsed.
5287
5288 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
5289
5290         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
5291         signal name to be changed instead of selection_changed.
5292
5293 2001-06-08  Havoc Pennington  <hp@redhat.com>
5294
5295         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
5296         "scroll_offset" property for notification when the layout offsets
5297         may have changed
5298         (gtk_entry_adjust_scroll): add notify for scroll_offset
5299         (gtk_entry_layout_index_to_text_index): function to compensate for
5300         preedit string when doing coordinate stuff on the entry's layout
5301         (gtk_entry_text_index_to_layout_index): inverse function
5302         (gtk_entry_get_layout_offsets): hook to get current position of
5303         the layout      
5304         (gtk_entry_get_layout): hook to get the layout itself.
5305
5306         * gtk/gtklabel.c (gtk_label_get_layout): new function
5307
5308 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
5309
5310         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
5311         keybinding.
5312         (gtk_tree_view_focus): Fix merge conflict.
5313
5314 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
5315
5316         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
5317         clean up cursor handling.
5318
5319 2001-06-08  Havoc Pennington  <hp@redhat.com>
5320
5321         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
5322         function
5323
5324         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
5325         this function
5326
5327 2001-06-08  Alex Larsson  <alexl@redhat.com>
5328
5329         * gtk/gtkcompat.h.in:
5330         Added compat macros for all old GTK_TYPE_GDK_xxx types.
5331         Fixes bug #52892
5332
5333 2001-06-08  Havoc Pennington  <hp@redhat.com>
5334         
5335         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
5336         parent still
5337
5338 2001-06-08  Havoc Pennington  <hp@redhat.com>
5339
5340         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
5341         don't call g_list funcs on GSList
5342
5343         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
5344         gtk_container_focus(), since some widgets have focusable locations
5345         which are not other widgets. These widgets should not have to be 
5346         containers just to manage the focus. For example, GtkHSV is
5347         currently a container for no good reason. Also, this cleans
5348         up the "if (is_container && is_sensitive && is_drawable)
5349         container_focus ()" mess in widget implementations.
5350
5351         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
5352         function, and have it just call gtk_widget_child_focus().
5353
5354         * gtk/gtkhsv.c: derive from widget not container
5355         
5356         Throughout: fix to reflect GtkContainer::focus change
5357         
5358 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
5359
5360         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
5361         range.  Fix bug #55921
5362
5363         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
5364         (#55920).
5365
5366 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
5367
5368         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
5369         and gdk_keymap_get_current_direction().
5370
5371         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
5372           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
5373         the current locked group, use it to set the keymap
5374         direction.
5375
5376         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
5377         to determine whether we draw a split cursor or use
5378         a jumping cursor based on the current direction.
5379
5380         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
5381         Obey the split cursor setting. 
5382
5383 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
5384
5385         * gtk/gtkimmulticontext.c (activate_cb): Only activate
5386         when toggling on, not when toggling off... (#55906)
5387
5388 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
5389
5390         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
5391         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
5392         in docs. (#55812, Vitaly Tishkov)
5393
5394 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
5395
5396         * demos/gtk-demo/main.c (create_tree): Changed signal name from
5397         selection_changed to changed in signal connection to GtkTreeSelection,
5398         also used g_signal_connectc since GtkTreeSelection is now a GObject.
5399
5400 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
5401
5402         * gtk/gtktreeselection.c: Now it's a GObject instead of a
5403         GtkObject.  The GtkTreeSelection::selection_changed signal is now
5404         the GtkTreeSelection::changed signal.
5405
5406         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
5407         object.
5408
5409         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
5410         object.
5411
5412 2001-06-07  Havoc Pennington  <hp@redhat.com>
5413
5414         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
5415
5416 2001-06-07  Havoc Pennington  <hp@redhat.com>
5417         
5418         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
5419         (not tested yet because with absolute path to srcdir I can't build
5420         atk, but it was broken anyway so this may help) 
5421
5422 2001-06-07  Havoc Pennington  <hp@redhat.com>
5423
5424         * configure.in: output m4macros/Makefile
5425         
5426 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
5427
5428         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
5429         buttons.  Fixes #55460 reported by matthiasc@poet.de.
5430
5431 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
5432
5433         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
5434         expansion/collapsing so it only happens in one place.
5435         (gtk_tree_view_real_expand_row): ditto.
5436
5437 2001-06-07  Havoc Pennington  <hp@redhat.com>
5438
5439         * tests/Makefile.am: add missing -I flag
5440
5441         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
5442
5443         * configure.in: use pkg-config to see if GModule is
5444         supported; fix to properly turn on included loaders 
5445         when GModule isn't supported; don't use AC_CHECK_LIB 
5446         when libs are not installed yet
5447
5448         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
5449
5450         * Makefile.am (SUBDIRS): add m4macros subdir
5451
5452         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
5453         dependencies also.
5454
5455 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
5456
5457         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
5458         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
5459
5460 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
5461
5462         * gtk/gtktreeview.c
5463         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
5464         bindings to expand and collapse rows.
5465         (gtk_tree_view_real_select_cursor_parent): New key binding.
5466         (gtk_tree_view_real_toggle_cursor_row): New key binding.
5467
5468         * gtk/gtkmarshal.list: new
5469         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
5470
5471 2001-06-06  Havoc Pennington  <hp@redhat.com>
5472
5473         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
5474
5475         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
5476         Down to move visually rather than logically, since it confuses 
5477         people. Add -/+ and Ctrl--/+ bindings for logical movement.
5478
5479 2001-06-06  Alex Larsson  <alexl@redhat.com>
5480
5481         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5482         Fix up error messages.
5483
5484 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
5485
5486         * gtk/gtktooltips.h: Include gtkwidget.h 
5487         (#55798, Karl Nelson)
5488
5489         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
5490         a valid latin-1 character. (Marc Lehmann, #35467)
5491
5492         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
5493         (Marc Lehmann, #35467)
5494         
5495 2001-06-05  Alex Larsson  <alexl@redhat.com>
5496
5497         * demos/gtk-demo/appwindow.c (do_appwindow):
5498         Don't swap the order of the args to gtk_widget_destroyed.
5499
5500         * tests/testgtk.c (destroy_properties):
5501         Don't crash when the properties window is destroyed.
5502
5503         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
5504         Use with_mnemonics to handle the case of stock items with
5505         underscores in them.
5506
5507 2001-06-05  Havoc Pennington  <hp@redhat.com>
5508
5509         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
5510         gtk_text_iter_reorder
5511
5512 2001-06-05  Havoc Pennington  <hp@redhat.com>
5513
5514         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
5515
5516 2001-06-05  Havoc Pennington  <hp@redhat.com>
5517
5518         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
5519         to the range that was set
5520
5521         * gtk/gtkrange.c: add value_changed signal, primarily 
5522         intended for use with GtkScale
5523         (gtk_range_set_increments): new function
5524         (gtk_range_set_range): new function with weird name
5525         (gtk_range_set_value): new function
5526         (gtk_range_get_value): new function
5527
5528         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
5529         from gtk_spin_button_get_value_as_float(). Compat #define
5530         added for get_value_as_float.
5531
5532         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
5533
5534         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
5535
5536 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
5537
5538         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
5539
5540 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
5541
5542         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
5543
5544         * tests/testgtk.c (create_tooltips): Remove usage of
5545         gtk_widget_set().
5546
5547 2001-06-05  Havoc Pennington  <hp@redhat.com>
5548
5549         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
5550
5551         Applying patch from Jeff Franks, with function docs added.
5552         
5553         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
5554         remove call to set_mnemonic_widget, change docs a bit.  
5555
5556         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
5557         new function
5558
5559         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
5560         new function
5561
5562         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
5563
5564         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
5565         function
5566         (gtk_radio_button_new_with_mnemonic_from_widget): new function
5567
5568         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
5569         new function
5570
5571         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
5572         function        
5573
5574         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
5575         auto-selection of mnemonic widget.
5576
5577 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
5578
5579         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
5580         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
5581         (gtk_tree_view_column_set_min_width): ditto.
5582
5583 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
5584
5585         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
5586         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
5587
5588 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
5589
5590         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
5591         gtk_clist_thaw().
5592
5593 2001-06-04  Havoc Pennington  <hp@pobox.com>
5594
5595         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
5596 r       eleases for buttons 6, 7
5597
5598 2001-06-04  Havoc Pennington  <hp@redhat.com>
5599
5600         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
5601         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
5602         #55562
5603
5604 2001-06-04  Havoc Pennington  <hp@redhat.com>
5605
5606         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
5607         where text_view->layout == NULL by assuming its size is 0, 
5608         i.e. same as if we haven't done any reflow. Reported by 
5609         Hidetoshi Tajima #55448 
5610
5611 2001-06-04  Havoc Pennington  <hp@redhat.com>
5612
5613         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
5614         and 7 for scroll left/right, from Thomas Broyer
5615
5616 2001-05-10  Havoc Pennington  <hp@redhat.com>
5617
5618         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
5619         we need to parse the xsetting as if it were an RC file string.
5620
5621         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
5622         value of palette from settings, not from static variable
5623
5624         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
5625         xsettings translation table
5626
5627         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
5628         hardcoding the toolbar style conflicts with new customizable 
5629         toolbar style philosophy
5630         (gtk_toolbar_class_init): add settings for default toolbar style;
5631         these are used unless the app specifically forces a toolbar style
5632
5633         * gtk/gtksettings.c (settings_install_property_parser): only
5634         return at the start if we warn and parser == NULL
5635
5636         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
5637         palette changed handler so we don't notify dead color selections
5638
5639         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
5640         xthickness/ythickness of 0 or 1 properly 
5641         (gtk_default_draw_resize_grip): clear the background behind the
5642         resize grips, and align to bottom right if we square the 
5643         area to be drawn.
5644
5645         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
5646         statusbar label to 1, so it doesn't make toplevels resize oddly
5647         (gtk_statusbar_size_request): add grip size to request
5648         (gtk_statusbar_size_allocate): hack so the hbox still works with 
5649         the grip size in the request
5650
5651         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
5652         bug where showing all on a toplevel makes the toolbar 
5653         button text appear despite the toolbar mode
5654
5655         * gtk/gtkmenubar.c: add internal padding style property
5656
5657         * gtk/gtktoolbar.c: Add internal padding style property; add
5658         shadow type style property
5659
5660         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
5661         state; and put Container::border_width outside the frame
5662
5663         * gtk/gtktextview.c: don't draw focus rectangle if we're in
5664         interior focus mode, we just use blinking cursor
5665
5666 2001-06-04  Havoc Pennington  <hp@redhat.com>
5667
5668         * configure.in: Make gdk-pixbuf have same version number as GTK
5669
5670 2001-06-04  Havoc Pennington  <hp@redhat.com>
5671
5672         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
5673         digits greater than 6. If there actually are limits (which there
5674         likely aren't), should clamp to them not warn.
5675         (gtk_spin_button_new_with_range): don't take log of 0
5676         (gtk_spin_button_size_request): use digits to compute size
5677         request, rather than step increment.
5678
5679         * tests/testgtk.c (create_spins): test larger values of digits
5680         
5681         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
5682         font on map not expose, so we don't get weirdness during scrolling
5683
5684 2001-06-04  Havoc Pennington  <hp@redhat.com>
5685
5686         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
5687         Sam Solon, bug #54577, update value even if not drawable.
5688
5689 2001-06-04  Havoc Pennington  <hp@redhat.com>
5690
5691         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
5692         SCROLL_LEFT, reported by Thomas Broyer.
5693
5694 2001-06-04  Havoc Pennington  <hp@redhat.com>
5695
5696         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
5697         Process updates immediately, to prevent funny lag effect
5698         when scrolling, at some mild potential efficiency cost.
5699
5700 2001-06-04  Havoc Pennington  <hp@redhat.com>
5701
5702         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
5703         slider on the click.
5704
5705 2001-06-03  Havoc Pennington  <hp@pobox.com>
5706
5707         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
5708         hscale/vscale details, so we can use it for scrollbar as well.
5709
5710         * tests/testgtk.c (reformat_value): honor digits from GtkScale
5711
5712         * gtk/gtkenums.h (GtkTroughType): Remove this enum
5713         (GtkScrollType): add START and END from GtkTroughType
5714
5715         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
5716         its x/y arguments
5717
5718         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
5719         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
5720         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
5721         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
5722         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
5723
5724         Notable changes in the process:
5725          
5726         - stepper_size style property is the height for vertical 
5727           ranges, width for horizontal; the other dimension matches
5728           the trough size
5729         - add ability to do NeXT-style steppers (and several other styles
5730           that don't make any sense)
5731         - added min_slider_length, fixed_slider_length properties to
5732           GtkScrollbar
5733         - cleaned some private (or at least useless) functions out of
5734           gtkscale.h    
5735         - moved bindings to GtkScale from subclasses, even arrow keys,
5736           since blind users don't know scale orientation.
5737         - change move_slider action signal to use new GtkScrollType,
5738           remove GtkTroughType argument
5739         - digits rounds the values a range will input to the given 
5740           number of decimals, but will not try to force adjustment 
5741           values set by other controllers. That is, we no longer
5742           modify adjustment->value inside a value_changed handler.
5743         - added getters for GtkScale setters
5744         - middle-click begins a slider drag
5745         
5746 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
5747
5748         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
5749         getting the focus code to work.
5750         (gtk_tree_view_class_init): Add a bunch of keybindings.
5751
5752         * gtk/gtktreeviewcolumn.c
5753         (gtk_tree_view_column_set_cell_data_func):
5754         s/GtkCellDataFunc/GtkTreeCellDataFunc.
5755         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
5756         of "properties_changed" to help justify the death of the latter
5757         signal. (-:
5758
5759         * tests/testtreefocus.c (main): Let some columns be focussable to
5760         test focus better.
5761
5762 2001-06-01  Havoc Pennington  <hp@redhat.com>
5763
5764         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
5765         
5766         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
5767         overwrite in overwrite mode if we already deleted the selection
5768         and replaced it with new text.  
5769
5770         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
5771         selection to an empty range, clear the clipboard if we owned it.
5772         (gtk_label_set_selectable): give up selection if we become
5773         unselectable.
5774         (gtk_label_state_changed): override state changed to unselect text
5775         when insensitive
5776         (get_text_callback): add paranoia check that indexes aren't
5777         outside of label->text
5778         (gtk_label_select_region): make -1 for start_offset mean "end of
5779         label," for consistency with GtkEditable
5780
5781         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
5782         GTK_DIALOG_NO_SEPARATOR flag
5783
5784 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
5785
5786         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
5787         notifications on non-existant "enable_arrow_keys".
5788         (#53753, Skip Montanaro)
5789
5790 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
5791
5792         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
5793         GDK_TYPE_RECTANGLE.
5794
5795         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
5796         of allocation argument be GDK_TYPE_RECTANGLE.
5797
5798 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
5799
5800         * gtk/gtkoptionmenu.c: Account for the fact that the border
5801         width is _outside_ the window. (Fixes #54585, bug found
5802         by Bastien Nocera.)
5803
5804 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
5805
5806         * gtk/gtksettings.c (gtk_settings_get_property): Validate
5807         value from GDK settings against parameter spec.
5808
5809         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
5810         to temporary values and use g_value_transform(), since
5811         thinking that GValue was going to be easy or efficient
5812         to use was, of course, a mistake.
5813
5814         * gtk/gtksettings.c: Add cursor blink setting.
5815         
5816         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
5817
5818         * gtk/gtkentry.c: Add cursor blinking.
5819
5820         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
5821         cursor blink global settings.
5822
5823         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
5824         for :text_position in places where it is missing.
5825
5826 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
5827
5828         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
5829
5830 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
5831
5832         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
5833         not pkg-config. (#51032)
5834
5835         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
5836         (fixes #51952, James Henstridge)
5837         
5838 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
5839
5840         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
5841         Rename to the more correct gtk-go-up.
5842
5843         * gtk/stock-icons/stock_menu_sort_ascending.png:
5844         Added new file.
5845         
5846         * gtk/stock-icons/stock_menu_sort_descending.png:
5847         Changed to show descending instead of ascending.
5848
5849         * gtk/gtkiconfactory.c:
5850         Added menu size icon to sort ascending.
5851
5852         * gtk/stock-icons/Makefile.am:
5853         Added stock_menu_sort_ascending.png.
5854         
5855         * gtk/gtkseparatormenuitem.c:
5856         Use correct typenames.
5857
5858 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
5859
5860         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
5861         gulong as in GSignal.
5862
5863 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
5864
5865         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
5866         instances of GtkCellRenderer in code (all but dnd icon code).
5867         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
5868         there, and I can do multiple Cells per column.
5869
5870         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
5871
5872         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
5873         when model was unreffed prior to removing the row reference.
5874
5875 2001-05-25  Havoc Pennington  <hp@redhat.com>
5876
5877         * gtk/gtkiconfactory.c: fix so that default icons are created if 
5878         you call gtk_stock_list_ids()
5879
5880         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
5881         in list
5882
5883 2001-05-25  Havoc Pennington  <hp@redhat.com>
5884
5885         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
5886         set can render without falling back to missing image icon
5887
5888         * gtk/gtktextview.c (gtk_text_view_size_request): request full
5889         size of text, instead of random values
5890
5891         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
5892         size of tree view, instead of random values
5893
5894         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
5895         image in an appropriate size
5896
5897         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
5898         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
5899
5900         Throughout: fix GTK_STOCK_BUTTON_ instances
5901         
5902         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5903         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
5904         Add a bunch of new stock items/icons
5905
5906         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
5907         new function, convenience for inserting columns with a data func
5908
5909         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
5910         (_gtk_icon_factory_list_ids): use list of all factories to
5911         generate a list of all known IDs
5912
5913         * gtk/gtkstock.c (gtk_stock_list_ids): replace
5914         gtk_stock_list_items() with a function that returns all IDs known
5915         including those for GtkIconFactory.
5916
5917 2001-05-25  Hans Breuer  <hans@breuer.org>
5918
5919         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
5920         work -> check boxes and radio buttons are drawn now, even on win9x.
5921         Improved line settings a bit, still no clue how to get really dotted
5922         lines on win9x, on NT it's PS_ALTERNATE.
5923
5924         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
5925         GDK_HINT_MIN_SIZE as well
5926
5927         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
5928
5929         * gtk/gtk.def : updated
5930
5931         * gtk/gtktreeprivate.h : change column_drop_func to be a function
5932         pointer not a function pointer pointer
5933
5934         * tests/testdnd.c : include <stdlib.h> for putenv prototype
5935
5936         * tests/testsocket.c : made it compile on win32 again
5937
5938         * tests/makefile.msc : one more test-app uses prop-editor.obj
5939
5940 2001-05-22  Havoc Pennington  <hp@pobox.com>
5941
5942         * gtk/gtkbin.c (gtk_bin_get_child): New function
5943
5944 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
5945
5946         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
5947         to ignore when doing compose processing.
5948
5949 2001-05-22  Joe Shaw  <joe@ximian.com>
5950
5951         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
5952         Simplify as suggested by Havoc. Just get the last iter and work
5953         backward to the tag instead of getting a line and working back from
5954         there. Fixes passing in an invalid offset to
5955         iter_init_from_byte_offset().
5956
5957 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
5958
5959         * gtk/gtktreeview*.h: 
5960         * gtk/gtkcell*.h:
5961         * gtk/gtk*store.h:
5962         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
5963         macros to all objects.
5964
5965 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
5966
5967         * gtk/gtkcellrenderertext.c
5968         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
5969         with very large (TM) amounts of text.  May be moved to
5970         GtkCellRenderer in the future, though I'm not sure it wants to be
5971         this accessible.
5972
5973         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
5974         More sanity brought to this class.  I like it.
5975
5976         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
5977         case.  Kids, don't try this at home.
5978
5979         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
5980         convenience function.
5981
5982         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
5983
5984 2001-05-21  Alexander Larsson  <alexl@redhat.com>
5985
5986         * gtk/gtkfontsel.c:
5987         Added properties. Based on patch by Lee Mallabone.
5988
5989         * gtk/gtkruler.c:
5990         * gtk/gtkhruler.c:
5991         * gtk/gtkvruler.c:
5992         * gtk/gtktext.c:
5993         * gtk/gtktextview.c:
5994         Converted GtkArg to GParam. Based on patches by John Margaglione.
5995
5996         * tests/Makefile.am:
5997         * tests/testtext.c:
5998         Add a property editor to testtext.
5999         
6000 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
6001
6002         * gtk/gtk{h,v,}paned.c: Only show the separator if 
6003
6004         * configure.in: Fixed reversed conditional causing all image
6005         libraries to be linked in.
6006
6007 2001-05-21  Joe Shaw  <joe@ximian.com>
6008
6009         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
6010         that top_y needs to be >= 0.
6011
6012 2001-05-11  Havoc Pennington  <hp@pobox.com>
6013         
6014         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
6015         losing connection to the X server.
6016
6017 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
6018
6019         * configure.in: Start checks for X from pangox/pangoxft
6020         CFLAGS to avoid duplicate libraries.
6021
6022         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
6023
6024         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
6025         to include gobject.
6026         
6027 2001-05-18  Alexander Larsson  <alexl@redhat.com>
6028
6029         * gtk/gtkspinbutton.c:
6030         Convert GtkArgs to GParams. Based on patch by John Margaglione.
6031         Also do size request reasonable for MAXDOUBLE. Previously it printed
6032         the limits to a buffer and overran it. Instead do it using log10() and
6033         limit the width to 10 digits.
6034         
6035         * gtk/gtkwidget.c (gtk_widget_get_property):
6036         Correctly handle setting the parent property to NULL.
6037
6038 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
6039
6040         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
6041         style attributes even if the widget isn't realized.
6042
6043         * demos/gtk-demo/main.c: Use a slightly smaller font.
6044
6045 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
6046
6047         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
6048         This is something that only a widget writer would ever want
6049         to change.
6050
6051         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
6052         gtk_signal_emit_by_name().
6053
6054         * gtk/gtkviewport.c: Fix some warnings.
6055
6056         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
6057         allowing the requisitions of multiple widgets to be grouped
6058         together.
6059
6060         * tests/testgtk.c: Add GtkSizeGroup test
6061
6062         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
6063
6064         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
6065         warnings.
6066
6067         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
6068
6069 2001-04-28  Martin Baulig  <baulig@suse.de>
6070
6071         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
6072         to gtk_image_menu_item_set_icon() and made it work if there's already
6073         an image.
6074         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
6075         (gtk_image_menu_item_new_with_label): New function.
6076
6077 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
6078
6079         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
6080         highlighting code!!!!  The result is okay so long as you don't try
6081         to stress it.  It also highlights a bug in the TextView so it's in
6082         an unproportional font right now until it's fixed.
6083
6084         *demos/gtk-demo/*.c: Clean up code a bit to make it
6085         ugly-parser(TM) friendly. (-:
6086
6087 2001-05-17  Joe Shaw  <joe@ximian.com>
6088
6089         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
6090         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
6091         if it is only partially onscreen.
6092
6093 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
6094
6095         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
6096         not by characters.
6097
6098         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
6099         are not zero or one; that is, when graphemes of multiple characters
6100         are involved.
6101
6102         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
6103         FIXME.
6104
6105 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
6106         
6107         * gtk/gtkbbox.c:
6108         Add properties, based on patch by Lee Mallabone.
6109
6110         * gtk/gtknotebook.c:
6111         * gtk/gtktoolbar.c:
6112         Convert from GtkArg to GParam, based on patch by John Margaglione.
6113         
6114         * gtk/gtkhscale.c:
6115         * gtk/gtkvscale.c:
6116         * gtk/gtkhscrollbar.c:
6117         * gtk/gtkvscrollbar.c:
6118         * gtk/gtkrange.c:
6119         Move adjustment property to GtkRange.
6120
6121         * gtk/gtklabel.c:
6122         Setup mnemonics on property changes
6123
6124         * gtk/gtkwidget.c (gtk_widget_get_property):
6125         GdkExtensionMode is an enum, not a flag. Set it with
6126         g_value_set_enum ().
6127
6128         * tests/prop-editor.c:
6129         Better propery editor.
6130
6131         * tests/testgtk.c:
6132         Add new property test. Pass zero to the property editor to
6133         get properties from all derived types.
6134         
6135 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
6136
6137         * autogen.sh (have_automake): Require libtool-1.4,
6138         automake-1.4p1.
6139
6140         * acinclude.m4: Remove libtool macros.
6141
6142         * gdk-pixbuf/Makefile.am: Add dependencies to loade
6143         modules.
6144
6145         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
6146         for libgdk.
6147
6148         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
6149         libgdk.la for libgtk.
6150
6151         * modules/input/Makefile.am: Make modules have full
6152         dependencies.
6153
6154 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
6155
6156         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
6157         #54699 where paths weren't being checked for correctness.
6158
6159 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
6160
6161         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
6162         in any order you wan, whether or not the column is added to the
6163         tree, or the tree is realized.  Yay!
6164
6165         * gtk/gtktreeviewcolumn.c
6166         (gtk_tree_view_column_setup_sort_column_id_callback): handle
6167         sorting columns a lot saner
6168
6169         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
6170         new function to actually set wether or not a column is
6171         reorderable.
6172
6173         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
6174         if we have 'em.
6175
6176         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
6177         Fix nasty bug where we were showing the button just before
6178         realizing it.  As a result, the parent window was
6179         tree_view->window instead of tree_view->priv->header_window.
6180
6181         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
6182         to let you easily reorder a list or tree.
6183
6184 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
6185
6186         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
6187         from args to properties.
6188
6189 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
6190
6191         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
6192         from args to properties. (#51957)
6193
6194         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
6195         calls to after ->set_property call.
6196
6197 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
6198
6199         * tests/prop-editor.c: Block against redundant changes.
6200
6201         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
6202         properties.
6203
6204 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
6205
6206         * gdk/gdkpixmap.h: Remove creative formatting.
6207
6208 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
6209
6210         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
6211         property API. (#51669)
6212
6213         * gtk/gtkscale.c: Patch from John Margaglione converting to
6214         property API. (#51891)
6215
6216         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
6217         to property API. (#50985)
6218
6219 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
6220
6221         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
6222         buffering state across expose event, so we still call end_paint().
6223
6224 2001-05-11  Alexander Larsson  <alexl@redhat.com>
6225
6226         * gtk/gtkhsv.c (paint_triangle):
6227         Expose the ring in the triangle at the correct place when
6228         exposing just a part of the triangle.
6229
6230         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
6231         Return FALSE, or window focusing will not work.
6232
6233 2001-05-11  Havoc Pennington  <hp@pobox.com>
6234
6235         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
6236         #54144
6237
6238         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
6239         bug #54330
6240
6241 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
6242
6243         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
6244         propagate exposes to NULL child.
6245
6246         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
6247         against not having one of the scrollbars.
6248
6249         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
6250         we don't keep a mnemonic window if we have no mnemonic installed.
6251
6252 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
6253
6254         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
6255         it has the _important_ side effect of initializing a class.
6256
6257 2001-05-10  Alexander Larsson  <alexl@redhat.com>
6258
6259         * gdk/linux-fb/gdkprivate-fb.h:
6260         Make sure you can compile out the implementation/wrapper assert
6261         macros.
6262
6263         * gdk/linux-fb/gdkdrawable-fb2.c:
6264         Check implementation/wrappers, initialize type for pixmap dummys.
6265
6266         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
6267         Hide the cursor if reading from the screen.
6268
6269         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
6270         Fix sign bug in tiling code.
6271
6272         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6273         Handle background pixmaps.
6274
6275 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
6276
6277         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
6278         function to let user control where columns are dragged.
6279
6280         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
6281         Escape is pressed.
6282
6283 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
6284
6285         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
6286         "columns_changed" signal.
6287         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
6288         motion code to draw arrows to the side if indicator is outside the
6289         widget.
6290         (gtk_tree_view_map_expanded_rows): Implement.
6291
6292 2001-05-07  Alexander Larsson  <alexl@redhat.com>
6293
6294         * demos/testpixbuf-save.c: 
6295         * demos/testpixbuf-drawable.c:
6296         Include gdkfb.h on linux-fb.
6297
6298 2001-05-07  Alexander Larsson  <alexl@redhat.com>
6299
6300         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
6301         New function for getting toplevel window at position.
6302         (gdk_drag_find_window): Use get_toplevel_window () instead
6303         of gdk_window_get_pointer(). (gdk_drag_status): Use
6304         correct context for getting window.
6305
6306         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
6307         g_strdup the atom name.
6308
6309         * gdk/linux-fb/gdkwindow-fb.c:
6310         Costmetic fix.
6311
6312         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
6313         Add code for changing cursor on linux-fb backend (same as
6314         win32).
6315
6316 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
6317
6318         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
6319         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
6320         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
6321         report was not for the development branch of GTK+, but it applies
6322         anyways).
6323
6324 2001-05-04  Havoc Pennington  <hp@redhat.com>
6325
6326         * configure.in: fix some shell typos
6327
6328         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
6329
6330         * gtk/gtkimage.c: handle animations
6331
6332         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
6333         border_width * 2, not just border_width
6334
6335         * gtk/gtkscale.c: add "format_value" signal to allow people
6336         to override the way values are drawn.
6337         (gtk_scale_get_value_size): fix width/height mistake,
6338         and compute size from actual displayed text, not 
6339         from made-up text.
6340
6341         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
6342         signal registration
6343
6344         * tests/testtext.c: Add "Remove all tags" menu item for testing
6345
6346         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
6347
6348         * demos/gtk-demo/main.c (main): add hack so we can find modules
6349         without installing gtk
6350
6351         * demos/gtk-demo/textview.c (insert_text): demo font scaling
6352
6353         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
6354         factor)
6355         (gtk_cell_renderer_text_set_property): remove some bogus
6356         g_object_notify
6357
6358         * gtk/gtktexttag.c: add "scale" property which is a font scaling
6359         factor
6360
6361         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
6362         to layout
6363
6364         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
6365         gtk_text_iter_is_first
6366
6367 2001-01-06  Hans Breuer  <hans@breuer.org>
6368
6369         * gdk/gdk.def : updated exports
6370
6371         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
6372         gdk won't compile anymore
6373  
6374         * gdk/win32/gdkevents-win32.c : initialize ret_val when
6375         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
6376         Improved gdk_flush () to not only do pending drawing operations
6377         but also process all currently pending events. This should make
6378         the behaviour more similar to the X11 version.  
6379
6380         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
6381         option needs to be set even if there is no GDK_GC_BACKGROUND.
6382         (gdk_win32_hdc_get) : use predraw_set_background () independent
6383         of value_mask. This allows to draw dashed lines leaving the original
6384         background intact.
6385
6386         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
6387         after processing, because we can't reuse it as the X11 version does.
6388
6389         * gtk/gtk.def : updated exports
6390
6391         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
6392         would like to get rid of this file again, and use straight
6393         makefile.msc again, as the other Gtk+ subdirs do)
6394
6395         * test/makefile.msc (new file) : build the test apps here
6396
6397 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
6398
6399         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
6400         strike-through setting
6401         (gdk_draw_layout_line_with_colors): Render strike-through
6402
6403 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
6404
6405         * Release 1.3.5
6406
6407         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
6408
6409         * NEWS: Updated
6410
6411         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
6412         Makefile breakage.
6413
6414 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
6415
6416         * demos/gtk-demo/images.c (progressive_timeout): Fix
6417         typo in filename.
6418
6419         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
6420         out FIXME warning; just too annoying.
6421
6422 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
6423
6424         * gdk/linux-fb/gdkcolor-fb.c:
6425         Better error messages.
6426
6427         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
6428         Initialize abs_x and abs_y.
6429         
6430         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
6431         Correct handling of stipple offset.
6432
6433         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
6434         Treat directcolor framebuffers as truecolor.
6435         
6436 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
6437
6438         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
6439         dependency on Atk for accessibility support.
6440
6441         * configure.in **/Makefile.am: Major reworking of substituted
6442         variables for CFLAGS/LIBS to make a lot more sane and 
6443         keep the the compile/link lines a bit shorter.
6444
6445         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
6446
6447 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
6448
6449         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
6450         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
6451         use _gtk_boolean_handled_accumulator.
6452
6453 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
6454
6455         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
6456         to fix things so clicking inside selection leaves cursor
6457         at point where clicked. (#50324)
6458
6459         * gtk/gtksettings.c (gtk_settings_class_init): Restore
6460         sane value for default double click time.
6461
6462         * tests/testtext.c (test_init): Really path to input modules.
6463
6464 2001-05-03  Sven Neumann  <sven@convergence.de>
6465
6466         * demos/testpixbuf-save.c: include target-specific headers as
6467         done in testpixbuf-drawable.c
6468
6469 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
6470
6471         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
6472         new_text_length appropriately when we run into the 
6473         size limit for the entry. (#53445, reported by Jeff Franks)
6474
6475         * tests/testgtk.c (create_entry): Remove most of the
6476         property toggle buttons. Replace with a "Props" button
6477         that brings up a property editor.
6478
6479         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
6480         Split the property editor code out for reuse, improve.
6481
6482 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
6483
6484         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
6485         trap errors around calls to XSetInputFocus since we have
6486         no way of knowing reliably whether we are viewable or
6487         not. (#53947)
6488
6489 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
6490
6491         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
6492         fix bug in dropping columns.  Moving columns now basically works
6493         modula some fine tuning.
6494
6495 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
6496
6497         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
6498         autoscroll support.  It mostly works, but could use some fine
6499         tuning.
6500         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
6501         Actually move the column.
6502
6503 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
6504
6505         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
6506           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
6507           New default theme! A slighly improved version of the 2.0 Raleigh
6508           theme, with Windows-esque focus/drawing default. 
6509           (GtkWidget::interior_focus defaults to TRUE.)
6510
6511         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
6512
6513 2001-04-30  Havoc Pennington  <hp@pobox.com>
6514
6515         * tests/testtext.c (line_numbers_expose): fix to work with
6516         gtk_paint_layout change
6517
6518 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
6519
6520         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
6521           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
6522           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
6523           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
6524
6525         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
6526           with GtkWidget::interior_focus = TRUE better.
6527
6528         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
6529         ::default_outside_border for more flexibility.
6530
6531         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
6532         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
6533         change that had to be made with g_object_get.
6534
6535 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
6536
6537         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
6538         (gtk_tree_view_move_column_after): Clean up interface. 
6539
6540 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
6541
6542         * gtk/gtkpacker.h:
6543         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
6544          to gtkenum.h.
6545
6546         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
6547         handled in switch).
6548
6549         * gtk/Makefile.am:
6550         (gtk.defs): generate enum portions with  glib-mkenums.
6551         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
6552         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
6553         
6554         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
6555         addition.
6556
6557         * docs/Changes-2.0.txt: keep a note on signal handlers now
6558         not getting emitted during the emission they were connected within.
6559
6560 2001-04-28  Havoc Pennington  <hp@pobox.com>
6561
6562         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
6563
6564 2001-04-24  Havoc Pennington  <hp@redhat.com>
6565
6566         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
6567         (gtk_text_layout_move_iter_to_next_line): fix these two for
6568         invisible text, lots of other stuff still hosed.
6569
6570         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
6571         new function, replaces the get/set palette stuff. This function 
6572         is intended for use by libgnomeui which should set the hook to a
6573         thing which sets the palette in GConf, and we need the
6574         GConf-to-xsettings proxy which will result in the change being
6575         propagated back to the GTK app.
6576
6577         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
6578         about unusable signals that it may be because the signal has 
6579         parameters.
6580
6581         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
6582         style, otherwise gtkrc.c won't know to create a new GtkStyle for
6583         it.
6584         (gtk_widget_modify_color_component): call
6585         gtk_widget_modify_style() so the rc style will get copied.
6586         (gtk_widget_modify_font): ditto
6587
6588         * gtk/gtkrc.c: make a couple variables static
6589
6590         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
6591         help button by default, since it does nothing
6592
6593         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
6594         around with UI
6595
6596         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
6597         so we can have tooltips
6598
6599         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
6600         can have tooltips
6601
6602         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
6603         GDK_ENABLE_BROKEN, because its memory behavior is completely
6604         hosed.
6605
6606         * gtk/gtknotebook.c: remove key press handler, replace with
6607         binding set, add numeric keypad support
6608
6609         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
6610
6611         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
6612
6613         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
6614         addition to plain Delete
6615
6616         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
6617         GDK_KP_Enter in addition to GDK_Return
6618
6619         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
6620         activate on entry instead of key press
6621         (gtk_font_selection_on_clist_key_press): get
6622         rid of this signal handler, not needed with new font sel.
6623
6624         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
6625         no-longer-needed emit_stop_by_name(), just return TRUE
6626
6627         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
6628         cruft, this widget is no longer focusable.
6629
6630         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
6631         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
6632         move_slider action signal, add binding set for vscale/hscale, in
6633         the process support numeric keypad
6634
6635         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
6636         make GDK_Return and GDK_KP_Enter activate the entry via 
6637         binding set, instead of hardcoded.
6638
6639 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
6640
6641         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
6642         code.  Some documentation added.
6643
6644 2001-04-27  Havoc Pennington  <hp@redhat.com>
6645
6646         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
6647
6648         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
6649
6650         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
6651         line/para separators
6652         (gtk_entry_create_layout): set single paragraph mode on the layout
6653
6654         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
6655         spacing between the image and label; instead, inside a button box 
6656         the button will get extra space that will go there, but if people 
6657         configure button box for 0 chubbiness, then there's no spacing.
6658
6659         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
6660         and min/max size style properties, so people can tune their
6661         chubbiness.
6662
6663         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
6664         functions
6665
6666         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
6667         space_style, and button_relief into style properties, remove
6668         functions for setting them
6669         
6670         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
6671         it back down
6672
6673         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
6674         types from gtk_widget_style_get
6675
6676         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
6677         with a style property.
6678
6679         * gdk/x11/gdkevents-x11.c: namespace the settings
6680
6681         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
6682
6683         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
6684         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
6685         be used. Also, translate doc strings for settings. Also, namespace
6686         the double-click-time property. Also, remove bell properties crap.
6687
6688 2001-04-27  Sven Neumann  <sven@gimp.org>
6689
6690         * Makefile.am: before creating links, check if pkg-config files
6691         exist for the default target. Otherwise link to the pkg-config files
6692         that got installed with this build.
6693
6694 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
6695
6696         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
6697         dragging code.  Revealed some (potential) GdkWindow bugs.
6698
6699         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
6700         _gdk_window_init_position to the end of reparent to fix the case
6701         of reparenting when new_x != old_x and new_y != old_y.
6702
6703 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
6704
6705         * gtk/gtkentry.c (strstr_len): Fix optimization that
6706         was correct for the use here, but completely incorrect
6707         in general.
6708
6709 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
6710
6711         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
6712         until patch adding gtk_window_set_size() is recommitted. 
6713
6714         * **Makefile.am configure.in gdk/x11/gdkim-11.c
6715           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
6716           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
6717           (#10784)
6718
6719 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
6720
6721         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
6722         window == NULL in a number of cases.
6723
6724         * tests/testdnd.c: Set module path for gdk-pixbuf.
6725
6726 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
6727
6728         * gtk/Makefile.am xembed.h: File containing #defines
6729         for XEMBED protocol.
6730
6731         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
6732
6733         - Change protocol from old plug/socket specific protocol
6734           to XEMBED draft
6735         - Various fixes to work with GTK+-2.0
6736
6737         Still quite a bit of work to do here to handle initiation
6738         from the socket side (as specified by XEMBED), to handle
6739         the more advanced features of XEMBED, and to figure out
6740         a good way to handle same-app embedding with less overhead
6741         than using full XEMBED.
6742
6743 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
6744
6745         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
6746         track of whether the toplevel has the focus; only send
6747         focus-in events to the focus widget when the window
6748         actually has the focus.
6749
6750 2001-04-25  Havoc Pennington  <hp@pobox.com>
6751
6752         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
6753         were still in the header
6754
6755 2001-04-24  Alexander Larsson  <alexl@redhat.com>
6756
6757         * gtk/gtkclist.[ch]:
6758         * gtk/gtkctree.c:
6759         When there is a row highlighted for D'n'D it must alse
6760         be painted hightlighted on exposes. Otherwise exposes from
6761         the icon being dragged will mess up the hightlight.
6762
6763         * gtk/gtkfontsel.c:
6764         Don't recenter selected font when exposing the font family
6765         clist. This means you can now actually scroll the font family
6766         list.
6767
6768         * gtk/gtknotebook.c:
6769         Fix focus movement on scrolling tabs that are placed on the left
6770         and right.
6771
6772 2001-04-21  Havoc Pennington  <hp@pobox.com>
6773
6774         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
6775         empty/invisible lines.
6776
6777         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
6778         (gtk_text_iter_set_visible_line_index): new functions to set
6779         indexes excluding invisible text
6780
6781         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
6782         index
6783
6784         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
6785         (gtk_text_iter_get_visible_line_offset): new functions to 
6786         get indexes excluding invisible text
6787
6788         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
6789         bunch of extra padding that served no purpose
6790
6791         * gtk/gtkdialog.c: Make all the spacings configurable via style
6792         properties, for chubbiness configuration in themes
6793
6794         * tests/testtext.c: fix path to the immodules.
6795         
6796 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
6797
6798         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
6799         got munched by #endif.
6800
6801         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
6802
6803         * gtk/gtktreeview.c: Refactored code to clean up a number of
6804         events.
6805
6806         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
6807         values to make consistent with other functions.  Spotted by Jeff
6808         Franks <jcf@tpg.com.au>.
6809
6810         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
6811         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
6812
6813 2001-04-23  Sven Neumann  <sven@gimp.org>
6814
6815         * gtk/Makefile.am
6816         * gtk/gtkplug.c
6817         * gtk/gtksocket.c: on request of Owen, reverted my last change 
6818         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
6819
6820 2001-04-23  Sven Neumann  <sven@gimp.org>
6821
6822         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
6823         compile for non-X11 targets again
6824
6825 2001-04-20  Alexander Larsson  <alexl@redhat.com>
6826
6827         * gtk/gtkcolorsel.[ch]:
6828         API Change. Take GdkColor arguments instead of gdouble *.
6829         Leave the old gtk_color_selection_set_color for compatibility,
6830         but marked deprecated.
6831         Do correct rounding when converting RGB <-> HSV.
6832         
6833         * gtk/gtkcolorseldialog.c:
6834         * tests/testgtk.c:
6835         Use new GtkColorSelection API.
6836
6837         * gtk/gtkhsv.c:
6838         Fix problem selecting colors in triangle when Hue is 330.
6839         Fix some black dots around the HSB triangle.
6840         
6841         * gtk/gtkfilesel.c:
6842         return FALSE from the focus_in_event handler to fix focus problems.
6843
6844 2001-04-18  Havoc Pennington  <hp@redhat.com>
6845
6846         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
6847         set, so keybindings are configurable    
6848         (gtk_window_activate_default): Change to activate the focus widget
6849         instead if there's a focus widget, to be consistent with the
6850         behavior that previously existed in key_press_event
6851
6852 2001-04-18  Havoc Pennington  <hp@redhat.com>
6853
6854         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
6855
6856 2001-04-18  Havoc Pennington  <hp@redhat.com>
6857
6858         Close bug #50615:
6859         
6860         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
6861         the layout
6862
6863         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
6864
6865         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
6866
6867         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
6868         
6869         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
6870         to blue for base, in addition to bg
6871         
6872 2001-04-18  Havoc Pennington  <hp@redhat.com>
6873
6874         * tests/testgtk.c (create_image): allow shrinking the image window
6875         to test that we clip to allocation.
6876
6877         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
6878         #9845
6879
6880         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
6881
6882 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
6883
6884         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
6885         mode on shm segments to 0600. We'll see who complains.
6886
6887         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
6888         _gdk_windowing_window_destroy() AFTER recursing through
6889         children.
6890
6891         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
6892         testsocket_child on X.
6893
6894         * tests/testsocket[_child].c: Fix uses of
6895         gtk_window_get_default_accel_group().
6896
6897         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
6898
6899         * gdk/gdkimage.c: (gdk_image_get):
6900         Deal with the possibility that XGetImage() might return NULL.
6901         Allocate the GdkImagePrivate structure only after XGetImage()
6902         succeeds in order not to dereference a NULL ximage pointer.  This
6903         prevents a core dump when XGetImage() fails - which is unlikely,
6904         but can happen due to race conditions accessing the geometries of
6905         drawables.  An x error will still be triggered, but the gdk image
6906         wrapper at least wont seg fault.
6907         
6908 2001-04-18  Havoc Pennington  <hp@redhat.com>
6909
6910         * gtk/gtkimage.c: fix to properly queue resizes when the image is
6911         set
6912
6913         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
6914         if the insertion point isn't editable
6915
6916         * demos/gtk-demo/images.c: Added a GtkImage demo
6917
6918         * demos/gtk-demo/drawingarea.c: drawing area demo
6919         
6920         * demos/gtk-demo/menus.c (create_menu): cleanups
6921
6922 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
6923
6924         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
6925           gdk/x11/gdkevents-x11.c: Introduce an extra child
6926         of toplevel windows that serves to hold the focus to
6927         avoid events being delivered to embedded windows.
6928
6929         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
6930         some extra variables to clean up code and reduce the
6931         number of casts.
6932
6933         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
6934         guint for 1 bit bit fields, not gboolean.
6935
6936 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
6937
6938         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
6939         not TRUE. (Fixes #52925)
6940
6941 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
6942
6943         * Released 1.3.4
6944
6945         * NEWS: Updated
6946
6947         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
6948         use GTK_TYPE_ENUM.
6949
6950 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
6951
6952         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6953
6954         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
6955         names to compatibility #defines so docs work.
6956
6957         * gtk/gtkenums.h: Remove GtkMenuFactoryType
6958
6959         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
6960
6961         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6962
6963         * tests/testgtkrc: No magenta cursors, please.
6964
6965         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
6966
6967         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
6968         
6969 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
6970
6971         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
6972         grabs, since they are no longer necessary.
6973
6974         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
6975         by signal_connect() and call gtk_button_pressed() rather
6976         than signal_connect_after().
6977
6978         * tests/testgtk.c: Restore radio menu items to combos 
6979         since they'll look OK with Raleigh, and it is easier
6980         than finishing the process of removing them that was
6981         started earlier.
6982
6983 2001-04-16  Hans Breuer  <hans@breuer.org>
6984
6985         * gdk/gdk.def :
6986         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
6987
6988         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
6989         we are interested in the functions return value not the function address
6990         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
6991
6992         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
6993
6994 2001-04-14  Hans Breuer  <hans@breuer.org>
6995
6996         * gdk/gdk.def :
6997         * gdk/makefile.msc : updated
6998
6999         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
7000         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
7001         (the testgtk::text backgound pixmap is drawn again)
7002         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
7003         Win32 Pango change
7004         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
7005
7006         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
7007         Not sure if the returned settings have the right unit, because I couldn't
7008         find any docs for the X version ...
7009
7010         * gtk/gtk.def :
7011         * gtk/makefile.msc.in : updated
7012
7013 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
7014
7015         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
7016         wording problems. (Compared to version from Johannes Stezenbach to
7017         check correctness.)
7018
7019 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
7020
7021         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
7022         this to compile.
7023
7024 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
7025
7026         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
7027         not pixbufpos.
7028
7029         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
7030
7031         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
7032         are unsigned insts, therefore use g_value_set_uint.
7033         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
7034
7035 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
7036
7037         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
7038
7039         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
7040         GTK_TYPE_STRING.
7041
7042         * gtk/gtktreeview.c: New functions to allow initial column
7043         dragging work.
7044
7045         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
7046
7047         * tests/testtreefocus.c: give dave some love.
7048
7049         * tests/testtreesort.c: Modify test to check really long samples.
7050
7051 2001-04-11  Alexander Larsson  <alexl@redhat.com>
7052
7053         * gtk-2.0.m4: Pass pkg-config options
7054         before the other args so it works even if
7055         POSIXLY_CORRECT is set.
7056
7057 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
7058
7059         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
7060         0, interface 0).
7061
7062 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
7063
7064         * gtk/gtkcalendar.c (gtk_calendar_button_press):
7065         check for action_func != NULL
7066
7067 2001-04-04  Sven Neumann  <sven@gimp.org>
7068
7069         * tests/testgtk.c (test_init): corrected path to gtk.immodules
7070
7071 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
7072
7073         * Released Gtk+-1.3.3.
7074
7075 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
7076
7077         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
7078
7079 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
7080
7081         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
7082         files to/from source dir. (if we don't stay in builddir, we
7083         can't reach make-inline-pixbuf.
7084
7085         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
7086         deps.
7087
7088         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
7089         ages 0).
7090
7091 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
7092
7093         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
7094         moved to the GtkTreeSortable interface.
7095
7096         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
7097         Make more efficient (fixes #50262).
7098
7099 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
7100
7101         * NEWS: Updated.
7102
7103         * configure.in: Remove support for uninstalled glib.
7104
7105         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
7106         so as not to stop emission.
7107
7108         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
7109         is no longer supported.
7110
7111         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
7112         into tests, change build order to build modules before
7113         gtk/.
7114
7115         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
7116         to here.
7117
7118 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
7119
7120         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
7121         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
7122         GPatternSpec. this is actually unlikely to cause breakage in
7123         third-party apps since except for gle, pretty much ever caller
7124         passes NULL here.
7125
7126         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
7127
7128         * *.c: use g_pattern_*() API.
7129
7130         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
7131
7132         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
7133         directions aren't passed in.
7134
7135         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
7136         functionality to be usable from gtkstyle.c as well, give precedence
7137         for conversion to user-supplied parsers.
7138         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
7139
7140         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
7141         _gtk_settings_parse_convert() for rcporperty value conversion.
7142
7143 2001-04-03  Alexander Larsson  <alexl@redhat.com>
7144
7145         * gdk/linux-fb/gdkevents-fb.c:
7146         Add empty gdk_setting_get().
7147
7148 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
7149
7150         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
7151         variable names.
7152         
7153         * gtk/makeenums.pl: touch this so enum files get remade.
7154
7155 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
7156
7157         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
7158         work again when not sorted.
7159
7160         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
7161         and "expand_row" signal, closing bug 52578.
7162
7163         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
7164         support.
7165
7166         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
7167         support.
7168
7169 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
7170
7171         * gdk/gdkevents.h: Add GdkEventSetting event for notification
7172         of changes to system settings, gdk_setting_get() to retrieve
7173         a single system setting.
7174
7175         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
7176         to the draft XSETTINGS mechanism.
7177
7178         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
7179         XSETTINGS.
7180
7181         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
7182         of GDK settings changes to the GtkSettings object.
7183
7184         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
7185         double-click-timeout property to GDK.
7186
7187         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
7188         Define GDK boxed types here.
7189
7190         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
7191         gdk/gdkenumtypes.[ch] for enum definitions.
7192
7193         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
7194         * gtk/gtk-boxed.defs: Comment out GDK types
7195         * gtk/gtktypeutils.h: Remove GDK types
7196         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
7197
7198 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
7199
7200         * Applied patch from Ron Steinke to add signal accumulators
7201         so that signals with the convention 'TRUE return means
7202         handled' stop emission on a TRUE return.
7203
7204         * gtk/gtkmain.[ch]: Add private accumulator 
7205         _gtk_boolean_handled_accumulator, used throughout GTK+.
7206         
7207         * gtk/gtkspinbutton.c: Add accumulator for ::output.
7208
7209         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
7210         
7211         * gtk/gtkwidget.c: Add accumulators for event signals,
7212         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
7213         for ::mnemonic-activate.
7214
7215         * gtk/gtkwindow.c: Add accumulator for ::frame_event
7216
7217 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
7218
7219         * gtk/gtkwidget.c: Add missing include.
7220
7221 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
7222
7223         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
7224         marshaller.
7225
7226         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
7227         "changed" signal to "range_changed".
7228
7229         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
7230         removing a tree from one model would remove all trees from that
7231         model.
7232         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
7233         changed signal instead.
7234
7235 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
7236
7237         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
7238         chaining up to parent impl, since we have a INPUT_ONLY
7239         window.
7240
7241         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
7242         foreground color for the cursor.
7243
7244 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
7245
7246         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
7247         param spec when caching property values, since we unref it
7248         later when we free the style.
7249
7250         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
7251         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
7252
7253 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
7254
7255         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
7256         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
7257         stupidity.
7258
7259 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
7260
7261         [ First pass at adding style properties. Still needs some definite
7262         fine-tuning. ]
7263
7264         * gtk/gtkbutton.c: Add ::default_spacing style property.
7265          
7266         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
7267         ::indicator_spacing style properties.
7268
7269         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
7270         style properties.
7271
7272         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
7273         rather than a normal property.
7274
7275         * gtk/gtkwidget.c: Add an ::interior_focus style property to
7276         draw focus inside buttons, in the Windows/Java Metal/etc. style.
7277
7278         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
7279         Honor ::interior_focus.
7280         
7281         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
7282         TRUE.
7283
7284         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
7285         Add ::slider_width, ::trough_border, ::stepper_size,
7286         ::stepper_spacing style properties.
7287
7288         * gtk/gtkscale.[ch] Add ::slider-length style property.
7289
7290 2001-04-02 Alexander Larsson   <alexl@redhat.com>
7291
7292         * gdk/linux-fb/gdkwindow-fb.c:
7293         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
7294         warnings that were spewed on startup.
7295
7296         * gtk/gtkwindow-decorate.c:
7297         gtk_window_reposition -> _gtk_window_reposition
7298
7299 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
7300
7301         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
7302         Add boxed type for GtkRequistion. Use it for ::size-request.
7303
7304         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
7305         Add a new GtkBorder structure useful for geometry properties
7306         for widgets. Add corresponding GTK_TYPE_BORDER.
7307         
7308         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
7309         Support automatic parser selection like
7310         gtk_settings_install_property_parser().
7311
7312         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
7313         functionality for use by gtk_widget_class_install_style_property.
7314         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
7315
7316 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
7317
7318         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
7319         g_param_spec_unichar(). 
7320
7321 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
7322
7323         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
7324         _NET window managers.
7325
7326         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
7327
7328 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
7329
7330         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
7331         bad needs to be nuked, not just deprecated.
7332
7333         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
7334         gtk_widget_popup().
7335
7336         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
7337         
7338         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
7339         widget.
7340         
7341         * docs/Changes-2.0.txt: updates.
7342         
7343 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
7344
7345         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
7346         for (i = 0; i < 100; i ++)
7347           g_print ("I will confirm it compile before committing\n");
7348
7349 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
7350
7351         * gtk/gtktreestore.c: Initial work on implementing the
7352         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
7353
7354 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
7355
7356         * gtk/gtkwidget.c: fixed a bunch of notifications, added
7357         reference counts around emissions where the widget is used afterwards.
7358         added freeze/thaws around multiple properties being notified.
7359         (_gtk_widget_get_aux_info): cleanups.
7360         
7361         * gtk/gtksettings.c (gtk_settings_install_property): provide
7362         default parsing functions for gdkcolor, enums and flags.
7363
7364         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
7365         applied by owen.
7366         backed out gtk_window_get_location(), gtk_window_set_location(),
7367         gtk_window_get_size() and gtk_window_set_size(), these
7368         have to be sorted out wrg x/y/width/height/default_with/default_height
7369         properties.
7370         kept a flag in GtkWindowGeometryInfo to handle user
7371         resetting default sizes.
7372         cleaned up ZVT comments.
7373         bunch of assorted bug fixes, notification fixes.
7374         (_gtk_window_reposition): make this a really internal function.
7375         
7376         * gtk/testgtk.c: fixups.
7377         
7378 2001-03-31  Hans Breuer  <hans@breuer.org>
7379
7380         * config.h.win32.in : disable USE_MMX for msvc build cause
7381         the assembler doesn't fit and is out of my scope. Disable
7382         USE_GMODULE for msvc build as wel. The right way to share
7383         binaries on win32 would be to use libtiff.dll etc. To reduce
7384         installation hassles IMO it's better to include all fileformats
7385         builtin to gdk-pixbuf
7386
7387         * gdk-pixbuf/makefile.msc : new file
7388
7389         * gdk/gdk.def : updated
7390
7391         * gdk/win32/gdkevents-win32.c : don't erase the background if
7392         .no_bg is set. It improves the scrolling (e.g. of testgtk main
7393         buttons
7394         * gdk/win32/gdkgeometry-win32.c : added comment about the above
7395
7396         * gdk/win32/gdkwindow-win32.c : added three new functions like
7397         the X version. Only one is implemented, because the other two
7398         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
7399         be default behaviour on win32 anyway ...
7400
7401         * gtk/gtk.def : updated
7402
7403         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
7404         from where it was built and add an additional rule to automagically
7405         build gtkmarshal.[hc]
7406
7407         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
7408         before array access for the current entry isn't finished
7409
7410         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
7411         use g_return_val_if_fail
7412
7413         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
7414         for the static array, but let the compiler calculate it. It
7415         makes me wonder if gcc isn't capable to catch bugs like this ...
7416
7417 2001-03-31  James Henstridge  <james@daa.com.au>
7418
7419         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
7420         constant "-1" in the aux info structure.
7421
7422 2001-03-30  Alexander Larsson  <alexl@redhat.com>
7423
7424         * gtk/gtkbutton.c (gtk_button_get_property):
7425         * gtk/gtklabel.c:
7426         Remove leaks.
7427         
7428         * gtk/gtkcontainer.c:
7429         * gtk/gtkhscale.c:
7430         * gtk/gtkhscrollbar.c:
7431         * gtk/gtklayout.c:
7432         * gtk/gtkmisc.c:
7433         * gtk/gtkprogress.c:
7434         * gtk/gtkprogressbar.c:
7435         * gtk/gtkrange.c:
7436         * gtk/gtktable.c:
7437         * gtk/gtkviewport.c:
7438         * gtk/gtkvscale.c:
7439         * gtk/gtkvscrollbar.c:
7440         * gtk/gtkwidget.c:
7441         Property patches, based on patches from John Margaglione and Lee Mallabone.
7442
7443 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
7444
7445         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
7446         adjustment. Cleaned redundant preconditions (spin != NULL). Added
7447         inline API function docs.
7448         (gtk_spin_button_new_with_range): New convenience constructor.
7449         (gtk_spin_button_set_increments): New adjustment helper.
7450         (gtk_spin_button_set_range): New adjustment helper.
7451
7452         * gtk/testgtk.c : added test of the new convenince constructor and
7453         value_changed signals.
7454
7455 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
7456
7457         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
7458         listen to the reorder signal.
7459
7460 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
7461
7462         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
7463         to get the aux info structure fo the widget.
7464
7465         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
7466         above function.
7467
7468         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
7469
7470         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
7471         to get the size of the window manager frame, basically the same
7472         code that gdk_window_get_root_origin() had
7473         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
7474
7475         * gtk/gtkwindow.c (gtk_window_set_default_size): use
7476         gdk_window_resize() if the window is realized and resizeable
7477
7478         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
7479         typo so that setting gravity works
7480
7481         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
7482         allocation if auto_shrink is on, even if the default size
7483         has not changed.
7484
7485         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
7486         g_return_if_fail
7487
7488 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
7489
7490         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
7491         reordering/sorting work.  Now pretty much works.
7492
7493         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
7494         reorder mostly work.  Still need to get the parity correct.
7495
7496         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
7497         signal, so I can listen for the sort_column_changed signal so I
7498         can change my "sort_indicator" property.  Cool.
7499
7500 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
7501
7502         [ Patch from Havoc Pennington, hp@redhat.com ]
7503
7504         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
7505         Add functions gdk_window_begin_resize_drag/begin_move_drag
7506         to start resizing or moving a toplevel window. This
7507         is done either using the _NET_WM_MOVERESIZE protocol,
7508         or, if that isn't present, by emulation.
7509
7510         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
7511         to export the above to GTK+-land.
7512
7513         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
7514         
7515         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
7516         Move this function into gdkwindow, since we need it
7517         when implementing fallback resizing.
7518
7519         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
7520         Fix typo when setting gravity.
7521
7522         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
7523         Add an optional (but on by default) resize grip for resizing 
7524         the parent window.
7525
7526 01-03-29  Alexander Larsson  <alexl@redhat.com>
7527
7528         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
7529         Don't return TRUE from the event handler, that blocks all
7530         event signals on the tooltip widget. Now you can press buttons
7531         in toolbars again.
7532
7533 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
7534
7535         * gtk/testtext.c (create_buffer): Add missing NULL on
7536         valist.
7537
7538         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
7539         c-n-p problem with INCONSISTENT property.
7540
7541         [ Patch from Havoc Pennington  <hp@redhat.com> ]
7542
7543         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
7544         hook.
7545
7546         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
7547         signal as a hook for extending the default popup menu
7548
7549         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7550         use radio menu items for the input method menuitems
7551
7552         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
7553         inserted unicode from Ctrl-Shift-hex input method
7554
7555         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
7556         validatation here, already done at GtkTextBuffer level.
7557
7558         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
7559         popup_menu run action signal and Shift+F10 and Menu keybindings.
7560
7561         * gtk/gtkentry.c: implement a default handler for popup_menu
7562
7563         * gtk/gtktextview.c: implement a default handler for popup_menu
7564
7565         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
7566         from a key event
7567         
7568         * gtk/gtklabel.c: remove "trailer" cruft
7569
7570 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
7571
7572         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
7573         handle reordering of trees.  Seems to mostly work w/ the exception
7574         of the parity flag.
7575
7576         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
7577         signal.
7578
7579 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
7580
7581         * gtk/gtkwidget.h: c++ fixes.
7582
7583 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
7584
7585         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
7586         memory.
7587
7588 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
7589
7590         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
7591         Nils Barth fixing event return values. (#51041)
7592
7593         * gtk/gtkwidget.c: Fix some return values for default
7594         functions.
7595
7596         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
7597         return values for trough_keys functions.
7598
7599         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
7600         value for add_accelerator (shoudl have been a void
7601         return.)
7602
7603         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
7604         Fix return type of EVENT.
7605
7606         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
7607         signal return a boolean.
7608
7609 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
7610
7611         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
7612         reordered signal.
7613
7614         * tests/testtreesort.c (main): fix spelling.
7615
7616 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
7617
7618         * gtk/gtkliststore.c: More work on implementing sortable
7619         interface.
7620
7621 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
7622
7623         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
7624         reference the widgets in the resulting list. (#11821)
7625         This makes this consistent with gtk_container_children.
7626
7627         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
7628         uses of gtk_window_list_toplevels.
7629
7630 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
7631
7632         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
7633         a virtual function to set whether the IM context should use 
7634         the preedit string. (#51922)
7635         
7636 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
7637
7638         * gdk/gdkpango.h: Remove stale FIXME comment.
7639
7640 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
7641
7642         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
7643         Fixed bug that returned NULL if a filename was selected.
7644
7645 2001-03-24  Havoc Pennington  <hp@pobox.com>
7646
7647         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
7648         to contain the word "theme"
7649
7650 2001-03-24  Havoc Pennington  <hp@pobox.com>
7651
7652         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
7653         slower but finer-grained
7654         (gtk_hsv_focus): get initial focus on the ring or triangle 
7655         according to tab direction
7656
7657         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
7658
7659 2001-03-23  Havoc Pennington  <hp@pobox.com>
7660
7661         * gtk/gtkhsv.c: make this somewhat key-navigable
7662
7663         * gtk/gtkfontsel.c: mnemonics
7664
7665         * gtk/gtkgamma.c: mnemonics
7666
7667         * gtk/gtkcolorsel.c: add mnemonics to labels
7668
7669 2001-03-22  Havoc Pennington  <hp@pobox.com>
7670
7671         Applied big patch from Seth Lytle to fix event handler return
7672         values, slightly modified.
7673
7674         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
7675         handled.
7676         (gtk_calendar_key_press): return TRUE for GDK_space triggers
7677         select_day
7678
7679         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
7680         (gtk_clist_button_release): return TRUE if handled
7681
7682         * gtk/gtkcolorsel.c (mouse_release):
7683         (palette_activate): 
7684         (palette_press): 
7685         (palette_new): 
7686         (mouse_press): 
7687         (get_screen_color): 
7688         fixed return type (void to gboolean), return TRUE,
7689         added GTK_SIGNAL_FUNC cast
7690
7691         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
7692         (void to gboolean), and return TRUE
7693         (gtk_combo_button_release): changed return value to TRUE after
7694         gtk_grab_add on combo->popwin
7695
7696         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
7697         collapse or expand
7698
7699         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
7700         button/motion
7701
7702         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
7703         press/release and motion that trigger act
7704
7705         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
7706
7707         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
7708         for GDK_Return
7709         
7710         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
7711         (gtk_list_button_release): return TRUE if selection
7712
7713         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
7714         press
7715
7716         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
7717         (gtk_menu_shell_button_release): chain parent_menu_shell retval
7718
7719         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
7720         nothing triggered
7721         (gtk_notebook_button_release): return TRUE if we do anything
7722
7723         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
7724         (gtk_spin_button_button_release): return TRUE or chained retval
7725
7726         * gtk/gtktext.c (gtk_text_button_press): 
7727         (gtk_text_button_release): return TRUE
7728         (gtk_text_key_press): remove redundant retval code
7729         
7730         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
7731         and sensitive
7732         (gtk_tree_item_subtree_button_click): changed type to gint, and return
7733         TRUE if sensitive
7734
7735         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
7736         return TRUE
7737
7738 2001-03-23  Havoc Pennington  <hp@redhat.com>
7739
7740         * gtk/testgtk.c: fix warnings
7741
7742         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
7743
7744         * gtk/gtktextview.c: fix warnings
7745
7746         * gtk/gtktext.c (find_cursor_at_line): fix warning
7747
7748         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
7749
7750         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
7751         of this function
7752
7753         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7754         fix warning
7755
7756         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
7757
7758         * gtk/gtkfontsel.c: fix warning
7759
7760         * gtk/gtkcolorsel.c: fix warnings
7761
7762 2001-03-23  Havoc Pennington  <hp@redhat.com>
7763
7764         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
7765
7766         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
7767
7768         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
7769         and deprecated gtk_check_menu_item_set_show_toggle().
7770         
7771         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
7772
7773         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
7774
7775         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
7776
7777 2001-03-23  Havoc Pennington  <hp@redhat.com>
7778
7779         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
7780         some docs
7781
7782 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
7783
7784         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
7785         this.
7786
7787         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
7788         set_cell to set_value
7789
7790         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
7791         set_cell to set_value
7792
7793 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
7794
7795         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7796         fix braino.
7797         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
7798         support.
7799
7800         * gtk/gtktreeview.c: Addition of initial sortable support.
7801
7802         * gtk/gtktreestore.c: Addition of initial sortable support.
7803
7804         * gtk/gtkliststore.c: Addition of initial sortable support.
7805
7806         * gtk/gtkmarshal.list: yet another marshaller.
7807
7808         * gtk/gtktreedatallist.[ch]: shared code between the store models
7809         for handling sorting headers.
7810
7811 2001-03-22  Havoc Pennington  <hp@redhat.com>
7812
7813         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
7814         (gtk_container_unset_focus_chain): Add ability to override the 
7815         focus chain for a container explicitly
7816
7817 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
7818
7819         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
7820         added PROP_MNEMONIC_WIDGET.
7821
7822         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
7823         (gtk_window_remove_mnemonic): 
7824         (gtk_window_add_mnemonic): fixed assertions.
7825         (gtk_window_activate_mnemonic): constrain modifier checks to those
7826         permitted by gtk_accelerator_get_default_mod_mask().
7827         got rid of gtk_window_get_default_accel_group().
7828
7829         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
7830         activatable widgets either by focussing or a warning.
7831         added a signal accumulator to ::activate_mnemonic which stops the
7832         emission once a handler returned TRUE.
7833
7834 2001-03-22  Havoc Pennington  <hp@pobox.com>
7835
7836         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
7837         the stock item label
7838
7839         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
7840
7841         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
7842
7843         * demos/gtk-demo/*.c: Add mnemonics all over the place
7844
7845         * gtk/gtklabel.h: mark parse_uline deprecated
7846
7847 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7848
7849         * gtk/gtkitemfactory.[ch]:
7850         Add support for stock and normal imagemenuitems.
7851         
7852         * gtk/testgtk.c:
7853         Add some tests for mnemonics, stock toolbars, stock
7854         and image menuitems in itemfactory and gdk_window_scroll.
7855
7856 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7857
7858         * gtk/gtkbutton.[ch]:
7859         * gtk/gtkdialog.c:
7860         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
7861         removed accel_group argument. Renamed gtk_button_new_accel() to
7862         gtk_button_new_with_mnemonic() and removed accel_group argument.
7863
7864         * gtk/gtkcheckbutton.[ch]:
7865         New function gtk_check_button_new_with_mnemonic().
7866
7867         * gtk/gtkentry.c:
7868         Override activate_mnemonic and just grab focus.
7869
7870         * gtk/gtkitemfactory.c:
7871         Don't add menu uline accel group, instead use mnemonics support.
7872
7873         * gtk/gtklabel.[ch]:
7874         New support for mnemonics.
7875
7876         * gtk/gtkmarshal.list:
7877         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
7878
7879         * gtk/gtkmenu.[c]:
7880         * gtkmenushell.c:
7881         Use mnemonics instead of accel groups for uline
7882         support in menu items.
7883         Removed gtk_menu_get_uline_accel_group() and
7884         gtk_menu_ensure_uline_accel_group().
7885
7886         * gtk/gtkmenuitem.c:
7887         Override activate_mnemonic to handle switching between
7888         menu items if there are collisions.
7889         
7890         * gtk/gtknotebook.c:
7891         Connect to activate_mnemonic on the tab_label, so that
7892         activating it switches to that notebook page.
7893
7894         * gtk/gtkwidget.[ch]:
7895         Add activate_mnemonic signal. New function
7896         gtk_widget_activate_mnemonic() to emit it.
7897         Default implementation does activate/grab_focus.
7898
7899         * gtk/gtkwindow.[ch]:
7900         Add support for mnemonics in windows.
7901         New functions:
7902         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
7903         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
7904
7905         * gtk/testgtk.c:
7906         Update to function name changes.
7907         
7908 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7909
7910         * gtk/gtkimagemenuitem.[c]:
7911         Add gtk_image_menu_item_new_from_stock()
7912
7913 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
7914
7915         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7916         Fix buglet in meeting.
7917
7918 2001-03-19  Havoc Pennington  <hp@redhat.com>
7919
7920         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
7921         add a bunch of accessor functions. This is because we have
7922         reasonable expectations of extending what fields it contains in
7923         the future.
7924
7925         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
7926         changes
7927
7928         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
7929         GtkIconSource   
7930
7931 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
7932
7933         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
7934         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
7935
7936         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
7937           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
7938           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
7939           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
7940         Change float to double everywhere with the exception of 0<->1.0 alignment
7941         and GtkCurve.
7942
7943 2001-03-19  Tor Lillqvist  <tml@iki.fi>
7944
7945         * gdk/win32/gdkdrawable-win32.c
7946         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
7947         output.
7948
7949         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
7950         gdkwin32.h.
7951
7952 2001-03-18  Tor Lillqvist  <tml@iki.fi>
7953
7954         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
7955         print_event_state, print_event): Use preprocessor macro to make
7956         code more compact. Print also GDK_WINDOW_STATE events.
7957         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
7958         
7959         * gtk/gtk.def
7960         * gtk/makefile.mingw.in: Update.
7961
7962         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
7963         to catch also Cygwin.
7964
7965 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
7966
7967         * gtk/gtkspinbutton.[hc]: added rc-style argument
7968         GtkSpinButton::shadow_type.
7969         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
7970         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
7971         rc-style settings.
7972
7973         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
7974
7975         * gtk/gtkwidget.c: quark cleanups.
7976
7977         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
7978         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
7979         to create_rc_style() (we don't do cloning in standard OO sense).
7980         added per rc style properties.
7981         
7982         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
7983         property values and for caching those. some cleanups.
7984         
7985         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
7986         
7987         * gtk/gtksettings.[hc]: new file for global rc-file properties
7988         (at least currently, should get extended to support X properties
7989         and other communication mechanisms).
7990         
7991         * gtk/gtkwidget.[hc]: added style property support:
7992         (gtk_widget_class_install_style_property_parser): install style
7993         property pspec with parser function for rc-file values other
7994         than LONG, DOUBLE or STRING.
7995         (gtk_widget_class_install_style_property): same as above without
7996         parser (parsers are going to be needed quite infrequently).
7997         (gtk_widget_style_get_property): retrive style property value.
7998         (gtk_widget_style_get_valist): same as above with varargs support,
7999         has NOCOPY semantics.
8000         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
8001
8002 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
8003
8004         * demos/gtk-demo/main.c (row_activated_cb): modified to use
8005         "row_activated" signal.
8006
8007         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
8008         stupidity.  Lets actually pass in the row with this signal...
8009
8010 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
8011
8012         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
8013
8014         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
8015
8016         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
8017         everything into the ::destroy function, and freed a lot more.
8018
8019 2001-03-16  Havoc Pennington  <hp@redhat.com>
8020
8021         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
8022         instead of gint16, to avoid overflow issues, since sizes > 16-bit
8023         are now allowed.
8024
8025 2001-03-16  Havoc Pennington  <hp@redhat.com>
8026
8027         * Applied patch from Nils Barth (bug # 51041) to 
8028         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
8029         in various places.
8030
8031 2001-03-15  Havoc Pennington  <hp@redhat.com>
8032         
8033         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
8034         for properties to set on the tag.
8035
8036         * gtk/testtext.c: fixups to reflect create_tag change
8037         
8038         * gtk/gtktexttag.c (gtk_text_tag_set_property):
8039         background/foreground stipple are objects, not boxed.
8040
8041         * demos/gtk-demo/textview.c: intellihancing
8042
8043 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
8044
8045         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
8046         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
8047
8048 2001-03-16  Alexander Larsson  <alexl@redhat.com>
8049
8050         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
8051         Fix sign error with queued region translations.
8052
8053 2001-03-15  HideToshi Tajima  <tajima@happy>
8054
8055         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
8056         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
8057         * gtk/gtkentry.c (update_im_cursor_location): 
8058         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
8059         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
8060         set_cursor_pos to set_cursor_location in GtkInputContext class
8061
8062 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
8063
8064         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
8065         the location of the cell relative to its area.
8066         * gtk/gtkcell*: modified for above change
8067         * gtk/gtktreeview.c: modified for above change.
8068
8069 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
8070
8071         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
8072          (gtk_tree_view_finalize): actually unref the model.  Thanks to
8073         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
8074
8075 2001-03-14  Havoc Pennington  <hp@redhat.com>
8076
8077         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
8078         
8079         * gtk/gtk.h: remove gtkdata.h
8080
8081         * gtk/Makefile.am: remove gtkdata
8082         
8083         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
8084         not "disconnect" on the adjustments.
8085         
8086         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
8087         GtkData
8088
8089         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
8090         not GtkData
8091
8092         * configure.in: handle case where X render exists, but Pango lacks
8093         Xft support.
8094
8095 2001-03-15 Alexander Larsson  <alexl@redhat.com>
8096
8097         * gtk/gtktoolbar.[ch]:
8098         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
8099         to add stock items to toolbars.
8100
8101         * gtk/Makefile.am:
8102         Remove ../gdk/gdkim.h from gdk_headers.
8103
8104 2001-03-15  Sven Neumann  <sven@gimp.org>
8105
8106         * gdk/gdkim.h: removed
8107         
8108         * gdk/gdkprivate.h
8109         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
8110
8111 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
8112
8113         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
8114         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
8115         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
8116         set_cursor_pos() virtual method
8117
8118         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
8119         (gtk_im_context_xim_set_cursor_pos): add implementation for
8120         set_cursor_pos() method
8121
8122         * gtk/gtkentry.c (recompute_idle_func): set current cursor
8123         position to input methods
8124
8125 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
8126
8127         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
8128         code a lot.
8129
8130         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
8131         g_mem_chunk.
8132         (_gtk_tree_data_list_alloc): use g_mem_chunk.
8133         (_gtk_tree_data_list_node_to_value): Fix to switch on
8134         G_TYPE_FUNDAMENTAL.
8135         (_gtk_tree_data_list_value_to_node): Fix to switch on
8136         G_TYPE_FUNDAMENTAL.
8137         (_gtk_tree_data_list_node_copy): Fix to switch on
8138         G_TYPE_FUNDAMENTAL.
8139
8140 2001-03-12  Havoc Pennington  <hp@redhat.com>
8141
8142         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
8143         to convert to new property API. Also, change default_width and
8144         default_height get_property to return 0 as the flag value for
8145         "unset"; -1 is not a valid value for these fields.
8146
8147 2001-03-12  Havoc Pennington  <hp@redhat.com>
8148
8149         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
8150         enum with registration for icon sizes, instead of strings.
8151
8152         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
8153         gtkwidget.c: Fix to reflect GtkIconSize
8154         
8155 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8156
8157         Make GtkFB compile and link.
8158         
8159         * gdk/linux-fb/gdkdrawable-fb2.c:
8160         window->mapped to GDK_WINDOW_IS_MAPPED(). 
8161         
8162         * gdk/linux-fb/gdkwindow-fb.c:
8163         window->mapped to GDK_WINDOW_IS_MAPPED(). 
8164         Added gdk_window_shape_combine_region.
8165         Added assorted placeholders for unimplemented new GdkWindow API calls.
8166
8167 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8168
8169         * gtk/gtkfilesel.c:
8170         Add more test when converting filenames from/to utf-8.
8171         Don't allow entering text in the filename entry which isn't allowed in
8172         a filename. Just beep instead.
8173
8174 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8175
8176         * gtk/gtkclist.c:
8177         Scroll using gdk_window_scroll(). Don't wait for exposes.
8178         Move the column headers in an order that makes them flash less.
8179
8180 2001-03-10  Hans Breuer  <hans@breuer.org>
8181
8182         * gdk/gdk.def : updated
8183
8184         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
8185         to offseting the clip_mask at the right place
8186
8187         * gdk/win32/gdkwindow-win32.c : don't create background brushes
8188         for all the gdkClasses, especially not for the input_only case.
8189         Otherwise flickering wont be avoidable, because we don't get
8190         WM_ERASEBKGND message for these windows.
8191
8192         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
8193         and fixed massive redraw problems apparently triggered by Alexanders 
8194         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
8195         but it seems to work quite well :-)
8196
8197         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
8198         prototype
8199
8200 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
8201
8202         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
8203         (gtk_list_store_set_cell): Fix a stupid typo.
8204
8205 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
8206
8207         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
8208         select_all not work if you're in SINGLE mode (it doesn't make that
8209         much sense, anyway.)
8210
8211         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8212         handle types more sanely.
8213         (_gtk_tree_data_list_value_to_node): handle types more sanely.
8214         (_gtk_tree_data_list_node_copy): handle types more sanely.
8215
8216         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
8217         GValue better. Converts the type as well.
8218
8219         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
8220         GValue better. Converts the type as well.
8221
8222 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
8223
8224         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
8225         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
8226         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
8227         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
8228
8229         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
8230         gdk_im/gdk_ic.
8231
8232 2001-03-09  Hans Breuer  <hans@breuer.org>
8233
8234         * gdk/gdk.def : updated
8235
8236         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
8237         for their palette
8238
8239         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
8240         removing
8241
8242         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
8243         removing and implemented Havoc's GdkWindow state functions; 
8244         stick/unstick only as no-op, cause I don't know how to emulate 
8245         on win32 ...
8246
8247         * gtk/gtk.def : updated
8248
8249         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
8250
8251         * gtk/gtktypeutils.c : #include <string.h>
8252
8253         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
8254
8255 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
8256
8257         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
8258         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
8259         not a boxed.
8260
8261 2001-03-09  Alexander Larsson  <alexl@redhat.com>
8262
8263         * docs/Changes-2.0.txt:
8264         Document expose event->region change and that gtk_widget_event
8265         doesn't allow passing expose events.
8266
8267         * gdk/gdkevents.h:
8268         Add region to expose event.
8269         
8270         * gdk/gdkevents.c:
8271         Handle event->region in gdk_event_copy() and gdk_event_free().
8272
8273         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
8274         Generate expose_event->region when creating expose events.
8275
8276         * gdk/x11/gdkevents-x11.c:
8277         Generate expose events with regions when translating X events.
8278
8279         * gtk/gtkcontainer.[ch]:
8280         Default expose handler that propagates expose events to NO_WINDOW
8281         children. New function gtk_container_propagate_expose()
8282
8283         * gtk/gtkwidget.[ch]:
8284         Moved gtk_widget_event implementation to gtk_widget_event_internal.
8285         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
8286         expose events. New function gtk_widget_send_expose() to send expose
8287         events. New function gtk_widget_region_intersect() to calculate
8288         window/region intersections.
8289         
8290         * gtk/gtkmain.c (gtk_main_do_event):
8291         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
8292         Use gtk_widget_send_expose() to send expose events.
8293         
8294         * gtk/gtkbin.c:
8295         * gtk/gtkbox.c:
8296         * gtk/gtkfixed.c:
8297         * gtk/gtkimagemenuitem.c:
8298         * gtk/gtklist.c:
8299         * gtk/gtkpacker.c:
8300         * gtk/gtktable.c:
8301         * gtk/gtktree.c:
8302         Remove expose handler, using the default container implementation
8303         instead.
8304         
8305         * gtk/gtkbutton.c:
8306         * gtk/gtkcheckbutton.c:
8307         * gtk/gtkeventbox.c:
8308         * gtk/gtkfixed.c:
8309         * gtk/gtkhandlebox.c:
8310         * gtk/gtklayout.c:
8311         * gtk/gtklistitem.c:
8312         * gtk/gtkmenu.c:
8313         * gtk/gtkmenubar.c:
8314         * gtk/gtkmenuitem.c:
8315         * gtk/gtknotebook.c:
8316         * gtk/gtkoptionmenu.c:
8317         * gtk/gtkpaned.c:
8318         * gtk/gtkscrolledwindow.c:
8319         * gtk/gtktogglebutton.c:
8320         * gtk/gtktoolbar.c:
8321         * gtk/gtktreeitem.c:
8322         * gtk/gtkviewport.c:
8323         Chain expose handler to parent class handler. Use
8324         gtk_container_propagate_expose() to propagate exposes.
8325
8326         * gtk/gtkclist.c (check_exposures):
8327         * gtk/gtktext.c (process_exposes):
8328         Use gtk_widget_send_expose instead of gtk_widget_event.
8329
8330 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
8331
8332         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
8333
8334 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
8335
8336         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
8337         unref the nodes.   Fixes bug #50058.
8338
8339         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
8340         "::ref_iter" to "::ref_node".
8341         (gtk_tree_model_unref_node): change "::unref_iter" to
8342         "::unref_node". Fixes bug #50064.
8343
8344 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
8345
8346         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
8347         support for invisible cells.
8348          (gtk_tree_view_bin_expose): ditto
8349
8350 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
8351
8352         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
8353         on gobjects.
8354
8355         * tests/testtreefocus.c (main): New test file.
8356
8357         * tests/testtreeview.c: update to latest glib changes.
8358
8359         * tests/testtreecolumns.c: update to latest glib changes.
8360
8361 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
8362
8363         * gtk/testgtk.c: re-enabled event watcher emission hooks.
8364
8365 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
8366
8367         * *.c: added accumulator data argument to g_signal_newc()
8368         functions.
8369
8370         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
8371         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
8372         * gtk/treestoretest.c (make_window):
8373         s/g_signal_connect/g_signal_connectc/.
8374
8375         * gtk/gtktextbuffer.c: completed signal arg fixups,
8376         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
8377
8378 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
8379
8380         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
8381         G_CONST_RETURN.
8382
8383         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
8384         ::hierarchy-changed signal when a widget changes
8385         from anchored to unanchored or vice versa.
8386         (anchored means 
8387          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
8388         Use a private flag to keep track of this efficiently.
8389
8390 2001-03-07  Havoc Pennington  <hp@redhat.com>
8391
8392         * gtk/testgtk.c (create_spins): uglify so that size request gets
8393         tested.
8394
8395         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
8396         request on values for upper/lower, completes #6152
8397
8398 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
8399
8400         * Makefile.am: Remove gtk-config-2.0 again.
8401         (Grrrr, pkg-config. And stops make loops.)
8402
8403 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
8404
8405         * gtk/gtksignal.[hc]: removed old emission hook API.
8406         
8407         * docs/Changes-2.0.txt: fixed sections.
8408         
8409         * gtk/gtktextbuffer.c: signal arg fixups.
8410
8411 2001-03-07  Havoc Pennington  <hp@redhat.com>
8412
8413         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
8414
8415         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
8416         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
8417         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
8418         validation and the redraw which is higher priority than the
8419         validation.
8420
8421 2001-03-07  Havoc Pennington  <hp@redhat.com>
8422
8423         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
8424         (gtk_entry_set_property): remove trailer
8425
8426         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
8427         (gtk_entry_get_width_chars): new functions, to set size request to 
8428         a given number of characters
8429
8430         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
8431
8432         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
8433         (gtk_dialog_get_has_separator): new function
8434         (run_delete_handler): fix to not emit "response" signal
8435         because we already did in the delete event handler installed
8436         at dialog creation time.
8437         
8438         * gtk/gtkdialog.h: add a has_separator property,
8439         add GTK_DIALOG_NO_SEPARATOR flag
8440
8441 2001-03-07  Havoc Pennington  <hp@redhat.com>
8442
8443         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
8444         off decorations for a window.
8445
8446         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
8447         changes
8448
8449         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
8450         to get location of PangoLayout inside the label, closes #51198
8451
8452         * gtk/testgtk.c (create_bbox): fix up button box usage
8453
8454         * gtk/testcalendar.c (create_calendar): fix up button box usage
8455
8456         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
8457
8458         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
8459
8460         * gtk/gtkhbbox.h: deprecations
8461
8462         * gtk/gtkvbbox.h: deprecations
8463
8464         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
8465         emulate deprecated gtk_button_box_get_spacing
8466
8467         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
8468         the "set global default" functions
8469         (struct _GtkButtonBox): remove "spacing" field, use the one from 
8470         GtkBox base class
8471
8472         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
8473
8474         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
8475         render the icon, return the missing image icon.
8476
8477         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
8478         image icon if the load fails.   
8479
8480         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
8481         when no image is found; should be the Netscape "missing image"
8482         icon eventually but for now is a random image
8483
8484         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
8485         role for the session manager
8486
8487         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
8488
8489         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
8490         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
8491
8492         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
8493
8494 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
8495
8496         * gtk/*.c: marshaller fixes.
8497         
8498         * gtk/gtkmarshal.list: extreme cleanup.
8499
8500         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
8501         param spec for now.
8502
8503         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
8504         where appliable.
8505
8506         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
8507         special cased autogenerated boxed types from gtktypebuiltins_ids.c
8508         which are not reference counted:
8509         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
8510         PangoFontDescription, GtkTreeIter and GtkTreePath.
8511
8512 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
8513
8514         * gtk/gtktreeselection.h: 
8515         * gtk/gtktreemodel.c:
8516         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
8517         file should be included directly, and gobject/gmarshal.h
8518         as well as gtk/gtkmarshal.h even can't be included directly.
8519
8520         * Makefile.am: grr, install gtk-config-2.0.
8521
8522         * gtk/testgtk.c:
8523         * gtk/simple.c:
8524         * gtk/gtkmenu.c:
8525         * gtk/gtkitemfactory.c: use g_object_connect() instead of
8526         passing "*signal*::*" args to gtk_widget_set().
8527         
8528         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
8529         
8530         * gtk/*.c: removed trailer arg from property setters and getters.
8531         macro fixups.
8532
8533 2001-03-07  Alexander Larsson  <alexl@redhat.com>
8534
8535         * gtk/gtklabel.c (set_markup): Removed warning
8536
8537 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
8538
8539         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
8540         field to allow you to hide cell renderers.
8541
8542         * gtk/gtkcellrenderer.c: Add support for invisible cells.
8543
8544         * gtk/gtktreeview.c: Add support for invisible cells.
8545
8546 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
8547
8548         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
8549         Add "clicked" signal back to columns.
8550
8551         * ChangeLog: remove conflict markers.
8552
8553 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
8554
8555         * gtk/gtkbutton.c: Add animation of activation by, on 
8556         activate, pressing the button, and adding a timeout that 
8557         releases the button after 250ms or on key release and
8558         emits ::clicked. (#51501)
8559
8560         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
8561         action area, we connect to ::clicked instead of ::activate
8562         so the dialog stays up through the animation.
8563
8564 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
8565
8566         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
8567         check the ignore_enter flag for the menu shell that
8568         the item is actually a child of, not for attached
8569         submenus. (#51536)
8570
8571 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8572
8573         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8574         special key-press grab handling for widgets within
8575         GtkWindows. Otherwise, fall through to normal case.
8576
8577         This prevents key events being sent twice to GtkInvisible
8578         widgets, which can cause all sorts of mischief.
8579
8580 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8581
8582         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8583         widget is in effect, give the grab widget a first
8584         crack at KEY_PRESS/RELEASE events. (#424)
8585
8586 2001-03-06  James Henstridge  <james@daa.com.au>
8587
8588         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
8589         offset for the window_state_event to point at window_state_event
8590         rather than no_expose_event.
8591
8592 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
8593
8594         * gtk/gtkimmodule.h: fix busted /* comment */
8595
8596 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
8597
8598         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
8599         object properties.
8600
8601 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
8602
8603         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
8604         add object properties.
8605
8606         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
8607         to add object properties.
8608
8609         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
8610         object properties.
8611
8612         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
8613         add object properties.
8614
8615         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
8616         object properties.
8617
8618 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
8619
8620         * gtk/gtktreemodel.c: renamed "child_toggled" to
8621         "has_child_toggled".
8622
8623         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
8624         handle new signal name.
8625
8626         * gtk/gtktreestore.c: Updated to handle new signal name.
8627         * gtk/gtklisttore.c: Updated to handle new signal name.
8628         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
8629
8630 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8631
8632         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
8633         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
8634
8635 2001-03-05  Michael Natterer  <mitch@gimp.org>
8636
8637         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
8638         pixbuf-engine coincidentially also failed to make one of it's
8639         parent_class pointers static, causing overwriting of GtkLabel's
8640         parent_class pointer in pixbuf_style_class_init().
8641         (Will commit the fix to the pixbuf-engine too).
8642
8643 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8644
8645         * gdk/gdkwindow.h:
8646         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
8647         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
8648         gdk_window_set_icon_list for net wmspec functionality.
8649
8650         * gdk/x11/gdkwindow-x11.c:
8651         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
8652         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
8653         gdk_window_set_icon_list.
8654         Added gdk_wmspec_change_state helper function and used it in the code.
8655         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
8656
8657         * gtk/gtkdialog.c (gtk_dialog_init):
8658         Set GDK_WINDOW_TYPE_HINT_DIALOG.
8659
8660         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
8661         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
8662
8663         * gtk/gtkwindow.c:
8664         new function gtk_window_set_type_hint.
8665         On realize, set type hint and modal hint.
8666
8667         * gtk/gtkwindow.h:
8668         Added type_hint field and gtk_window_set_type_hint.
8669
8670 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8671
8672         * gtk/gtklabel.[ch]:
8673         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
8674         New function gtk_label_get_accel_keyval () to get the underline accelerator
8675         of the label. Setting the label pattern overrides other attributes.
8676
8677 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
8678
8679         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
8680         Added missing initializers to gtk_rc_style_init().
8681
8682 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
8683
8684         * gtk/gtktextview.c: fixed bug #51097 about setting 
8685         gtk_text_view_set_border_window_size() if the widget is 
8686         already realized.
8687
8688 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
8689
8690         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
8691
8692         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
8693         comment. Won't do to have duplicated doc comments between
8694         the platform subdirs.
8695
8696 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
8697
8698         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
8699           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
8700
8701         Detectable auto-repeat - make a repeating key generate
8702         press/press/press/release instead of press/release pairs.
8703
8704         If we have Xkb and XkbSetDectableAutoRepeat supports
8705         that, we do it that way. Otherwise, when we get
8706         a release event, we check ahead with XPending to see
8707         if the next key is a KeyPress with the same keycode
8708         and timestamp. (Not 100% reliable, but pretty close.)
8709           
8710 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8711         
8712         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8713         special key-press grab handling for widgets within
8714         GtkWindows. Otherwise, fall through to normal case.
8715  
8716         This prevents key events being sent twice to GtkInvisible
8717         widgets, which can cause all sorts of mischief.
8718  
8719 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8720  
8721         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8722         widget is in effect, give the grab widget a first
8723         crack at KEY_PRESS/RELEASE events. (#424)
8724  
8725 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
8726
8727         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
8728         to extend the selection. (Roughly based on patch
8729         from Jay Cox, #50939)
8730
8731         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
8732         to properly handle previous GDK_BUTTON_PRESS. 
8733         (Patch from Jay Cox, #50938)
8734
8735         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
8736         '\0' back along with the deleted text. (#51148)
8737
8738 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
8739
8740         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
8741         the group when extracting it from the X keyboard event.
8742
8743         * modules/input/Makefile.am modules/input/imipa.c: 
8744         Simple module for entering IPA. (Do we need a 
8745         gtk-stupid-input-tricks CVS module?)
8746
8747 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
8748
8749         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
8750         const.
8751
8752         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
8753
8754         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
8755         is no focus widget for the dialog currently, grab the focus as well
8756         as the default.
8757
8758         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
8759         the action area's children to iterate through, not the
8760         dialog's children.
8761
8762 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
8763
8764         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
8765         Add plug-socket tests. (Won't work worth a darn until I commit
8766         the rest of the plug-socket changes, but no reason these
8767         can't go into CVS now.)
8768
8769 2001-03-02  Havoc Pennington  <hp@redhat.com>
8770
8771         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
8772         _gdk_region_get_xrectangles()
8773
8774         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
8775
8776         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
8777
8778         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
8779         function, contributed by Ron Steinke    
8780
8781         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
8782         gdk_net_wm_supports
8783
8784         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
8785         New function, contributed by Ron Steinke
8786
8787         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
8788         used to line up the text in the entry when using the entry for
8789         editable sheet cell hacks
8790
8791         * gtk/testgtk.c (create_entry): test the activate_default setting
8792         on GtkEntry
8793
8794         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
8795         cause the entry to activate the default button for a dialog when 
8796         activated
8797         (gtk_entry_get_activates_default): new function
8798
8799 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
8800
8801         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
8802         Hwang to move call to sync_selection() up a few lines
8803         to before the row list is modified, to fix crash when
8804         removing rows in the undo_selection list.
8805
8806         (Test case provided by Daniel Elstner:
8807
8808         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
8809
8810 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
8811
8812         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
8813         of tree->root_tree in parent_set rather than _map(), 
8814         fixing #50892 in a bit better manner.
8815
8816 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
8817
8818         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
8819
8820 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
8821
8822         * gtk/gtkstyle.c : Remove duplicate fwd decl for
8823         gtk_default_draw_shadow.
8824
8825 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
8826
8827         * gdk/gdkimage.c (gdk_image_new): Remove excess 
8828         warning, make warnings more verbose, treat a error
8829         in shmat as permanent, and don't try again.
8830         (#51163, Ed Randall.)
8831
8832 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
8833
8834         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
8835         delay for the first click before starting to scroll.
8836         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
8837
8838         * gtk/gtktext.c: GtkText should have I-beam cursor. 
8839         (based on gtk-enf-990513-1.patch, Eric Fisher.)
8840
8841 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
8842
8843         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
8844         cleanup to remove some references to unused
8845         ->xoffset, ->yoffset.
8846
8847 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
8848
8849         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
8850         mask. (#51039, fix from Martin Maierhofer)
8851
8852 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
8853
8854         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
8855         for unshifted + and shifted = for non-us keyboards.
8856         Make <Control>+ and <Control>- work as well as 
8857         <Control>KP_Plus, <Control>KP_Minus for recursive
8858         open/close.  (#2682, René Seindal)
8859
8860 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
8861
8862         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
8863         the active menu item before deactivating the menu,
8864         so gtk_menu_popdown doesn't change the history. (#50964)
8865         
8866 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
8867
8868         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
8869         draw lines with text_gc rather than black_gc.
8870         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
8871
8872 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
8873
8874         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
8875         Move handling of buttons fully in gtktreeviewcolumn.  This code is
8876         less interrelated then it was, but it still requires the
8877         GtkTreeView to map it.
8878
8879         * test/testtreecolumn.c: Now I can add a column to one view,
8880         remove it, add it to the another view, remove it, then re-add it
8881         to the first.  Nifty.
8882
8883 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
8884
8885         * docs/tutorial/gtk-tut.sgml: Minor corrections
8886
8887 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
8888
8889         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
8890         GtkRowReference.
8891
8892 2001-02-28  Havoc Pennington  <hp@redhat.com>
8893
8894         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
8895         draw_default
8896         (gtk_widget_draw_focus): remove this function; we could instead
8897         make it just gtk_widget_draw(), but in most cases I think the
8898         result would be broken user code, so think it's better to have
8899         that code not compile and get fixed
8900         (gtk_widget_draw_default): ditto
8901
8902         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
8903         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
8904         
8905         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
8906         widgets lose/get the default, instead of calling draw_default
8907         
8908         * docs/Changes-2.0.txt: note about all this
8909
8910         Then fixed every widget in GTK, I won't list all the filenames.
8911
8912 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
8913
8914         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
8915         _gtk_tree_row_reference_deleted.
8916         (inserted_callback): Proxy out to
8917         _gtk_tree_row_reference_inserted.
8918         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
8919         get around signal emission ordering problem.
8920
8921         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
8922         fix to work with SINGLE 
8923         (_gtk_tree_selection_internal_select_node): Major sanitization on
8924         selections.  SINGLE now seems to work.
8925
8926         * tests/Makefile.am: add testtreecolumn.c:
8927
8928         * tests/testtreecolumn.c: New test.  Mostly points out selection
8929         bugs currently, but will test columns later.
8930
8931         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
8932         selection bug.  I hate touching this code -- it's scary.
8933
8934 2001-02-26  Havoc Pennington  <hp@redhat.com>
8935
8936         * gtk/testgtk.c: test the window state stuff
8937
8938         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
8939         window come to the user's attention as if it were just created
8940         (gtk_window_iconify): new function
8941         (gtk_window_deiconify): new function
8942         (gtk_window_stick): new function
8943         (gtk_window_unstick): new function
8944         (gtk_window_maximize): new function
8945         (gtk_window_unmaximize): new function
8946
8947         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
8948
8949         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
8950
8951         * gdk/x11/gdkevents-x11.c: create window state events when
8952         appropriate
8953         (gdk_wmspec_supported): new function
8954
8955         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
8956         iconification before showing the window
8957         (gdk_window_deiconify): new function
8958         (gdk_window_stick): new function
8959         (gdk_window_unstick): new function
8960         (gdk_window_maximize): new function
8961         (gdk_window_unmaximize): new function
8962
8963         * gdk/gdkwindow.c: store the window state in the window; 
8964         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
8965         window->mapped.
8966         (gdk_window_get_state): return the current window state
8967
8968         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
8969         (gdk_event_get_state): handle GDK_WINDOW_STATE
8970         (gdk_synthesize_window_state): function to create the window state
8971         events
8972
8973         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
8974         event, for changes to "window state" such as maximized, sticky, 
8975         etc.
8976         
8977         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
8978         focuses a window
8979
8980         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
8981         finds out if we support a given WM spec hint
8982
8983 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
8984
8985         * docs/faq/gtk-faq.sgml: New question re memory leaks.
8986
8987 2001-02-25  Hans Breuer  <hans@breuer.org>
8988
8989         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
8990         cause we want to loose those prototypes only in the latter case
8991
8992         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
8993         GdkPixmapImplWin32 because it itsn't derived from it. Use the
8994         impl member variable instead
8995
8996         * gtk/gtk.def : updated
8997
8998         * gtk/gtklist.c : 
8999         * gtk/gtkmenus.c : include <string.h> for memset ()
9000
9001         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
9002         for everthing built here, but for gtk-x.x.dll only. This solves
9003         problem of indifferent gtk type definitions
9004
9005 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
9006
9007         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
9008
9009 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
9010
9011         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
9012         column that is exposed.
9013
9014         (_gtk_tree_view_update_size): Changed name from set_size, and
9015         changed function to do more work, and not force people calling it
9016         to figure out the size.  Simplifies a lot of code elsewhere.
9017
9018 2001-02-23  Alexander Larsson  <alexl@redhat.com>
9019
9020         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
9021         return solid masks for xpms that have no transparent color.
9022         This makes the ..._create_from_xpm... API backwards
9023         compatible.
9024
9025 2001-02-23  Tor Lillqvist  <tml@iki.fi>
9026
9027         * README.win32: Update. Mention the gtk-1-3-win32-production
9028         branch.
9029
9030         * gdk/win32/bdfcursor.c: New file. A program that generates
9031         xcursors.h. Thanks to Stefan Ondrejicka.
9032
9033         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
9034         compact format.
9035
9036         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
9037
9038         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
9039         function, uses xcursors.h.
9040         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
9041         cursor from inline data instead of using LoadCursor() to generate
9042         it from a resource.
9043
9044         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
9045         event, must check the Windows message for mouse button state, as
9046         the GDK event state might not have been built if it is
9047         undelivered. Remove one goto.
9048
9049         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
9050         SetCursor() if the current cursor as returned by GetCursor() is
9051         the window's previous cursor. The ChildWindowFromPoint() test
9052         apparently didn't work correctly.
9053
9054         * gdk/win32/rc/*.cur: Remove.
9055
9056         * gdk/win32/rc/gdk.rc.in: Remove cursors.
9057
9058         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
9059
9060         * gtk/makefile.{mingw,msc}.in: Updates.
9061
9062 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
9063
9064         * gtk/gtktreemodel.h: add functions for signal emission.
9065
9066         * gtk/gtktreestore.c: move to use above functions instead of
9067         g_signal_emit.
9068
9069         * gtk/gtkliststore.c: ditto
9070
9071 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
9072
9073         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
9074         GObject instead of GtkObject.
9075
9076         * gtk/gtkliststore.c: ditto.
9077
9078         * gtk/gtktreemodelsort.c: ditto.
9079
9080         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
9081         GtkTreeModelIface, instead of in each model.
9082
9083 2001-02-21  Havoc Pennington  <hp@redhat.com>
9084
9085         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
9086         unbreak this function
9087
9088         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
9089         properties
9090
9091         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
9092         properties
9093
9094         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
9095         properties
9096
9097         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
9098         mean unset the max length
9099
9100 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
9101
9102         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
9103         Changed name to be set_cell_data_func to make it clear what
9104         the functino does.  Close bug #51069.
9105
9106 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
9107
9108         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
9109         have memory actually freed.  Keeps box running longer.
9110
9111 2001-02-21  Alexander Larsson  <alexl@redhat.com>
9112         
9113         * gtk/gtkseparatormenuitem.[ch]:
9114         Added new menu separator item. The drawing and size handling
9115         is still done in GtkMenuItem, but the API is a bit more sane.
9116         
9117         * gtk/Makefile.am:
9118         Add gtkseparatormenuitem.[ch].
9119
9120         * gtk/gtk.h:
9121         Add gtkseparatormenuitem.h.
9122         
9123         * gtk/gtkentry.c:
9124         * gtk/gtkmenufactory.c:
9125         * gtk/gtktextview.c:
9126         Use the new API for menu separators.
9127         
9128         * demos/gtk-demo/menus.c (create_menu):
9129         Add some GtkSeparatorMenuItem demo code.
9130
9131 2001-02-20  Havoc Pennington  <hp@redhat.com>
9132
9133         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
9134         Lee Mallabone
9135
9136         * gtk/gtkarrow.c: Convert to new property API, patch from 
9137         Lee Mallabone
9138
9139 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
9140
9141         * tests/testtreeview.c (toggled_callback): fix to reflect change
9142         in GtkTreeModelStore.
9143
9144 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
9145
9146         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
9147         function to create an icon set from a pixbuf.
9148
9149 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9150
9151         * gtk/gtkcellrenderertext.[ch]:
9152         Add a "markup" property.
9153
9154         * gtk/treestoretest.c:
9155         Use the markup property, remove some leftover stuff from
9156         GtkTreeModelMapping.
9157
9158 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9159
9160         * gtk/gtklabel.c (gtk_label_set_selectable):
9161         Queue a redraw if the selectable setting was changed.
9162
9163 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9164
9165         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
9166         Actually copy the whole gc, not just the public parts.
9167         
9168         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
9169         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
9170         labels.
9171
9172 2001-02-19  Havoc Pennington  <hp@pobox.com>
9173
9174         * gdk/gdkwindow.c: docs
9175
9176         * gdk/gdkrgb.c: docs
9177
9178         * gdk/gdkregion-generic.c: docs
9179
9180         * gdk/gdkgc.c (gdk_gc_set_values): docs
9181
9182         * gdk/gdkdraw.c: docs
9183
9184         * gdk/gdkdrawable.h: deprecate drawable get/set data
9185
9186 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
9187
9188         * demos/gtk-demo/dialog.c: Add simple new demo.
9189
9190 2001-02-19  Havoc Pennington  <hp@redhat.com>
9191
9192         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
9193         insert_child_anchor signal, bug #50245
9194
9195         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
9196         from create_child_anchor, so the anchor is passed in
9197
9198         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
9199         (_gtk_widget_segment_new): have the child anchor object passed in, 
9200         instead of creating it.
9201
9202         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
9203         to gtk_text_buffer_get_modified
9204
9205 2001-02-19  Havoc Pennington  <hp@redhat.com>
9206
9207         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
9208         changed GLib without fixing GTK
9209
9210         * gtk/gtkrange.h: Rename all the stupid implementation detail 
9211         functions to have an underscore in front. Most of them should 
9212         probably just go away, but for starters don't export them.
9213         Bug #50482
9214
9215 2001-02-19  Havoc Pennington  <hp@redhat.com>
9216
9217         * gdk/gdkcolor.h: test was backward, so deprecated functions were
9218         excluded by default
9219
9220         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
9221         clean up the old code a bit
9222
9223         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
9224         inconsistent state
9225
9226         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
9227         draw inconsistent state
9228
9229         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
9230         (create_menu): add inconsistent test
9231
9232         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
9233         new function
9234         (gtk_check_menu_item_get_inconsistent): new function
9235         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
9236         state (using etched in for now)
9237
9238         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
9239         draw inconsistent state
9240
9241         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
9242         function, used when the user has selected a range of stuff in
9243         different states
9244         (gtk_toggle_button_get_inconsistent): accessor for that
9245         (gtk_toggle_button_paint): draw inconsistent state (etched in?
9246         don't know what else to do)
9247
9248 2001-02-19  Hans Breuer <hans@breuer.org>
9249
9250         * gtk/gtk.def : updated exported symbols
9251
9252         * gtk/makefile.msc.in : updated
9253
9254         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
9255         a colormap, when invoked from testgtk::entry. I'm not sure where
9256         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
9257         avoids immediate crashing ...
9258
9259         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
9260         any objections ?
9261
9262         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
9263         0 parameter. At least msvc doesn't like macros with var args. 
9264         I simply removed the extra 0, was it a feature or a typo ?
9265
9266         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
9267         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
9268         because the value assignment to the internal struct wasn't working.
9269         I'm not absolutely sure. The problem could have been resolved by
9270         changing the "func" declartion in the struct, but was the pointer
9271         to the function pointer intended ?
9272
9273         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
9274
9275         * gdk/gdk.def : updated exported symbols
9276
9277         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
9278         only use SetDIBitsToDevice if there is a palette at the drawable
9279         and the image is GDK_VISUAL_PSEUDO_COLOR
9280
9281         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
9282
9283         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
9284
9285         * gdk/*/makefile.msc : updated
9286
9287 2001-02-19  Havoc Pennington  <hp@redhat.com>
9288
9289         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
9290         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
9291
9292         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
9293         (gdk_key_repeat_restore): nuke
9294
9295         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
9296         (gdk_init_check): no atexit func
9297
9298         * gdk/gdkrgb.h: mark some stuff deprecated
9299
9300         * gdk/gdkcolor.h: mark some stuff deprecated
9301         
9302         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
9303
9304         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
9305
9306 2001-02-16  Havoc Pennington  <hp@redhat.com>
9307
9308         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
9309         scroll steps.
9310
9311         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
9312         steps, and add Ctrl-arrow shortcuts for paging visually as with
9313         HScale, since Page Up and Page Down move logically.
9314
9315         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
9316         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
9317         
9318         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
9319         steps
9320         (gtk_range_scroll): handle the visual steps
9321
9322         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
9323         scroll steps
9324
9325         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
9326         steps, not the logical ones.
9327
9328         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
9329         (scroll_vertical): handle up/down steps
9330
9331 2001-02-19 Alexander Larsson  <alexl@redhat.com>
9332
9333         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
9334         Copy data and free data with free().
9335
9336         * gdk-pixbuf/gdk-pixbuf.c:
9337         * gdk-pixbuf/io-jpeg.c:
9338         * gdk-pixbuf/io-png.c:
9339         Use g_try_malloc/g_free instead malloc/free.
9340         
9341         * gdk-pixbuf/test-gdk-pixbuf.c:
9342         Must... initialize... gobject...
9343         
9344         * gdk-pixbuf/pixops/timescale.c:
9345         * gtk/gtkcalendar.c:
9346         Use g_malloc instead of malloc.
9347         
9348 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
9349
9350         * gtk/testgtkrc:
9351         Comment out property assignments, these don't work yet.
9352
9353 2001-02-17  Havoc Pennington  <hp@pobox.com>
9354
9355         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
9356         bit.
9357
9358 2001-02-17  Havoc Pennington  <hp@pobox.com>
9359
9360         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
9361         shadowed variables that had broken size request in some cases,
9362         leading to bogus tooltips (#50996)
9363
9364 2001-02-06  Jon K Hellan  <hellan@acm.org>
9365
9366         Implement fast browsing of tooltips, bug #50619
9367         
9368         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
9369         and last_popdown
9370         
9371         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
9372         use_sticky_delay and last_popdown.
9373         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
9374         time of popdown.
9375         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
9376         is NULL.
9377         (gtk_tooltips_recently_shown): New static function.  Return true
9378         if < sticky_delay has elapsed since last popdown.
9379         (gtk_tooltips_event_handler): Display window after sticky_delay
9380         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
9381         since last popdown.
9382         
9383 2001-02-17  Havoc Pennington  <hp@pobox.com>
9384
9385         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
9386         instead of (). #6394
9387
9388         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
9389         G_CONST_RETURN, make it return by reference, #50473
9390         
9391 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
9392
9393         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
9394         generated ENTER_NOTIFY event with 0, otherwise not explicitely
9395         setup fields contain garbage (e.g. subwindow, breaking
9396         gdk_drawable_ref() upon event copy).
9397         (gtk_menu_stop_navigating_submenu_cb): same here.
9398
9399         * gtk/gtklist.c (gtk_list_vertical_timeout): 
9400         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
9401         * gtk/gtkclist.c (vertical_timeout): 
9402         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
9403         default-zero-intialization for unions to memset(,0,), as unions are
9404         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
9405         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
9406
9407         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
9408         g_closure_sink() warning.
9409
9410         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
9411         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
9412         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
9413         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
9414         
9415 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
9416
9417         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
9418         gtk_*_store_get, and moved to GtkTreeModel.
9419
9420         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
9421
9422         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
9423
9424         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
9425
9426         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
9427         set the func.
9428
9429         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
9430         freeze/thaw notify between setting all the properties for a cell.
9431
9432         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
9433
9434 2001-02-15  Havoc Pennington  <hp@redhat.com>
9435
9436         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
9437         the X coordinates so they're with respect to the line, rather than 
9438         with respect to the layout.
9439
9440         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
9441         Mallabone
9442
9443         * gtk/testgtk.c (create_range_controls): add vscale tests, 
9444         and inverted test
9445
9446         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
9447         #50806
9448
9449         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
9450
9451         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
9452         gtk_text_iter_is_end
9453
9454         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
9455         rename gtk_text_buffer_get_end_iter
9456
9457         * gtk/testgtk.c (create_labels): Add test for selectable
9458
9459         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
9460         the selection stuff. This code is kind of broken since it doesn't 
9461         use the theme engine.
9462
9463         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
9464         fix infinite loop and y offset problem
9465         (gdk_draw_layout_line_with_colors): fix foreground color handling
9466
9467         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
9468         that makes the label selectable.
9469         
9470         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
9471         layout when the style is set, since fonts etc. could have changed.      
9472
9473 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
9474
9475         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
9476
9477         * gtk/gtktreemodelsimple.[ch]: removed.
9478
9479 2001-02-16  Alexander Larsson  <alexl@redhat.com>
9480
9481         * gtk/gtktreemodelmapping.[ch]:
9482         New files. Implement GtkTreeModelMapping.
9483         
9484         * gtk/Makefile.am:
9485         Add gtktreemodelmapping.[ch].
9486         
9487         * gtk/gtk.h:
9488         Add gtktreemodelmapping.h
9489
9490         * gtk/treestoretest.c:
9491         Test the GtkTreeModelMapping
9492
9493 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
9494
9495         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
9496         have a demo, we might as well pass in real values.  Thanks to
9497         clahey for pointing this out.
9498
9499 2001-02-14  Havoc Pennington  <hp@pobox.com>
9500
9501         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
9502         "static" to a private function
9503         (gtk_image_menu_item_class_init): remove destroy handler,
9504         add "image" object property
9505
9506 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
9507
9508         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
9509         Add a shortcut if the window and the current clip_region doesn't
9510         overlap. This is needed when there are a lot of windows in a
9511         window. The layout test in testgtk is a good test.
9512
9513         * gdk/linux-fb/gdkwindow-fb.c:
9514         Whitespace fix.
9515
9516 2001-02-13  Sven Neumann  <sven@convergence.de>
9517
9518         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
9519
9520 2001-02-13  Alexander Larsson  <alexl@redhat.com>
9521
9522         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
9523         Don't reference last_cursor if it is null. Fixes crash when rotating
9524         the screen before having moved the mouse.
9525
9526         * gdk/linux-fb/gdkcc-fb.c: Zapp!
9527
9528         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
9529
9530         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
9531         when using 90 or 270 degrees rotation.
9532
9533 2001-02-12  Havoc Pennington  <hp@pobox.com>
9534
9535         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
9536         it always set the foreground, even if we were only using
9537         a stipple.
9538         (gdk_draw_layout_line_with_colors): new function, allow
9539         override colors
9540         (gdk_draw_layout_with_colors): new function, allow override
9541         colors
9542         (gdk_pango_layout_line_get_clip_region): function to get the clip
9543         region for a logical text range
9544         (gdk_pango_layout_get_clip_region): get the clip region for a
9545         logical text range
9546
9547         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
9548         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
9549         the right number of arguments.
9550
9551         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
9552         enhance the function to check that node data corresponds to a 
9553         view still belonging to the tree.
9554
9555         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
9556         GtkTreePath
9557         (gtk_tree_view_inserted): ditto
9558         (gtk_tree_view_child_toggled): ditto
9559
9560         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
9561         simplify this code.
9562
9563         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
9564         a PangoAttrList
9565
9566         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
9567
9568         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
9569
9570         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
9571         size in the size request 
9572         (gtk_menu_bar_size_allocate): consider toggle size here
9573
9574         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
9575         that displays a widget in the toggle slot
9576
9577         * gtk/testgtk.c: test GtkImageMenuItem
9578
9579         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
9580         
9581         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
9582         request and allocation
9583
9584         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
9585
9586         * gtk/gtkcheckmenuitem.c
9587         (gtk_check_menu_item_toggle_size_request): ditto
9588         
9589 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
9590
9591         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
9592         reference.
9593
9594         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
9595         and refuse to initialize GTK+ if they fail.
9596
9597 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
9598
9599         * configure.in: Add check for gtk-doc version.
9600
9601 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
9602
9603         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
9604         where the xpad/ypad was only being used on one side!
9605
9606 2001-02-11  Tor Lillqvist  <tml@iki.fi>
9607
9608         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
9609         function, copied from X11 version.
9610
9611         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
9612         DestroyCursor failures. The reason for the problem (despite the
9613         inconsistent messages from GetLastError()) was that
9614         DestroyCursor() cannot be called while a cursor is set in a
9615         window. Set the new cursor first and then destroy the old one.
9616         Thanks to jpe@archaeopteryx.com.
9617
9618         * gdk/win32/gdkcc-win32.c: Remove.
9619
9620         * gdk/win32/Makefile.am: Remove from here, too.
9621         
9622         * gdk/gdk.def
9623         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
9624
9625         * gtk/gtk.def
9626         * gtk/makefile.mingw.in: Updates.
9627
9628 2001-02-08  Havoc Pennington  <hp@redhat.com>
9629
9630         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
9631         add a widget to a bin that already has a child.
9632
9633         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
9634
9635         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
9636         
9637         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
9638
9639         * gdk/gdk.h: remove gdkcc.h
9640
9641         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
9642
9643         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
9644         GdkPixbuf, since the previous implementation was GdkColorContext
9645         dependent.
9646
9647         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
9648         
9649 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
9650
9651         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
9652         a sane value!
9653
9654 2001-02-08  Havoc Pennington  <hp@redhat.com>
9655
9656         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
9657         lighten them.
9658
9659 2001-02-08  Havoc Pennington  <hp@redhat.com>
9660
9661         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
9662         validation idle
9663
9664         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
9665         cell renderer
9666
9667         * demos/pixbuf-demo.c (timeout): remove deprecated
9668         gtk_widget_draw
9669
9670         * demos/testpixbuf-save.c (main): remove deprecated
9671         gtk_drawing_area_size
9672
9673         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
9674         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
9675         at the start of the allocation.
9676         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
9677         unsetup or NULL model.
9678
9679         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
9680         even/odd/sorted cells in the tree view.
9681
9682         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
9683         bugfixes
9684
9685         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
9686         backgrounds with draw_flat_box using different detail for even/odd
9687         rows.
9688
9689         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
9690         row, so we can draw the alternating colors thing
9691
9692         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
9693         property from a synonym property, notify for the synonym.
9694         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
9695         (gtk_text_tag_get_property): Always return the font, even if
9696         all its fields aren't set
9697
9698         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
9699         store the attr list; it leaves us with no way to change attributes
9700         in _render according to the render flags, and no way to implement
9701         get_property. Instead store all the specific text attributes. 
9702         Separate whether an attribute is enabled from its value. Sync all
9703         properties with GtkTextTag, make them all consistent, etc.
9704
9705         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
9706         renderers can highlight the sort row/column     
9707
9708         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
9709         accessor functions to get values; this has the side effect of
9710         showing up which accessor functions were missing. Added those.
9711
9712         * gtk/gtktreeviewcolumn.h: Replace set_justification with
9713         set_alignment, to be consistent with GtkLabel, GtkMisc
9714
9715         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
9716         arrow.
9717
9718         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
9719
9720         * gtk/gtktreesortable.h: updates in here
9721
9722 2001-02-07  Sven Neumann  <sven@convergence.de>
9723
9724         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
9725         pango dimensions after painting the background. We used to draw
9726         gigantic flat boxes here.
9727
9728 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
9729
9730         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
9731         error introduced with earlier commit) (pointed out by
9732         Ollie Lho)
9733
9734 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
9735
9736         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
9737         which are no longer necessary.
9738
9739 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
9740
9741         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
9742
9743 2001-02-04  Tor Lillqvist  <tml@iki.fi>
9744
9745         * gdk/gdk.def
9746         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
9747         Provide dummy implementations.
9748
9749 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
9750
9751         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
9752
9753         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
9754         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
9755         deprecated this function.
9756
9757         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
9758         argument.
9759
9760 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
9761
9762         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
9763
9764 2001-02-03  Havoc Pennington  <hp@pobox.com>
9765
9766         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
9767         Mikael Hermansson with patch from Mikael (if there was a toggle
9768         start one after the first character in the range, this function
9769         was broken). Bug #50380
9770
9771 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
9772
9773         * configure.in: Remove confusing comment about X11.
9774
9775 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
9776
9777         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
9778         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
9779         
9780 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
9781
9782         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
9783         it breaks things on BSD. If you want to compile GTK+ with
9784         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
9785         when configuring, since GTK+ simply can't be "pure ANSI" 
9786         in the header files it uses. (#8170, Greg Hudson)
9787
9788 2001-02-02  Havoc Pennington  <hp@redhat.com>
9789
9790         * gtk/gtkwindow.c: docs
9791
9792         * gtk/gtkwidget.c: docs
9793         (gtk_widget_set_colormap): add a reference to the colormap
9794         (gtk_widget_get_default_colormap): add a reference to the colormap
9795
9796         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
9797
9798         * gtk/gtktextiter.c: docs
9799
9800         * gtk/gtkmain.c (gtk_propagate_event): docs
9801
9802         * gtk/gtkpaned.c (gtk_paned_get_position): docs
9803         (gtk_paned_set_position): docs
9804
9805         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
9806         sort interface, no implementation yet.
9807
9808         * demos/testpixbuf.c (new_testrgb_window): replace
9809         gtk_drawing_area_size() with gtk_widget_set_usize()
9810
9811         * demos/testpixbuf-drawable.c (main): ditto
9812         
9813         * gtk/testgtk.c: remove use of GtkStatusbarMsg
9814
9815         * gtk/gtktextbuffer.c: docs
9816
9817         * gtk/gtkstock.c: docs
9818
9819         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
9820
9821         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
9822
9823         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
9824         
9825         * gtk/gtkimage.c: add some docs in here
9826         (gtk_image_size_request): change name of
9827         gtk_widget_render_stock_icon
9828         (gtk_image_get_icon_set): don't dup returned string
9829         (gtk_image_get_icon_set): don't dup returned string
9830
9831         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
9832         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
9833         and gtkiconfactory.h functions
9834
9835         * gtk/gtkiconfactory.c: add some docs in here
9836
9837         * gtk/gtkmain.c (gtk_get_default_language): document
9838         (gtk_get_current_event): document
9839         (gtk_get_current_event_state): document
9840         (gtk_get_event_widget): document
9841
9842         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
9843
9844         * gtk/gtkcontainer.c: Add some documentation
9845         (gtk_container_add): give a more explanatory warning on adding an
9846         already-parented widget, this is kind of a FAQ and also a common
9847         typo that's easier to debug with a nice warning 
9848
9849         * gtk/gtkcellrenderertoggle.c
9850         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
9851         adding this, it's useless
9852         (gtk_cell_renderer_toggle_set_active): remove
9853         (gtk_cell_renderer_toggle_get_radio): add
9854
9855         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
9856         the NULL cell renderer, that doesn't make any sense to me. 
9857
9858         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
9859         demo code should never use deprecated features.
9860
9861         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
9862         code should never use deprecated features.
9863
9864         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
9865         gtk_widget_queue_clear_area deprecated
9866
9867         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
9868         deprecated
9869
9870         * gtk/gtklabel.h: mark gtk_label_get() deprecated
9871
9872         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
9873         a GdkImage deprecated, replaced by new consistently-named
9874         functions       
9875
9876         * gtk/gtkmain.h: Mark gtk_exit() deprecated
9877
9878         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
9879
9880         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
9881         deprecated
9882
9883         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
9884         so it won't appear in docs and confuse people.
9885
9886         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
9887
9888         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
9889         macros deprecated. (can't mark the type itself deprecated, since
9890         GtkProgressBar is not deprecated and we need the type decl to use
9891         GtkProgressBar)
9892
9893         * gtk/gtkpixmap.h: Mark deprecated
9894
9895         * gtk/gtkoldeditable.h: Mark deprecated
9896
9897         * gtk/gtklist.h: Mark deprecated
9898
9899         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
9900         for anything anymore.
9901
9902         * gtk/gtkctree.h: Mark deprecated
9903
9904         * gtk/gtkclist.h: Mark deprecated
9905
9906         * gtk/gtkpreview.h: Mark deprecated
9907
9908         * gtk/gtkpacker.h: Mark deprecated
9909
9910         * gtk/gtktipsquery.h: Mark deprecated
9911
9912         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
9913
9914         * gtk/gtkvruler.h: Add comment that it will move out of GTK
9915
9916         * gtk/gtkhruler.h: Add comment that it will move out of GTK
9917
9918         * gtk/gtkruler.h: Add comment that it will move out of GTK
9919
9920         * gtk/gtkgamma.h: Add comment that it will move out of GTK
9921
9922         * gtk/gtkcurve.h: Add comment that it will move out of GTK
9923
9924 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
9925
9926         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
9927         gdk_colormap_sync private since it was never exported
9928         in a header file.
9929
9930         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
9931         colormap->colors[] for StaticGray, StaticColor colormaps.
9932
9933         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
9934         was being used as if it was image->bits_per_pixel.
9935
9936         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
9937         for the image in the GdkImage structure since it isn't
9938         reconstructable, and we need it to handle packed types
9939
9940         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
9941         the assumption that on Win32 image->bits_per_pixel == image->depth,
9942         always.
9943
9944         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
9945
9946         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
9947         warning message if no converter can be found. 
9948
9949 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
9950
9951         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
9952         chars to isupper() / tolower(). (#567)
9953
9954         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
9955         to clear up 64-bit warnings. (#567)
9956
9957 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
9958
9959         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
9960         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
9961
9962         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
9963         since some people set $(libdir) separately. (#1290, David Kaelbling)
9964
9965 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
9966
9967         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
9968         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
9969         MAXPATHLEN, but the code here depends on a fixed value.)
9970         (#4524)
9971
9972 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
9973
9974         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
9975         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
9976
9977 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
9978
9979         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
9980         viewable there is no way that moving the node will cause the 
9981         focus row to become not viewable, so omit check on the visibility
9982         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
9983
9984 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
9985
9986         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
9987         selection before inserting new text.
9988
9989 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
9990
9991         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
9992         Make the sensitivity of the reparented child track that of
9993         the original parent menu item. (#34218, David Hodson)
9994
9995         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
9996         the case where the current item is destroyed properly.
9997
9998         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
9999         some edge cases with child-less menuitems.
10000         
10001 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
10002
10003         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
10004         key pop down window. (#12074, Jon K Hellan)
10005
10006 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
10007
10008         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
10009         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
10010         The solution here isn't perfect - you get an extraneous
10011         emission of "toggle", which could conceivably confuse an app,
10012         but better than the current situation. LXR search seems to
10013         indicate that no apps in GNOME CVS connect to "toggle".
10014
10015 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
10016
10017         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
10018         gtk_public_h_sources to directly here to avoid warning when
10019         building srcdir != builddir. (#9656)
10020
10021 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
10022
10023         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
10024         handlers in gtkrange.c return the proper values (TRUE == handled)
10025         (#10316).
10026
10027         This is just the tip of the iceberg, but gtkrange.c is the
10028         most common place where the propagation is problematical,
10029         and also a place where it is almost certainly safe to change
10030         this in the stable branch.
10031
10032         (You don't want right click popups on a range control or anything...)
10033
10034 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
10035
10036         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
10037         area on focus out, even if a background pixmap isn't set.
10038         (#13941)
10039         
10040 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
10041
10042         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
10043         to deal with setting the shape properly when scrolling arrows are
10044         turned on, but not visible because there is sufficient space.
10045         (#13432)
10046
10047 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
10048
10049         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
10050         items with submenus, destroy the item along with the submenu.
10051         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
10052         properly.
10053
10054         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
10055         later.
10056
10057 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
10058
10059         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
10060         the focus widget sometimes wasn't drawn with the default if there
10061         was no default widget.
10062
10063         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
10064         unreference pixmaps. 
10065
10066         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
10067         for some extra safety.
10068
10069 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
10070
10071         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
10072         the text of a cell to the old pointer value better, by
10073         copying the new text before freeing the old text. Some code
10074         cleanup. (#8079, Karl Nelson)
10075
10076 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
10077
10078         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
10079         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
10080
10081 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
10082
10083         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
10084         item from a menu, check to see if it matches 
10085         menu->old_active_menu_item, and if so, unref and clear
10086         old_active_menu_item (Patch from Pavel Cisler)
10087
10088         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
10089         menu_shell->active_menu_item, if it is the child being
10090         removed. (Patch based on that of Gene Ragan, #50337)
10091
10092 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
10093
10094         * gdk/linux-fb/gdkselection-fb.c: 
10095         * gdk/linux-fb/gdkcolor-fb.c: 
10096         * gdk/linux-fb/gdkdrawable-fb2.c: 
10097         * gdk/linux-fb/gdkfont-fb.c: 
10098         * gdk/linux-fb/gdkim-fb.c: 
10099         * gdk/linux-fb/gdkinput.c: 
10100         * gdk/linux-fb/gdkkeyboard-fb.c: 
10101         * gdk/linux-fb/gdkmain-fb.c: 
10102         * gdk/linux-fb/gdkrender-fb.c: 
10103         A bunch of whitespace cleanup.
10104         
10105 2001-01-30  Havoc Pennington  <hp@pobox.com>
10106
10107         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
10108         #ifdef GTK_ENABLE_BROKEN.
10109
10110         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
10111         GTK_ENABLE_BROKEN just before including the broken headers.
10112         
10113         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
10114         deprecated types registered.
10115
10116         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
10117         we have to test the broken stuff.
10118
10119         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
10120         
10121 2001-01-30  Havoc Pennington  <hp@redhat.com>
10122
10123         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
10124         here where prev pointer was set to the wrong thing
10125
10126         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
10127         (gtk_tree_path_is_descendant): new function
10128
10129         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
10130         cached length
10131         (gtk_list_store_get_iter): don't modify iter if we can't get the
10132         path.
10133
10134         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
10135         
10136         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
10137         GtkTreeDragDest
10138
10139         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
10140         was causing segfault
10141
10142         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
10143         pointer to NULL
10144
10145         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
10146
10147         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
10148         on returning FALSE
10149         (gtk_list_store_iter_children): ditto
10150         (gtk_list_store_iter_nth_child): ditto
10151         (gtk_list_store_iter_nth_child): ditto
10152         (gtk_list_store_iter_parent): ditto
10153
10154         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
10155         on iter->user_data != NULL instead of silently accepting it.
10156         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
10157         we are returning TRUE.
10158         (gtk_tree_store_iter_children): ditto
10159         (gtk_tree_store_iter_nth_child): ditto
10160         (gtk_tree_store_iter_parent): ditto
10161         (gtk_tree_store_insert): remove handling of parent->user_data ==
10162         NULL, replace with parent == NULL       
10163
10164         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
10165         and a comment explaining things
10166
10167         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
10168         interface support to GtkTreeStore.
10169
10170         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
10171         FALSE if no prev, fix
10172
10173         * gtk/gtktreeview.c (set_source_row): use a row reference
10174         (set_dest_row): use a row reference
10175
10176 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
10177
10178         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
10179         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
10180         (gtk_tree_selection_select_iter): The same as above.
10181
10182 2001-01-26  Havoc Pennington  <hp@redhat.com>
10183
10184         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
10185         which holds a handle to a specific row (particular set of values
10186         in the model, i.e. pointer-identity row).
10187
10188         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
10189         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
10190         Still need to use it for the src/dest row saved on the drag context.
10191
10192 2001-01-26  Havoc Pennington  <hp@redhat.com>
10193
10194         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
10195
10196         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
10197         not offset by TREE_VIEW_HEADER_HEIGHT
10198         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
10199         TREE_VIEW_HEADER_HEIGHT
10200
10201         * configure.in (included_loaders): for me, --with-included-loaders
10202         generates the error "the specified loader yes does not exist",
10203         i.e. the arg defaults to "yes", so change test for value ""
10204         to test for value "yes", and include all loaders in that case.
10205
10206         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
10207
10208         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
10209         handle TREE_VIEW_VERTICAL_SEPARATOR
10210         (gtk_tree_view_bin_expose): fix to consider the row offset as
10211         pointing halfway into vertical separator.       
10212         (gtk_tree_view_draw_node_focus_rect): ditto
10213
10214         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
10215         --gtk-debug=updates, which causes gdk_window_set_debug_updates
10216         (TRUE) to be called.
10217
10218         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
10219         debug mode where the invalid region is colored in on invalidate,
10220         so you can see the flicker and know whether your redraw code is 
10221         doing a good job.
10222
10223         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
10224         tree window coordinates (clip rect is in tree window coords)
10225
10226         * gtk/Makefile.am: add gtktreednd.[hc]
10227
10228         * gtk/gtkliststore.c: implement gtktreednd interfaces.
10229
10230         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
10231         drag-and-drop data operations on a model (so we can set up tree
10232         drag-and-drop automatically)
10233
10234         * gtk/testgtk.c: Add a window to change sensitivity in the
10235         GtkLabel test; add a way to change the entry frame in GtkEntry
10236         test
10237
10238         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
10239         (gtk_entry_get_has_frame): new functions to remove the frame
10240         around an entry
10241         (gtk_entry_size_request): shrink requisition if no frame
10242         (gtk_entry_draw_focus): don't draw frame if no frame
10243
10244         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
10245         checks inside a cell renderer
10246         (gtk_default_draw_option): ditto for options
10247
10248         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
10249         children from the alignment, not the button
10250         (gtk_tree_view_column_init): ref/sink the column, to emulate
10251         GObject refcounting.
10252
10253         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
10254         
10255         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
10256         Use theme functions to draw the toggles 
10257
10258         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
10259
10260         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
10261         GdkPangoAttrEmbossed to use in rendering insensitive text
10262
10263         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
10264
10265         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
10266         using new GDK features
10267         
10268 2001-01-24  Alexander Larsson  <alexl@redhat.com>
10269
10270         * gtk/gtkimage.c:
10271         Splitted gtk_image_clear into gtk_image_clear() and
10272         gtk_image_reset(). Call gtk_image_clear() in ::destroy
10273         to avoid leaks.
10274
10275         * gtk/gtklabel.c (set_markup):
10276         Don't leak text.
10277
10278         * gtk/gtktextlayout.c:
10279         Always free display->shaped_objects.
10280
10281         * gtk/testgtk.c (create_clist):
10282         Don't leak custom style.
10283
10284 2001-01-23  Alexander Larsson  <alexl@redhat.com>
10285
10286         * gtk/gtkcolorsel.c (grab_color_at_mouse):
10287         Don't leak image. Simplify using gdk_colormap_query_color().
10288         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
10289
10290         * linux-fb/gdkcolor-fb.c:
10291         Implemented gdk_colormap_query_color.
10292
10293 2001-01-23  Alexander Larsson  <alexl@redhat.com>
10294
10295         * linux-fb/gdkcursor-fb.c:
10296         Don't leak built-in cursors.
10297
10298         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
10299         Don't leak tmp_points.
10300
10301         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
10302         Don't modify desc. Don't leak font if the PangoFont
10303         isn't found.
10304         
10305         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
10306         Free dash_list.
10307
10308         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
10309         Don't leak string.
10310         
10311 2001-01-20  Havoc Pennington  <hp@pobox.com>
10312
10313         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
10314         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
10315         me, matches Pango
10316
10317 2001-01-22  Havoc Pennington  <hp@redhat.com>
10318
10319         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
10320
10321         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
10322
10323         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
10324         Remove, move back to gdk-pixbuf
10325
10326         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
10327         to all the word functions
10328
10329         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
10330         before doing anything on NULL layout or if we don't have the focus
10331
10332         * gtk/testtext.c (fill_example_buffer): "justification"
10333
10334         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
10335         to be called "justification" not "justify"
10336
10337         * demos/gtk-demo/textview.c (create_tags): "justification"
10338         
10339         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
10340
10341 2001-01-22  Alexander Larsson  <alexl@redhat.com>
10342
10343         * gdk/gdkwindow.c (gdk_window_invalidate_region):
10344         Don't leak visible_region. Use visible_region instead of region.
10345         
10346         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
10347         Don't do extra gdk_drawable_ref(). This is not X.
10348         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
10349         gdk_fb_focused_window is ref:ed.
10350         (gdk_fb_window_send_crossing_events): Watch out for destroyed
10351         windows.
10352
10353 2001-01-22  Alexander Larsson  <alexl@redhat.com>
10354
10355         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
10356         Don't leak the PangoFontDescriptor.
10357
10358 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
10359
10360         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
10361         when not realized.
10362         (gtk_tree_view_scroll_to_cell): Make work when not realized.
10363         (gtk_tree_view_realize): add scroll_to support
10364         (gtk_tree_view_finalize): add a finalize method.  Populate.
10365         (gtk_tree_view_insert_column): ref and sink the column.
10366         (gtk_tree_view_append_column): ref and sink the column.
10367         (gtk_tree_view_queue_draw_node): New function to handle redrawing
10368         individual nodes.  Should make the code much more efficient, if
10369         actually used.
10370
10371 2001-01-19  Havoc Pennington  <hp@redhat.com>
10372
10373         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10374         byte_offset variable was being used to mean both "offset into
10375         layout" and "offset into buffer line" which was no longer true
10376         with addition of preedit string; fix
10377
10378 2001-01-19  Havoc Pennington  <hp@redhat.com>
10379
10380         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
10381
10382         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
10383         function
10384
10385         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
10386         implement
10387
10388         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
10389         scroll_to_cell, matches TextView scroll functions better
10390         (gtk_tree_view_tree_to_widget_coords): new function
10391         (gtk_tree_view_widget_to_tree_coords): new function
10392         (gtk_tree_view_get_visible_rect): new function
10393         (gtk_tree_view_get_path_at_pos): accept negative coordinates
10394         (gtk_tree_view_draw_node_focus_rect): new function moved from
10395         draw_focus, also, use width of bin_window as width of the focus
10396         rect
10397         (gtk_tree_view_expand_row): fix bug where it didn't recognize
10398         already-expanded rows
10399         (gtk_tree_view_get_cell_rect): new function
10400         (gtk_tree_view_get_path_at_pos): return the click position
10401         relative to the passed-in cell
10402         (gtk_tree_view_set_expander_column): new function
10403
10404         * configure.in: remove gtk-config-2.0 chmod
10405
10406         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
10407         and properly handle drags with targets we don't understand
10408         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
10409         scrolling anyway
10410         (gtk_text_view_drag_drop): stop scrolling here though, and set the
10411         mark invisible
10412
10413         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
10414         function
10415         (gtk_drag_dest_get_target_list): new function
10416         (gtk_drag_dest_set_target_list): new function
10417         
10418         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
10419
10420         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
10421         related to drag-and-drop
10422
10423 2001-01-19  Alexander Larsson  <alexl@redhat.com>
10424
10425         * gdk/linux-fb/gdkprivate-fb.h:
10426         Define EMULATE_GDKFONT.
10427         Add extra pango_font stuff to GfkFontPrivate.
10428         
10429         * gdk/linux-fb/gdkdrawable-fb2.c:
10430         * gdk/linux-fb/gdkfont-fb.c:
10431         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
10432         emulation using PangoFont.
10433
10434 2001-01-17  Havoc Pennington  <hp@pobox.com>
10435
10436         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
10437         all the non-deprecated set_foo functions. Added missing object
10438         properties, and added g_object_notify() to setters. 
10439         Wrote docs.
10440         
10441 2001-01-18  Tor Lillqvist  <tml@iki.fi>
10442
10443         * gtk/gtkmain.c
10444         * gtk/gtkrc.c: (Win32) Use the new
10445         g_win32_get_package_installation_(sub)directory() functions.
10446
10447         * config.h.win32.in: New file.
10448         
10449         * config.h.win32: Removed.
10450
10451         * configure.in: Output config.h.win32.
10452
10453         * Makefile.am: Add it to EXTRA_DIST.
10454
10455         * gtk/gtk.def: Update.
10456
10457 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
10458
10459         * gtk/gtklabel.c (gtk_label_size_request): Set the
10460         attributes onto the PangoLayout even if they are newly
10461         created from label->pattern.
10462
10463 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
10464
10465         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
10466
10467         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
10468         structures in functions. Fixes bug where gtk_dataset_*
10469         was accidentally still being used in one place, causing
10470         every dest side event to be treated independently.
10471
10472         * gtk/gtkdnd.c: Remove last vestages of handling
10473         ::draw (fixes warning)
10474         
10475         * gtk/gtkentry.[ch]: Add drag and drop support.
10476
10477         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
10478         new function gtk_check_drag_threshhold() for checking
10479         to check if (dx,dy) has exceeded the threshhold for starting
10480         a drag and use it everywhere.
10481
10482 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
10483
10484         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
10485         add -I{includedir}/gtk-2.0.
10486
10487         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
10488         gdk/gdk-pixbuf.h: Doc fixups.
10489         
10490         * gtk/gtkobject.h: Remove trailing , from enum
10491
10492 2001-01-17 Alexander Larsson <alexl@redhat.com> 
10493
10494         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
10495         Doh! Mixed up x and y.
10496
10497         * gdk/linux-fb/gdkglobals-fb.c:
10498         Removed gdk_fb_pointer_grab_window_events,
10499         added _gdk_fb_pointer_grab_owner_events and
10500         _gdk_fb_keyboard_grab_owner_events.
10501
10502         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
10503         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
10504         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
10505         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
10506         Send crossing events after ungrab finished.
10507         (gdk_keyboard_grab): Set ..._owner_events
10508         (type_masks): Move out of function.
10509         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
10510         gdk_fb_keyboard_event_window): New functions, return the
10511         window an event should be targeted at. Handles grabs and
10512         event propagation. Can return NULL.
10513         (gdk_event_make): Remove event_mask checking. Now always
10514         returns an event.
10515                 
10516         * gdk/linux-fb/gdkkeyboard-fb.c:
10517         * gdk/linux-fb/gdkproperty-fb.c:
10518         * gdk/linux-fb/gdkselection-fb.c:
10519         Use new event_window/gdk_event_make() behaviour.
10520         
10521         * gdk/linux-fb/gdkmouse-fb.c:
10522         Use new event_window/gdk_event_make() behaviour.
10523         Only send motion events if in the same window.
10524         If grabbed, use cursor from window if sibling of grabbed
10525         window, and cursor from grabbed window otherwise.
10526
10527         * gdk/linux-fb/gdkprivate-fb.h:
10528         Update gdk_fb_window_send_crossing_events, gdk_event_make
10529         and grab varaible declarations. Add gdk_fb_*_event_window().
10530
10531         * gdk/linux-fb/gdkwindow-fb.c:
10532         Use new event_window/gdk_event_make() behaviour.
10533         Keep correct track of focus window.
10534         (gdk_window_set_events): Set all specific button motion masks
10535         if GDK_BUTTON_MOTION_MASK set.
10536
10537         * gtk/gtkdnd.c (gtk_drag_update):
10538         Free info->last_event if gdk_drag_motion returned FALSE.
10539
10540 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10541
10542         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
10543         Eliminate redraws when input-only windows are shown or
10544         hidden. Thanks to jpe@archaeopteryx.com.
10545
10546 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
10547
10548         * docs/faq/gtk-faq.sgml: FAQ update:
10549           - Update to bugzilla
10550           - Add GTK+ and security/SUID/SGID
10551           - Add DnD question
10552
10553 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
10554
10555         * gdk/linux-fb/gdkdnd-fb.c:
10556         Some cleanups.
10557         
10558 2001-01-15  Havoc Pennington  <hp@pobox.com>
10559
10560         * tests/testtreeview.c: add test stuff for CellRendererToggle
10561
10562         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
10563         accessor
10564
10565         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
10566         only toggle on button press (would do release like GtkButton, but
10567         we'd need implicit grab code for treeview cells)
10568
10569 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10570
10571         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
10572
10573         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
10574         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
10575
10576         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
10577         to g_{locale,filename}_{to,from}_utf8 to match current API.
10578
10579         * gtk/makefile.msc.in (gtk_OBJECTS)
10580         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
10581
10582         * gtk/gtk.def: Update.
10583
10584 2001-01-15  Tor Lillqvist  <tml@iki.fi>
10585
10586         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
10587         implementaion that more closely mimics the events that an X server
10588         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
10589         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
10590         with nested preview widgets, for instance, more responsive when
10591         you move the mouse quickly into them.
10592         (find_window_for_pointer_event): Make it actually compile.
10593         (gdk_event_translate): Set send_event to the value of
10594         InSendMessage (). This doesn't really mean the same as X11's
10595         send_event flag, but is close enough, says jpe@archaeopteryx.com
10596
10597 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10598
10599         * gdk/linux-fb/gdkdnd-fb.c:
10600         Implemented drag and drop.
10601         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
10602         when it tries to free and then copy the same event (info->last_event).
10603         I am not sure about why this happens, but will continue looking.
10604
10605 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10606
10607         * gdk/linux-fb/gdkwindow-fb.c:
10608         Use gdk_window_invalidate_rect instead of
10609         gdk_window_invalidate_rect_clear to minimise flashing.
10610         When hiding windows you need to clear the root window though.
10611
10612 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10613
10614         * gdk/linux-fb/gdkdrawable-fb2.c:
10615         For optization, add an full_shapes argument to gdk_fb_clip_region.
10616         If this is false, only the cliprects of the shapes are used.
10617
10618         * gdk/linux-fb/gdkprivate-fb.h:
10619         Export gdk_fb_window_peek_shape.
10620         Add full_shapes to gdk_fb_clip_region.
10621
10622         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10623         When moving a window, don't clear everything under the it, just the
10624         root window. Makes stuff faster and flash less.
10625         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
10626         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
10627         offset of the shape.
10628         
10629
10630 2001-01-12  Havoc Pennington  <hp@redhat.com>
10631
10632         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
10633         current invalid region, fixes redraw bug while scrolling the 
10634         text widget
10635
10636         * gtk/gtktextview.c, gtk/gtktextview.h:
10637         Rearrange the scrolling/validation/etc. code in a major way, 
10638         so it seems to make sense to me. Probably isn't genuinely that
10639         much better, but...
10640
10641         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
10642         notifies
10643
10644         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
10645
10646 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
10647
10648         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
10649         Hide mouse pointer while rotation. Show it afterwards.
10650
10651 2001-01-12  Alexander Larsson  <alexl@redhat.com>
10652
10653         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
10654         windows in consideration when generating clip region.
10655
10656         * gdk/linux-fb/gdkfb.h:
10657         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
10658
10659         * gdk/linux-fb/gdkprivate-fb.h:
10660         Add shape to GdkWindowFBDatat.
10661         exported gdk_fb_window_get_abs_shape().
10662         removed gdk_fb_draw_lines declaration.
10663
10664         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
10665         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
10666         send focus changes when there is a grabbed window.
10667         (gdk_window_get_pointer): Handle shaped windows.
10668         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
10669         (gdk_fb_window_peek_shape): Returns the shape for a window,
10670         handles GDK_FB_USE_CHILD_SHAPE.
10671         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
10672         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
10673         (gdk_window_shape_combine_mask): Implement.
10674
10675         * gtk/gtkwindow-decorate.c:
10676         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
10677         setting the shape of a window makes the window transparent.
10678
10679 2001-01-11  Havoc Pennington  <hp@redhat.com>
10680
10681         * gtk/gtktreemodelsimple.h: Oops, broke some macros
10682
10683 2001-01-10  Havoc Pennington  <hp@redhat.com>
10684
10685         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
10686         add this function, bug 40251
10687
10688         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
10689         of type macro   
10690
10691 2001-01-11  Alexander Larsson  <alexl@redhat.com>
10692
10693         * acconfig.h:
10694         Added ENABLE_SHADOW_FB
10695
10696         * configure.in:
10697         Added --disable-shadowfb
10698
10699         * gdk/linux-fb/gdkcursor-fb.c:
10700         Update shadowfb when updating cursor
10701
10702         * gdk/linux-fb/gdkdrawable-fb2.c:
10703         Added wrappers for shadowfb that calls  the normal drawable
10704         methods, but calls gdk_shadow_fb_update(bounding box) when
10705         GdkWindows are drawed to.
10706         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
10707         which also returns the bounding box.
10708
10709         * gdk/linux-fb/gdkfb.h:
10710         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
10711
10712         * gdk/linux-fb/gdkgeometry-fb.c:
10713         Update shadowfb when scrolling window.
10714
10715         * gdk/linux-fb/gdkglobals-fb.c:
10716         Add _gdk_fb_screen_angle.
10717         
10718         * gdk/linux-fb/gdkkeyboard-fb.c:
10719         Test code for screen rotation. Shift-F2 in the xlate driver
10720         rotates the screen.
10721
10722         * gdk/linux-fb/gdkmain-fb.c:
10723         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
10724
10725         * gdk/linux-fb/gdkmouse-fb.c:
10726         Use fb_width/height instead of modeinfo.xres/yres.
10727
10728         * gdk/linux-fb/gdkprivate-fb.h:
10729         Added fb_men, fb_width, fb_height & fb_stride. When using
10730         shadow fb these can differ from the framebuffer stuff.
10731         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
10732         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
10733         _gdk_fb_screen_angle. Removed CM, RP.
10734
10735         * gdk/linux-fb/gdkrender-fb.c:
10736         Added code for shadowfb handling and screen rotation using
10737         shadowfb.
10738
10739         * gdk/linux-fb/gdkwindow-fb.c:
10740         Use fb_mem, fb_stride, fb_width, fb_height.
10741         Added recompute_rowstride to reset the rowstride of all windows.
10742         Added gdk_fb_recompute_all() which recomputes rootwindow size,
10743         window abs positions and window rowstrides. Usefull when the
10744         rotation has changed.
10745
10746 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
10747
10748         * docs/faq/gtk-faq.sgml: update to make web site updating easier
10749
10750 2001-01-10  Havoc Pennington  <hp@redhat.com>
10751
10752         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
10753         where sibling == iter
10754         (gtk_tree_store_insert_after): handle sibling == iter
10755         (gtk_tree_store_prepend): remove stamp checks
10756         (gtk_tree_store_insert_before): ditto
10757         (gtk_tree_store_append): ditto
10758         (gtk_tree_store_get_path): ditto
10759         (gtk_tree_store_get_value): ditto
10760         (gtk_tree_store_iter_has_child): ditto
10761         (gtk_tree_store_iter_n_children): ditto
10762         (gtk_tree_store_iter_nth_child): ditto
10763         (gtk_tree_store_insert_after): ditto
10764         (gtk_tree_store_is_ancestor): ditto
10765         (gtk_tree_store_iter_depth): ditto
10766         (gtk_tree_store_insert_before): assert that sibling's parent is
10767         the same as the passed-in parent
10768         (gtk_tree_store_insert_after): assert that sibling's parent is
10769         the same as the passed-in parent
10770
10771         
10772         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
10773         function to get the first iterator in a model
10774         
10775         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
10776         conventionally the "root" in this sense is just NULL afaict.
10777
10778         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
10779         where sibling == iter
10780         (gtk_list_store_insert_after): handle case where sibling == iter
10781
10782         * tests/testtreeview.c (run_automated_tests): fairly lame basic
10783         automated tests for ListStore, TreeStore
10784
10785         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
10786         (gtk_list_store_insert): update tail pointer, and fix it to work
10787         (gtk_list_store_insert_before): update tail pointer, and fix it to work
10788         (gtk_list_store_append): use tail to be faster
10789         (gtk_list_store_prepend): fix it, update tail pointer
10790         (gtk_list_store_insert_after): fix it, update tail pointer
10791
10792         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
10793         the list
10794
10795 2001-01-09  Havoc Pennington  <hp@redhat.com>
10796
10797         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
10798         is NULL due to a pending resize
10799
10800         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
10801         column width to values less than 1
10802
10803         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
10804         width to be between min/max width, and still set the width 
10805         even if autosize is turned on, so the tree view can use this 
10806         function in order to autosize.
10807         (gtk_tree_view_column_init): set initial width to 1 not 0
10808
10809         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
10810         setter function to modify column width, so we get notification
10811         (gtk_tree_view_insert_iter_height): ditto
10812         (gtk_tree_view_calc_size): ditto
10813         (gtk_tree_view_check_dirty): ditto
10814
10815         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
10816         properties to change all the interesting attributes of the tree
10817         view column.
10818         (gtk_tree_view_column_set_header_clickable): rename set_clickable
10819         (gtk_tree_view_column_get_clickable): add
10820         (gtk_tree_view_column_set_cell_renderer): don't unset the current
10821         attributes; assume a cell renderer with equivalent object
10822         properties has been swapped in. Do g_object_notify().
10823         (gtk_tree_view_column_set_visible): g_object_notify
10824         (gtk_tree_view_column_get_sizing): rename from get_col_type
10825         (gtk_tree_view_column_set_sizing): g_object_notify
10826         (gtk_tree_view_column_set_width): add g_object_notify
10827         (gtk_tree_view_column_set_min_width): ditto
10828         (gtk_tree_view_column_set_max_width): ditto
10829         (gtk_tree_view_column_set_title): ditto
10830         (gtk_tree_view_column_set_clickable): ditto
10831         (gtk_tree_view_column_set_widget): ditto
10832         (gtk_tree_view_column_set_justification): ditto
10833
10834 2001-01-09  Havoc Pennington  <hp@redhat.com>
10835
10836         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
10837         there are no rows in the model
10838
10839         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
10840         NULL, then return the start of the list
10841
10842         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
10843         if we can't get any rows from an empty model 
10844
10845         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
10846         extraneous * after function pointer typedef usage
10847
10848         * Makefile.am: don't specify full path to cp and rm
10849
10850         * gtk/gtkcellrenderertextpixbuf.c
10851         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
10852         NULL before dereferencing, fixes a segfault that happened from
10853         time to time
10854
10855         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
10856         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
10857         and reindent the function
10858         (gtk_cell_renderer_pixbuf_get_size): indentation
10859
10860         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
10861         we quit it
10862         (gtk_dialog_add_buttons_valist): add g_return_if_fail
10863         (gtk_dialog_set_default_response): New function, to set default
10864         button
10865         (gtk_dialog_set_response_sensitive): New function, to set 
10866         sensitivity of buttons
10867
10868         * gtk/gtkcellrendererpixbuf.c
10869         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
10870         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
10871
10872         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
10873         handle any G_TYPE_OBJECT subclass, not just the base class, and 
10874         also boxed types.
10875         (_gtk_tree_data_list_value_to_node): ditto
10876
10877         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
10878         --gtk-debug=tree
10879
10880         * gtk/gtkmain.c: add GTK_DEBUG_TREE
10881
10882         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
10883
10884 2001-01-09  Tor Lillqvist  <tml@iki.fi>
10885
10886         * gdk/win32/gdkevents-win32.c: Implement better mouse
10887         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
10888         (find_window_for_pointer_event): New function.
10889         (gdk_event_translate): Use it when handling mouse events.
10890
10891 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
10892
10893         * configure.in:
10894         Added --with-included-loaders option
10895
10896         * gdk-pixbuf/Makefile.am:
10897         * gdk-pixbuf/gdk-pixbuf-io.c:
10898         Add support for including selected gdk-pixbuf loaders only.
10899
10900         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
10901         gtk_window_set_has_frame):
10902         Added inline documentation.
10903
10904         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
10905         * docs/reference/gdk/tmpl/windows.sgml:
10906         Added inline documentation.
10907
10908 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
10909
10910         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
10911         realizing buttons that have already been realized.
10912
10913 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
10914
10915         * tests/testtreeview.c (main): Show menu items before adding to
10916         option menu.
10917
10918         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
10919         around if we kill them.
10920
10921         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
10922         Return if we pass in a NULL model.
10923
10924 2001-01-08  Havoc Pennington  <hp@redhat.com>
10925
10926         * tests/testtreeview.c: hack on this some
10927
10928         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
10929         gtk_tree_store_set_valist, v is for arrays, valist for varargs
10930         list
10931         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
10932
10933         * gtk/gtkliststore.h: Add varargs set() and get() convenience
10934         functions
10935
10936 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10937
10938         * gtk/gtkwindow-decorate.[hc]:
10939         * gtk/Makefile.am:
10940         New files. Contains an implementation of a minimal WM for
10941         linux-fb.
10942
10943         * gtk/gtkwindow.h:
10944         Add the possibility for GtkWindows to specify a frame. This
10945         is used for the window decoration code, but could concievably
10946         be used for X programs too (xmms style windows).
10947         GtkWindow->frame is the toplevel window if the window is framed.
10948         The signal frame_event gets all events that are targeted to
10949         GtkWindow->frame.
10950         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
10951         
10952         * gtk/gtkwindow.c:
10953         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
10954         Call out to gtkwindow-decorate.c for WM support in linx-fb.
10955
10956 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10957
10958         * docs/README.linux-fb:
10959         Correct filename ~/.pangoft2_aliases
10960
10961         * gdk/gdkwindow.h:
10962         Added new function gdk_window_get_decorations.
10963
10964         * gdk/linux-fb/gdkfb.h:
10965         Removed _gdk_window_get_decorations declaration.
10966         Renamed _gdk_window_set_child_handler to
10967         gdk_fb_window_set_child_handler.
10968
10969         * gdk/linux-fb/gdkwindow-fb.c:
10970         Renamed _gdk_window_set_child_handler to
10971         gdk_fb_window_set_child_handler.
10972
10973         * gdk/x11/gdkwindow-x11.c:
10974         New function gdk_window_get_mwm_hints().
10975         Implemented gdk_window_get_decorations.
10976
10977         * docs/reference/gdk/tmpl/windows.sgml:
10978         * docs/reference/gdk/gdk-sections.txt:
10979         Added gdk_window_get_decorations docs.
10980         
10981 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
10982
10983         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
10984         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
10985         gdk_fb_window_send_crossing_events):
10986         Possibly send focus events when the mouse moves from one
10987         window to another.
10988
10989 2001-01-07  Tor Lillqvist  <tml@iki.fi>
10990
10991         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
10992         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
10993         to match current API.
10994
10995         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
10996         environment variable is set, don't call g_error when on a
10997         palettized (PseudoColor) display. Some people want to use GTK+ 
10998         in 256-colour mode even though works only partially.
10999
11000         * gdk/gdk.def
11001         * gtk/gtk.def
11002         * gtk/makefile.mingw.in: Update.
11003
11004 2001-01-05  Havoc Pennington  <hp@redhat.com>
11005
11006         * tests/testtreeview.c: hack on this a bit
11007
11008         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
11009         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
11010
11011         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
11012         was spelled incorrectly
11013         (GTK_IS_TREE_MODEL_SIMPLE): ditto
11014
11015         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
11016         from gtk_tree_view_set_headers_active   
11017
11018         * gtk/gtktexttag.c:
11019         (gtk_text_tag_get_property): handle PROP_DIRECTION
11020         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
11021         properties, bug 40235
11022
11023         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
11024         forward_to_line_end
11025
11026 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
11027
11028         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
11029         modules/input/gtkimcontextxim.c: Adapt to new prototypes
11030         for unicode,locale,filename conversion functions.
11031
11032 2001-01-05  Havoc Pennington  <hp@redhat.com>
11033
11034         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
11035         broken if called on the first position in the buffer.
11036
11037         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
11038         forward_to_delimiters to be called only if we aren't already at
11039         the delimiters.
11040
11041 2001-01-05  Havoc Pennington  <hp@redhat.com>
11042
11043         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
11044
11045 2001-01-05  Alexander Larsson  <alexl@redhat.com>
11046
11047         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
11048         colormap in here. Sync from X port.
11049         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
11050         Sync from X port.
11051         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
11052         This happens now and then, and i don't think it is a bug.
11053         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
11054         != endpoint.
11055         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
11056         GDK_LINE_SOLID.
11057
11058         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
11059         some of the fields filled in at least.
11060
11061         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
11062         miLineArcD is no more, remove it from the function definition.
11063
11064 2001-01-04  Havoc Pennington  <hp@redhat.com>
11065
11066         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
11067         this
11068
11069         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
11070         user_data instead of tree_node
11071
11072         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
11073         TREE_VIEW_COLUMN_SIZE
11074
11075         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
11076         "size" field to "width" finishes bug 40061
11077
11078         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
11079         for bitfields, bug 40268
11080
11081 2001-01-04  Havoc Pennington  <hp@redhat.com>
11082
11083         Rename some stuff:
11084         
11085         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
11086
11087         s/GtkModelSimple/GtkTreeModelSimple/g;
11088         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
11089         s/gtk_model_simple/gtk_tree_model_simple/g;
11090         s/gtkmodelsimple/gtktreemodelsimple/g;
11091
11092         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
11093
11094         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
11095         s/column_set_col_type/column_set_sizing/g;
11096
11097         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
11098         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
11099
11100         s/GtkCellRendererType/GtkCellRendererState/g;
11101         
11102         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
11103         (gtk_cell_renderer_toggle_class_init): change "state" property to
11104         "active", to match GtkToggleButton
11105         (gtk_cell_renderer_toggle_get_active): new function, bug
11106         40269
11107         (gtk_cell_renderer_toggle_set_active): new function
11108         (gtk_cell_renderer_toggle_set_property): route changes to toggle
11109         state through gtk_cell_renderer_set_active
11110
11111 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
11112
11113         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
11114         temporarily until they work again.  Brought up to date with
11115         changes in the model.
11116         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
11117         model.
11118
11119 2001-01-04  Havoc Pennington  <hp@redhat.com>
11120
11121         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
11122         equal to the line length, then position iterator before paragraph 
11123         separators. Fixes crash reported by Mikael Hermansson when
11124         pressing left arrow from the start of a line.   
11125
11126         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
11127         about byte indexes off the end
11128         (iter_set_from_char_offset): add g_error about char offsets
11129         off the end
11130
11131 2001-01-03  Havoc Pennington  <hp@redhat.com>
11132
11133         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
11134
11135         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
11136         of private functions; remove inclusion of private headers.
11137
11138         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
11139         function, so we don't need private functions in gtktextdisplay.c
11140
11141         * gtk/gtktextiterprivate.h: underscore-ification
11142
11143         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
11144         to instead say "only useful to implement widgets"
11145
11146         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
11147         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
11148         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
11149
11150         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
11151         This function was completely broken
11152
11153         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
11154
11155         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
11156
11157         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
11158
11159         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
11160
11161         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
11162
11163         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
11164
11165         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
11166         gtk_paint_layout
11167
11168         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
11169         gtk_paint_layout
11170
11171         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
11172         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
11173         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
11174         which were not implemented.     
11175
11176         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
11177         insert_pixbuf signal. Rename delete_text to delete_range since it
11178         also deletes pixbufs and child anchors. This almost closes bug
11179         40245 (still need to deal with child anchors)
11180
11181         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
11182         insert_pixbuf, change signal names as appropriate, change types of
11183         signals taking marks/tags to have the specific type, not just
11184         G_TYPE_OBJECT
11185         
11186         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
11187         closes bug 40051
11188
11189         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
11190         unnecessary remove_contents() call
11191         (gtk_option_menu_class_init): add a "changed" signal, closes
11192         bug 40039
11193         (gtk_option_menu_update_contents): emit "changed" if the 
11194         active menu item changes
11195
11196         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
11197         cast to GtkObject, reported by Jonas Borgstrom
11198         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
11199         we can't do stuff with side effects in finalize. Instead, spew a
11200         warning if the loader isn't closed.
11201
11202         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
11203         colormap in here, non-X ports probably need to sync to this change
11204
11205         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
11206         assertion that colormap != NULL, you can set the colormap to NULL
11207         if you like.
11208         
11209         * Makefile.am: remove gtk-config-2.0
11210
11211         * configure.in: Use pkg-config to locate GLib. Remove
11212         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
11213         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
11214         Use pkg-config to locate Pango. Output correct Pango libs to
11215         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
11216
11217         * Makefile.am (pkgconfig_DATA): install only target-specific pc
11218         files
11219         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
11220         X11 pc files
11221
11222         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
11223         unref from here
11224
11225 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
11226
11227         * configure.in:
11228         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
11229
11230 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
11231
11232         * gtk/gtktextlayout.c
11233         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
11234         variable when moving back onto a single line.
11235
11236 2001-01-01  Havoc Pennington  <hp@redhat.com>
11237
11238         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
11239
11240         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
11241
11242         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
11243         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
11244
11245 2001-01-01  Havoc Pennington  <hp@redhat.com>
11246
11247         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
11248
11249         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
11250         GtkTextAttributes
11251
11252         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
11253         #40246
11254         (gtk_text_attributes_copy_values): rename from 
11255         gtk_text_attributes_copy
11256         (gtk_text_attributes_copy): a more standard GTK copy function, 
11257         which returns a new object
11258
11259 2001-01-01  Havoc Pennington  <hp@redhat.com>
11260
11261         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
11262         
11263         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
11264         don't fill in tree_view->priv->selection, kind of an unexpected
11265         side effect
11266
11267         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
11268         gtkintl.h
11269         
11270         * gtk/gtkcellrenderer.c: Remove definition of _ and include
11271         gtkintl.h
11272         (gtk_cell_renderer_get_property): remove calls to g_value_init
11273
11274         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
11275         gtkintl.h
11276
11277         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
11278         and include gtkintl.h
11279         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
11280         property names
11281
11282         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
11283         GtkTreeSelection
11284         (_gtk_tree_selection_new_from_with_view): rename, return
11285         GtkTreeSelection
11286         (_gtk_tree_selection_set_tree_view): rename with uscore
11287         (gtk_tree_selection_get_selected): fill in the "model" out param
11288         first, so it gets filled in even if we return at the top of the 
11289         function
11290         (gtk_tree_selection_real_select_all): add a comment and an else{}
11291         to clarify this a bit
11292         (gtk_tree_selection_real_unselect_all): add the same else{}
11293
11294         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
11295         set_tree_view to have underscore prefixes, move them to the
11296         private header, fix return type of new_with_tree_view
11297         (struct _GtkTreeSelection): mark struct
11298         fields private  
11299
11300         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
11301         GtkTreeModelFlags, not a guint
11302         (gtk_tree_path_prev): return gboolean not gint
11303         (gtk_tree_path_up): return gboolean not gint
11304
11305         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
11306         return GtkTreeModelFlags, not a guint
11307
11308         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
11309         that child model is non-null before unrefing it
11310         (g_value_int_compare_func): make this a qsort compare func, not 
11311         a boolean predicate
11312
11313         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
11314         (add -umn to the end), and mark it unimplemented
11315         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
11316         I don't see what it's for - doesn't the model always sort itself?
11317         (gtk_tree_model_sort_set_compare): this had the wrong signature
11318
11319         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
11320         Fix the docs to say that it destructively replaces existing
11321         attributes (previously said that it added attributes).
11322         (gtk_tree_view_column_set_visible): canonicalize bool before
11323         equality testing. Also, check for realization before
11324         hiding/showing the tree_column->window; if this window could exist
11325         before realization, then it's busted and needs fixing, we can't 
11326         create GDK resources pre-realization. Also, remove
11327         superfluous queue_resize(), since set_size() does that for us.
11328         (gtk_tree_view_column_set_col_type): check realization before 
11329         using tree_column->window
11330
11331         * gtk/gtktreedatalist.c: fix filename in copyright notice
11332
11333 2000-12-31  Havoc Pennington  <hp@pobox.com>
11334
11335         * gtk/gtktextview.c: Rearrange all the
11336         scroll-while-dragging-or-selecting code to be different, not
11337         necessarily better. ;-)
11338         (gtk_text_view_scroll_to_mark): Change this
11339         function to take within_margin as a fraction instead of a pixel
11340         value, and to take alignment arguments (indicating where to align 
11341         the mark inside the visible area)
11342         
11343         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
11344         to GtkObject
11345
11346         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
11347         behavior so that offsets past the end of the line are not 
11348         allowed, and an offset equal to the line length moves the iterator
11349         to the next line
11350         (gtk_text_iter_set_line_index): make parallel change
11351         (gtk_text_iter_get_bytes_in_line): add this function
11352         
11353         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
11354         of byte indexes off the end of the line; byte index at the end of
11355         the line now returns FALSE and doesn't fill in the requested
11356         values, byte index past the end of the line is an error.  Also,
11357         don't allow -1 offset anymore, since its meaning is unclear.
11358
11359         This change exposes some bug in visual cursor motion, where we
11360         end up with a huge invalid byte index; needs fixing. Symptom of 
11361         bug is a crash when you hit up arrow.
11362         
11363         (_gtk_text_line_char_locate): match the change to byte_locate
11364
11365         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
11366         from start of line properly. fixes bug reported by Mikael
11367         Hermansson where backspace would delete all text before the
11368         cursor.
11369
11370 2000-12-30  Tor Lillqvist  <tml@iki.fi>
11371
11372         * gdk/win32/gdkwindow-win32.c
11373         (gdk_window_impl_win32_get_visible_region): New function, as in
11374         the X11 backend.
11375         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
11376         instead of duplicating the same code here.
11377
11378         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
11379         GDK_COLORMAP macro.
11380
11381         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
11382         destroy function.
11383         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
11384         access that.
11385
11386         * gtk/gtk.def: Update.
11387
11388         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
11389
11390 2000-12-30  Havoc Pennington  <hp@pobox.com>
11391
11392         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
11393         colormap on input only windows, to avoid special cases all over
11394         the code for these windows.
11395
11396 2000-12-26  Tor Lillqvist  <tml@iki.fi>
11397
11398         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
11399         we are on a palettized display ("PseudoColor" in X11), as the code
11400         for that doesn't work anyway, and never has.
11401
11402 2000-12-22  Alexander Larsson  <alexl@redhat.com>
11403
11404         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
11405         Don't use isprint() for chars > 255.
11406
11407 2000-12-21  Havoc Pennington  <hp@redhat.com>
11408
11409         * tests/testtreeview.c: more work
11410
11411 2000-12-21  Alexander Larsson  <alexl@redhat.com>
11412
11413         * docs/README.linux-fb:
11414         Update the docs to the new pangoft2 way.
11415
11416 2000-12-21  Alexander Larsson  <alexl@redhat.com>
11417
11418         * configure.in:
11419         For linux-fb get the pangoft2 cflags and libs. This needs a recent
11420         pango version.
11421         Remove modules/linux-fb/Makefile.
11422
11423         * gdk/linux-fb/gdkdrawable-fb2.c:
11424         Render glyphs using freetype.
11425
11426         * gdk/linux-fb/gdkfb.h:
11427         Add new fb-specific functions needed for managing windows.
11428
11429         * gdk/linux-fb/gdkmain-fb.c:
11430         Remove gdk_font_init/fini() calls.
11431
11432         * gdk/linux-fb/gdkpango-fb.c:
11433         Remove old implementation. Use pangoft2 instead.
11434
11435         * gdk/linux-fb/gdkprivate-fb.h:
11436         Remove PangoFBFont and related stuff.
11437
11438         * gdk/linux-fb/gdkwindow-fb.c:
11439         Implement drawable->get_visible_region.
11440         Implement support for _gdk_window_set_child_handler () and
11441         _gdk_window_get_decorations().
11442
11443         * modules/Makefile.am:
11444         Remove linux-fb subdir.
11445
11446         * modules/linux-fb/*:
11447         Removed all.
11448         
11449 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
11450
11451         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
11452         calls, as they are no longer needed.
11453
11454         * gtk/gtktreemodelsort.c: Fix up the comparison code.
11455         
11456         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
11457         figure out how to emit a signal on an interface.
11458
11459 2000-12-20  Havoc Pennington  <hp@redhat.com>
11460
11461         * tests: new directory to contain tests, gtk/test* should move
11462         here sometime (with appropriate on-cvs-server hackery)
11463
11464         * tests/testtreeview.c, tests/Makefile.am: a test
11465         
11466         * configure.in (AC_OUTPUT): add tests/Makefile
11467
11468         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
11469         and "invisible_set" which were missing
11470
11471         * gtk/gtkrbtree.h: some cheesy indentation fix
11472         
11473 2000-12-20  Alexander Larsson  <alexl@redhat.com>
11474
11475         * gtk/gtkinvisible.c (gtk_invisible_realize):
11476         Attach the style to the window so that the style it is not
11477         leaked when unrealizing the window.
11478
11479 2000-12-18  Havoc Pennington  <hp@redhat.com>
11480
11481         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
11482         begin/end user action where appropriate
11483         (gtk_text_view_commit_handler): add begin/end user action
11484
11485         * gtk/gtktextbuffer.c: add begin/end user action signals, and
11486         bracket interactive operations with begin/end user action pair.
11487         
11488         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
11489         "interactive" arg from insert_text and delete_text signals.
11490         Add begin_user_action, end_user_action signals
11491         (gtk_text_buffer_begin_user_action): 
11492         (gtk_text_buffer_end_user_action): New functions to delimit 
11493         a user-visible action
11494
11495         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
11496         signals.
11497         
11498 2000-12-18  Havoc Pennington  <hp@redhat.com>
11499
11500         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
11501         was pretty non-working.
11502
11503         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
11504         by passing the length to g_utf8_validate().
11505
11506 2000-12-16  Havoc Pennington  <hp@pobox.com>
11507
11508         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
11509         Port to GObject, can go back in gdk-pixbuf after setting up 
11510         a gdk-pixbuf-marshal.h header over there.
11511
11512         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
11513         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
11514         args
11515         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
11516         set
11517         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
11518         here, do it when we create the buttons later
11519         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
11520         (gtk_tree_view_map): paranoia checks that column->button is shown 
11521         and unmapped
11522         (gtk_tree_view_size_request): only request visible children.
11523         Move header size calculation in here, for cleanliness, and 
11524         to maintain invariants for child widgets if we eventually 
11525         let users set different children inside the buttons
11526         (gtk_tree_view_map_buttons): factor out code to map buttons,
11527         since it was being called several times
11528         (gtk_tree_view_size_allocate_buttons): move_resize the drag
11529         windows instead of just moving them; their height may change 
11530         if we allow random widgets in there, or the theme changes.
11531         (gtk_tree_view_size_allocate): move button size allocation 
11532         above emitting the scroll signals, to ensure a sane state when we
11533         hit user code
11534         (gtk_tree_view_button_release): remove queue_resize after
11535         tree_view_set_size(), set_size() will handle any resize queuing
11536         that's needed
11537         (gtk_tree_view_focus_in): just queue a draw, don't fool with
11538         draw_focus goo
11539         (gtk_tree_view_focus): use gtk_get_current_event() and
11540         gdk_event_get_state()
11541         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
11542         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
11543         semicolon
11544         (gtk_tree_view_create_button): show the button here
11545         (gtk_tree_view_button_clicked): actually emit the clicked signal
11546         on the column
11547         (_gtk_tree_view_set_size): return right away if the size is
11548         unchanged, as a cheesy optimization
11549         (gtk_tree_view_setup_model): rename set_model_realized to 
11550         setup_model to match the flag that indicates whether we've 
11551         called it
11552         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
11553         exist, because set_scroll_adjustment does that and it shouldn't
11554         matter what order you call these in
11555         (gtk_tree_view_get_vadjustment): ditto
11556         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
11557         for paranoia
11558         (gtk_tree_view_set_headers_visible): call
11559         gtk_tree_view_map_buttons() instead of using cut-and-paste code
11560         (gtk_tree_view_append_column): clarify whether the return value
11561         is the count of columns before or after, and do the increment 
11562         separately from the return statement so you can tell from the code.
11563         (gtk_tree_view_remove_column): ditto
11564         (gtk_tree_view_insert_column): ditto
11565         (gtk_tree_view_get_column): remove g_return_if_fail for columns
11566         outside the existing range, the docs say that outside-range
11567         columns are allowed, so we handle them as documented. (Presumably
11568         this allows a nice loop with column != NULL as test.)
11569         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
11570         mean (left/right/center etc.).
11571         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
11572         (gtk_tree_view_expand_row): add docs
11573         (gtk_tree_view_collapse_row): add docs
11574
11575         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
11576         function to emit the clicked signal on a column
11577         
11578         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
11579         state of an event
11580         (gdk_event_get_time): don't treat GDK_SCROLL 
11581         as a button event, remove default case from switch so gcc 
11582         will whine if we don't explicitly handle all event types
11583
11584         * gtk/gtktreeselection.h: added some FIXME 
11585         
11586         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
11587         "columns" to "n_columns" and "column" to "columns" for clarity
11588
11589 2000-12-16  Havoc Pennington  <hp@pobox.com>
11590         
11591         * gtk/gtktextiter.c: General cleanup of the log attr iteration
11592         stuff. This should make e.g. the delete key work again in the
11593         text widget...
11594         (gtk_text_iter_forward_cursor_positions): handle negative count
11595         (gtk_text_iter_backward_cursor_positions): handle negative count
11596         (gtk_text_iter_forward_word_ends): handle negative count
11597         (gtk_text_iter_backward_word_starts): handle negative count
11598
11599         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
11600         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
11601         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
11602         GObject. No doubt will cause breakage.
11603
11604         * demos/gtk-demo/textview.c: remove hacks around
11605         non-GObject-ification of the text objects
11606
11607         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
11608         the text tag
11609         
11610 2000-12-14  Havoc Pennington  <hp@pobox.com>
11611
11612         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
11613         that we have Xrender
11614
11615 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
11616
11617         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
11618         Add two virtualized functions gdk_drawable_get_clip_region - to
11619         get the clip region when drawing.
11620         
11621         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
11622         use invalidate_region.
11623
11624         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
11625         region.
11626
11627         * acconfig.h configure.in: Check for Xft. For now, assume
11628         that if Xft is found, Pango was compiled with Xft support
11629         as well.
11630
11631         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
11632         gdk_colormap_query_color().
11633         
11634         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
11635         with Xft if appropriate.
11636
11637         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
11638         a pangoxft context if we have XFT and the environment
11639         variable GD_USE_XFT is set.
11640         
11641         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
11642         and also possibly an XftDraw structure.
11643
11644         * gtk/gtkfontsel.c: Handle the case where the font from the
11645         style doesn't match any of the fonts a bit better.
11646         
11647         * gtk/testgtk.c: Add tabs between directional segments for
11648         hebrew/arabic test. (Not really necessary, just a little
11649         prettier.)
11650
11651 2000-12-14  Havoc Pennington  <hp@redhat.com>
11652
11653         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
11654         reading a file
11655
11656 2000-12-14  Havoc Pennington  <hp@redhat.com>
11657
11658         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
11659         unused call to get_last_line()
11660
11661         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
11662         here until boxed is working (and maybe after that - we should
11663         really not gratuitously break old code)
11664
11665         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
11666         specific types for font_desc and tabs args, move them to
11667         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
11668         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
11669
11670         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
11671         use GTK_TYPE_POINTER for signal signatures as a hack-around
11672
11673         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
11674         PangoTabArray
11675
11676         * gtk/gtktextlayout.c (line_display_iter_to_index): 
11677         make static
11678         (line_display_index_to_iter): make static
11679
11680         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11681         to marshal a string not a boxed
11682
11683         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
11684
11685         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
11686         since the UTF-8 isn't validated yet
11687
11688         * gtk/gtktextsegment.c (char_segment_check_func): don't require
11689         lines to end in '\n'
11690         
11691         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
11692         forward_to_delimiters, and grapheme boundaries
11693         (gtk_text_view_delete_from_cursor): properly handle non-newline
11694         delimiters, and grapheme boundaries
11695
11696         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
11697         to gtk_text_iter_forward_to_delimiters, and make it work properly
11698         if empty lines end with a character other than '\n'
11699
11700         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
11701         position
11702
11703 2000-12-15  Tor Lillqvist  <tml@iki.fi>
11704
11705         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
11706
11707         * gtk/gtk.def
11708         * gdk/gdk.def: Update.
11709
11710         * gdk/win32/gdkmain-win32.c
11711         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
11712         gdkmain-win32.c here.
11713
11714         * gdk/win32/makefile.mingw.in (all): No need to make
11715         gdk-win32res.o here, the makefile one step up will call us to make
11716         it.
11717
11718         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
11719         gdkkeys-win32.
11720
11721         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
11722
11723         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
11724         call to g_source_add().
11725
11726         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
11727         leak. Thanks to Andreas Kemnade.
11728
11729 2000-12-13  Havoc Pennington  <hp@pobox.com>
11730
11731         * gtk/gtktextbtree.h: Remove double _ in front of some functions
11732
11733         * gtk/gtktext*.[hc]: update accordingly
11734         
11735 2000-12-13  Havoc Pennington  <hp@pobox.com>
11736
11737         * gtk/gtktextbtree.h: Put _ in front of every function in this 
11738         header file
11739
11740         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
11741
11742 2000-12-13  Alex Larsson  <alexl@redhat.com>
11743
11744         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
11745         Add support for ps2 intellimouse.
11746
11747         * gdkkeyboard-fb.c:
11748         Move shift-F1 repaint handling to xlate handler only.
11749         
11750         * docs/README.linux-fb:
11751         Add imps2 to docs.
11752         Document the new refresh keys.
11753         
11754 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
11755
11756         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
11757
11758         * gtk/gtkbox.c: change property types from (u)long to (u)int for
11759         ::position and ::padding.
11760
11761         * gtk/gtkcontainer.c: make ::border_width an INT property.
11762
11763         * gtk/gtkpacker.c: make ::position an INT property.
11764
11765         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
11766         guard against NULL h/v scrollbars, since this is used at construction
11767         time.
11768
11769         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
11770         internal gtk_clist_constructor().
11771
11772         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
11773         gtk_ctree_constructor().
11774
11775         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
11776         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
11777
11778         * docs/reference/Makefile.am: fun stuff, disabled docs generation
11779         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
11780
11781         * gtk/gtkwidget.[hc]:
11782         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
11783         and gtk_widget_get().
11784         (gtk_widget_new): use g_object_new_valist().
11785         (gtk_widget_set): use g_object_set_valist().
11786
11787         * gtk/gtkobject.[hc]:
11788         removed gtk_object_arg_get_info(), gtk_object_getv(),
11789         gtk_object_query_args(), gtk_object_newv(),
11790         gtk_object_class_add_signals(),
11791         gtk_object_class_user_signal_new(),
11792         gtk_object_class_user_signal_newv(),
11793         gtk_object_arg_set(), gtk_object_arg_get(),
11794         gtk_object_args_collect(),
11795         gtk_object_default_construct(),
11796         gtk_object_constructed(),
11797         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
11798         removed nsignals, signals and n_args members from GtkObjectClass.
11799         (gtk_object_new): use g_object_new_valist().
11800         (gtk_object_set): use g_object_set_valist().
11801         (gtk_object_get): use g_object_get_valist().
11802         
11803         * gtk/gtkcompat.h: define gtk_object_default_construct().
11804         
11805         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
11806         g_object_new().
11807
11808         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
11809         fucntions, cleaned up method assignments (make sure your structures
11810         are setup properly before calling out). removed all GTK_CONSTRUCTED
11811         hacks ;)
11812
11813 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
11814
11815         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
11816         off-by-one error in checks. (Dave Lambert)
11817
11818 2000-12-12  Alexander Larsson  <alexl@redhat.com>
11819
11820         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
11821         Don't free gdk_fb_keyboard twice.
11822
11823 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
11824
11825         * gtk/testgtk.c:
11826         (create_tooltips): 
11827         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
11828         use GObject swapped_signal:: properties instead.
11829
11830         * gtk/gtkcellrenderertoggle.c: 
11831         * gtk/gtkcellrenderertextpixbuf.c: 
11832         * gtk/gtkcellrenderertext.c: 
11833         * gtk/gtkcellrendererpixbuf.c: 
11834         * gtk/gtkcellrenderer.c:
11835         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
11836         missing warnings for invalid property ids, install properties
11837         with g_object_class_install_property() now.
11838         
11839         * gtk/gtksignal.c:
11840         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
11841         
11842 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
11843         
11844         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
11845         to determine if a window is the focus widget within
11846         its toplevel.
11847
11848         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
11849         to be boolean.
11850
11851         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
11852         of the case where the container CAN_FOCUS to here instead
11853         of having it in each individual move-the-focus place.
11854
11855         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
11856         focusing to be geometric in a much more obvious sense. Arrowing
11857         around is still non-intuitive because it isn't perfect and
11858         because entries, etc, grab the arrow keys, but it at least
11859         usually will do what you expect now.
11860         
11861         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
11862         file.
11863
11864         * gtk/gtknotebook.c: Change tabs to be a single item in
11865         the focus chain. Make movement of focus on tabs with arrow
11866         keys wrap around.
11867         
11868         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
11869         CHECK_FIND_CHILD macro to give informative error messages
11870         instead of silent returns.
11871
11872         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
11873         flag since we handle GdkReturn on the tabs.
11874
11875         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
11876         windows rather than sending expose events directly.
11877
11878         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
11879         definition for GtkNotebookPage into .c file, since it is private.
11880
11881         * gtk/testgtk.c (create_notebook): Add option for 
11882         testing borderless notebook.
11883
11884         * gtk/testgtk.c (page_switch): Removed egregious poking
11885         around in GTK+ internals.
11886
11887         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
11888
11889         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
11890         properly through gtk_clist_focus. Make the title headers a
11891         single item in the tab-focus chain, and make left-right wrap
11892         around.
11893
11894         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
11895         focus method so that wrapping around works properly.
11896
11897         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
11898         that is handled for the widget now. 
11899
11900 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
11901
11902         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
11903         widgets as TOPLEVEL.
11904
11905         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
11906         TOPLEVEL widgets are containers.
11907
11908         * gtk/gtkinvisible.h: Remove useless include.
11909
11910 2000-12-11  Havoc Pennington  <hp@redhat.com>
11911
11912         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
11913         Handle chopping off \r\n and 0x2029 in addition to \n before
11914         passing to PangoLayout
11915
11916         * gtk/gtkimcontextsimple.c
11917         (gtk_im_context_simple_get_preedit_string): 
11918         return an empty string if no match is pending
11919
11920         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
11921         assertion that the returned preedit string was sane
11922
11923         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
11924         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
11925         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
11926
11927 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
11928
11929         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
11930         Fix up finalizer to chain to its parent.
11931
11932 2000-12-11  Alexander Larsson  <alexl@redhat.com>
11933
11934         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
11935         Clearified the difference between the keyboard types. Wrote a note
11936         about the magic sysrq key to get out of raw mode.
11937
11938 2000-12-09  James Henstridge  <james@daa.com.au>
11939
11940         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
11941         member to hold masks for detecting the start of a protocol packet.
11942         (mouse_devs): add packet start masks for ps2 and ms device types.
11943         Left the mask for fidmour blank, as I have no idea what it should
11944         be.
11945         (handle_mouse_io): skip bytes until we get to the start of a
11946         packet.  My Logitech mouse seems to be passing an extra NULL pad
11947         byte, and GPM does a similar thing here.
11948         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
11949         this is the ms mouse driver.
11950         (gdk_fb_mouse_ms_packet): fix up button handling, which was
11951         completely broken except for button1.  It was checking the wrong
11952         bit in the packet for the status of the right mouse button, and
11953         wrongly assuming right == button2 rather than 3.  I fixed that and
11954         also added support for middle button (button2).
11955
11956 2000-12-08  Havoc Pennington  <hp@redhat.com>
11957
11958         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
11959         that cause a segfault on text insertion
11960
11961         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
11962         warning
11963
11964         * gtk/gtktextiter.c (test_log_attrs): use
11965         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
11966
11967         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
11968         Get log attrs for a line, using a cache stored on the buffer
11969         
11970         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
11971         reported by Jeff Franks
11972
11973 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11974
11975         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
11976         /dev/ttyS0 -> /dev/mouse
11977
11978 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11979
11980         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
11981         Added dummy gdk_fontset_load.
11982
11983 2000-12-08  Alexander Larsson  <alexl@redhat.com>
11984
11985         * docs/README.linux-fb:
11986         * docs/Makefile.am:
11987         Initial GtkFB docs.
11988         
11989         * gdk/linux-fb/Makefile.am:
11990         Define GDK_DATA_PREFIX.
11991
11992         * gdk/linux-fb/gdkmain-fb.c:
11993         Fix typo.
11994         Change default display to /dev/fb0.
11995
11996         * gdk/linux-fb/gdkpango-fb.c:
11997         Add $(prefix)/share/fonts/ to font path.
11998         
11999 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
12000
12001         * gdk/linux-fb/gdkkeyboard-fb.c:
12002         New file containing the abstracted keyboard driver. Most code
12003         taken from gdkinput-ps2.c
12004
12005         * gdk/linux-fb/gdkinput-ps2.c:
12006         Removed file.
12007         
12008         * gdk/linux-fb/Makefile.am:
12009         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
12010
12011         * gdk/linux-fb/gdkcolor-fb.c:
12012         display->fb was renamed to display->fb_fd.
12013
12014         * gdk/linux-fb/gdkcursor-fb.c:
12015         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12016
12017         * gdk/linux-fb/gdkinput.c:
12018         Moved gdk_input_init here from gdkinput-ps2.c
12019
12020         * gdk/linux-fb/gdkmain-fb.c:
12021         display->fb was renamed to display->fb_fd.
12022         Now the tty and the console is opened here instead
12023         of in the keyboard driver. Also check GDK_VT to see what
12024         tty to open.
12025         Move gdk_beep () here from gdkinput-ps2.c
12026         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12027
12028         * gdk/linux-fb/gdkmouse-fb.c:
12029         Add header.
12030         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12031         Return correct keyboard modifiers.
12032         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
12033
12034         * gdk/linux-fb/gdkprivate-fb.h:
12035         Add tty and vt info to display.
12036         Add orignal modeinfo storage to display
12037         Update global functions
12038
12039         * gdk/linux-fb/gdkwindow-fb.c:
12040         Added gdk_fb_window_find_focus().
12041         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12042
12043 2000-12-07  Havoc Pennington  <hp@pobox.com>
12044
12045         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
12046         function, noticed by Alex
12047
12048 2000-12-06  Elliot Lee  <sopwith@redhat.com>
12049
12050         * configure.in: Detect freetype properly
12051
12052         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
12053         above.
12054
12055 2000-12-06  Alexander Larsson  <alexl@redhat.com>
12056
12057         * gdk/linux-fb/Makefile.am:
12058         Add gdkmouse-fb.c
12059         
12060         * gdk/linux-fb/gdkmouse-fb.c:
12061         New file. Abstracted the mouse drivers a bit.
12062
12063         * gdk/linux-fb/gdkcursor-fb.c:
12064         The cursor hide/show functions was moved here from gdkinput-ps2.c.
12065
12066         * gdk/linux-fb/gdkinput-ps2.c:
12067         Removed old mouse handling code. Moved cursor handling code
12068         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
12069         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
12070         gdk_mouse_get_info.
12071
12072         * gdk/linux-fb/gdkmain-fb.c:
12073         Pass NULL pointers for x,y in gdk_mouse_get_info call.
12074
12075         * gdk/linux-fb/gdkprivate-fb.h:
12076         Removed public gdk_fb_find_common_ancestor, added and renamed
12077         functions for the new mouse handling code.
12078
12079         * gdk/linux-fb/gdkwindow-fb.c:
12080         Moved gdk_fb_window_send_crossing_events here. added global
12081         variable gdk_fb_window_containing_pointer. made
12082         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
12083         renamed to gdk_mouse_get_info.
12084
12085 2000-12-06  Alexander Larsson  <alexl@redhat.com>
12086
12087         * gdk/linux-fb/gdkevents-fb.c:
12088         Update to match latest gmain/gsource changes.
12089
12090         * gdk/linux-fb/gdkinput-ps2.c:
12091         Bogus gdk_keymap_get_entries_for_keycode implementation so that
12092         it links. Will be implemented later.
12093
12094 2000-12-03  Havoc Pennington  <hp@pobox.com>
12095
12096         * gdk/Makefile.am: add gdkkeys.[hc]
12097
12098         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
12099         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
12100
12101         * acconfig.h, configure.in: add checks and command line options
12102         for XKB
12103
12104         * gdk/x11/gdkkeys-x11.c: Implement the above functions
12105         
12106         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
12107         and group in the key event
12108
12109         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
12110         field with the low-level hardware key code, and a group
12111         field with the keyboard group
12112
12113         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
12114         and declare a couple globals used for keymap handling
12115         
12116         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
12117         hold down Shift-Control and type a hex number to get a Unicode 
12118         character corresponding to the hex number
12119         (gtk_im_context_simple_get_preedit_string): Fix cursor position
12120         (return bytes not chars)
12121
12122 2000-12-05  Elliot Lee  <sopwith@redhat.com>
12123
12124         * gdk/gdkcolor.h: Make GdkColor specify element sizes
12125         to avoid waste on 64-bit platforms.
12126
12127 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
12128
12129         * INSTALL: Fix link to PNG home, remove reference
12130         to fribidi.
12131
12132         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
12133         
12134         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
12135         tested.)
12136
12137         * gtk/gtkcheckmenuitem.c: Permanently turn on
12138         always_show_toggle.
12139
12140         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
12141         be NULL. (Vladimir Klebanov, #26545)
12142
12143         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
12144         some signed/unsigned comparison problems. (#6510,
12145         David Kaelbling)
12146
12147         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
12148         return type to boolean (Oskar Liljeblad, #18648)
12149
12150 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12151
12152         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
12153         Remove bogus colormap setting.
12154
12155 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12156
12157         * gdk/linux-fb/gdkcolor-fb.c:
12158         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
12159
12160         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
12161         Must set colormap.
12162         
12163 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
12164
12165         * docs/tutorial/gtk-tut.sgml: DND updates
12166
12167 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
12168
12169         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12170         Remove old debug g_warning().
12171         (gdk_fb_draw_drawable): The src argument can be either a wrapper
12172         or an implementation, just pass the implementation to draw_drawable_2.
12173         
12174         * gdk/linux-fb/gdkprivate-fb.h:
12175         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
12176
12177         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12178         clear and invalidate area when window is destroyed.
12179         (send_map_events): Remove old commented out code.
12180
12181 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12182
12183         * gdk/linux-fb/gdkpango-fb.c:
12184         Use italic instead of oblique in font aliases.
12185         
12186         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
12187         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
12188         other unsupported functions.
12189
12190 2000-12-04  Havoc Pennington  <hp@redhat.com>
12191
12192         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
12193
12194         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
12195
12196         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
12197
12198         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
12199         hack to avoid infinite loops (synthetic expose event) - 
12200         Owen has more appropriate fixes in a branch he'll check in later.
12201
12202         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
12203         separator, CR, and CRLF as line ends
12204
12205         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
12206         into lines using pango_find_paragraph_boundary(); other bits of
12207         the widget are still going to be broken if the boundary isn't '\n'
12208         though
12209
12210 2000-12-04  Alexander Larsson  <alexl@redhat.com>
12211
12212         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
12213         multiply.
12214
12215         * gdk/linux-fb/gdkpango-fb.c:
12216         Copied some 26.6 scaling macros from pango to clean up the rounding.
12217         (pango_fb_font_get_glyph_info): Correct sign on x value.
12218
12219         * gdk/linux-fb/gdkprivate-fb.h:
12220         Removed unreferenced external functions.
12221
12222         * modules/linux-fb/Makefile.am: Use ` instead of '.
12223
12224         * modules/linux-fb/basic.c:
12225         Remove dead code. In particular the dummy lang engine which broke all
12226         pango layouts in GtkFB. Don't include tables-big.i anymore.
12227
12228         * modules/linux-fb/tables-big.i:
12229         Upgrade to latest version from pango. Left for reference, basic_ranges
12230         moved to basic.c.
12231         
12232 2000-12-04  Havoc Pennington  <hp@redhat.com>
12233
12234         Fix bugs Alex found:
12235         
12236         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
12237         to "draw"
12238
12239         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
12240
12241         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
12242
12243         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
12244         implementation in here, apparently the expose() implementation was
12245         dead code.
12246
12247 2000-12-04  Alexander Larsson  <alexl@redhat.com>
12248
12249         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12250         Return positive descent.
12251
12252 2000-12-02  Havoc Pennington  <hp@pobox.com>
12253
12254         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
12255         method and signal
12256         
12257         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
12258         calls gdk_window_process_updates() to push the exposes through
12259         (gtk_widget_class_init): No more draw signal, no
12260         gtk_widget_real_draw()  
12261         
12262         * gtk/gtkbin.c (gtk_bin_draw): remove
12263
12264         * gtk/gtkbox.c (gtk_box_draw): remove
12265
12266         * gtk/gtkbutton.c (gtk_button_draw): remove
12267
12268         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
12269
12270         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
12271
12272         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
12273
12274         * gtk/gtkclist.c (gtk_clist_draw): remove
12275
12276         * gtk/gtkentry.c (gtk_entry_draw): remove
12277
12278         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
12279
12280         * gtk/gtkfixed.c (gtk_fixed_draw): remove
12281
12282         * gtk/gtkframe.c (gtk_frame_draw): remove
12283
12284         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
12285
12286         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
12287
12288         * gtk/gtklayout.c (gtk_layout_draw): remove
12289
12290         * gtk/gtklist.c (gtk_list_draw): remove
12291
12292         * gtk/gtklistitem.c (gtk_list_item_draw): remove
12293
12294         * gtk/gtkmenu.c (gtk_menu_draw): remove
12295
12296         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
12297
12298         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
12299
12300         * gtk/gtknotebook.c (gtk_notebook_draw): remove
12301
12302         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
12303
12304         * gtk/gtkpacker.c (gtk_packer_draw): remove
12305
12306         * gtk/gtkrange.c (gtk_range_draw): remove
12307
12308         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
12309
12310         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
12311
12312         * gtk/gtktable.c (gtk_table_draw): remove
12313
12314         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
12315
12316         * gtk/gtktext.c (gtk_text_draw): remove
12317
12318         * gtk/gtktextview.c (gtk_text_view_draw): remove
12319
12320         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
12321
12322         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
12323
12324         * gtk/gtktree.c (gtk_tree_draw): remove
12325
12326         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
12327
12328         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
12329
12330         * gtk/gtkviewport.c (gtk_viewport_draw): remove
12331
12332         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
12333
12334         * gtk/gtkvscale.c (gtk_vscale_draw): remove
12335
12336         * gtk/gtkwindow.c (gtk_window_draw): remove
12337
12338 2000-20-01  Anders Carlsson  <andersca@gnu.org>
12339
12340         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
12341         a GtkToggleButton is both insensitive and active, it was being
12342         drawn by the GtkButton draw handler which doesn't check the
12343         state. Now it's calling gtk_toggle_button_paint instead.
12344         
12345 2000-12-01  Havoc Pennington  <hp@redhat.com>
12346
12347         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
12348         dangling pointers to the appearance attributes from the 
12349         line display
12350
12351         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
12352         width/height to mean "full width/height of drawable"
12353
12354         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
12355         click to select word/line
12356         
12357         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
12358         when getting log attrs. Get a slice, so that pixmaps and stuff
12359         are properly handled.
12360
12361         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
12362         paste into the selection (replaces selection now, previously
12363         crashed or added to selection). Reveals longstanding btree bug -
12364         select multiple lines, middle-click on the selection, boom. This
12365         isn't related to my changes though.
12366
12367         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
12368         PangoLogAttrs changes
12369         (gtk_entry_move_backward_word): ditto
12370
12371         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
12372         functions return bool whether the iter moved onto a
12373         dereferenceable position.
12374  
12375         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
12376         functions for motion in terms of display lines.
12377
12378         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
12379         get the buffer a mark is inside
12380         
12381 2000-12-01  Alexander Larsson  <alexl@redhat.com>
12382
12383         * gdk/linux-fb/Makefile.am:
12384         * modules/linux-fb/Makefile.am:
12385         Freetype 2 final uses freetype-config
12386
12387         * gdk/linux-fb/gdkpango-fb.c:
12388         Upgrade to use Freetype 2 final.
12389         More flexible support for font aliases, this also fixes a bug with
12390         GtkFontSelector, as the aliases must be visible in the font/family list,
12391         or GtkFontSelector reads uninitialized memory.
12392
12393 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
12394
12395         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
12396         XGetIMValues to properly terminate variable argument list, and do
12397         NULL return check for ic_values and xim_styles.
12398
12399         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
12400         Restore preedit state after XmbResetIC().
12401         
12402         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
12403         XvaCreateNestedList() should take XvaNestedList, but not
12404         XvaNestedList*.
12405
12406         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
12407         preedit_draw_callback, preedit_caret_callback): Match
12408         "preedit-changed" signal name to "preedit_changed" to be
12409         consistent to the spec.
12410
12411         * gtk/gtkimcontextsimple.c (check_table):
12412         Match "preedit-changed" to "preedit_changed" to be consistent
12413         to the spec.
12414
12415 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
12416
12417         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
12418         gc->clip_region == NULL>
12419
12420 2000-11-30  Tor Lillqvist  <tml@iki.fi>
12421
12422         Changes by Hans Breuer:
12423         
12424         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
12425         Dont't use negative width and height as max_hints. This fixes
12426         Owen's recent testgtk changes for win32.
12427
12428         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
12429         gdk_win32_hdc_release): These are exported and may be called with
12430         other drawable types than our GdkDrawableImplWin32 (?).
12431
12432         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
12433         so always #define USE_BACKING_STORE.
12434
12435         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
12436         of printf for debugging output.
12437
12438         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
12439         
12440         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
12441
12442         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
12443         declaration.
12444
12445         * gtk/gtktexttypes.h: Ditto.
12446
12447         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
12448         (GDK_VoidSymbol) also if in case of arg check failure.
12449
12450         * gtk/gtkimcontextsimple.c
12451         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
12452         position to the pointer, but to the variable it points to.
12453
12454         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
12455
12456         * gtk/gtk.def: Updates.
12457
12458 2000-11-29  Elliot Lee  <sopwith@redhat.com>
12459
12460         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
12461         GTK_TYPE_TREE_MODEL.
12462
12463 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12464
12465         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
12466         Set the size of the font from the description.
12467         (gdk_text_width): Gross hack that calculates the width
12468         of text by text_length * size/2. This is necessary because
12469         GtkLabel does some ugly gtk_string_width call to calculate
12470         an good size.
12471         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
12472
12473 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
12474
12475         * docs/tutorial/gtk-tut.sgml: DND updates
12476
12477 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12478
12479         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
12480         If you pass width or height == 0 to gdk_window_clear_area they
12481         should be calculated from the window size.
12482
12483 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12484
12485         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
12486         a grab, but no grab-cursor, use the cursor from the grabbed
12487         window. (gdk_fb_window_send_crossing_events): Send normal
12488         enter/leave notifications if grab and owner_events == TRUE.
12489
12490 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12491
12492         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12493         Do implicit button grabs, even if the window doesn't
12494         want the event.
12495         (gdk_fb_window_send_crossing_events): If there is a
12496         grab, only the grabbed window gets normal enter/leave
12497         notifications. On ungrab go from grabbed window to current.
12498         Don't send any notification to b when propagating from c -> b.
12499         If setting a grab on window, don't set prev_window.
12500         (handle_mouse_input): Send enter/leave events to the window the
12501         mouse is over, not the grabbed one.
12502         
12503 2000-11-28  Elliot Lee  <sopwith@redhat.com>
12504
12505         * gdk/gdkregion-generic.c: Zap warning.
12506         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
12507         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
12508
12509 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
12510
12511         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
12512         The cursor should be hidden if it is part of either the
12513         source or destination region. Not only if it is in both.
12514         (gdk_window_set_transient_for): Silence warnings.
12515
12516 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12517
12518         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
12519         The default mode in X is Pie Arcs, therefore that is
12520         what Gtk+ uses.
12521
12522 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12523
12524         * gdk/linux-fb/gdkinput-ps2.c:
12525         Implement correct EnterNotify/LeaveNotify:
12526         (gdk_fb_window_send_crossing_events): New function that sends
12527         all GdkCrossingEvents from the last mouse-window to the specified
12528         destination.
12529         (gdk_fb_window_visibility_crossing): Removed function.
12530         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
12531         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
12532         instead of gdk_window_get_pointer() for better readability.
12533
12534         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
12535         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
12536
12537         * gdk/linux-fb/gdkprivate-fb.h:
12538         removed gdk_fb_window_visibility_crossing, added
12539         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
12540
12541         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
12542         New function that finds the least common ancestor of two windows.
12543         (gdk_window_show, gdk_window_hide):
12544         Use gdk_fb_window_send_crossing_events.
12545         (gdk_fb_window_move_resize): Send configure events to toplevel
12546         windows. Use gdk_fb_window_send_crossing_events.
12547
12548 2000-11-27  Havoc Pennington  <hp@redhat.com>
12549
12550         * gtk/gtkprivate.h (enum): Remove a trailing comma
12551
12552 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
12553
12554         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
12555         the "changed" callback of the adjustment.  We need to redraw the
12556         spin button's arrows when the adjustment's range changes.
12557         (adjustment_changed_cb): Draw the arrows.
12558         (gtk_spin_button_value_changed): Draw the arrows.
12559
12560 2000-11-23  Alexander Larsson  <alexl@redhat.com>
12561
12562         * gdk/linux-fb/gdkselection-fb.c:
12563         Initial selection implementation.
12564
12565         * gtk/gtkselection.c:
12566         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
12567         requestor in gtk_selection_request.
12568         
12569         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
12570         Added gdk_selection_property atom.
12571
12572         * gdk/linux-fb/gdkprivate-fb.h:
12573         Export _gdk_selection_window_destroyed.
12574         Removed mask_off_x/y from GdkCursorPrivateFB.
12575         Removed hbearing, added top, left to PangoFBGlyphInfo.
12576
12577         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12578         Call _gdk_selection_window_destroyed
12579         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
12580         the root window has been created.
12581         (static_dx_hack, static_dy_hack, compare_draw_rects,
12582         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
12583         in region. They are already sorted. Instead just traverse them in
12584         reverse if draw_direction < 0.
12585         
12586         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12587         Double-clicks must be sent after the normal button_press.
12588         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
12589         
12590         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
12591         Pass _gdk_fb_screen_gc instead of NULL.
12592
12593         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
12594         Initialize gdk_selection_property.
12595         (gdk_event_make): Remove unused code.
12596
12597         * gdk/linux-fb/gdkcursor-fb.c:
12598         Make the pixmap for the cursor the same size as the mask. Also remove
12599         the mask_off_x/y fields in GdkCursorPrivateFB and combine
12600         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
12601         Now the whole cursor is visible.
12602
12603         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12604         Fix bug where xdest+height instead of ydest+height was used
12605         to calculate if the source and dest overlapped. This fixes the
12606         redraw bug when the main window in testgtk was scrolled when
12607         partially covered by a tall window.
12608         Copy rectangles in region in order depending on draw_direction.
12609         Also moved the draw_direction flipping of start_y and end_y into
12610         the gc functions, as this might not be what all of them want.
12611         (gdk_fb_draw_lines): Support dashed lines.
12612         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
12613         so that the text is positioned correctly (was 1 pixel high).
12614
12615         gdk/linux-fb/gdkgc-fb.c:
12616         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
12617         all lines were drawn a pixel to short. Also checked the default of
12618         the rest of the values, and they're the same as X now.
12619
12620         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
12621         Clean up pixel positioning of the glyphs. Just use bgy->top and
12622         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
12623         to all divisions to get correct rounding behaviour.
12624
12625         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
12626         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
12627         Moved start_y/end_y flip into draw_drawable implementations.
12628         Flip also x rendering when draw_direction < 0.
12629         Remove unneccesary multiply with draw_direction.
12630
12631 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
12632
12633         * docs/tutorial/gtk-tut.sgml:
12634           - get rid of gtk_toggle_button_toggled FUD
12635           - start DND section - needs work - based on:
12636                 http://wolfpack.twu.net/docs/gtkdnd/
12637
12638 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12639
12640         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12641         Correct calculation of font metrics. Now GtkEntrys have sane
12642         size.
12643
12644 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12645
12646         * gdk/gdktypes.h:
12647         Add new type GdkSpan
12648         
12649         * docs/reference/gdk/gdk-sections.txt,
12650         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
12651         gdk/gdkregion.h:
12652         Implement and document gdk_region_spans_intersect_foreach.
12653
12654         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
12655         Add new file gdkrender-fb.c which contains all core
12656         rendering code.
12657         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
12658         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
12659         (optimized rectangle fillers).
12660
12661         * gdk/linux-fb/gdkdrawable-fb2.c:
12662         Move all rendering code to gdkrender-fb.c.
12663         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
12664         Use the new span intersection functions in gdk_fb_fill_spans.
12665         gdk_fb_draw_rectangle() clips filled rectangles and calls
12666         gc->fill_rectangle with the result.
12667         gdk_fb_fill_spans() gets extra argument "sorted".
12668
12669         * gdk/linux-fb/gdkevents-fb.c:
12670         Remove unused includes and defines.
12671         New function gdk_fb_get_time() to get correct time for events.
12672
12673         * gdk/linux-fb/gdkinput-ps2.c:
12674         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
12675         Make sure to set the time of all events.
12676
12677         * gdk/linux-fb/gdkmain-fb.c:
12678         Use gdk_fb_get_time ().
12679
12680         * gdk/linux-fb/gdkprivate-fb.h:
12681         New virtual GC calls: fill_span & fill_rectangle.
12682         Export gdk_fb_get_time().
12683         gdk_fb_fill_spans() gets extra argument "sorted".
12684
12685         * gdk/linux-fb/mi*.c:
12686         Use GdkSpan instead of GdkRectangle.
12687         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
12688         from XFree 4 source)
12689         
12690 2000-11-22    <jrb@redhat.com>
12691
12692         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
12693         reversing the order in an if statement will do.  Doing so managed
12694         to make the treemodelsort half work.  Other half will follow after
12695         I get the insert function fully fixed.
12696
12697 2000-11-21  Elliot Lee  <sopwith@redhat.com>
12698         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
12699         more than 2 bits. Besides, I need to implement an evil hack. :)
12700
12701 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
12702
12703         * docs/tutorial/gtk-tut.sgml: minor corrections
12704
12705 2000-11-20  Jonathan Blandford <jrb@redhat.com>
12706         * gtk/gtktreemodelsort.h: Add convertion functions to let you
12707           convert to and from relative path's and iters.
12708
12709         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
12710           testing sorting functions a bit better.  Currently broken -- will
12711           fix in morning.
12712
12713 2000-11-20  Havoc Pennington  <hp@redhat.com>
12714
12715         * gtk/gtkwidget.c: Documented a bunch of functions in here
12716         (gtk_widget_realize): Warn if you try to realize
12717         a widget with no parent that isn't a toplevel
12718         (gtk_widget_intersect): return a gboolean
12719
12720 2000-11-20  Havoc Pennington  <hp@redhat.com>
12721
12722         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
12723         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
12724         scrolling to be implemented in GDK to finish. Also, right now
12725         we just size_allocate all children on every layout change,
12726         which is pretty lame. Test commented out of testtext.c, 
12727         until it works better.
12728
12729 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
12730
12731         * gdk/linux-fb/gdkdrawable-fb2.c:
12732         Removed unused arguments from gdk_fb_drawable_get_pixel().
12733
12734         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
12735         Renamed fidur specific mouse packet data in MouseDevice to
12736         generic. Used it in ps2 mouse handling code to avoid blocking
12737         reads.
12738
12739 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
12740
12741         * demos/gtk-demo/main.c: Changed to have the list become
12742         non-italic when the demo window is destroyed through an external
12743         event (like a close button).  Doing so found three bugs in the
12744         widget.
12745
12746         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
12747
12748         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
12749         we actually set the cell.
12750
12751         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
12752
12753         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
12754         free a leaked path.  Thanks memprof.
12755
12756 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
12757
12758         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
12759         off-by-one error when destroying allocated segments
12760         on failure. (Elliot)
12761
12762 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
12763
12764         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
12765         memleaks found by Evan Martin.
12766
12767 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
12768
12769         * Released 1.3.2
12770         
12771         * NEWS: Updates for 1.3.2
12772
12773 2000-11-17  Tor Lillqvist  <tml@iki.fi>
12774
12775         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
12776         but in general for window system specific events.
12777
12778         * gtk/gtk.def
12779         * gtk/makefile.mingw.in
12780         * gtk/makefile.msc.in: Update.
12781         
12782         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
12783
12784 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
12785
12786         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
12787         distribute gtk.immodules.
12788
12789         * gtk/Makefile.am (install-data-local): Don't install the
12790         gtk.immodules file created for the uninstalled modules;
12791         instead run gtk-query-immodules after install
12792
12793 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12794
12795         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
12796         -rpath to the right install location.
12797
12798         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
12799         -export-dynamic.
12800
12801         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
12802         properly.
12803
12804 2000-11-15  Havoc Pennington  <hp@pobox.com>
12805
12806         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
12807         patch from Mikael Hermansson to temporarily stop blinking while
12808         the user is using the keyboard to type or navigate. 
12809
12810         Also, when blinking, stay on for longer than we stay off. Also,
12811         return from start_cursor_blink if !cursor_visible, to save
12812         checking that flag all over the place before we call
12813         start_cursor_blink.
12814
12815 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
12816
12817         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
12818         only contain a "fontset" line, which is now ignored.
12819
12820         * gtk/gtkentry.c (gtk_entry_button_release): Make 
12821         double-click-to-select-word work.
12822         
12823 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
12824
12825         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
12826         Don't move back one char when we are actually at the end of the 
12827         paragraph.
12828
12829 2000-11-15  Robert Brady  <robert@suse.co.uk>
12830
12831         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
12832         'o' < 'p'.
12833         
12834         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
12835         bind_textdomain_codeset.
12836
12837         (gtk_init_check): Make the warning about translating default:LTR
12838         sterner.
12839         
12840 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
12841
12842         * **/Makefile.am : remove unecessary rules for win32-specific
12843         config-substituted targets. If you want these rules, use
12844         --enable-maintainer-mode (called automatically by autogen.sh).
12845         Stops a lot of unneccessary make-time warnings.
12846
12847         * gtk/gtktext{layout,display}.c: Factor in total width as
12848         well as screen when figuring alignment for word-wrap as well as
12849         no wrap; this is necessary to handle lines that cannot be wrapped
12850         at all.
12851
12852 2000-11-15  Havoc Pennington  <hp@redhat.com>
12853
12854         * gtk/testtext.c: Implement essential color cycling feature
12855
12856 2000-11-15  Havoc Pennington  <hp@redhat.com>
12857
12858         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
12859         when we invalidate the main window.
12860
12861         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
12862         GtkTextView will now invalidate the side windows for us when text
12863         changes.
12864
12865 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
12866
12867         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
12868         unconditionally, since we may need to update the horizontal
12869         scrollbars even if the height didn't change.
12870
12871         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
12872         the extra attrs, since some of them affect size.
12873
12874         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
12875         x_offset correctly.
12876
12877 2000-11-15  Havoc Pennington  <hp@redhat.com>
12878
12879         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
12880         don't move the first line out into the margin, instead move the
12881         whole paragraph in order to make space for the first line within 
12882         the margin
12883
12884 2000-11-15  Havoc Pennington  <hp@redhat.com>
12885
12886         * gtk/gtktextview.c (changed_handler): offset redraw rect by
12887         xoffset in addition to yoffset, so horizontal scrolling doesn't
12888         break redraws
12889
12890 2000-11-15  Havoc Pennington  <hp@redhat.com>
12891
12892         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
12893         from the cursor
12894         (render_layout_line): fix reversed test that caused weird
12895         underlines to get drawn
12896
12897 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12898
12899         * gdk/linux-fb/gdkprivate-fb.h:
12900         Fix debug macros.
12901         
12902 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12903
12904         * gdk/linux-fb/gdkprivate-fb.h:
12905         Added virtual functions set_pixel, get_color,
12906         fill_span and draw_drawable to the GC.
12907         Added global _gdk_fb_screen_gc to use instead of
12908         NULL when drawing to the screen.
12909         Added _gdk_fb_gc_calc_state() prototype.
12910
12911         * gdk/linux-fb/gdkgc-fb.c:
12912         Call _gdk_fb_gc_calc_state() on any gc state change.
12913
12914         * gdk/linux-fb/gdkglobals-fb.c:
12915         Add _gdk_fb_screen_gc
12916                 
12917         * gdk/linux-fb/gdkdrawable-fb2.c:
12918         _gdk_fb_gc_calc_state() calculates best functions
12919         for the GC state and depth.
12920         Moved bpp specialized code to separate functions.
12921         Added optimized 24 bpp AA draw_drawable.
12922
12923         * gdk/linux-fb/gdkevents-fb.c:
12924         Silence gcc warning.
12925
12926         * gdk/linux-fb/gdkimage-fb.c:
12927         Use _gdk_fb_screen_gc
12928
12929         * gdk/linux-fb/gdkwindow-fb.c:
12930         Init and use _gdk_fb_screen_gc
12931
12932         * gdk/linux-fb/mitypes.h:
12933         Remove unused types.
12934
12935 2000-11-14  Havoc Pennington  <hp@pobox.com>
12936
12937         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
12938         to pixels
12939
12940 2000-11-14  Havoc Pennington  <hp@pobox.com>
12941
12942         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
12943
12944         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
12945         unknown char, no real reason we were using a variable. 
12946         Remove gtk_text_unknown_char variable. Fix all the text widget
12947         files accordingly.
12948
12949         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
12950         since the Unicode spec seems to prefer that character for our
12951         purposes.
12952
12953 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
12954
12955         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
12956         value of g_getenv() isn't freeable, so g_strdup it.
12957
12958         * modules/input/inuktitut.c: Inuktitut input method.
12959
12960         * modules/input/Makefile.am: Build this.
12961         
12962 2000-11-14  Elliot Lee  <sopwith@redhat.com>
12963
12964         * gtk/Makefile.am: Install gtk.immodules, needed for operation
12965         of gtk programs.
12966
12967 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
12968
12969         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
12970         reversed > that was causing Home to go to end of previous line.
12971
12972         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
12973         modified-keypresses (leave for bindings.)
12974
12975         * modules/input/Makefile.am: Remove useless -export-dynamic
12976         from module LDFLAGS.
12977
12978 2000-11-14  Havoc Pennington  <hp@redhat.com>
12979
12980         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
12981         higher.
12982
12983         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
12984         account. Also, render rise, underline, background, etc. for
12985         pixbufs as well as text. Also, draw underlines one pixel higher.
12986
12987         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
12988         PangoAttribute for the rise, so it gets drawn properly. Also,
12989         add the GtkTextAppearance attribute for pixbuf/widget segments
12990         as well; we should go ahead and have rise, underline, background,
12991         stipple work for those
12992
12993         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
12994         Pango
12995
12996 2000-11-15  Tor Lillqvist  <tml@iki.fi>
12997
12998         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
12999
13000         * gtk/gtk.def: Update.
13001
13002         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
13003         included.
13004         (gtk_rc_get_im_module_file): Use run-time installation directory
13005         on Win32.
13006
13007         * gdk/win32/rc/gdk.rc: Remove.
13008         * gdk/win32/rc/gdk.rc.in: New file.
13009         * gdk/win32/rc/Makefile.am: New file
13010         * gdk/win32/Makefile.am: Corresponding changes.
13011
13012         * gtk/gtk.rc: Remove.
13013         * gtk/gtk-win32.rc.in: New file.
13014         * gtk/Makefile.am: Corresponding changes.
13015
13016         * configure.in: Corresponding changes.
13017
13018         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
13019         has a built gtkcompat.h. Developers using CVS code on Win32 can
13020         hand-edit it from gtkcompat.h.in.
13021
13022         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
13023         gtkcompat.h from gtkcompat.h.win32.
13024
13025 2000-11-14  Havoc Pennington  <hp@redhat.com>
13026
13027         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
13028         to default to GDK_ACTION_MOVE if the drag is within a single
13029         widget. Defaults to GDK_ACTION_COPY between widgets.
13030
13031 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
13032
13033         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
13034
13035         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
13036
13037         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
13038         srcdir != builddir
13039
13040         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
13041
13042         * configure.in (GTK_VERSION): Up to 1.3.2
13043
13044         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
13045         gtkimcontextxim.h
13046
13047         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
13048         missing doc comment.
13049
13050 2000-11-14  Alexander Larsson  <alexl@redhat.com>
13051
13052         * modules/linux-fb/basic.c:
13053         Use the glib iconv wrappers.
13054
13055 2000-11-13  Havoc Pennington  <hp@pobox.com>
13056
13057         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
13058         still more bugs.
13059
13060         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
13061         scroll the GdkWindows before realization.
13062
13063 2000-11-13  Havoc Pennington  <hp@redhat.com>
13064
13065         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
13066         where GC didn't always get updated properly
13067
13068         * demos/gtk-demo/textview.c (create_tags): Use subattributes
13069         of fonts instead of setting the entire font
13070
13071         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
13072         setting entire font
13073
13074         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
13075
13076         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
13077         a bunch of individually-settable font attributes. You can still 
13078         use the "font" and "font_desc" args, they just set all the font
13079         attributes at once.
13080
13081 2000-11-13 Elliot Lee <sopwith@redhat.com>
13082
13083         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
13084
13085 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
13086
13087         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
13088         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
13089
13090         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
13091         work better.
13092
13093 2000-11-13  Havoc Pennington  <hp@redhat.com>
13094
13095         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
13096         the module file.
13097
13098         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
13099         dest->language
13100
13101         * gtk/testtext.c: Test pixels above/below/inside paragraphs
13102         settings
13103
13104         * gtk/gtktextview.c: Implement object args and setters/getters for
13105         all the aspects of the GtkTextAttributes that are not set from
13106         GtkWidget attributes. This is spacing, justification, margins,
13107         etc.
13108
13109         (gtk_text_view_set_arg)
13110         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
13111         args
13112         (gtk_text_view_class_init): Add args for justify, left_margin,
13113         right_margin, indent, and tabs
13114         
13115
13116         * gtk/gtktextlayout.c (set_para_values): fix to display indent
13117         attribute properly
13118
13119         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
13120         replace with indent attribute
13121
13122         * gtk/gtktextlayout.c (set_para_values): multiply indent by
13123         PANGO_SCALE
13124
13125         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
13126         rearranging code to do that
13127         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
13128         i.e. don't subtract the top_margin first, just to keep
13129         all margin-futzing in one place.
13130
13131         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
13132
13133         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
13134         special case of last line, Pango now handles this itself.
13135         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
13136         Y coordinate
13137         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
13138         (find_display_line_above): wasn't moving the byte index as it
13139         iterated over lines, so always returned byte 0. Also, port to use
13140         PangoLayoutIter.
13141         (find_display_line_below): same problem as
13142         find_display_line_above. Also, port to use PangoLayoutIter.
13143
13144 2000-11-13  Alexander Larsson  <alexl@redhat.com>
13145
13146         * gdk/linux-fb/*.[ch]:
13147         Massive reindent to gtk+ standard. My hands hurt.
13148
13149         * gdk/linux-fb/gdkcolor-fb.c:
13150         Move GdkColorPrivateFB from inherited to windowing_data
13151
13152         * gdk/linux-fb/gdkcursor-fb.c:
13153         _gdk_cursor_new_from_pixmap made static
13154
13155         * gdk/linux-fb/gdkdnd-fb.c:
13156         GdkDragContextPrivate moved to windowing_data
13157
13158         * gdk/linux-fb/gdkdrawable-fb2.c:
13159         Removed endian.h, use glib endianness macros instead
13160         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
13161         and GDK_DRAWABLE_IMPL_FBDATA
13162
13163         * gdk/linux-fb/gdkfont-fb.c:
13164         Add empty gdk_font_load(). Needed for linking of Gtk+.
13165
13166         * gdk/linux-fb/gdkimage-fb.c:
13167         Removed endian.h, use glib endianness macros instead
13168         Moved GdkImagePrivateFB to windowing_data
13169         gdk_image_new_bitmap didn't always allocate enough
13170         memory.
13171
13172         * gdk/linux-fb/gdkinput-ps2.c:
13173         Added semi-working support for MS serial mice.
13174
13175         * gdk/linux-fb/gdkprivate-fb.h:
13176         s/GdkWindowPrivate/GdkWindowObject/
13177         Removed GdkWindowPrivate typedef
13178         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
13179         Removed GDK_DRAWABLE_P
13180         Move GdkColorPrivateFB from inherited to windowing_data
13181         Moved GdkImagePrivateFB to windowing_data
13182
13183         * gdk/linux-fb/gdkvisual-fb.c:
13184         Removed some unused debug code.
13185
13186         * gdk/linux-fb/gdkwindow-fb.c:
13187         Use stock cursors instead of including X headers.
13188         s/GdkWindowPrivate/GdkWindowObject/
13189
13190         * gdk/linux-fb/mitypes.h:
13191         Removed unused types.
13192
13193         * modules/linux-fb/basic.c:
13194         Use the pango fribidi wrappers.
13195
13196 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13197
13198         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
13199         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
13200         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
13201         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
13202         GEqualFunc where applicable.
13203         
13204         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
13205         pango_font_description_equal as changed in pango.
13206         
13207         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
13208
13209         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
13210
13211         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
13212
13213         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
13214
13215         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
13216
13217         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
13218
13219         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
13220         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
13221
13222         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
13223         gtk_rc_styles_compare -> gtk_rc_styles_equal.
13224
13225 2000-11-12  Havoc Pennington  <hp@pobox.com>
13226
13227         * demos/gtk-demo/Makefile.am (democodedir): change demo install
13228         dir to datadir/gtk+-2.0/demo
13229
13230         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
13231         sorts of text widget and Pango font bugs. Urgh.
13232
13233         * demos/gtk-demo/Makefile.am (demos): Add textview.c
13234
13235         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
13236         tree that you should double click to see the demo. Fix 
13237         types of variables to reflect changed return values from 
13238         GtkTreeStore and GtkTreeViewColumn constructors.
13239
13240         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
13241         newly-created buffer to prepare for GObject semantics
13242
13243         * gtk/testtext.c: don't leak the buffer with GObject semantics
13244
13245         * gtk/testtextbuffer.c: ditto
13246         
13247 2000-11-12  Havoc Pennington  <hp@pobox.com>
13248
13249         Rename this testgtk to gtk-demo to avoid confusion, and 
13250         install it so people can use it as a supplement to 
13251         the documentation.
13252         
13253         * demos/gtk-demo: Moved from demos/testgtk
13254
13255         * demos/testgtk: Removed
13256
13257         * configure.in: make Makefile in gtk-demo
13258         
13259         * demos/gtk-demo/Makefile.am: Install sample source to 
13260         datadir/gtk-demo (maybe there's a better place?), and 
13261         rename the binary to gtk-demo
13262         
13263         * demos/gtk-demo/main.c (load_file): Load installed sample
13264         source if source isn't found in pwd.
13265
13266 2000-11-09  Havoc Pennington  <hp@pobox.com>
13267
13268         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
13269         argument to set the char displayed when visibility == FALSE
13270         (gtk_entry_create_layout): If !entry->visible, replace 
13271         all chars with the "invisible char"
13272
13273         * gtk/testgtk.c: Test the invisible_char deal
13274         
13275 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
13276
13277         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
13278         can't get a native font in the right encoding.
13279
13280 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
13281
13282         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
13283         respectively.
13284
13285 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
13286
13287         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
13288         Fix warning when moving between paragraphs.
13289
13290         * gtk/gtkentry.[ch]: Change move => move_cursor, 
13291         delete => delete_from_cursor, insert => insert_at_cursor
13292
13293 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
13294
13295         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
13296
13297         * modules/input/imthai-broken.c: A Thai input method for use if
13298         Thai keys are really generating Latin1 keysyms.
13299
13300         * modules/input/Makefile.am: Build these.
13301
13302 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
13303
13304         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
13305         g_filename_{to,from}_utf8 now takes an extra parameter.
13306
13307         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
13308         strftime into UTF-8.
13309
13310         (column_from_x, gtk_calendar_paint_day_names): Support RTL
13311         calendars.
13312
13313         (gtk_calendar_paint_day_names): Draw day names in the right 
13314         place.
13315         
13316 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
13317
13318         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
13319         problem with using result of g_get_charset() backwards -
13320         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
13321
13322         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
13323         negative min_width/height and max_width/height to
13324         mean "requisition"; this allows setting a window
13325         to be user-resizable in only one direction easily.
13326
13327         * gtk/testgtk.c (create_main_window): Remove hard-coded
13328         usize - set a default size in the vertical direction.
13329
13330 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
13331
13332         * gtk/gtkrange.c: Add some missing casts. Support 
13333         2 and 3 button clicks on the arrows to mean 
13334         "move by pages" and "jump to end". (Like gtkspinbutton)
13335
13336 2000-11-12 Hans Breuer <Hans@Breuer.Org>
13337
13338         * gdk/win32/makefile.msc : reflect build module changes
13339
13340         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
13341         from GdkPixmap*, cast implementation member instead.
13342
13343         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
13344         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
13345         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
13346         more Gdi functions return value checking. 
13347         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
13348         GdkImagePrivateWin32 *.
13349
13350         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
13351         menus useable again. Add #pragma message to keep reminded on this issue.
13352         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
13353         windows. This allows to enable backing store on Win32!
13354
13355         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
13356         in drawable is of impl type. Correct specific type checks appropriate.
13357  
13358         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
13359         GDK_WINDOW_DESTROYED before allocating new resources.
13360
13361         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
13362
13363         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
13364         (gdk_window_foreign_new) initialize parent handle.
13365         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
13366
13367         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
13368         Let the GDI invalidate the window on MoveWindow call to fix scrolling
13369         problems (e.g. main buttons in testgtk). 
13370
13371 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
13372
13373         * gtk/gtkentry.c (gtk_entry_key_press): Call 
13374         gtk_widget_activate for GDK_Return.
13375
13376         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
13377         of preedit cursor position.
13378
13379 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
13380
13381         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
13382         static.
13383
13384 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
13385
13386         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
13387         out support for multiple locales; that simple doesn't
13388         work reliably with current Xlib
13389
13390         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
13391         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
13392         Add support for positioning the cursor within the preedit string.
13393
13394 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
13395
13396         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
13397         at XIM input method module.
13398
13399         * gtk/gtktextview.c: Check for bindings after passing
13400         events to im context filter.
13401
13402 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
13403
13404         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
13405         empty attribute lists properly.
13406
13407 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
13408
13409         * gtk/queryimmodules.c (main): Return non-zero exit
13410         status if errors were encountered querying any
13411         modules.
13412
13413         * modules/input/Makefile.am (moduledir): remove
13414         leftover bin program target.
13415
13416         * docs/make-todo: Fix typo in error message.
13417
13418 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
13419
13420         * configure.in: Add modules/input/Makefile
13421
13422 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
13423
13424         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
13425         don't include gtkthemes.h.
13426
13427         * gtk/testgtk.c gtk/testtext.c: Set environment variables
13428         to point
13429
13430         * gtk/Makefile.am: Add new .c and .h files, build 
13431         gtk-query-immodules and use it to create a gtk.immodules
13432         file for use of test programs.
13433
13434         * gtk/gtkpreview.c: remove extra blank line.
13435
13436 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
13437
13438         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
13439         Add the ability to add extra tables beyond the default
13440         one, and also the ability to have compose sequences 
13441         that are prefixes of other compose sequences. 
13442
13443         * gtk/gtkimcontextsimple.c: Export a preedit string which
13444         consists of possible candidates for keystrokes that have
13445         been entered but not yet committed.
13446
13447         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
13448         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
13449
13450         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
13451         Add a function to add input-method switching menu items
13452         to a menu.
13453
13454         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
13455         when switching input methods.
13456
13457         * gtk/gtkimcontextsimple.[ch]: Change the format of
13458         the compose table to allow compose tables of different
13459         lengths / sequence.
13460
13461 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
13462
13463         * gtk/gtkimmodule.[ch]: Support routines for loading
13464         GtkIMContext implementations dynamically at runtime.
13465
13466         * modules/input/imcyrillic-translit.c: A sample input
13467         method (based on GtkIMContextSimple with an extra table),
13468         which demonstrates preedit strings and the module
13469         system for input modules
13470
13471         * gtk/queryimmodules.c: Program to query the available
13472         input modules and write the results into a file.
13473          
13474         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
13475         extra config options "im_module_file" (cache file for
13476         input method modules), and "im_module_path" - path
13477         to look for modules when generating cache file.
13478
13479         This doesn't scale.
13480
13481 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
13482
13483         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
13484         generic code from gtkthemes into a new abstraction
13485         GtkModule which has the logic for implementing
13486         a loadable module which implements a number of 
13487         GObject types.
13488
13489 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
13490
13491         * gtk/gtkeditable.[ch]: Convert GtkEditable from
13492         a class into an interface  
13493         
13494         * gtk/gtkoldeditable.[ch]: Move the old editable
13495         implementation into here, so legacy widgets can
13496         still rely on the implemenation. GtkOldEditable
13497         exports GtkEditable. Make selection handling
13498         code use new text conversion functions (and
13499         handle UTF-8 as a side-effect). Use GtkClipboard
13500         for CLIPBOARD.
13501
13502         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
13503         Adopt to match above changes.
13504
13505         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
13506         avoid GtkOldEditable implementation. Restructure
13507         to reduce number of places that modify state directly.
13508         Move to GtkBindingSet. Display the preedit string.
13509         Queue recomputation of PangoLayout and scroll position
13510         to improve effiency of doing complex changes naively.
13511         Add a menu with cut/copy/paste and input method selection.
13512
13513 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
13514
13515         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
13516         to set preedit string and attributes; display preedit string by
13517         inserting string and attributes at cursor when creating the
13518         GtkTextLineDisplay.
13519
13520         * gtk/gtktextlayout.c: Move all conversions between byte
13521         positions in PangoLayout and GtkTextIter into new functions
13522         line_display_iter_to_index/index_to_iter that properly
13523         handle the preedit string.
13524
13525         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
13526         it to return const char * (eventually will end up
13527         as GCONST char *, most likely.)
13528
13529         * gtk/gtktextview.[ch]: Handle the preedit string, call
13530         gtk_im_context_reset() as necessary, add a menu to switch
13531         input methods.
13532         
13533         * gtk/gtktextlayout.[ch]: Remove useless
13534         gtk_text_layout_get_log_attrs() function.
13535
13536 2000-11-11  Tor Lillqvist  <tml@iki.fi>
13537
13538         * gdk/gdk.def
13539         * gtk/gtk.def: Update.
13540
13541         * gdk/win32/*.c: Add last argument to g_type_register_static()
13542         calls.
13543
13544         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
13545
13546         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
13547         generated by older wheel mouse drivers. Get the correct y
13548         coordinate from WM_MOUSEWHEEL messages.
13549
13550         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
13551         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
13552         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
13553         Debugging functions.
13554
13555         * gdk/win32/gdkprivate-win32.h: Declare them.
13556
13557         * gdk/win32/gdkinput-win32.h: Add declaration for
13558         gdk_input_window_destroy().
13559
13560         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
13561
13562 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
13563
13564         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
13565         function to help handle keeping things in sync.
13566
13567 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
13568
13569         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
13570         BOXED marshallers.
13571
13572         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
13573         (gtk_list_store_class_init): use the new BOXED marshallers.
13574
13575         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
13576         new_with_values to new_with_types.
13577         (gtk_tree_store_get_column_type): add this.
13578         (gtk_tree_store_class_init): use the new BOXED marshallers.
13579
13580         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
13581         mirror some POINTER marshallers.
13582
13583 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
13584
13585         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
13586         allow more interesting iterators.  Also, made the lifecycle of
13587         iterators more explicit.
13588
13589         * gtk/gtktreemodelsort.[ch]: New model for sorting.
13590
13591         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
13592         types.
13593
13594 2000-11-09  Alexander Larsson  <alexl@redhat.com>
13595
13596         * demos/testgtk/menus.c:
13597         Changes to make the new testgtk compile after
13598         gtk_menu_append was removed.
13599
13600         * gdk/linux-fb/gdkdrawable-fb2.c
13601         (gdk_fb_get_depth, gdk_fb_get_visual,
13602         gdk_drawable_impl_fb_class_init): Implement
13603         these drawable functions. Now GtkImages work again.
13604
13605         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
13606
13607         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
13608         
13609         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
13610         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
13611         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
13612         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
13613
13614 2000-11-08  Havoc Pennington  <hp@pobox.com>
13615
13616         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
13617         visible_set args, don't know where these had gone, I thought they
13618         used to be there
13619
13620         * gtk/testtext.c: Add a menu item to apply invisibility tag;
13621         now we can test the feature and see that it's totally broken.
13622
13623 2000-11-08  Havoc Pennington  <hp@pobox.com>
13624
13625         Make DND copy pixbufs and tags when source and target share a 
13626         tag table.
13627         
13628         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
13629         in-process GTK_TEXT_BUFFER_CONTENTS target
13630         (gtk_text_view_drag_data_received): Paste from
13631         GTK_TEXT_BUFFER_CONTENTS if we receive it.
13632
13633 2000-11-08  Alexander Larsson  <alexl@redhat.com>
13634
13635         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
13636         API changes.
13637
13638         * gtk/gtkmenu.c: Add support for scrolling menus.
13639         Remove gtk_menu_append/prepend/insert, these have been moved to
13640         gtkcompat.h as #defines.
13641
13642         * gtk/gtkcompat.h.in:
13643         Add compatibility #defines for gtk_menu_append/prepend/insert
13644
13645         * gtk/gtkmenu.h: Add data needed for scrolling menus.
13646         GtkMenuPositionFunc gets an extra argument push_in.
13647         gtk_menu_append/prepend/insert removed.
13648         
13649         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
13650         positioning behaviour to fit to scrolling menus.
13651
13652         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
13653         into menuitem->submeny. That is wrong, and broke torn
13654         off submenus of torn off menus, since they were unrealized
13655         when the first menu was unrealized.
13656
13657         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
13658         gtk_menu_shell_select_item() since these need to be overridden in
13659         GtkMenu.
13660
13661         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
13662         positioning behaviour to fit to scrolling menus.
13663         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
13664         the current item so that it is prelighted when the menu pops up.
13665         This is a workaround to the fact that the menu doesn't get the
13666         initial enter event (due to grabs).
13667
13668         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
13669         s/gtk_menu_append/gtk_menu_shell_append/
13670
13671         * gtk/gtknotebook.c:
13672         s/gtk_menu_insert/gtk_menu_shell_insert/
13673
13674         * gtk/testgtk.c (create_menu, create_menus):
13675         Create the first menu with 50 items so that menu scrolling
13676         can be tested.
13677         
13678         
13679         Patch from Jonathan Blandford  <jrb@redhat.com>
13680
13681         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
13682         system to handle size requests.  First, we ask what the size of
13683         the toggle is.  Then, when allocating the size, we allocate the
13684         toggle_size first.  This way we can have multiple menu-item
13685         classes w/o needing a seperate class for each.
13686
13687         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
13688         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
13689
13690         * gtk/gtkcheckmenuitem.c
13691         (gtk_check_menu_item_toggle_size_request): New function to handle
13692         the toggle size-request.
13693
13694 2000-11-07  Havoc Pennington  <hp@redhat.com>
13695
13696         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
13697         Half-ass somewhat fix this function, so that scrolling to the
13698         insertion point works. Pango hacking is in the future to really
13699         fix it.
13700
13701         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
13702         length of data, no longer used.
13703
13704         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
13705         method contents in here, get rid of destroy method
13706         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
13707         that were backward. Remove debug spew.
13708         (cut_or_copy): Make the clipboard work with insert_range to
13709         preserve tags and pixbufs, not just the primary selection.
13710
13711 2000-11-07  Havoc Pennington  <hp@redhat.com>
13712
13713         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
13714         to gtk_text_mark_get_visible
13715
13716         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
13717         bug that was generating an invalid iterator
13718
13719         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
13720         ensure_char_offsets() in front of code placing the iter in an
13721         invalid state.
13722
13723         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
13724         make override_location arg const
13725         (paste): Replace the selection if we paste into the 
13726         current selection
13727
13728         * gtk/gtkselection.h: Remove "GtkSelectioData"
13729         (struct _GtkSelectionData): move the definition here.
13730
13731         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
13732         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
13733
13734         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
13735
13736         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
13737         (gtk_text_buffer_insert_range_interactive): implement
13738         (gtk_text_buffer_get_tags): Remove, replaced by
13739         gtk_text_iter_get_tags()
13740
13741         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
13742         limit parameter, to avoid infinite linear scan.
13743         (gtk_text_iter_backward_search): Add search limit
13744         (gtk_text_iter_forward_find_char): Add search limit
13745         (gtk_text_iter_backward_find_char): Add search limit
13746
13747 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
13748
13749         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13750         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
13751         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
13752         gdk/linux-fb/gdkwindow-fb.c:
13753         use g_object_new() instead of g_type_create_instance() which
13754         is a private function for fundamental type implementations.
13755
13756         * gdk/linux-fb/gdkinput-ps2.c:
13757         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
13758         instead just store the current modifier state. Add a (somewhat broken)
13759         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
13760         Rename exported function gdk_input_ps2_get_mouseinfo to
13761         gdk_input_get_mouseinfo.
13762
13763         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
13764         gdk/linux-fb/gdkwindow-fb.c:
13765         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
13766         
13767
13768 2000-11-02  Havoc Pennington  <hp@redhat.com>
13769
13770         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
13771         use stock buttons. Should be 100% source compatible, appropriate
13772         filesel fields now point to dialog->vbox and dialog->action_area.
13773         On the bizarre side, dialog->action_area and filesel->action_area
13774         are not the same widget.
13775         (gtk_file_selection_init): Put some padding around the selection
13776         entry, so it isn't touching the GtkDialog separator.    
13777
13778         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
13779         use stock buttons, etc. Should also be source compatible.
13780         Set the dialog default title in _init not _new().
13781         
13782         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
13783         Use stock buttons; don't put a button box inside the existing
13784         dialog button box. Don't bother with push/pop colormap anymore.
13785
13786         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
13787         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
13788         for message dialog, and necessary for the font selection and color
13789         selection with help and apply buttons.
13790         
13791         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
13792         to the created button widget. Set GTK_CAN_DEFAULT on the button.
13793         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
13794         between buttons, put less padding around the action area.
13795         (gtk_dialog_run): Exit on unmap rather than on destroy. 
13796         This will also exit the loop if the widget is hidden.
13797         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
13798         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
13799         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
13800         special-case delete event.
13801
13802         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
13803         formatting
13804         
13805 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
13806
13807         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
13808         button to temporarily disable position recording in the
13809         "saved position" test.
13810
13811 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
13812
13813         * gtk/gtkthemes.c: added compat code that temporarily implements
13814         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
13815         going to be revamped by owen's upcoming GtkModule patches, but
13816         untill then people want gtk to build, right? ;)
13817
13818 2000-11-04  Havoc Pennington  <hp@pobox.com>
13819
13820         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
13821         list
13822
13823         * docs/Changes-2.0.txt: Add note about
13824         gtk_container_get_toplevels()
13825
13826         * gtk/gtktextview.h: formatting
13827         
13828         * gtk/gtktextview.c: don't start descriptions with "Returns",
13829         confuses gtk-doc
13830
13831 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
13832
13833         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
13834         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
13835
13836 2000-11-03  Havoc Pennington  <hp@redhat.com>
13837
13838         * gtk/gtktexttagtable.c: Docs
13839         (gtk_text_tag_table_size): return a signed int
13840
13841         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
13842         (gtk_text_tag_event): make the event_object a GObject
13843
13844         * gtk/gtktextview.c: Write API docs for all functions.
13845
13846         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
13847         for gtk_text_view_get_window_type() called on one of the private
13848         windows.
13849
13850         * gtk/gtktextview.c: Instead of accessing text_view->buffer
13851         directly, call get_buffer() which demand-creates a default
13852         buffer. So gtk_text_view_new() can be used to create a view with a
13853         default buffer in it, if you just want an empty text box users can
13854         put data in. Useful for GUI builders also.
13855
13856 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
13857
13858         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
13859         the charset encodign portion MUST be in lowercase.
13860         * gtk/gtkrc.az: added file for Azeri language
13861
13862 2000-11-03  Havoc Pennington  <hp@redhat.com>
13863
13864         Get widgets working on the btree/buffer side. Display of them 
13865         still doesn't work.
13866         
13867         * gtk/gtktextview.c: start implementing child widget stuff
13868
13869         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
13870
13871         * gtk/gtktextlayout.c: handle embedded widgets
13872
13873         * gtk/gtktextdisplay.c: handle embedded widgets
13874
13875         * gtk/gtktextchild.c: Implement all the child anchor goo
13876
13877         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
13878         function
13879
13880         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
13881         (insert_pixbuf_or_widget_segment): abstract out common portions of 
13882         creating a child anchor or a pixbuf segment.
13883         (gtk_text_btree_create_child_anchor): new function
13884         (gtk_text_btree_unregister_child_anchor): new function
13885
13886         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
13887         allocate_child signal on GtkTextLayout
13888
13889         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
13890         values
13891         (gtk_text_iter_get_child_anchor): new function
13892
13893         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
13894         default handler for the changed signal, which calls
13895         gtk_text_buffer_set_modified(), instead of just always emitting
13896         changed then calling set_modified() manually. I guess this is
13897         maybe more flexible. It seems logical.
13898
13899 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
13900
13901         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
13902         now.
13903
13904         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
13905
13906 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
13907
13908         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
13909         been marked static.
13910
13911 2000-11-02  Havoc Pennington  <hp@redhat.com>
13912
13913         * gtk/testgtk.c (create_labels): had a test backward
13914
13915         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
13916         fields, so the dest GC ends up with the correct clip origin, 
13917         etc. Fixes a bug where colored labels didn't redraw 
13918         properly.
13919
13920 2000-11-02  Alexander Larsson  <alexl@redhat.com>
13921
13922         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13923         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
13924         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
13925         Add last argument to t_type_register_static call.
13926         
13927         * gdk/linux-fb/gdkdrawable-fb2.c:
13928         Add last argument to t_type_register_static call.
13929         export the get_image drawable virtual function.
13930
13931         * gdk/linux-fb/gdkimage-fb.c:
13932         Add last argument to t_type_register_static call.
13933         rename gtk_image_get to _gdk_fb_get_image and
13934         export it for use by gdkdrawable-fb2.
13935
13936         * gdk/linux-fb/gdkprivate-fb.h:
13937         export _gdk_fb_get_image.
13938
13939         * gdk/linux-fb/gdkselection-fb.c:
13940         Add new api call stubs.
13941
13942         * gtk/Makefile.am:
13943         Missing ( in linux-fb part.
13944
13945         * modules/linux-fb/Makefile.am:
13946         Must link with gdk_pixbuf or get unresolved symbol.
13947
13948 2000-11-01  Havoc Pennington  <hp@pobox.com>
13949
13950         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
13951         GTK_TYPE_TEXT_ITER and BOXED marshallers
13952
13953         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
13954
13955         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
13956         
13957         * gtk/gtk-boxed.defs: add GtkTextIter
13958
13959         * gtk/gtkmarshal.list: Add marshallers for text widget that 
13960         properly use OBJECT and BOXED
13961
13962 2000-11-01  Havoc Pennington  <hp@redhat.com>
13963
13964         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
13965
13966         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
13967         before returning it. 
13968         
13969 2000-11-01  Havoc Pennington  <hp@redhat.com>
13970
13971         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
13972         Clip the rectangle to be rendered to the drawable, since
13973         get_from_drawable() requires a region within the drawable
13974
13975 2000-11-01  Havoc Pennington  <hp@redhat.com>
13976
13977         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
13978         from coordinates.
13979
13980 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
13981
13982         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
13983         it isn't NULL.
13984
13985 2000-11-01  Havoc Pennington  <hp@pobox.com>
13986
13987         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
13988         on a label
13989         (gtk_label_finalize): unref the attr list if any.
13990
13991         * gtk/testgtk.c (create_get_image): close test on second click
13992         (make_message_dialog): close dialog if it exists
13993
13994         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
13995
13996         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
13997         gdk-pixbuf
13998
13999         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
14000         from Pango markup format
14001         (gtk_label_set_markup_with_accel): ditto but with accelerator
14002         parsing
14003
14004         * gtk/gtkimage.c (gtk_image_expose): reformatting.
14005
14006         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
14007         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
14008         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
14009         call gdk_window_get_origin().
14010
14011         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
14012         implement GDK_PIXBUF_ALPHA_FULL
14013         
14014 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
14015
14016         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
14017         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
14018         g_signal_handlers_disconnect_matched to block/unblock and disconnect
14019         multiple handlers respectively, instead of only treating the
14020         first handler found (bug reported by owen).
14021
14022 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
14023
14024         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
14025
14026         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
14027
14028         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
14029         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
14030         gtk/gtktreeviewcolumn.h: Fixed inline docs.
14031
14032         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
14033         widget.  Needs writing someday.
14034
14035         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
14036         the docs.
14037
14038 2000-10-30  Havoc Pennington  <hp@redhat.com>
14039
14040         * gtk/gtktextview.h, gtk/gtktextview.c:
14041         Rename delete_at_cursor delete_from_cursor, and 
14042         move to move_cursor.
14043
14044 2000-10-30  Havoc Pennington  <hp@redhat.com>
14045
14046         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
14047         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
14048         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
14049         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
14050         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
14051         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
14052         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
14053         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
14054         gtktexttypes.h, gtktextview.c, gtktextview.h:
14055
14056         Massive reindentation and reformatting. Arg alignment and comments
14057         still need fixing in various places.
14058
14059 2000-10-30  Havoc Pennington  <hp@redhat.com>
14060
14061         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
14062         to be named insert_at_cursor and delete_at_cursor so C++ can
14063         handle them.
14064
14065 2000-10-28  Tor Lillqvist  <tml@iki.fi>
14066
14067         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
14068         to get a double directory separator in case the home directory
14069         ends with one. This would cause trouble especially on Windows,
14070         where the path will be confused with the syntax for an an UNC
14071         (network share) path \\server\share\path.
14072         (gtk_rc_add_initial_default_files): Ditto.
14073
14074 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
14075
14076         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
14077
14078         * gtk/gtktextview.c: Use correct marshallers.
14079
14080 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
14081
14082         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
14083         use new iter stuff, and added all the appropriate signals et al.
14084
14085         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
14086         code is internal to gtk only.
14087
14088 2000-10-28  Tor Lillqvist  <tml@iki.fi>
14089
14090         * gtk/gtk.def
14091         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
14092         glib-genmarshal etc.
14093
14094 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
14095
14096         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
14097         parallel builds.
14098
14099 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
14100
14101         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
14102
14103 2000-10-27  Robert Brady  <robert@suse.co.uk>
14104
14105         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
14106         en_GB (British), ia (Interlingua).
14107
14108 2000-10-26  Havoc Pennington  <hp@redhat.com>
14109
14110         * gtk/gtktextiter.c (my_strrstr): fix constness warning
14111
14112         Fixed output of:
14113         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
14114         
14115         * gtk/gtktextsegment.c (char_segment_new): rename
14116         (_char_segment_new_from_two_strings): rename
14117         (_toggle_segment_new): rename
14118         
14119         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
14120         (make_clipboard_widget): make it static
14121         (text_get_func): static
14122         (text_clear_func): static
14123
14124         * gtk/gtkcolorsel.c (adjustment_changed): make this function
14125         static
14126         (hex_changed): make it static
14127         (hsv_changed): make it static
14128         (opacity_entry_changed): make it static
14129
14130         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
14131         (toggle_segment_check_func): rename with _gtk
14132
14133         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
14134         (_widget_segment_new): rename
14135         (_widget_segment_add): rename
14136         (_widget_segment_remove): rename
14137         (_widget_segment_ref): rename
14138         (_widget_segment_unref): rename
14139
14140         * gtk/gtktextmark.c (_mark_segment_new): Rename
14141         _gtk_mark_segment_new   
14142
14143 2000-10-26  Havoc Pennington  <hp@redhat.com>
14144
14145         * gtk/gtkmarshal.list: add new marshallers used by the text widget
14146         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
14147         types
14148
14149         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
14150         marshaller types
14151
14152         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
14153         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
14154         license on these files.
14155
14156         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
14157         work.
14158
14159         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
14160         runtime random number different for each tree, instead of 
14161         a constant I made up.
14162
14163 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
14164
14165         * gtk/Makefile.am: buncha cleanups, kludged build sources
14166         dependencies with a Makefile: oldest-source-stamp dependancy
14167         for the moment. automake is really fighting us here, with
14168         intentionally not allowing user-defined rules or dependancies
14169         prior to it's -include $(DEP_FILES) statement. sucks rocks!
14170
14171         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
14172         to public headers. tehy have a comment stating that they are
14173         "semi-public" aren't included by gtk.h and if enums popup there,
14174         they can be /*< skip >*/-ed.
14175
14176         * gtk/gtktextlayout.h: 
14177         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
14178         added LGPL... <SIGH>
14179
14180 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
14181
14182         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
14183         GtkTreeIter.  Added iterators everywhere.
14184
14185         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
14186
14187         * gtk/gtktreeviewselection.c: Changed to use the iterators.
14188
14189         * gtk/gtktreestore.c: Changed to use the iterators.
14190
14191         * gtk/gtkliststore.c: Commented out the code.  Will convert to
14192         iterators tomorrow.
14193
14194         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
14195         iterators tomorrow.
14196
14197         * gtk/treestoretest.c: Changed to use iterators.
14198
14199         * demos/testgtk/main.c: Moved to use the new iterator system.
14200
14201 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
14202
14203         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
14204         localization misbehaviour.
14205
14206         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
14207         a useless type without copy/free.
14208
14209         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
14210         of GTK_TYPE_CTREE_NODE.
14211
14212 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
14213
14214         * gtk/gtksignal.c:
14215         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
14216         applicable.
14217
14218         * gtk/gtk-boxed.defs (GtkSelectionData): specify
14219         gtk_selection_data_copy and gtk_selection_data_free
14220         do GtkSelectionData work as params in signals.
14221
14222 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
14223
14224         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
14225         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
14226         couldn't they at least give it a non-standard name?
14227         
14228         * gtk/gtktextlayout.c: arg! yet another implementation of
14229         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
14230
14231         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
14232         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
14233         home. now i know this _is_ a conspiracy.
14234
14235         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
14236         ::state-changed.
14237
14238         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
14239         (gtk_accel_group_create_add): marshaller signature fixups.
14240
14241         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
14242         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
14243
14244         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
14245         anymore.
14246
14247 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
14248
14249         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
14250         due to the signal system changes, it wouldn't build currently. to
14251         be fixed soon.
14252
14253         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
14254
14255         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
14256         so it needs gtk_marshal_VOID__ENUM() instead of
14257         gtk_marshal_NONE__UINT().
14258
14259         * gdk/gdk*.c: adapted type registration functions.
14260
14261         * gtk/gtkbindings.c:
14262         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
14263         gone.
14264
14265         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
14266
14267         * gtk/gtkobject.c:
14268         (gtk_object_destroy):
14269         (gtk_object_shutdown): fixed recursion guards. basically we have to
14270         catch the case where any of GObject.shutdown() or gtk_object_destroy()
14271         is called during ::destroy, and avoid recursion there.
14272
14273         * gtk/gtktypeutils.c:
14274         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
14275         boxed_copy/boxed_free. this needs a more general solution based on a
14276         publically installed code-generator utility.
14277
14278         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
14279         glib's gobject has support for that now.
14280         define GtkSignalMarshaller in terms of GSignalCMarshaller.
14281
14282 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
14283
14284         * gtk/gtksignal.[hc]:
14285         * gtk/gtkmarshal.[hc]:
14286         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
14287         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
14288         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
14289         care of that.
14290
14291         * *.c: marshaller name fixups.
14292
14293         * gtk/gtkmarshal.list: added a comment briefing the format.
14294
14295 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
14296
14297         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
14298         compatibility macros here now. more specifically, most of
14299         the API is preserved (yes, _most_, nonwithstanding the
14300         following exceptions listed, the API is stil lHUGE ;)
14301         things that got removed completely:
14302         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
14303         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
14304         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
14305         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
14306         gtk_signal_remove_emission_hook().
14307         non-functional functions variants:
14308         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
14309         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
14310         not supported anymore.
14311         (gtk_signal_compat_matched): new internal function to aid
14312         implementation of the compatibility macros, it  provides
14313         functionality to block/unblock/disconnect handlers based
14314         on func/data.
14315
14316         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
14317
14318         * *.c: adaptions to new type registration API signatures.
14319
14320 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
14321
14322         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
14323
14324 2000-10-25  Robert Brady  <robert@suse.co.uk>
14325
14326         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
14327         gdk_property_delete): If window == NULL, assume the root window.
14328         (restoring the behaviour that was in 1.2).
14329         
14330         * gtk/testtext.c (save_buffer): Allow creation of new files when
14331         saving.
14332
14333         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
14334         calls to read().
14335
14336 2000-10-25  Tor Lillqvist  <tml@iki.fi>
14337
14338         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
14339
14340         * gdk/win32/gdkdrawable-win32.c
14341         * gdk/win32/gdkimage-win32.c
14342         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
14343         X11 backend.
14344
14345         * gdk/win32/gdkcc-win32.c
14346         * gdk/win32/gdkcolor-win32.c
14347         * gdk/win32/gdkfont-win32.c
14348         * gdk/win32/gdkinput-win32.c
14349         * gdk/win32/gdkmain-win32.c
14350         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
14351
14352 2000-10-24  Havoc Pennington  <hp@redhat.com>
14353
14354         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
14355         it a static function
14356
14357         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
14358         redraw text when a tag is applied to it.
14359
14360         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
14361         (gtk_text_tag_affects_nonsize_appearance): private functions to
14362         see if a tag requires various kinds of redraw/layout to be queued
14363         up.
14364
14365         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
14366
14367         * gtk/testtext.c (fill_example_buffer): Put the cursor 
14368         at the start of the buffer, so search works by default
14369
14370         * gtk/gtktextiter.c (lines_match): init match_start always
14371
14372         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
14373         function, get iter at a line + a byte index
14374
14375         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
14376         to set byte position within a line
14377         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
14378
14379 2000-10-23  Havoc Pennington  <hp@redhat.com>
14380
14381         * gtk/testtext.c: Re-enable the "find" dialog
14382
14383         * gtk/testgtk.c: Add test for gdk_drawable_get_image
14384         
14385         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
14386         the arguments to gdk_draw_drawable were in the wrong order
14387         (gdk_window_paint_init_bg): This function was ignoring the
14388         init_region, instead of clipping to it, so the entire backing
14389         pixmap was cleared on every begin_paint()
14390         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
14391         was in here again, the loop kept using the same GtkWindowPaint
14392         over and over.
14393         (gdk_window_begin_paint_region): Fix a bug where we had two
14394         x_offset instead of x_offset and y_offset
14395
14396         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
14397         before we get the image.
14398         (gdk_draw_drawable): get the composite before we draw the drawable.
14399         (gdk_drawable_real_get_composite_drawable): default
14400         get_composite_drawable implementation that returns the drawable 
14401         itself
14402
14403         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
14404         get_composite_drawable virtual function
14405
14406         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
14407         list-walking bug
14408
14409         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
14410         make this work if the source drawable is a GdkDrawableImplX11
14411         instead of a public drawable type. This is really broken; the
14412         problem is that GdkDrawable needs a virtual method get_xid(), but
14413         of course that doesn't work in practice. Enter RTTI.
14414
14415         Also, improve mismatched depth message.
14416
14417         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
14418         GdkPixmap
14419
14420         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
14421         install _gdk_x11_get_image as our implementation of get_image
14422         
14423         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
14424         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
14425
14426         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
14427         gdk_drawable_get_image
14428
14429         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
14430
14431         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
14432         get_image
14433
14434         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
14435         trailing semicolon after for loop
14436
14437 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
14438
14439         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
14440         where font_desc for widget's context lagged widget's font_desc by
14441         one step.
14442
14443 2000-10-22  Tor Lillqvist  <tml@iki.fi>
14444
14445         * gdk/win32/gdkgc-win32.c
14446         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
14447
14448         * gtk/makefile.mingw.in
14449         * gtk/gtk.def: Updates.
14450
14451         * gtk/testgtk.c: sleep() is called _sleep in MS's C
14452         library.
14453
14454         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
14455
14456         * gtk/makefile.msc: Remove
14457
14458         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
14459
14460         * gtk/Makefile.am: Add it.
14461
14462         * configure.in: Generate it.
14463
14464         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
14465         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
14466         something even if not implemented, to satisfy picky MSVC.
14467
14468         Patches by Hans Breuer:
14469         
14470         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
14471         SetBkMode() and SetTextAlign() before calling
14472         pango_win32_render().
14473
14474         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
14475         Set hcliprgn to NULL after destroying it.
14476         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
14477
14478         * gdk/win32/gdkgeometry-win32.c
14479         (_gdk_windowing_window_queue_antiexpose): More effective
14480         implementation.
14481
14482         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
14483         depth as default, not the visual's.
14484
14485         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
14486         against empty title.
14487
14488         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
14489         IMAGE_PRIVATE_DATA.
14490
14491         * gdk/win32/gdkimage-win32.c: Use it.
14492
14493 2000-10-22  Robert Brady  <robert@suse.co.uk>
14494
14495         * configure.in: Check for bind_textdomain_codeset
14496
14497         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
14498         present, make use of it.
14499
14500         Add a translatable string "default:LTR" which, if translated
14501         to "default:RTL", will cause the default direction to be
14502         Right-to-Left.
14503
14504         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
14505         direction if marked as flippable.
14506
14507         * gtk/gtkhscale.c: Mark widget as flippable.
14508         
14509 2000-10-04  Havoc Pennington  <hp@redhat.com>
14510
14511         * gtk/testgtk.c (create_buttons): create some stock buttons
14512         with the default accel group
14513         (create_image): test some new GtkImage features
14514         (make_message_dialog): test GtkMessageDialog
14515         (create_modal_window): fix someone's bizzarro indentation
14516
14517         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
14518         GTK_WIN_POS_CENTER_ON_PARENT. 
14519         Add "destroy with parent" setting, which means the window goes
14520         away with its transient parent.
14521         (gtk_window_get_default_accel_group): get the default accel group
14522         for the window.
14523         (gtk_window_set_destroy_with_parent): set/unset destroy with
14524         parent flag
14525         (gtk_window_read_rcfiles): invalidate icon set caches
14526         after reloading rcfiles 
14527
14528         * gtk/gtkenums.h (GtkWindowPosition): add
14529         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
14530         on its parent window when the dialog is mapped for the first time.
14531
14532         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
14533         a simple message dialog class
14534         
14535         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
14536         handler to emit response signal, and maybe later it would
14537         honor a hide_on_delete flag - though that isn't there yet.
14538         Set border width on the vbox to 2, so we get some padding.      
14539         Use a button box for the action area.
14540         (gtk_dialog_key_press): synthesize a delete event if Esc
14541         is pressed and the GtkWidget key press handler didn't 
14542         handle the escape key.
14543         (gtk_dialog_new_with_buttons): new function creates a dialog
14544         with some default buttons in it.
14545         (gtk_dialog_add_action_widget): add an activatable widget
14546         as a button in the dialog - you can also add a non-activatable
14547         widget by accessing the action area directly.
14548         (gtk_dialog_add_button): add a simple button - stock ID or 
14549         label - to the action area
14550         (gtk_dialog_response): emit response signal
14551         (gtk_dialog_run): block waiting for the dialog, return 
14552         the response. Override normal delete_event behavior, so that 
14553         delete_event does nothing inside gtk_dialog_run().
14554
14555         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
14556         emitted when an action widget is clicked or the dialog gets
14557         delete_event
14558
14559         * gtk/gtk.h: add gtkmessagedialog.h
14560
14561         * gtk/Makefile.am: add gtkmessagedialog.[hc]
14562
14563 2000-10-18  Havoc Pennington  <hp@redhat.com>
14564
14565         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
14566         where any number of empty lines would get skipped
14567
14568         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
14569         edge.
14570
14571         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
14572         warning about invalid iterators (explain more thoroughly)
14573         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
14574
14575         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
14576         big
14577
14578         * demos/*.c: Add error handling
14579
14580         * gtk/gtktextbuffer.c: don't modify const iterators
14581
14582         * gtk/gdk-pixbuf-loader.c: Add full error handling here
14583
14584         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
14585         on file load
14586
14587         * gtk/gtkiconfactory.c: Update to reflect addition of error
14588         handling to gdk-pixbuf loaders
14589
14590 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
14591
14592         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
14593         move to new modularized testgtk.
14594
14595 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
14596
14597         * gtk/gtktreeview.c: Draw the arrows correctly.
14598
14599         * gtk/gtktreemodel.c: Added user docs.
14600
14601         * gtk/gtk.h: remove gtktreedatalist.h.
14602
14603         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
14604         parent when generating my type.
14605
14606         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
14607         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
14608
14609 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14610
14611         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
14612         GtkTreeModel from object to interface.
14613
14614 2000-10-16  Havoc Pennington  <hp@redhat.com>
14615
14616         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
14617         compilation
14618
14619 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14620
14621         * gtk/gtktreeselection.c: Add API documentation to all public
14622         functions.
14623
14624         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
14625         functions.
14626
14627 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
14628
14629         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
14630         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
14631         docs to all public functions.
14632
14633         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
14634         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
14635         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
14636         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
14637         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
14638         issue.
14639
14640 2000-10-14  Robert Brady  <robert@suse.co.uk>
14641
14642         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
14643
14644 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
14645
14646         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
14647         values other then G_TYPE_STRING.
14648         * gtk/gtktreeselection.c: Minor commenting updates.
14649         * gtk/gtktreeview.c: Format updates.
14650
14651 2000-10-09  Tor Lillqvist  <tml@iki.fi>
14652
14653         * README.win32: Update.
14654
14655         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
14656         lines that had been deleted by mistake (?).
14657
14658         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
14659         also the case fg==white and bg==black (but still not randomly
14660         coloured cursors). Thanks to Wolfgang Sourdeau.
14661
14662         * gdk/win32/*.c: Silence gcc -Wall.
14663
14664         * gtk/gtk.def: Add missing entry points.
14665
14666         Fixes by Hans Breuer:
14667
14668         * gdk/makefile.msc
14669         * gdk/win32/makefile.msc: Update.
14670
14671         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
14672         some MSVC thing, presumably), cause breakpoint on failures. Add
14673         GDK_NOR case. Call g_log_set_always_fatal.
14674
14675         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
14676         should be pased by reference.
14677         
14678         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
14679         
14680         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
14681
14682         * gdk/win32/gdkevents-win32.c
14683         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
14684
14685         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
14686         implementation object.
14687
14688         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
14689         not just windows.
14690         
14691         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
14692         Use the wrapper object.
14693         
14694 2000-10-06  Havoc Pennington  <hp@redhat.com>
14695
14696         * Makefile.am (SRC_SUBDIRS): contrib subdir
14697
14698         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
14699         so it can be used in Xlib version
14700
14701         * demos/testpixbuf.c (update_timeout): error checking from 1.0
14702         tree
14703
14704         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
14705         change from 1.0 tree that returns first frame of animation
14706         if the loaded file is an animation.
14707
14708         * contrib: add new directory to hold stuff that comes with GTK+
14709         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
14710         
14711         * configure.in: add contrib/*
14712
14713 2000-10-05  Havoc Pennington  <hp@redhat.com>
14714
14715         * demos/testpixbuf-save.c: add pixbuf save test
14716
14717         * demos/Makefile.am: add testpixbuf-save.c
14718
14719 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
14720
14721         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
14722         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
14723         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
14724         * gtk/gtktreeselection.[ch]: Replaced
14725         "node_selected"/"node_unselected" signal with "selection_changed"
14726         signal.
14727
14728 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14729
14730         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
14731         tree widget.
14732
14733 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14734
14735         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
14736         drawing.
14737
14738 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
14739
14740         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
14741         Move list pointer forwards before removing item from
14742         list. (Crash reported by Salmaso Raffaele)
14743
14744         * gdk/gdkwindow.h: Remove spurious trailing ,
14745
14746         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
14747         dependencies on uninstalled libraries, sorry folks.
14748
14749 2000-10-04  Havoc Pennington  <hp@redhat.com>
14750
14751         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
14752         gtk/gtkiconfactory.c: Fix copyrights    
14753
14754         * demos/testpixbuf.c: add inline pixbuf test
14755         
14756 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
14757
14758         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
14759         Add gdk_window_iconify.
14760
14761         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
14762         (gdk_window_set_geometry_hints): Add win_gravity
14763         to geometry structure.
14764
14765         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
14766         Implement _NET_WM_PING.
14767
14768         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
14769         Set _NET_WM_PID on the client leader.
14770
14771         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
14772         Handle UTF-8 better.
14773
14774         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
14775         UTF-8 better, set _NET_WM_NAME as well. Only set
14776         icon name if it hasn't previously been explicitely 
14777         set.
14778
14779 2000-10-03  Havoc Pennington  <hp@redhat.com>
14780
14781         * gtk/testtextbuffer.c: clean up trailing whitespace,
14782         add extensive tests for tag toggle iteration.
14783         
14784         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
14785         distance
14786
14787         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14788         optimize case where the tag root is on level 1
14789         (gtk_text_line_previous_could_contain_tag): attempt to implement
14790         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
14791         functionality
14792
14793         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
14794         Implement this, though not very efficiently.
14795
14796         * gtk/gtktextiterprivate.h: reformat
14797
14798         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
14799         iterator
14800
14801         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
14802         this to properly revalidate the iterators.
14803
14804         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
14805         properly at the end of the line (and therefore on empty lines)
14806
14807         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
14808         maybe we should return a value...
14809
14810 2000-10-03  Tor Lillqvist  <tml@iki.fi>
14811
14812         * config.h.win32: Guard definition of alloca(). glib.h now handles
14813         that.
14814
14815         * gdk/gdk.def
14816         * gtk/gtk.def: Add new entry points.
14817
14818         Changes just to make GTK+ build without errors on Win32. No hope
14819         of it working in its current state, though...:
14820         
14821         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
14822         some functions from the X11 backend, just to make GTK+ build.
14823
14824         * gdk/makefile.mingw.in
14825         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
14826         number. Add new object files.
14827
14828         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
14829         GetMessageTime to get timestamp (where on X11 uses
14830         gdk_x11_get_server_time()).
14831
14832 2000-10-02  Havoc Pennington  <hp@pobox.com>
14833
14834         * gtk/gtktextview.c: text_window_* weren't static and should have
14835         been.
14836         Start work on child widgets; not yet complete, syncing to 
14837         office computer.
14838
14839         * gtk/gtktextchild.h: change this to contain a public interface,
14840         starting work on child interfaces.
14841         * gtk/gtktextchildprivate.h: move private interfaces here
14842
14843         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
14844
14845         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
14846         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
14847         gtk/gtktextmark.c: copyright notices
14848
14849         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
14850         internal functions      
14851
14852         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
14853         internal function
14854
14855         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
14856         Reformatting    
14857
14858 2000-09-30  Havoc Pennington  <hp@pobox.com>
14859
14860         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
14861         NULL start/end pointers
14862
14863         * gtk/gtktextbuffer.c: Write some docs
14864         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
14865         NULL, so you can just check whether there's a selection.        
14866
14867         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
14868         cleanup_line or segments_changed ourselves, it gets done 
14869         in unlink_segment
14870
14871         * gtk/gtktextmark.h:
14872         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
14873         
14874         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
14875
14876         * gtk/gtktextmark.c: delete some more old Tk cruft
14877
14878         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
14879         mark before removing it, so we can emit MARK_DELETED with a valid
14880         pointer.
14881         (gtk_text_buffer_mark_set): hold ref across signal emission
14882
14883         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
14884         whining about attempts to delete special marks
14885
14886         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
14887         underscore, since it's internal.
14888
14889         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
14890         now implemented in terms of iterators in gtktextiter.h
14891
14892         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
14893         New function, destructively sets contents of buffer. Also 
14894         a convenient way to clear the buffer by setting text to ""
14895
14896         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
14897         multiline string literal
14898
14899         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
14900         text changes.
14901
14902         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
14903         is not dereferenceable
14904         (gtk_text_iter_forward_lines): fix return value
14905
14906 2000-09-29  Havoc Pennington  <hp@redhat.com>
14907
14908         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
14909
14910         * gtk/gtktextview.c: Implement drag thresholding; change functions 
14911         that set border window size to have nicer name
14912         (gtk_text_view_mark_set_handler):  Fix this to have the 
14913         right signature.
14914
14915         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
14916
14917         * gtk/testtext.c: Update with API changes, put line numbers on 
14918         both sides.
14919         
14920         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
14921         with this
14922
14923         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
14924         pixbuf; delete a big block of #if 0 Tk code
14925
14926         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
14927         insert_pixmap with insert_pixbuf
14928
14929 2000-09-29  Martin Baulig  <baulig@suse.de>
14930
14931         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
14932         confusion with the GdkPixbuf of the GNOME 1.x platform.
14933
14934 2000-09-29  Havoc Pennington  <hp@pobox.com>
14935
14936         * gtk/gtktextview.c: Implement the side windows.
14937
14938         * gtk/testtext.c: Implement simple line numbering in the 
14939         left side window; seems to make scrolling sloooow. Oops.
14940         Also, cursor blink is for some reason causing redraws
14941         of the line numbers. Should investigate...
14942
14943 2000-09-28  Havoc Pennington  <hp@redhat.com>
14944
14945         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
14946         scrolling child windows, and draw focus rectangle properly.
14947         
14948         (gtk_text_view_buffer_to_window_coords):
14949         Coordinate transformation to deal with all these freaking windows
14950         and offsets
14951         (gtk_text_view_window_to_buffer_coords): transform the other way
14952
14953         * gtk/testtext.c (create_buffer): Update to match Pango API change
14954
14955         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
14956         anonymous tags
14957         (foreach_unref): don't emit remove signal from finalize, just
14958         set tag's parent to NULL
14959
14960 2000-09-26  Havoc Pennington  <hp@redhat.com>
14961
14962         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
14963         Fix some warnings       
14964
14965 2000-09-26  Havoc Pennington  <hp@redhat.com>
14966
14967         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
14968         headers into the private header list
14969
14970         * Makefile.am (pkgconfig_DATA): install pkg-config files
14971
14972         * configure.in: add pkg-config files
14973
14974         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
14975
14976         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
14977         outstanding icon caches on theme change.
14978
14979         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
14980         important types:
14981
14982         (GtkIconSource): Specification for creating a pixbuf 
14983         appropriate for a direction/state/size triplet from 
14984         a source pixbuf or filename
14985
14986         (GtkIconSet): List of GtkIconSource objects that are used to
14987         create the "same" icon (e.g. an OK button icon), and cache for
14988         rendered icons
14989
14990         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
14991         up the icon set for a given stock ID.  GTK maintains a stack of
14992         GtkIconFactory to search, and applications or libraries can add
14993         additional icon factories on top of the stack
14994         
14995         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
14996         the set of GtkIconSource specified for a given stock ID into 
14997         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
14998         RcStyle, under the specified stock ID.
14999
15000         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
15001         render_icon used to derive a GdkPixbuf from a GtkIconSource.
15002         This allows people to theme how prelight, insensitive, etc. are
15003         done.
15004
15005         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
15006         icon factories for a style, and return the resulting 
15007         icon set if any.
15008
15009         (gtk_style_render_icon): Render an icon using the render_icon 
15010         method in the GtkStyleClass.
15011
15012         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
15013         Use the style for a given widget to look up a stock ID, get the
15014         icon set, and render an icon using the render_icon method 
15015         of the style
15016
15017         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
15018         (contains information about a stock item), the built-in stock item
15019         IDs, and functions to add/lookup stock items.
15020
15021         * gtk/stock-icons/*: Stock icons that come with GTK
15022
15023         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
15024         a button based on a GtkStockItem
15025         (gtk_button_new_accel): Takes a uline string and accel group, and
15026         installs the accelerator.
15027
15028         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
15029         image-display widget.
15030
15031 2000-09-25  Havoc Pennington  <hp@redhat.com>
15032
15033         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
15034
15035         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
15036         Fix a bug when removing node data, we didn't properly 
15037         re-splice the linked list after removing the data.
15038
15039         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
15040         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
15041
15042         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
15043
15044         * gtk/gtktextlayout.c (set_para_values): Set tab array 
15045         for the layout from the GtkTextTag.
15046
15047         * gtk/gtktexttypes.h: delete tab and search cruft, 
15048         remove g_convert() in favor of GLib version
15049
15050         * gtk/gtktexttypes.c: remove tab implementation from here,
15051         move to Pango
15052
15053         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
15054         tab stuff using new PangoTabArray from Pango
15055
15056         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
15057         unused border_width stuff
15058
15059 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
15060
15061         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
15062         glib) and now useless utf_to_latin1() latin1_to_utf()
15063
15064         * gtk/gtktextview.[ch]: Change ::move_insert and
15065         ::delete_text action signals to ::move and ::delete;
15066         create the signals with the right enumeration type,
15067         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
15068         C-v bindings, change Home, End to move to beginning/end
15069         of line, Add C-Home C-End to move to beginning/end
15070         of buffer. Change ::cut_text to ::cut_clipboard, etc;
15071         combine ::scroll_text into ::move; use new GtkSelectionData
15072         functions to simplify DND text handling.
15073         
15074         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
15075         deletion enumerations here, rename enumeration values to 
15076         be consistently plural.
15077
15078         * gtk/gtktextbuffer.c: Use new clipboard interfaces
15079         for cut/copy/paste and primary selection.
15080
15081         * gtk/gtktextbuffer.[ch]: Remove excess time and
15082         'interactive' arguments from cut/copy/paste;
15083         rename cut to cut_clipboard, etc; remove
15084         gtk_text_buffer_get_clipboard_contents().
15085
15086         * gtk/gtktextlayout.[ch]: Add 
15087         gtk_text_layout_move_iter_to_line_end() to move the iter to 
15088         line ends.
15089
15090         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
15091         Functions to set or get a UTF-8 string on the selection
15092         data.
15093
15094         * gtk/gtkclipboard.[ch]: New, simplified selection handling
15095         interfaces.
15096
15097         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
15098         created widgets - one of these is useless if we don't.
15099
15100         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
15101         a public function clear all targets registered for the
15102         widget.
15103
15104         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
15105         Never call gtk_widget_realize() - that was just asking
15106         for bizarre side-effects.
15107
15108         * gtk/gtkselection.c (gtk_selection_owner_set): Call
15109         gdk_selection_owner_set even if the widget is the
15110         same so that we reliably update the timestamp on
15111         the server.
15112
15113         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
15114         gdk_x11_get_server_time() function.
15115         
15116         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
15117         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
15118         Add some tricky filtering on serial numbers for
15119         selection clear events to fix up long-standard
15120         race condition FIXME's in gtkselection.c.
15121
15122         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
15123         routines to convert from utf8 to compound text or
15124         STRING and from a text property to UTF-8.
15125
15126         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
15127         a convenience function gdk_get_current_event_time().
15128
15129         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
15130         and free selection_data->data properly
15131
15132 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
15133
15134         * gtk/gtkthemes.c: Remove some unecessary includes.
15135
15136 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
15137
15138         * gtk/gtktextdisplay.c
15139         * gtk/gtktextlayout.c
15140         * gtk/gtktexttag.c
15141         * gtk/gtktexttag.h
15142         * gtk/testtext.c: Change the overstrike property to strikethrough,
15143         to closer match pango.
15144
15145 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
15146
15147         * gtk/gtktextview.c: Fix up visibility so that focus,
15148         cursor_visible and blink interact properly.  Reenable cursor blink
15149         which had been roughly disabled. Make blink and focus
15150         properly per-view.
15151
15152         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
15153         Add a flag for whether to display insertion cursor and
15154         a function to set the flag.
15155
15156         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
15157         get_line_y() to get_line_yrange(), to be a bit more generally
15158         useful.
15159
15160 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
15161
15162         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
15163           do stop_navigating_submenu, to clear last timeout properly.
15164           Also in gtk_menu_motion_notify move ignore_enter above
15165           the conditional to make it always happen as suggested by Owen
15166
15167 2000-09-07  Tor Lillqvist  <tml@iki.fi>
15168
15169         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
15170
15171         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
15172         w32api headers.
15173
15174         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
15175         declarations.
15176
15177         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
15178         (gdk_win32_get_colormap): A line had been deleted by mistake.
15179
15180         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
15181         (gdk_event_translate): Handle more virtual keycodes to be able to
15182         generate GDK events for Control-comma, Control-period, etc.
15183
15184         * gtk/gtk.def: Add some missing entry points.
15185
15186 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
15187
15188         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
15189         Doc comment fixing. (Mostly non-matching parameter names.)
15190
15191         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
15192         comments a little to avoid looking like a doc comment.
15193
15194         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
15195         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
15196         conversions be changed to GError?)
15197
15198         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
15199         Move private #defines into .c file.
15200
15201         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
15202         order of argument addition, remove duplicates.
15203
15204         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
15205         parent class is FrameClass, not BinClass.
15206
15207         * gtk/gtk.h: Add gtkinvisible, which was missing.
15208         (It's occasionalyl useful for client apps, if seldom.)
15209
15210         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
15211         #define.
15212
15213 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
15214
15215         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
15216         coordinates when creating window, instead of GDK-space
15217         coordinates. (Avoid BadValue on too large windows.)
15218
15219 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15220
15221         * configure.in (use_mmx_asm): Remove conftest* after use along the
15222         lines of AC_TRY_COMPILE.        
15223         
15224         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
15225         of g_dirname, which is deprecated.
15226         (gtk_rc_parse_any): Removed calls to
15227         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
15228
15229         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
15230         Removed calls to g_hash_table_{freeze,thaw}, as they are
15231         deprecated now.
15232
15233         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
15234         instead of g_basename.
15235         
15236 2000-09-04 Elliot Lee <sopwith@redhat.com>
15237         
15238         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
15239         ANSI warning.
15240
15241 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
15242
15243         * gtk/gtkwidget.h:  Add some documenting comments about 
15244           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
15245           just as owen said on irc.
15246
15247         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
15248           set HAS_DEFAULT.  Only set it if there isn't another window
15249           holding it (a focus window which RECEIVES_DEFAULT) and only unset
15250           it if the widget is not the focused window with RECEIVES_DEFAULT.
15251           This fixes weird double default bugs in dialogs which has things
15252           call gtk_window_set_default at times.
15253
15254 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
15255
15256         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
15257         Nils Barth and David Santiago to improve submenu
15258         navigation. The patch does this by creating a triangular
15259         region from the point where the pointer leaves the
15260         menu to the submenu.  While the pointer is in
15261         that region and a timeout has not expired, events 
15262         that would cause the active submenu to change are
15263         ignored.
15264
15265 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
15266
15267         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
15268         moving a toplevel window immediately after sizing it would
15269         result in it being sized back to the old size since 
15270         impl->width, impl->height aren't updated until we hear
15271         back from the server. There is still a (longstanding) bug
15272         here that gdk_window_get_size() will give the wrong size
15273         until we do hear back.
15274
15275 2000-08-31  Havoc Pennington  <hp@redhat.com>
15276
15277         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
15278         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
15279         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
15280         Rename GtkTextStyleValues to GtkTextAttributes
15281
15282 2000-08-31  Havoc Pennington  <hp@pobox.com>
15283
15284         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
15285         for rapid testing whether an iterator is the end iterator
15286         (gtk_text_btree_new): init end line cache
15287         (gtk_text_line_is_last): use fast cached line to 
15288         see if we're the last line.
15289         (get_last_line): use cached line here too, should 
15290         speed up some random unrelated code.
15291         
15292 2000-08-30  Havoc Pennington  <hp@pobox.com>
15293
15294         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
15295         signals.
15296
15297         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
15298         delete_text signals. This allows the signals to be used for
15299         implementing undo.
15300
15301         * gtk/gtktextbuffer.c: Change signal handler signatures; 
15302         provide "interactive" argument when emitting insert_text or
15303         delete_text signal.
15304         
15305 2000-08-30  Havoc Pennington  <hp@pobox.com>
15306
15307         * gtk/gtktextbuffer.c: Docs
15308
15309 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
15310
15311         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
15312         from switch statements, since Tor removed the enumeration
15313         value.
15314         
15315         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
15316         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
15317
15318 2000-08-29 Elliot Lee <sopwith@redhat.com>
15319         * */*.h: Use G_GNUC_CONST.
15320
15321 2000-08-27  Havoc Pennington  <hp@pobox.com>
15322
15323         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
15324         minor indentation fixes, inserted some FIXME about stuff I
15325         realized was broken while documenting it.
15326         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
15327         GTK convention  
15328
15329 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
15330
15331         * gtk/testgtk.c (create_styles): Fix double free of
15332         font desc.
15333
15334 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15335
15336         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
15337         
15338         * gtk/testgtk.c (create_styles): Add a test for modifying
15339         the style through gtk_widget_modify_*.
15340
15341         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
15342         a function to get the current modifier style.
15343
15344         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
15345         of the passed in GtkRcStyle instead of ref'ing it.
15346
15347         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
15348
15349 2000-08-20  Tor Lillqvist  <tml@iki.fi>
15350
15351         * gdk/gdkimage.h
15352         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
15353         shared memory image+pixmap GdkImage type, or
15354         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
15355         I am dropping that.
15356
15357         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
15358         actually call gtk_init_abi_check(), passing also
15359         sizeof(GtkWindow). Ditto for gtk_init_check(). 
15360
15361         * gtk/gtk.def
15362         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
15363         New functions, used to check that the GTK+-using code has been
15364         compiled using the correct compiler and switches. In particular,
15365         with gcc one has to use the -fnative-struct switch as GTK+ is
15366         compiled with that.
15367
15368 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
15369
15370         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
15371         ->prev fields when merging lists. (Found simultaneously
15372         by Pawel Salek and Jakub Jelinek)
15373
15374 2000-08-12  Tor Lillqvist  <tml@iki.fi>
15375
15376         * gdk/gdk.def
15377         * gtk/gtk.def: Add missing entries.
15378
15379         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
15380         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
15381
15382         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
15383         function. Dummy implementation at this point.
15384
15385         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
15386         rules. Undefine GTK_COMPILATION when compiling the test programs.
15387         
15388         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
15389
15390 2000-08-11  Tor Lillqvist  <tml@iki.fi>
15391
15392         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
15393         to convert back and forth from UTF-8 and the "system" (or "current
15394         locale") charset when necessary. Indentation/spacing cleanup.
15395
15396 2000-08-10  Havoc Pennington  <hp@redhat.com>
15397
15398         * Makefile.am (snapshot): Change the format of the snapshot
15399         version to match glib
15400
15401         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
15402         from EXTRA_DIST since it doesn't seem to exist
15403
15404 2000-08-10  Tor Lillqvist  <tml@iki.fi>
15405
15406         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
15407         version of the directory name (not the UTF-8 one) when building
15408         the path name to stat().
15409
15410 2000-08-03  Elliot Lee  <sopwith@redhat.com>
15411
15412         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
15413         PANGO_ATTR_SHAPE set.
15414
15415 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
15416
15417         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
15418         Peter Osterlund to simplify the code while keeping the
15419         functionality the same.
15420
15421 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
15422
15423         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
15424         is_viewable() test further inside the function, since removing the 
15425         window from the redraw list without clearing ->update_area
15426         was also very broken.
15427
15428 2000-08-02  Tor Lillqvist  <tml@iki.fi>
15429
15430         * configure.in: Check for <unistd.h>.
15431
15432 2000-08-01  Martin Baulig  <baulig@suse.de>
15433
15434         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
15435         to display the message that this is a development version of GTK+.
15436
15437 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
15438
15439         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
15440         was depending on widget->allocation instead of the width of text_area,
15441         which was incorrect for subclasses like GtkSpinButton.
15442
15443         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
15444         with width == 1 tests that should be width == -1.
15445
15446 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
15447
15448         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
15449         (broken, Elliot, every single window blank on X) custom code with call
15450         to gdk_window_is_viewable() which a) prevents code duplicate and
15451         b) works. 
15452
15453 2000-07-31  Elliot Lee  <sopwith@redhat.com>
15454
15455         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
15456         to get the GDK_PARENT_ROOT() macro to work.
15457         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
15458         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
15459         of, windows that aren't shown.
15460         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
15461         pointer grab stuff.
15462
15463 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
15464
15465         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
15466           s/gtk_main_iteration/g_main_iteration/
15467
15468           Did this already in change:
15469                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15470           don't know how it got reverted.
15471
15472 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
15473
15474         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
15475         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
15476
15477         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
15478         not gdk_pixbuf.
15479
15480 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
15481
15482         * configure.in,po/{sp,sr}.po: Added Serbian files
15483
15484 2000-07-30  Tor Lillqvist  <tml@iki.fi>
15485
15486         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
15487
15488         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
15489         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
15490         GIOChannel implementation.
15491
15492         * gdk/win32/gdkinput.c
15493         * gdk/win32/gdkpango-win32.c: Update license name here, too.
15494
15495         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
15496         definition to match prototype.
15497
15498         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
15499
15500 2000-07-27  Elliot Lee  <sopwith@redhat.com>
15501
15502         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
15503         function, to allow handling image formats that cannot be detected
15504         by looking at content alone.
15505
15506 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
15507
15508         * docs/tutorial/*.gif *.jpg *.eps
15509           Update these to the same look-n-feel.
15510           Why does including images in DocBook suck so badly?
15511
15512 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
15513
15514         * gtk/gtktable.c: applied patch from Phil Thompson
15515         <phil@river-bank.demon.co.uk> that enables space settings for
15516         the last row/columns as well.
15517
15518 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
15519
15520         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
15521         updates the license headers to the GNU Lesser General Public License,
15522         as well as updating the copyright year to 2000.
15523
15524 2000-07-26  Robert Brady  <rwb197@zepler.org>
15525
15526         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
15527           and po/Makefile, was installing and looking for them under gtk20
15528           and gtk2 respectively.
15529
15530 2000-07-25  Havoc Pennington  <hp@redhat.com>
15531
15532         * gtk/testtext.c: Comment out some stuff that depends on the rest
15533         of my patches.
15534
15535 2000-07-25  Havoc Pennington  <hp@redhat.com>
15536
15537         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
15538         buffer
15539
15540 2000-07-25  Havoc Pennington  <hp@redhat.com>
15541
15542         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
15543         widget changes.
15544
15545         * gtk/gtktextview.h: To be consistent with usage of "line"
15546         throughout the API to mean "newline-terminated thingy", change
15547         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
15548         to MOVEMENT_LINE.
15549
15550         (GtkTextView): Add flags for default editability, and whether to
15551         show the cursor. Add functions to get/set that. Add 
15552
15553         (gtk_text_view_get_iter_location): new function
15554
15555         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
15556         gtktextlayout.h
15557         (g_convert): Add g_convert temporarily, will go in glib in a bit
15558         
15559         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
15560         GtkTextTagTableForeach instead of brokenly using GHFunc.
15561         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
15562
15563         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
15564         moved to public header.
15565
15566         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
15567         "invisible", since "elide" was a bad name.
15568         (gtk_text_tag_get_priority): Added
15569
15570         (GtkTextStyleValues): put this in public header, along with
15571         functions to use it.
15572
15573         * gtk/gtktextmarkprivate.h: Include more headers, since we no
15574         longer include gtktextbtree.h.
15575
15576         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
15577         gtk_text_mark_deleted
15578
15579         * gtk/gtktextlayout.h: Don't include the "really private" headers,
15580         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
15581         to make this possible. Now we only need to install
15582         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
15583         (However the Makefile.am isn't changed yet because of the
15584         logistics of merging gtk-hp-patches piecemeal)
15585
15586         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
15587         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
15588         gtk_text_iter_get_line is now used in the public API for a
15589         different purpose.
15590
15591         * gtk/gtktextiter.h: Clean up function names to be more
15592         consistent. Always call char offset "offset" and byte index
15593         "index". A "line" is always a line number. 
15594
15595         (gtk_text_iter_is_last): new function, more efficient than 
15596         the existing way to check
15597         (gtk_text_iter_is_first): new function, also more efficient
15598
15599         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
15600
15601         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
15602         gtk_text_iter_forward_char, etc.
15603
15604         (gtk_text_iter_forward_to_tag_toggle): Renamed from
15605         forward_find_tag_toggle, since this isn't a linear search
15606
15607         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
15608
15609         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
15610         New functions, search for a buffer substring.
15611
15612         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
15613         interactive and default editable (since we need to store that info
15614         until we receive the selection data).
15615
15616         Remove all the _at_char and at_line etc. versions of functions;
15617         only have iterator versions.
15618
15619         Add _interactive() versions of functions, that consider the
15620         editability of text. (FIXME add interactive flag to the 
15621         insert/delete signals per Darin's suggestion)
15622
15623         (gtk_text_buffer_get_tag_table): new function, demand-creates the
15624         tag table if necessary
15625
15626         Remove declaration of gtk_text_buffer_get_iter_from_string
15627
15628         (_gtk_text_buffer_get_btree): private/internal function, added.
15629         
15630
15631         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
15632         (gtk_text_line_is_last): new function
15633
15634 2000-07-25  Havoc Pennington  <hp@redhat.com>
15635
15636         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
15637         using GtkProgressBar. See Changes-2.0.txt for details.
15638
15639         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
15640         "pulse_step" which are the equivalent of
15641         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
15642         Implement new API.
15643         
15644         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
15645         (use_text_format) to mark whether text set on the progress bar is
15646         a format string. Deprecate entire GtkProgress interface.
15647
15648         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
15649         (gtk_progress_build_string): make this a no-op if use_text_format
15650         is FALSE
15651
15652         * docs/Changes-2.0.txt: Describe progress bar changes.
15653
15654 2000-07-25  Tor Lillqvist  <tml@iki.fi>
15655
15656         * Makefile.am: Include the build directory.
15657
15658         * configure.in: Generate build/Makefile, build/win32/Makefile,
15659         gdk/, gdk/win32/, and gtk/makefile.mingw.
15660
15661         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
15662         Add GETTEXT_PACKAGE.
15663         
15664         * gdk/gdk.def
15665         * gtk/gtk.def: Updates.
15666
15667         * gdk/gdkfont.h
15668         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
15669         need them any longer.
15670
15671         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
15672
15673         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
15674         PANGOWIN32_LIBS and gdk_pixbuf.
15675
15676         * gdk/win32: Compiles, but no doubt doesn't work at all.
15677
15678         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
15679
15680         * gdk/win32/gdkinput.c: New file, temporarily.
15681         
15682         * gdk/win32/gdkinput-win32.h: New file
15683
15684         * gdk/win32/gdkinputprivate.h: Remove.
15685
15686         * gdk/win32/gdkpango-win32.c: New file.
15687
15688         * gtk/makefile.mingw.in: New file
15689
15690         * gtk/makefile.cygwin: Removed
15691         
15692         * gtk/Makefile.am: Update accordingly.
15693
15694         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
15695         made externally visible.
15696
15697         * gtk/gtkmain.c: Use it.
15698         
15699         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
15700         is enough.
15701
15702         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
15703
15704 2000-07-24 Elliot Lee <sopwith@redhat.com>
15705         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
15706         individual backends already.
15707         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
15708         again. Yes, there really is a good reason for this, if you are using the gdkregion
15709         internals, and if you're not, why do you care?
15710         * gdk/gdkwindow.c: Fix inverted condition
15711         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
15712         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
15713         * gtk/gtkrange.c: Redraw trough when moving.
15714         * gtk/gtktypeutils.c: Fix warning by adding const cast.
15715         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
15716
15717 2000-07-23  Tor Lillqvist  <tml@iki.fi>
15718
15719         * configure.in: Check for mkstemp and sigsetjmp. Output
15720         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
15721
15722         More work on GDK for Win32. Still in an intermediate state.
15723
15724         * gdk/makefile.cygwin
15725         * gdk/win32/makefile.cygwin: Removed.
15726         
15727         * gdk/makefile.mingw.in
15728         * gdk/win32/makefile.mingw.in: New files.
15729
15730         * gdk/Makefile.am
15731         * gdk/win32/Makefile.am: Generate and distribute them.
15732
15733         * gdk/win32/gdkwindow-win32.h
15734         * gdk/win32/gdkdrawable-win32.h
15735         * gdk/win32/gdkpixmap-win32.h: New files.
15736
15737         * gdk/win32/gdkcolor-win32.c
15738         * gdk/win32/gdkcursor-win32.c
15739         * gdk/win32/gdkdrawable-win32.c
15740         * gdk/win32/gdkgc-win32.c
15741         * gdk/win32/gdkimage-win32.c
15742         * gdk/win32/gdkprivate-win32.h
15743         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
15744         Rename fields and variables called xcursor, xid, etc (these names
15745         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
15746
15747 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
15748
15749         * gtk/gtkentry.[ch]: Fix some problems with vertical
15750         alignment.
15751
15752         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
15753         char/byte confusion.
15754
15755 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
15756
15757         * gtk/gtktextview.c (changed_handler): Fix bug where
15758         redraw wasn't being done properly when height of
15759         dirty region changed.
15760
15761         * demos/Makefile.am: Remove various references to
15762         -lgmodule
15763
15764 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
15765
15766         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
15767         PangoAttrShape to reserve space for pixmaps, add 
15768         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
15769         in the display functions.
15770         
15771         * gtk/testgtk.c (create_layout): Set some more exotic
15772         scrolled window options
15773
15774         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
15775         Add function to set the shadow type of a window, to allow
15776         putting a shadow around widgets such as GtkLayout or GnomeCanvas
15777         which don't draw their own frame.
15778
15779 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
15780
15781         * docs/tutorial/package-db-tutorial.sh: New file for
15782           packaging DocBook format tutorial
15783
15784 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
15785
15786         * docs/tutorial/gtk-tut.sgml: Minor updates
15787
15788         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
15789
15790 2000-07-19  Tor Lillqvist  <tml@iki.fi>
15791
15792         * gtk/gtksignal.c: Fix C++ comment.
15793
15794         * gtk/gtkimmulticontext.c
15795         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
15796         don't return value from void functions.
15797
15798         * gtk/gtk.def: Add gtk_rc_style_unref.
15799
15800 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15801
15802         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
15803         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
15804         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
15805         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
15806         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
15807         gtk/gtktypeutils.h: Include files outside of the extern "C"
15808         block. Makes some C++ compiler happy. Reported by Denis Vakatov
15809         <vakatov@peony.nlm.nih.gov>.
15810
15811 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
15812
15813         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
15814           Completes first pass. Hurrah!
15815
15816 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
15817
15818         * docs/tutorial/gtk-tut.sgml: More clean ups.
15819
15820 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
15821
15822         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
15823         paint the background of the text area which was accidentally
15824         removed at some point.
15825
15826         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
15827           
15828          - Move most of the functionality from the theme vtable
15829            into GtkRcStyleClass and GtkStyleClass. The moved
15830            vtable functions were changed a bit in the move to
15831            work better in their new home.
15832
15833          - Get rid of the engine and engine_data fields from
15834            GtkRcStyle and GtkStyle; instead the theme
15835            engine derives theme-specific subclasses of GtkRcStyle
15836            and GtkStyle
15837
15838          - Add extra dlsym() found entry point to themes,
15839            theme_create_rc_style().
15840
15841         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
15842         in gtk_style_real_copy.
15843
15844         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
15845         to register a type associated with an engine. (The engine
15846         won't be unloaded as there is an instance of the type.)
15847
15848
15849 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
15850
15851         * docs/tutorial/gtk-tut.sgml: Clean ups.
15852
15853 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
15854
15855         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
15856           of cleaning up to do.
15857
15858 2000-07-15  Tor Lillqvist  <tml@iki.fi>
15859
15860         * gdk/testgdk.c: New file, quick hack to test backends for
15861         pixel-by-pixel correctness of the most simple graphic operations.
15862
15863 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
15864
15865         * Really release 1.3.1
15866         
15867         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
15868         include structure.
15869
15870 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
15871
15872         * Released 1.3.1
15873
15874 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
15875
15876         * gtk/gtktextlayout.c: use FALSE for size_only most
15877         of the time when calling gtk_text_layout_get_line_display()
15878         to avoid causing double reshapes when a redraw follows
15879         immediately after.
15880
15881 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
15882
15883         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
15884         appropriate region and gdk_window_process_updates() so trough
15885         updating doesn't lag behind the window being scrolled.
15886
15887         * gdk/gdkgc.c: Make parent_class pointer static.
15888          
15889 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
15890
15891         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
15892         include <string.h>.
15893          
15894         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
15895         cut-and-paste error in computing memory offset for 4 channels.
15896
15897 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
15898
15899         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
15900         gtk_rc_append_default_pixmap_path(), since it wasn't
15901         adding an interesting path and we don't have a meaningful
15902         default for this value.
15903
15904 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
15905
15906         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
15907         gtk-config to gtk-config-2.0 move gtk_.m4 to
15908         gtk-2.0.m4
15909
15910         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15911         gdk/Makefile.am demos/Makefile.am: Change 
15912         library names to libgtk-1.3.la, etc, so that we
15913         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
15914
15915         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15916         gdk/Makefile.am gdk/x11/Makfile.am
15917         Move include files into /usr/include/gtk-2.0, 
15918         /usr/lib/gtk-2.0/include/
15919          
15920         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
15921         gtk/gtkintl.h: Change package for gettext from 
15922         gtk+ to gtk20. Put hack in autogen.sh to modify
15923         po/Makefile.in.in after gettextize to make this
15924         possible.
15925
15926         * gtk+.spec: Some updates, not tested.
15927
15928         * gdk-pixbuf/Makefile.am: Move loaders into
15929         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
15930
15931         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
15932         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
15933         to THEMENAME/gtk-2.0/. Move engine directory  to
15934         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
15935         
15936 2000-07-12  Tor Lillqvist  <tml@iki.fi>
15937
15938         Win32 changes, still doesn't build though.
15939
15940         * gdk/makefile.cygwin
15941         * gdk/win32/makefile.cygwin
15942         * gtk/makefile.cygwin: Updates.
15943
15944         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
15945         default values for fg and bg pixel as X11 does (0 and 1), not
15946         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
15947         Use 0 for pen width by default (treated as 1 anyway later, but for
15948         apps that might check the value in the GdkGC).
15949         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
15950         interface to gdk_gc_predraw and _postdraw.
15951
15952         * gdk/win32/gdkwin32.h
15953         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
15954
15955         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
15956         extraneous semicolon.
15957
15958         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
15959
15960         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
15961         not the Win32 bitspixel value.
15962
15963         * gdk/win32/gdkcc-win32.c:
15964         * gdk/win32/gdkcolor-win32.c 
15965         * gdk/win32/gdkprivate-win32.h
15966         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
15967         GDK object structure.
15968
15969 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
15970
15971         * docs/tutorial/gtk_tut_12.es.sgml (name): 
15972         * docs/tutorial/gtk_tut_it.sgml (name): 
15973         * docs/tutorial/gtk_tut_fr.sgml (name): 
15974         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
15975         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
15976
15977 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
15978
15979         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
15980           small changes.
15981
15982 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
15983
15984         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
15985         a bug here, never been here and never fixed anything ;(
15986         (don't segfault if tree->root_tree is NULL, which happens prior
15987         to widget realization, but puke instead).
15988
15989 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
15990
15991         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
15992         add the necessary tokens.
15993
15994         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
15995         (gtk_rc_style_to_style): copy thicknesses.
15996         (gtk_rc_init_style): apply thicknesses.
15997         (gtk_rc_parse_style): parse xthickness and ythickness.
15998
15999         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
16000
16001         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
16002         (gdk_window_new): 
16003         (_gdk_windowing_window_init): 
16004         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
16005         (gdk_pixmap_create_from_data): 
16006         (gdk_bitmap_create_from_data): 
16007         (gdk_pixmap_new): 
16008         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
16009         (gdk_image_new): 
16010         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
16011         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
16012         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
16013         (gdk_colormap_get_system): 
16014         (gdk_colormap_new): 
16015         * gdk/gdkwindow.c (gdk_window_init): 
16016         * gtk/gtkstyle.c (gtk_style_new):
16017         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
16018         * gdk/gdkpixmap.c (gdk_pixmap_init): 
16019         * gtk/gtkrc.c (gtk_rc_style_new):
16020         use g_object_new() instead of g_type_create_instance() which
16021         is a private function for fundamental type implementations.
16022
16023 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
16024
16025         * configure.in: Add check for db2html
16026
16027 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
16028
16029         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
16030         hack to set glib_debug_objects based on gtk_debug_flags.
16031
16032 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
16033
16034         * INSTALL.in: Update the Prerequisites section.
16035
16036         * Makefile.am demos/Makefile.am docs/Makefile.am
16037         docs/tutorial/Makefile.am gdk/x11/Makefile.am
16038         gdk/linux-fb/Makefile.am: Dist fixes
16039
16040 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
16041
16042         * NEWS: 10,000 foot view of 1.3.1 changes.
16043
16044 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
16045
16046         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
16047         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
16048         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
16049         gdk/x11/gdkmain-x11.c: 
16050
16051         Patch from George Lebl to add a GdkGrabStatus enumeration to use
16052         as a return value of gdk_*_grab(). Previously, we just
16053         returned the X11 values directly.
16054
16055 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
16056
16057         * gdk/x11/Makefile.am: Patch from George Lebl to 
16058         install all the headers in the right place.
16059
16060 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
16061
16062         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
16063           initial conversion to DocBook.
16064
16065 2000-07-04  Tor Lillqvist  <tml@iki.fi>
16066
16067         * README.win32: Improve a bit.
16068
16069         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
16070         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
16071         Alt+0nnn on the numpad (used to enter characters by numeric code
16072         from current DOS or ANSI codepage) working correctly, as in other
16073         Windows apps.
16074
16075         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
16076         same argument validity tests as in X11 version.
16077         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
16078
16079         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
16080         definitions in case missing from headers.
16081
16082         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
16083         destroy the window-specific cursor.
16084         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
16085         calling GetModuleHandle(NULL).
16086         (gdk_window_set_cursor): Reworked to always copy the passed cursor
16087         with CopyCursor before setting it as the window-specific
16088         cursor. It is OK for the caller to destroy the GdkCursor (and thus
16089         also its Windows cursor) after calling this function. Destroy any
16090         previous window-specific cursor.
16091
16092 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
16093
16094         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
16095         font charset is iso8859-1, not iso-8859-1.
16096
16097 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
16098
16099         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
16100         Use g_get_charset() instead of g_get_codeset().
16101
16102         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
16103         Comment out some strdup'ing functions to keep timj
16104         happy until we finish fighting this out.
16105
16106 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
16107
16108         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
16109         <= width or height.
16110
16111         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
16112         from 1.2 for parent/child states.
16113
16114         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
16115         of typos.
16116
16117         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
16118         event structures, replace with a generic axes field. Replace 
16119         deviceid/sourec with GdkDevice *device.
16120
16121         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
16122         to extract particular axis use value from event. (Also
16123         can be used for normal X/Y.)
16124
16125         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
16126         allow for arbitrary number of axes, namespace everything
16127         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
16128         everywhere.
16129
16130         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
16131         Get rid of the gdk_input_vtable setup if favor of simply
16132         defining the functions in gdkinput-none/gxi/xfree.c in
16133         a similar fashion to the way that the port structure is 
16134         done.
16135
16136         * gtk/gtkdnd.c: Fix fields of synthesized button press event
16137         for new event structures. 
16138
16139         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
16140         new device interfaces.
16141
16142 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
16143
16144         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
16145         set the initial text.
16146
16147         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
16148         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
16149         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
16150         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
16151
16152         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
16153         pango_layout_set_font_description to simplify.
16154
16155 Sun Jul  2 17:43:41 2000  Owen Taylor  <otaylor@redhat.com>
16156
16157         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
16158         pango_layout_set_font_description to simplify.
16159
16160 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
16161
16162         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
16163         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
16164         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
16165
16166         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
16167         PANGO_PIXELS() macro.
16168
16169 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
16170
16171         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
16172         that returns a PangoContext owned by the widget and updated to
16173         match future changes in the widget. Also, make 
16174         gtk_widget_create_pango_layout() use this context. If we ever
16175         add a ::changed signal to PangoContext, this will make things
16176         much more convenient. 
16177
16178         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
16179         in the appropriate places instead of destroying the layouts and
16180         creating new ones.
16181
16182         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
16183         in a few strategic places.
16184
16185 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
16186
16187         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
16188         gtk_widget_size_request() on reparented child, if one. Otherwise,
16189         queue_resize() on the child never results in it getting size-requested
16190         at all.
16191
16192         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
16193         in option menus, so that (with luck) people won't copy it into
16194         their apps in the future.
16195
16196         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
16197         to gtk_option_menu_calc_size. This isn't perfect, but should fix
16198         a lot of problems with changing the size of the menu's menu
16199         items after adding it to the option menu.
16200
16201         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
16202
16203         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
16204         the text direction for a widget changes.
16205
16206         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
16207         ::direction_changed to get rid of various hacks.
16208
16209 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
16210
16211         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
16212         name.
16213
16214 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
16215
16216         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
16217         flag to the structure. Do not call XFreePixmap on pixmaps created
16218         by gdk_pixmap_foreign_new().
16219
16220 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
16221
16222         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
16223         value using GdkRGB functionality given GdkColormap and GdkColor.
16224         (name not final, waiting for inspiration.)
16225         
16226         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
16227         set the foreground/background of a GC using the GC's colormap
16228         and GdkRGB. (name not final, waiting for inspiration.)
16229
16230         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
16231         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
16232
16233         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
16234         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
16235         purely a function of the corresponding colormap. Make
16236         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
16237
16238         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
16239         gdk_pixbuf_*create_from_xpm_* in terms of
16240         gdk_pixbuf_new_from_xpm_data(), move into platform independent
16241         code.
16242
16243         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
16244         advantage of the new draw_rgb_32_image_dithalign.
16245
16246         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
16247
16248         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
16249         on each created GC.
16250
16251         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
16252
16253         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
16254         which we initialize from the drawable when the GC is created,
16255         if the drawable has a colormap.
16256
16257         * gdk/x11/gdkgc-x11.c: include string.h for memset.
16258
16259         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
16260
16261         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
16262
16263 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
16264
16265         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
16266         actually returning expose events, make sure to set
16267         the count field properly.
16268
16269         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
16270         accidentally reintroced bug which always cleared
16271         the graphics_exposures value. 
16272
16273 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
16274
16275         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
16276
16277 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
16278
16279         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
16280
16281 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
16282
16283         * docs/faq/gtk-faq.sgml: Start of Section 6.
16284
16285 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
16286
16287         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
16288         
16289         (Fixes problem with drawing childless frames. Pointed out
16290         by and a first patch from Anders)
16291         
16292         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
16293         compute a child_allocation, even if we don't have a child.
16294
16295         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
16296         Always chain to the parent's impl, even if we don't have a child.
16297
16298 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16299
16300         * gdk/gdkrgb.c: If possible, create only a single shm segment and
16301         use multiple parts of it instead of creating a bunch of separate
16302         segments, since the maximum number of segments per system is not
16303         large. (This might be worth backporting to GTK+-1.2.x if we make a
16304         new release )
16305
16306         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
16307         structure in preparation for per-colormap GdkRGB.
16308
16309         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
16310         to False when we get EINVAL from shmget so that the caller of
16311         gdk_image_new can retry with a smaller segment size.
16312
16313 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
16314
16315         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
16316
16317 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
16318
16319         * configure.in: make the current version number 1.3.1 (binary age 0,
16320         interface age 0).
16321         
16322         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
16323         gtkcompat.h is all we want.
16324
16325         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
16326         GLib primitive types. fixed g_type_register_fundamental() argument
16327         ordering.
16328
16329         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
16330         compiles.
16331
16332         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
16333         object code cleanup, comment trigraph fixes, etc...
16334
16335 2000-06-23  Havoc Pennington  <hp@redhat.com>
16336
16337         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
16338         instead of making up a bogus name for first_para_mark
16339
16340         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
16341         0 as a context ID
16342
16343 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
16344
16345         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
16346
16347 2000-06-21  Havoc Pennington  <hp@pobox.com>
16348
16349         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
16350         we didn't check window->bg_pixmap != GDK_NO_BG.
16351
16352         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
16353         gdk-pixbuf
16354
16355 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
16356
16357         * docs/faq/gtk-faq.sgm: Move file to here.
16358           TODO: Update Makfile.am 
16359
16360 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
16361
16362         * docs/gtk-faq.sgm: Add Section 2
16363
16364 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
16365
16366         * docs/gtk-faq.sgm: New file. Start of DocBook
16367           version of the FAQ.
16368
16369 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
16370
16371         * configure.in (GDK_PIXBUF_MAJOR): Define version
16372         numbers for GDK_PIXBUF_*, as they get substituted
16373         into a header file. Need to consider versioning
16374         for gdk-pixbuf more carefully later.
16375
16376 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
16377
16378         Work with srcdir != builddir.   
16379         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
16380         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
16381         * demos/testpixbuf.c: Likewise.
16382         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
16383         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
16384         <gdk/x11/gdkx.h>.
16385         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
16386         "gdk-pixbuf.h".
16387         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
16388
16389 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
16390
16391         * TODO.xml: Change 1.4 version numbers to 2.0.
16392
16393 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
16394
16395         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
16396         fixups to GTK+ standard.
16397
16398 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
16399
16400         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
16401         gdk-pixbuf.
16402
16403         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
16404         fixups for GObject.
16405
16406         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
16407         gdk-pixbuf with GDK dependencies moved into GDK.
16408         
16409         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
16410         move gdk-pixbuf-loader here until GObject has signals.
16411
16412         * demos/: New directory of demos. Move demos from
16413         gdk-pixbuf here.
16414
16415         * demos/pixbuf-init.c: Small bit of code to check for
16416         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
16417         set GDK_PIXBUF_MODULEDIR appropriately.
16418
16419         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
16420         define which no longer makes sense.
16421
16422 2000-06-21  Havoc Pennington  <hp@redhat.com>
16423
16424         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
16425         gtk_get_default_language
16426
16427         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
16428         new function to get the default language
16429
16430         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
16431         s/gtk_text_view_style_values/gtk_text_style_values/
16432
16433         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
16434         Add a "language" field to tags.
16435
16436         (gtk_text_tag_set_arg): Fix bug in setting
16437         "bg_full_height_set" tag.
16438
16439 2000-06-21  Havoc Pennington  <hp@redhat.com>
16440
16441         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
16442         in the interfaces
16443
16444         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
16445         stuff instead when possible.
16446
16447         * gtk/gtktexttypes.h: Delete some unused constants
16448
16449         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
16450         testtextbuffer.c: use glib instead of custom unicode routines
16451
16452 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
16453
16454         * docs/es/: Removed mistakenly added generated sgml
16455
16456         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
16457         Remove outdated info files.
16458
16459         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
16460         Moved tutorial files into subdir
16461
16462         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
16463         subdir.
16464
16465         * docs/man/gtk_button.pod: Remove. (contents will be
16466         integrated into gtk-reference button page.)
16467
16468         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
16469         docs/faq/Makefile.am: Adjust for new organization
16470
16471 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
16472
16473         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
16474         not $(MKINSTALLDIRS)
16475
16476 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
16477
16478         * gtk/testgtk.c (create_text): Finish the job Elliot started
16479         of removing font setting test for text widget. (Since text widget
16480         and GdkFont are not deprecated, and cause portability problems.)
16481
16482 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
16483
16484         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
16485         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
16486         Remove use of libunicode in favor of new GLib functions.
16487
16488         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
16489         nano-x, framebuffer. The X11 include is just a hack until we get
16490         the necessary functions in gdkcolor.h, so there is no reason to
16491         add other includes of platforms.
16492
16493         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
16494         window bigger than the screen change.
16495
16496         * gtk/testgtk.c: Revert some random changes from Elliot
16497         that had no particular point and were causing testgtkrc
16498         not to function correctly.
16499         
16500         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
16501         because GdkSegment and GdkRegionBox have the same fields,
16502         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
16503         results in clearer code.
16504
16505         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
16506         gdk_input_translate_coordinates): Fix missed GdkObjectification
16507
16508 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16509
16510         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
16511         * gtk/gtk{plug,socket}.h: Missed commits from previous.
16512
16513 2000-06-20  Havoc Pennington  <hp@redhat.com>
16514
16515         * modules/linux-fb/Makefile.am: Make this compile
16516         without framebuffer enabled
16517
16518         * gdk/linux-fb/Makefile.am: Add conditional to not build
16519         framebuffer unless specified in configure
16520
16521         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
16522         the size of the target instead of source if -1 was passed for
16523         width/height
16524
16525         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
16526         width/height confusion.
16527
16528 2000-06-19  Havoc Pennington  <hp@redhat.com>
16529
16530         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
16531         GDK_DRAWABLE_XID. In the future, we probably want to make it
16532         faster with G_DISABLE_CHECKS turned on.
16533
16534 2000-06-14  Havoc Pennington  <hp@redhat.com>
16535
16536         * gdk/Makefile.am: add gdkpixmap.c
16537
16538         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
16539         s/gdk_image_init/_gdk_windowing_image_init
16540
16541         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
16542         ref/unref
16543
16544         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
16545
16546         * gdk/gdkcompat.h: remove GdkWindowType compat, since
16547         GdkWindowType is now non-deprecated; 
16548         change gdk_window_get_type() compat to be
16549         gdk_window_get_window_type().
16550
16551         * gdk/gdkdnd.h: make GdkDragContext a GObject.
16552
16553         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
16554         virtual GObject. Make all functions call into the vtable.
16555         Move gdk_image_put() guts in here. Remove GdkDrawableType
16556         and gdk_drawable_get_type(), these are now GdkWindow-specific.
16557         draw_image, get_depth, get_size, set_colormap, get_colormap,
16558         get_visual added to the vtable.
16559         
16560         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
16561         GObject. Virtualize everything. 
16562         (gdk_gc_new_with_values): remove check for destroyed window,
16563         because now GdkWindow::create_gc will check this.
16564         (gdk_gc_set_values): New function to set GC values, this 
16565         was already implemented but wasn't in the header
16566
16567         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
16568
16569         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
16570         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
16571         remove _gdk_window_class; add _gdk_window_impl_get_type() and
16572         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
16573         _gdk_windowing_window_init, rename gdk_image_init to
16574         _gdk_windowing_image_init.
16575         
16576         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
16577         (gdk_draw_layout): Remove check for destroyed window, 
16578         because all the drawable methods already check it.
16579         
16580         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
16581         Add gdkpixmap.c which contains implementation of GdkDrawable
16582         virtual table (by chaining to a platform-specific implementation
16583         object).
16584         
16585         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
16586         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
16587         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
16588         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
16589         GdkColormapPrivate. 
16590
16591         * gdk/gdktypes.h: #include <glib-object.h>
16592
16593         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
16594         Move most functionality to platform-specific implementation
16595         object. GdkWindow itself now handles the backing store, then
16596         chains to the platform-specific implementation.
16597         (gdk_window_get_window_type): return GdkWindowType of the window.
16598         (gdk_window_peek_children): New routine, returns the children of 
16599         a GdkWindow
16600         (gdk_window_get_children): Was in X11-specific code and did 
16601         XQueryTree. Changed to simply return a copy of window->children; 
16602         so it can go in cross-platform code.
16603         
16604         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
16605
16606         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
16607         GdkColormap; just changed to use the new private data instead
16608         of casting to GdkColormapPrivate.
16609
16610         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
16611         gdk_cursor_new().
16612
16613         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
16614         (private data member in the GObject). 
16615         (xdnd_manager_source_filter): Function had broken 
16616         error handling, fix it (use gdk_error_trap_push).
16617
16618         * gdk/x11/gdkdrawable-x11.c: This file now implements
16619         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
16620         base class is purely for the convenience of the X port,
16621         and not part of the interface to cross-platform GDK.
16622
16623         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
16624         
16625         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
16626         specific to X, and returned by the create_gc virtual method
16627         of GdkDrawableImplX11. 
16628         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
16629         rather than gchar, this was also changed in the GdkGC vtable.
16630         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
16631         mask is 0, return immediately, instead of checking every flag.
16632         This is faster, and keeps us from segfaulting if values is NULL
16633         and the mask contains some nonzero flags.
16634
16635         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
16636         GdkWindow.
16637
16638         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
16639         GdkWindowPrivate is gone.
16640
16641         * gdk/x11/gdkim-x11.c: rename things that got renamed.
16642
16643         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
16644         remove the image_put stuff that got transferred to GdkDrawable.
16645         
16646         * gdk/x11/gdkinput.c: renamings
16647
16648         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
16649
16650         * gdk/x11/gdkpixmap-x11.c: GObject conversion
16651
16652         * gdk/x11/gdkprivate-x11.h: indentation fixes
16653
16654         * gdk/x11/gdkproperty-x11.c: renamings
16655
16656         * gdk/x11/gdkselection-x11.c: renamings
16657
16658         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
16659         implements the platform-specific "impl" object.
16660         Moved gdk_window_get_children to gdk/gdkwindow.c
16661
16662         * gdk/x11/gdkx.h: Remove all the private structs and private datas
16663         that no longer exist. Add declaration of GdkGCX11 object here.
16664         Fix all the macros to still work. 
16665
16666         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
16667         GdkDragContext from the boxed types since they are now GObjects.
16668
16669         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
16670         moved xthickness/ythickness into the instance. GtkStyleClass
16671         functions are now in the standard vtable for GtkStyle, so you have
16672         to create a GObject subclass to write a theme engine.
16673         (gtk_style_copy): fixed a leaked PangoFontDescription
16674         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
16675         can be the standard GObject function.
16676         
16677         * Throughout GTK:
16678         s/style->klass->[xy]thickness/style->[xy]thickness
16679         s/pango_layout_unref/g_object_unref/
16680
16681         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
16682         
16683         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
16684         accessing GDK internals.
16685
16686         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
16687         accessing GDK internals.
16688
16689 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16690
16691         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
16692
16693         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
16694         problem by calculating event position relative to the trough
16695         rather than the slider.
16696         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
16697
16698         * gdk/gdkgc.h: Add GDK_NOR.
16699
16700         * configure.in, Makefile.am: Add modules top level dir
16701         * configure.in: Only use pangox library if building x11 target.
16702         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
16703
16704 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16705
16706         * gtk/gtkcolorsel.c: Change private class member to be named
16707         private_data throughout the file.
16708
16709         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
16710         private_data to avoid clashing with keyword.
16711
16712 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16713
16714         * gdk/gdkdnd.h: Add comment to remove warning.
16715
16716 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
16717
16718         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
16719         Byelorussian language; changed the Makefile and file names 
16720         to reflect that.
16721
16722 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
16723
16724         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
16725         rather than gdk_window_hide; this makes things work
16726         correctly if the window is programmatically hidden while
16727         iconified.
16728
16729 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
16730
16731         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
16732         cut and paste typo where wrong pixmap was being
16733         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
16734
16735 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
16736
16737         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
16738         Add helper function to compute format / bytes 
16739         relationship. Use in a couple places to fix up
16740         errors which assume 8 * format.
16741
16742         * gtk/gtkselection.c (gtk_selection_request): Use 32
16743         rather than 8 * sizeof (GdkAtom), to work correctly
16744         on Alpha.
16745
16746 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
16747
16748         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
16749         libgtk.la
16750         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
16751         versions
16752
16753         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
16754         checking macros return NULL since the function has a return value.
16755
16756 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
16757
16758         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
16759         GTK+ from building at all.
16760
16761         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
16762
16763 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
16764
16765         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
16766         gtk/Makefile.am: make it possible to configure gtk for different
16767         targets on the same platform. The library name is now 
16768         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
16769         flag. Only the x11 target compiles right now.
16770         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
16771         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
16772         * gdk/nanox/gdk*generic*: delete generic region code.
16773         * gdk/linux-fb/gdk*generic*: delete generic region code.
16774         * README.nanox: update information.
16775         
16776 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
16777
16778         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
16779         prepend not append. (Pointed out by Brett Hall.)
16780
16781 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
16782
16783         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
16784
16785 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
16786
16787         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
16788         need this later, and this makes sure that the atexit for
16789         glib gets called after that for GDK, so atexits are
16790         properly ordered for object leak checking.
16791
16792         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
16793
16794         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
16795         pango_x_shutdown_display()
16796
16797         * gtk/simple.c (main): Close window on destroy.
16798
16799 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
16800
16801         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
16802         to treat initial creation different from setting with 
16803         regards to the graphics-exposures parameter, so add a parameter
16804         indicating whether this is initial or not.
16805
16806 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
16807
16808         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
16809         to sort of work by adding an extra return_exposes arg
16810         to gdk_event_translate() - it might be better to simply
16811         deprecate the function altogether and force people to rewrite
16812         without it. gdk_window_scroll() handles most of it, and where
16813         gdk_window_scroll() doesn't work, simply redrawing more does.
16814
16815         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
16816         assertion.
16817
16818         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
16819
16820         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
16821         bunch of pretty much useless /* Print debugging info */ comments 
16822         which had drifted away from the code they were commenting.
16823
16824 2000-06-02  Havoc Pennington  <hp@pobox.com>
16825
16826         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
16827         is in working order.
16828         
16829         * gtk/testtext.c: Change to reflect anonymous mark API
16830
16831         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
16832
16833         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
16834         field, which was unused.
16835
16836         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
16837         saves some typing.
16838
16839         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
16840
16841         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
16842         flag on the insertion point and selection bound
16843
16844         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
16845         make mark-manipulation functions take a GtkTextMark* instead of a
16846         mark name.
16847         
16848         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
16849         GtkTextMarkBody; will be used to detect attempts to delete
16850         the permanent marks (insert and selection bound)
16851
16852         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
16853
16854 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
16855
16856         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
16857         flag to on.
16858
16859         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
16860         Honor DOUBLE_BUFFRED_FLAG
16861
16862         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
16863         function to set the DOUBLE_BUFFERED flag.
16864
16865         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
16866         or not exposes done on the widget should be double-buffered.
16867
16868         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
16869         to be what would be expected. (Fixes problem with a
16870         g_return_if_fail() validating a TextDirection enumeration)
16871
16872 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
16873
16874         * gtk/gtkwidget.c: Remove all references to 
16875         offscreen flag which was no longer used.
16876
16877         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
16878
16879         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
16880         for non-null label_widget->parent.
16881
16882         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
16883         which no longer was used.
16884
16885         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
16886
16887         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
16888         for null arguments.
16889
16890         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
16891         check for destroyed windows.
16892
16893 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
16894
16895         * gtk/gtkimmulticontext.c: Add a finalize method and unref
16896         the slave context there.
16897
16898         * gtk/gtkinvisible.[ch]: Make reference counting behavior
16899         identical to GtkWindow.
16900
16901 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
16902
16903         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
16904         pangox to here, so we can write them independent of rendering
16905         system, using GDK primitives.
16906
16907         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
16908         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
16909         since we have a rendering-system independent implementation in
16910         terms of draw_glyphs().
16911         
16912         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
16913         function to render a single line.
16914
16915         * gdk/x11/gdkpango.c: Move the guts of this file mostly
16916         into ../gdkpango.c, which simplifies things, since we
16917         don't have to deal with raw X gc's.
16918
16919 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
16920
16921         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
16922         get the logical attributes for a given GtkTextLine.
16923
16924 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
16925
16926         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
16927         g_locale_get_codeset() to g_get_codeset() change.
16928
16929 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
16930
16931         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
16932         descriptions.
16933
16934         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
16935         the entry.
16936
16937         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
16938         redoing (vastly simplifying) for Pango. Still needs quite
16939         a bit of work. (Size selection is currently poor. List of 
16940         predefined sizes is not a good idea, since all of these
16941         sizes won't necessarily be distinct.)
16942
16943 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
16944
16945         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
16946         CODESET results for LANG=C.
16947
16948 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
16949
16950         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
16951         which takes a stringized pango font description;
16952         ignore the older 'font' and 'fontset' declarations.
16953
16954         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
16955         field with a GdkFont derived via gdk_font_from_description(),
16956         for compatibility. (Should we just remove it entirely?
16957         Probably too much compatibility breakage, but people
16958         should be migrating to the new Pango stuff as quickly
16959         as possible.)
16960
16961 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
16962
16963         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
16964
16965 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
16966
16967         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
16968         redoing; there are some bugs in size allocation right
16969         now, the semi-existant distinction between header / day
16970         fonts was removed, but, with Pango, could actually
16971         be made functional in a nice way.
16972         
16973         * gtk/testcalender: Move calender from examples into this
16974         directory as a test program. (We really need to restrcture
16975         testgtk into a whole directory full of tests for every
16976         widget or functionality group, separated into multiple .c
16977         files.)
16978
16979 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
16980
16981         * gtk/testgtk.c (file_exists): Fix stupid typo that
16982         was keeping RC file from being loaded.
16983
16984         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
16985         RC file font code.
16986
16987 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
16988
16989         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
16990         Add function to load a GdkFont from a PangoFontDescription.
16991
16992 2000-05-29  Tor Lillqvist  <tml@iki.fi>
16993
16994         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
16995         variable should be of type GdkEventPrivate.
16996
16997 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
16998
16999         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
17000         to have any widget for the label, use a GtkLabel widget
17001         to display the text. (Based partially on a patch from
17002         Anders Carlson.)
17003
17004         (Quite a bit of code reorganization - strip 90% of the
17005         guts out of gtkaspectframe and add a single virtual
17006         func to GtkFrameClass - compute_child_allocation.)
17007
17008 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
17009
17010         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
17011         (Removed clist->row_center_offset field because caching
17012         it wasn't saving time or code, added private function
17013         _gtk_clist_create_cell_layout()).
17014
17015 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
17016
17017         * gtk/gtkaccellabel.c: Pangoized.
17018
17019         * gtk/[hv]ruler.c: Pangoized
17020
17021 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
17022
17023         * gtk/gtkfilesel.c (gtk_file_selection_init):
17024         Use gtk_clist_set_column_auto_resize() to remove need
17025         need for manual column width computations.
17026
17027 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
17028
17029         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
17030         ensuring Pango correctness, and considerably simplifying the
17031         code.
17032         
17033         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
17034
17035         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
17036         getting of numbers of lines.
17037
17038         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
17039         to the actual requested width of the lable, not to the wrap
17040         width we set.
17041
17042         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
17043
17044         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
17045           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
17046
17047         * gtk/gtktextview.c: Fix structure inheritance.
17048
17049         * gtk/gtkprogressbar.c: Pangoize.
17050
17051 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
17052
17053         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
17054         in a function.
17055
17056         * gtk/gtktextlayout.c (find_display_line_above): Fixed
17057         bug with computing line tops.
17058
17059         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
17060
17061 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
17062
17063         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
17064         and y_offset coordinates to do what we need now. (The offset between
17065         buffer and layout coordinates has been reintroduced, but is a 
17066         bit different than before.)
17067
17068         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
17069         handle the adjustments ourselves, and scroll as necessary using
17070         the new gdk_window_scroll().
17071         
17072         The advantage of this is that when we are incrementally revalidating,
17073         we are essentially rearranging things around the visible portion
17074         of the screen. With the old setup, the visible portion of the
17075         screen was moved around in the layout, so scrolling and redrawing
17076         to track that caused jumping of the display. Since we now
17077         control the scrolling ourselves, we can suppress this and
17078         only redraw when things actually change.
17079
17080 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
17081
17082         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
17083         the region not just redisplay it after-all, since we store the
17084         cursors in the LineDisplay. (Ugly interactions here between
17085         GtkLayout and GtkTextBTree here.)
17086         
17087         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
17088
17089 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
17090
17091         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
17092         Added function to scroll contents of a window while keeping the
17093         window constant. Works by XCopyArea or guffaw-scrolling depending
17094         on the details of how the window is set up. (guffaw-scrolling
17095         still needs to be filled in.)
17096
17097 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
17098
17099         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
17100         move the debugging that was tied to a global variable
17101         to that.
17102
17103         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
17104
17105         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
17106         validated flag, in line data instead of setting height/width to
17107         -1. This allows us to perform operations with partially invalid
17108         buffer (using the old size for invalid lines) and thus to do
17109         incremental vaidation. Keep height/width aggregates up to date
17110         when deleting text and rebalancing the tree.
17111
17112         * gtk/gtktextbtree.[ch]: Add functions validate a line
17113         (gtk_text_btree_validate_line), and to validate up
17114         to a number of pixels (gtk_text_btree_validate).
17115
17116         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
17117         that indicates that something is changed and a revalidation
17118         pass is needed. Change ::need_repaint to ::changed, and
17119         make it take old and new yranges instead of a rectangle.
17120
17121         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
17122         the line_data_destroy() function from 
17123         gtk_text_btree_add_view() to a virtual function in 
17124         GtkTextLayout
17125
17126         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
17127         since we are handling partial repaints in a different fashion
17128         now.
17129
17130         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
17131         of the selection instead of queueing a repaint on the
17132         entire widget.
17133
17134         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
17135         get_selection_bounds() down to btree, make the function
17136         in buffer a wrapper around the btree function.
17137
17138         * gtk/gtktextlayout.[ch]: Add functions to check if the
17139         layout is valid and to recompute either a range of pixels
17140         aroudn a line or a certain total number of pixels.
17141
17142         * gtk/gtktextlayout.[ch]: Cache a single line display;
17143         now that we only redraw the needed portions, the hit rate
17144         for this cache is quite high.
17145         
17146         * gtk/gtktextview.[ch]: Keep track of the first paragraph
17147         on the screen so that when re-laying-out the buffer, we can
17148         keep the same place. This requires connecting to ::value_changed
17149         on the adjustments
17150
17151         * gtk/gtktextview.[ch]: Add idle functions to revalidate
17152         the buffer after we receive an ::invalidated signal.
17153         
17154 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
17155
17156         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
17157         to max of allocation and layout size, not just to the
17158         layout size.
17159
17160         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
17161         Invalidate window so it gets redrawn properly.
17162
17163         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
17164         to mean the entire window.
17165
17166         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
17167         into public header.
17168
17169 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
17170
17171         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
17172         to get the name of a mark.
17173
17174         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
17175         to find the paragraph from a y position.
17176
17177 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
17178
17179         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
17180         nodes have width/height >= 0, not > 0.
17181
17182 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
17183
17184         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
17185         Add a size_only flag, so when we only need the size, we don't create
17186         useless appearance attributes.
17187
17188         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
17189         duplicate setting of font description.
17190
17191         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
17192
17193 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17194
17195         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17196         EXTRA_DIST. It does not work well when the file that
17197         everything depends on is not in the tarball.
17198
17199 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
17200
17201         * gtk/testgtk.c: Some hacks and fixes so that it basically
17202         works when not sitting in the GTK+ build tree.
17203
17204 2000-05-03  Havoc Pennington  <hp@redhat.com>
17205
17206         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
17207         Properly determine the ordering of the tag root and the current
17208         line within the tree. Previous algorithm only worked if the tag
17209         root's immediate parent was the common root of both the current
17210         line and the tag root.
17211
17212 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
17213
17214         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
17215         alignment.
17216
17217         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
17218         the widget text directional dynamically.
17219
17220         * gtk/gtktextview.[ch]: Added functions to get and set default
17221         wrap mode.
17222
17223 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
17224
17225         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
17226         in cursor location computation.
17227
17228 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
17229
17230         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
17231         vadjusment values properly when layout gets smaller.
17232
17233         * gtk/gtktextview.c (need_repaint_handler): Areas being
17234         passed in are far completely inaccurate, and sometimes
17235         too small, so, for now, just queue a redraw on the
17236         whole visible region.
17237
17238 2000-04-25  Havoc Pennington  <hp@redhat.com>
17239
17240         * gtk/gtktextbtree.c (summary_destroy): new function to 
17241         destroy tag summary nodes
17242         (gtk_text_line_next_could_contain_tag): this function was 
17243         totally broken if the line passed in wasn't below the tag
17244         root. Fix it.
17245         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
17246         "wildcard" case, we have to do a linear scan. Blah.
17247         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
17248         we have to do the linear scan
17249         (tag_removed_cb): When a tag is removed from the tag table, 
17250         remove the GtkTextTagInfo node from the btree.
17251         (gtk_text_btree_spew): Implement the spew function, for 
17252         our debugging pleasure.
17253
17254 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
17255
17256         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
17257         a problem with referring to the wrong buffer.
17258
17259         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
17260
17261         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
17262         font description to gtk_style_new() - otherwise things
17263         don't work without a .gtkrc file.
17264
17265         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
17266         tags table if we create it ourself, too.
17267
17268         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
17269         it was conflicting with XKB modifiers.
17270
17271         * gtk/gtktextview.[ch]: Add simple support for 
17272         GtkIMContext.
17273
17274 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
17275
17276         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
17277         with deletion from last commit.
17278
17279 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
17280
17281         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
17282         in the context from the current locale.
17283         
17284         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
17285         context, not hardcoded value.
17286
17287         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
17288         not logical.
17289
17290 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17291
17292         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
17293         attributes - that doesn't handle partial-glyph selection
17294         properly. Instead use new pango_layout_line_get_x_ranges()
17295         functionality to draw the selection.
17296
17297         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
17298         now properly handles out-of-range coordinates.
17299
17300         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
17301
17302         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
17303         public.
17304
17305         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
17306         for paragraphs opposite to the base direction of the widget.
17307
17308         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
17309
17310         * gtk/gtktextlayout.c: Don't split segments on marks, since that
17311         causes Arabic words to reshape as you cursor through.
17312
17313         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
17314         cursor position when moving vertically with the arrow keys and
17315         scrolling with page-up/page-down. (Arrow keys save only the X,
17316         scrolling saves both X and Y.)
17317
17318         This means you can line-up / line-down or page-up / page-down
17319         without losing your place, and also that moving vertically
17320         with the cursor keys keeps the same X position, not the same
17321         character count:
17322
17323         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
17324         arrow keys move by display lines, not paragraphs.
17325
17326 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17327
17328         * gtk/gtklayout.c: Make sure that the bin window is at least
17329         as big as the allocation. (Should we also make sure that the
17330         bin window is big enough to completely cover widget->window?)
17331
17332         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
17333         function to get the onscreen rectangle.
17334
17335         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
17336         for offsets in window coordinates.
17337
17338 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
17339
17340         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
17341         confusion.
17342
17343         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
17344         from the widget direction.
17345
17346         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
17347         Add a "direction" attribute.
17348
17349         * gtk/gtktextview.c: global s/tkxt/text_view/.
17350
17351         * gtk/testtext.c: Added long block of text in Arabic, to test out
17352         the direction attributes. (Some problems with the shaping system
17353         for arabic become obvious - like the fact the cursor splits words
17354         into unjoined pieces.)
17355
17356 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
17357
17358         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
17359
17360         * gtk/gtktextlayout.c: Fix up alignment.
17361
17362         * gtk/testtext.c: Add some tests for centering, wrapping.
17363
17364 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
17365
17366         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
17367         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
17368         If we wrote GTK+-specific layout-render function this could just replace
17369         the draw_layout() operation in the vtable.
17370
17371         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
17372         pango_layout_get_cursor_pos() and use that function.
17373
17374         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
17375         is a non-static symbol.
17376
17377         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
17378         with gtk_text_btree_find_line_by_y()
17379
17380         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
17381         renderer that handles GtkTextAppearance attributes.
17382
17383         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
17384
17385           - Move the values in the style that don't affect geometry into a
17386             GtkTextAppearance structure.
17387           - Change underline to take a PangoUnderline and "font" a string
17388             representation of a font description
17389           - Add a "font_desc" attribute which takes a FontDescription structure.
17390
17391         * gtk/gtktextlayout.[ch]:
17392
17393           - Get rid of the display-line list per each line. Instead, we
17394             generate, on demand, a GtkTextLineDisplay structure which]
17395             contains a PangoLayout * and other necesary information
17396             (offsets, cursor locations) for displaying a paragraph.
17397           - Get rid of the code to wrap lines, create display chunks,
17398             etc. Instead, we just go through a paragraph and convert
17399             it into the necessary inputs to a PangoLayout.
17400           - Implement a new attribute type, GtkTextAttrAppearance. This
17401             holds a GtkTextAppearance, and is used to pass colors, 
17402             stipple, etc, through from the layout to the display without
17403             having to use lots and lots of individual attributes.
17404           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
17405             in terms of PangoLayout functions.
17406         
17407         * gtk/gtktextview.c: 
17408          
17409           - Handle passing the necessary PangoContext to the layout
17410           - Some fixups in painting to deal with the automatic backing store
17411             and offsetting of GTK+-1.4
17412           - Add a style_set handler so that the default style reacts
17413             properly to theme changes.
17414         
17415         * gtk/gtktext?*.[ch]: Random code-style fixes.
17416
17417         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
17418
17419 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
17420
17421         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
17422         in original form preparatory to Pango-ization and gdkimcontext-ization.
17423
17424 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
17425
17426         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
17427         so that we can derive from gtkimcontext in language bindings properly.
17428
17429 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
17430
17431         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
17432         Add a compose table including (almost) all the compose combinations
17433         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
17434         data in the XIM implementation.
17435
17436         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
17437         Moved functions to convert keyvalues from and to unicode here from
17438         the win32 port and made them public.
17439
17440 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
17441
17442         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
17443
17444 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
17445
17446         * gtk/gtkimcontext.[ch]: Base class for new input context system
17447
17448         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
17449         the real input context implementation to be loaded from modules
17450         and switched on the fly.
17451
17452         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
17453         context that just does direct keysymbol => unicode translation.
17454
17455         * gtk/gtkentry.[ch]: Start switching editing over to using
17456         GtkInputContext. (No handling of preedit yet.)
17457
17458 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
17459
17460         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
17461         many substitutions. (klass should not be subsituted.)
17462
17463 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
17464
17465         * configure.in: Add checks for Pango
17466
17467         * configure.in docs/Makefile.am: Add test for sgml2html
17468         and allow 'make dist' without building html, but print out
17469         warnings in that case. (For making snapshots)
17470
17471         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
17472         Add Pango libraries and C flags
17473
17474         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
17475         Add function (gdk_draw_layout) to draw a pango layout.
17476
17477         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
17478         for getting Pango contexts for GDK.
17479
17480         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
17481
17482         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
17483         editing.
17484
17485         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
17486         keysym => unicode translations. More languages can be added
17487         here, but real input-method support is needed.
17488
17489         * docs/Changes-1.4.txt: Added note about entry behavior.
17490         
17491         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
17492         to set the reading direction for a widget and the global direction.
17493         Add test which allows toggling the global direction. Two private
17494         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
17495
17496         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
17497           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
17498
17499         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
17500
17501         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
17502         underlining now handled by Pango.
17503
17504         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
17505         to RCStyle and Style. (Having both this and the old font name and GdkFont 
17506         is temporary.)
17507
17508         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
17509         convenience functions for creating contexts and layouts for widgets.
17510
17511         * gtk/testgtk.c: Enhance label tests with multilingual labels.
17512
17513 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
17514
17515         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
17516         titles to be active, even if they aren't visible.
17517         (gtk_clist_column_titles_passive):  Ditto.
17518
17519 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
17520
17521         * gtkmenu.c:
17522         * gtkmenu.h:
17523         * gtktypeutils.h: Spelling/grammar fixes in comments.
17524
17525 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
17526
17527         * gdk/nanox/*.h: add missing header files.
17528
17529 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
17530
17531         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
17532         send_event to TRUE.
17533         (gtk_drawing_area_size): queue a resize.
17534
17535 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
17536
17537         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
17538         the handlers, also invalidate them. bug nailed down by Karl Nelson
17539         <kenelson@ece.ucdavis.edu>.
17540
17541 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
17542
17543         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
17544         "(nil)" foundries, patch from Grigorios Magklis.
17545
17546         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
17547         on non-available fonts, based on a patch by Grigorios Magklis
17548         <maglis@cs.rochester.edu>.
17549
17550 2000-05-18  Elliot Lee  <sopwith@redhat.com>
17551
17552         * gdk/x11/gdkregion-generic.c: If a region does not have any
17553         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
17554         instead of GDK_OVERLAP_RECTANGLE_IN.
17555
17556 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
17557
17558         * gtk/gtklayout.c (gtk_layout_map): Remove references to
17559         OFFSCREEN, as it is no longer necessary.
17560
17561 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
17562
17563         * gtk/gtkcolorsel.c: Patch from David Santiago
17564         <mrcooger@cyberverse.com> to change things so that the 
17565         indicator of the active palette entry is done independently,
17566         not via the focus, since it should always be visible.
17567
17568 2000-05-17  Tor Lillqvist  <tml@iki.fi>
17569
17570         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
17571         refcount leaks as in the X11 backend.
17572
17573         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
17574         cosmetics.
17575
17576         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
17577         backend. Add _gdk_windowing_window_destroy().
17578
17579         * gtk/gtkcolorsel.c: Include correct backend-specific header.
17580         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
17581         either, but these probably do exist on nanox?)
17582         
17583         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
17584         which isn't necessarily defined by <math.h>.
17585
17586         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
17587         ancestry past GtkObject.
17588
17589         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
17590         from DLL on Win32.
17591
17592         * gtk/gtk.def: Update corresponding to recent changes.
17593
17594         * gtk/makefile.{cygwin,msc}: Updates.
17595
17596 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
17597
17598         * docs/Changes-1.4.txt: A bit of editing.
17599
17600         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
17601         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
17602         to clear the update area for the window, and clear it
17603         when hiding a window.
17604
17605         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
17606         if window destroyed.
17607
17608         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
17609
17610         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
17611         gdk_window_destroy() to the generic code, since there was a lot of 
17612         window-system-independent logic it in. Add a function:
17613         
17614          _gdk_window_destroy() 
17615
17616         to the internal API to destroy a window without unreferencing it.
17617         Add a function:
17618
17619          _gdk_windowing_window_destroy()
17620
17621         That does the windowing-system-dependent part of destroying 
17622         the window.
17623
17624 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
17625
17626         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
17627
17628 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
17629
17630         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
17631         Make gtk_widget_shape_combine_mask() keep a reference count on
17632         the pixmap since it keeps it around.
17633
17634 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
17635
17636         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
17637         leak.
17638
17639         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
17640         leak with event filters.
17641
17642 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
17643
17644         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
17645         signal handlers with the right data arguments. (Fixes
17646         some warnings when a widget was repeatedly set as a drag
17647         destination.)
17648
17649         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
17650         window so we can avoid avoid setting the DND properties on the
17651         toplevel window repeatedly.
17652
17653 2000-05-13  Tor Lillqvist  <tml@iki.fi>
17654
17655         * gdk/win32/gdkwin32.h: Define more message types missing from
17656         mingw headers.
17657
17658         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
17659         call gdk_window_destroy_notify(). It was never called. This
17660         probably meant that the GdkWindow was never freed. Thanks Owen for
17661         noticing (!).
17662
17663         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
17664         window as destroyed before calling DestroyWindow(). DestroyWindow()
17665         causes a call to the window procedure (gdk_WindowProc), which
17666         calls gdk_event_translate(), which calls
17667         gdk_window_destroy_notify(), which gets confused unless the window
17668         is set as destroyed.
17669
17670         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
17671         this function to indicate it's win32 only. Put inside #ifdef
17672         G_ENABLE_DEBUG.
17673
17674         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
17675         debugging function. (gdk_event_translate:) Add a default branch
17676         that uses the above function to print debug messages with all
17677         Windows messages symbolically.
17678
17679         * gdk/win32/gdkprivate-win32.h: Declare it, and
17680         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
17681
17682 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
17683
17684         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
17685         public header file.
17686
17687 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
17688
17689         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
17690
17691         * gtk/gtktext.c: made the adjustments no-construct args, simply
17692         provide default adjustments.
17693         (gtk_text_destroy): release adjustments.
17694
17695         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
17696         adjustment argument non-construct.
17697
17698         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
17699         instead of in finalize.
17700         (gtk_progress_get_text_from_value): 
17701         (gtk_progress_get_current_text): 
17702         (gtk_progress_set_value): 
17703         (gtk_progress_get_percentage_from_value): 
17704         (gtk_progress_get_current_percentage): 
17705         (gtk_progress_set_percentage): 
17706         (gtk_progress_configure): ensure an adjustment is present.
17707
17708 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
17709
17710         * gtk/gtkcolorsel.[hc]:
17711         * gtk/gtkcolorseldialog.[hc]:
17712         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
17713         their parent implementation, use bit fields for boolean values, don't
17714         create unused widgets, usage of glib types, braces go on their own
17715         lines, function argument alignment, #include directives etc. etc. etc..
17716
17717         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
17718
17719 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
17720
17721         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
17722
17723         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
17724         of NULL.
17725
17726         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
17727         to freed data.
17728         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
17729
17730         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
17731         to NULL when the toplevel is getting destroyed.
17732         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
17733         (gtk_menu_destroy): 
17734         (gtk_menu_init): store the information of whether we have to
17735         readd the initial child ref_count during destruction in a new
17736         GtkMenu field needs_destruction_ref_count.
17737
17738         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
17739         here, those reading: learn from my mistake! ;)
17740         in order for set_?adjustment to support a default adjustemnt if
17741         invoked with an adjustment pointer of NULL, the code read (pseudo):
17742         if (v->adjustment) unref (v->adjustment);
17743         if (!adjustment) adjustment = adjustment_new ();
17744         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
17745         now imagine the first unref to actually free the old adjustment and
17746         adjustment_new() creating a new adjustment from the very same memory
17747         portion. here, the latter comparision will unintendedly fail, and
17748         all hell breaks loose.
17749         (gtk_viewport_set_hadjustment):
17750         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
17751         after unreferencing it.
17752
17753         * gtk/gtkcontainer.[hc]: removed toplevel registration
17754         functions: gtk_container_register_toplevel(),
17755         gtk_container_unregister_toplevel() and
17756         gtk_container_get_toplevels() which had wrong semantics
17757         anyways: it didn't reference and copy the list.
17758
17759         * gtk/gtkwindow.c: we take over the container toplevel registration
17760         bussiness now. windows are registered across multiple destructions,
17761         untill they are finalized. the initial implicit reference count
17762         users are holding on windows is removed with the first destruction
17763         though.
17764         (gtk_window_init): ref & sink and set has_user_ref_count, got
17765         rid of gtk_container_register_toplevel() call. add window to
17766         toplevel_list.
17767         (gtk_window_destroy): unref the window if has_user_ref_count
17768         is still set, got rid of call to
17769         gtk_container_unregister_toplevel().
17770         (gtk_window_finalize): remove window from toplevel list.
17771         (gtk_window_list_toplevels): new function to return a newly
17772         created list with referenced toplevels.
17773         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
17774
17775         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
17776         adjustment a non-construct arg.
17777         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
17778         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
17779         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
17780
17781         * gtk/gtkrange.c: added some realized checks.
17782         (gtk_range_destroy): get rid of the h/v adjustments in the
17783         destroy handler instead of finalize. remove timer.
17784         (gtk_range_get_adjustment): demand create adjustment.
17785
17786         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
17787         we simply create them on demand now and get rid of them in
17788         the destroy handler.
17789         (gtk_viewport_destroy): get rid of the h/v adjustments in the
17790         destroy handler instead of finalize.
17791         (gtk_viewport_get_hadjustment): 
17792         (gtk_viewport_get_vadjustment): 
17793         (gtk_viewport_size_allocate): demand create h/v adjustment
17794         if required.
17795
17796         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
17797         gtk_widget_real_destroy () functionality.
17798         (gtk_widget_real_destroy): reinitialize with a new style, instead
17799         of setting widget->style to NULL.
17800
17801 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
17802
17803         * gtk/gtkcalendar.c:
17804         * gtk/gtkbutton.c: ported _get_type() implementation over to
17805         GType, either to preserve memchunks allocation facilities,
17806         or because Gtk+ 1.0 GtkTypeInfo was still being used.
17807
17808         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
17809         over. prepare for ::destroy to be emitted multiple times.
17810         removed reference tracer magic. chain into GObjectClass.shutdown()
17811         to emit ::destroy signal.
17812
17813         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
17814         fundamental.
17815
17816         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
17817         cludge.
17818
17819         * gtk/gtksocket.c:
17820         * gtk/gtkplug.c:
17821         * gtk/gtklayout.c:
17822         * gtk/gtklabel.c:
17823         * gtk/gtkargcollector.c:
17824         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
17825         not being a fundamental anymore, and to work with the new
17826         type system (nuked fundamental type varargs clutter).
17827
17828         * gtk/*.c: install finalize handlers in the GObjectClass
17829         part of the class structure.
17830         changed direct GTK_OBJECT()->klass accesses to
17831         GTK_*_GET_CLASS().
17832         changed direct object_class->type accesses to GTK_CLASS_TYPE().
17833
17834         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
17835         GType. made most of the GTK_*() type macros and Gtk* typedefs
17836         simple wrappers around macros and types provided by GType.
17837         most notably, a significant portion of the old API vanished:
17838         GTK_TYPE_MAKE(),
17839         GTK_TYPE_SEQNO(),
17840         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
17841         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
17842         GTK_TYPE_ARGS,
17843         GTK_TYPE_CALLBACK,
17844         GTK_TYPE_C_CALLBACK,
17845         GTK_TYPE_FOREIGN,
17846         GtkTypeQuery,
17847         gtk_type_query(),
17848         gtk_type_set_varargs_type(),
17849         gtk_type_get_varargs_type(),
17850         gtk_type_check_object_cast(),
17851         gtk_type_check_class_cast(),
17852         gtk_type_describe_tree(),
17853         gtk_type_describe_heritage(),
17854         gtk_type_free(),
17855         gtk_type_children_types(),
17856         gtk_type_set_chunk_alloc(),
17857         gtk_type_register_enum(),
17858         gtk_type_register_flags(),
17859         gtk_type_parent_class().
17860         replacements, where available are described in ../docs/Changes-1.4.txt.
17861         implemented compatibility functions for the remaining API.
17862
17863         * configure.in: depend on glib 1.3.1, use gobject module.
17864
17865 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
17866
17867         * TODO.xml: Various updates to current status.
17868
17869 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
17870
17871         * gtk.m4: Print out version when test succeeds.
17872
17873 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
17874
17875         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
17876         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
17877         
17878         (Original triangle color selector from Simon Budig
17879         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
17880         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
17881         Santiago <mrcooger@cyberverse.com>)
17882
17883         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
17884         out into a separate widget.
17885
17886         * gtk/testgtk.c: Add some checkbuttons for toggling palette
17887         and opacity controls.
17888
17889 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
17890
17891         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
17892         snuck in prematurely.
17893
17894 2000-05-07  Tor Lillqvist  <tml@iki.fi>
17895
17896         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
17897         had deleted a ! operator by mistake, which caused
17898         GDK_SELECTION_CLEAR events never to be generated, which caused
17899         only the first copy to the clipboard from an gtkeditable to
17900         actually cause a copy to the Windows clipboard.
17901
17902 2000-05-06  Tor Lillqvist  <tml@iki.fi>
17903
17904         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
17905         compilation, too. Current mingw gcc distributions include the
17906         necessary headers. Also the necessary IIDs are now in mingw
17907         headers/libraries, and own definitions unnecessary.
17908
17909         More hacking on OLE2 DND, still doesn't work though, and thus
17910         ifdeffed out.
17911
17912         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
17913         here, too.
17914
17915 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
17916
17917         * gdk/nanox/*: nano-X port work in progress.
17918         * gdk/simple.c: simple test for Gdk.
17919         * README.nanox: notes about the port: read this first!
17920         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
17921         with nano-X.
17922
17923 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
17924
17925         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
17926         gdk_window_clear() into common code, implement in terms of
17927         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
17928         not redirected to the backing rectangle.
17929
17930 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17931
17932         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17933         EXTRA_DIST. It does not work well when the file that
17934         everything depends on is not in the tarball.
17935
17936 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
17937
17938         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
17939         with recursion where process_updates() is called from
17940         an expose handler. (GtkTextView is highly broken in
17941         doing this, but it should work, so it is a nice test
17942         case.)
17943
17944 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17945
17946         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
17947         handle the case where updates are queued during processing of
17948         updates.
17949
17950 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17951
17952         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
17953         window is on gdk_display - use that instead of segfaulting.
17954
17955 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
17956
17957         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
17958         broken and require an empty arg, give it to them.
17959
17960 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
17961
17962         * gtk/gtklabel.h: indentation fixes.
17963
17964 2000-05-02  Tor Lillqvist  <tml@iki.fi>
17965
17966         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
17967         draw too narrow or too low arcs, they seem to fail, at least with
17968         some display drivers.
17969
17970         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
17971
17972         Large changes to the Win32 backend, partially made necessary by
17973         the changes to the backend-independent internal
17974         structures. Attempts to implement similar backing store stuff as
17975         on X11. The current (CVS) version of the Win32 backend is *not* as
17976         stable as it was before the no-flicker branch was merged. A
17977         zipfile with that version is available from
17978         http://www.gimp.org/win32/. That should be use by "production"
17979         code until this CVS version is usable. (But note, the Win32
17980         backend has never been claimed to be "production quality".)
17981
17982         * README.win32: Add the above comment about versions.
17983
17984         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
17985
17986         * gdk/gdk.def: Update.
17987
17988         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
17989         presumably be replaced by some more better mechanism as 1.4 gets
17990         closer to release shape.
17991
17992         * gdk/makefile.{cygwin,msc}: Update.
17993
17994         * gdk/win32/*.c: Correct inclusions of the backend-specific and
17995         internal headers. Change code according to changes in these. Use
17996         gdk_drawable_*, not gdk_window_* where necessary.
17997
17998         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
17999         our old DND.
18000
18001         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
18002         to interpret single characters as UTF-8. Thanks to Hans Breuer.
18003         Use correct function name in warning messages.
18004
18005         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
18006         GSourceFuncs gdk_event_prepare and gdk_event_check.
18007         (gdk_event_get_graphics_expose): Do implement, use
18008         PeekMessage. Thanks to Hans Breuer.
18009         (event_mask_string): Debugging function to print an GdkEventMask.
18010         (gdk_pointer_grab): Use it.
18011
18012         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
18013         (old) book I used claimed was Hangul actually is CJK Unified
18014         Ideographs Extension A. Also, Hangul Syllables were missing.
18015         Improve logging.
18016
18017         * gdk/win32/gdkgc-win32.c: Largish changes.
18018
18019         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
18020         g_win32_getlocale() from GLib, and not setlocale() to get current
18021         locale name.
18022
18023         * gdk/win32/gdkprivate-win32.h
18024         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
18025         gdkwin32.h, similarily as in the X11 backend.
18026
18027         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
18028         assignment was used instead of equals in if test. Thanks to Hans
18029         Breuer.
18030
18031         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
18032         the X11 version.
18033
18034         * gdk/win32/makefile.{cygwin,msc}
18035         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
18036         path to the Win32 headers that works also with the mingw compiler.
18037
18038         * gtk/gtkstyle.c: Include <string.h>.
18039
18040 2000-04-26  Havoc Pennington  <hp@redhat.com>
18041
18042         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
18043         replacing the broken gtk_label_get ()
18044
18045 2000-04-15  Havoc Pennington  <hp@pobox.com>
18046
18047         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
18048         this keeps scanner scripts from getting confused.
18049
18050         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
18051         data, rather than void
18052
18053 2000-04-15  Tor Lillqvist  <tml@iki.fi>
18054
18055         * gtk/gtkclist.c (gtk_clist_motion)
18056         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
18057         with is_hint FALSE, get x and y from the event. They used to be
18058         used uninitialised. The Win32 backend never sends motion events
18059         marked as hints. This for instance fixes the annoying file and
18060         font selector behaviour in the Win32 version.
18061
18062 2000-04-14  Tor Lillqvist  <tml@iki.fi>
18063
18064         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
18065         gtk_private_n_signals variables, they are used by some software,
18066         sigh.
18067
18068         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
18069         installation directory from the Registry, where the installer
18070         should have put it.
18071
18072 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
18073
18074         * gdk/x11/Makefile.am: Fix problem with installation directory for
18075         gdkx.h
18076
18077         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
18078         <mrcooger@cyberverse.com> so that when selecting menus with the
18079         mouse, the first item will not be selected, but when selecting
18080         with an accelerator, or navigating left-right on a menubar with
18081         the menus popped up, the first item will be selected.
18082
18083 2000-04-05  Dan Damian  <dand@dnttm.ro>
18084
18085         * configure.in: Added "ro" to ALL_LINGUAS.
18086
18087 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
18088
18089         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
18090         indentation.
18091
18092         * Makefile.am (EXTRA_DIST): Fix typo.
18093
18094         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
18095         to catch gdkconfig.h
18096
18097         * gtk/gtkitemfactory.c: Added FIXME.
18098
18099 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
18100
18101         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
18102         s/return_if_fail/return_val_if_fail/g and add a return value.
18103
18104 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
18105
18106         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
18107         merge slipup.
18108
18109         * gdk/gdkinput.h: Fix missing line from merge.
18110
18111 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
18112
18113         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
18114         instead of gdkprivate.h.
18115
18116 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
18117
18118         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
18119         parent class to correctly be GtkDialogClass.
18120
18121 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
18122
18123         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
18124         toplevel windows and their immediate children by their parents,
18125         since the size of toplevel windows is out of our immediate
18126         control and we don't get any real benefit from trying to track
18127         this size for clipping.
18128
18129         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
18130         for input_only windows.
18131
18132         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
18133         to fix some hacks and make sure that we don't try to set the
18134         background of input only windows.
18135
18136 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
18137
18138         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
18139         the _really_ internal stuff, and leave gdkprivate.h for the fake private
18140         stuff that we've traditionally exposed.
18141
18142         * gdk/**.c: Use gdkinternals.h where appropriate.
18143
18144         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
18145         not include gdkprivate-x11.h, move all stuff of conceivable public
18146         interest into gdkx.h; keep all really private stuff in
18147         uninstalled header gdkprivate-x11.h.
18148
18149         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
18150         image->image_put on windows through a new function _gdk_window_draw_image()
18151         to allow us to do backing store for images. (Sort of ugly)
18152
18153         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
18154         contexts locally so that we can offset them properly when drawing 
18155         onto backing pixmaps.
18156
18157         * gdk/gdkinput.h: Reindented
18158
18159         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
18160         pixmap or color for the window, so we can properly initialize
18161         our double-buffer pixmaps, and also so that we temporarily set
18162         a background of None while scrolling.
18163
18164         * gdk/gdkregion.h: Revise region boolean operators to have an
18165         interface that is actually convenient - switch from creating new
18166         regions on every op, to "methods" that modify existing regions
18167         (A = A OP B). 3 argument forms which allow dest == src, would also
18168         be possible, but the current interfaces seem to map nicely
18169         onto what needs to be done. (There is quite a lot of region
18170         code in GDK now.)
18171
18172         * gdk/gdkregion.h: Add constructor from rectangle and a copy
18173         operator.
18174
18175         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
18176         gdkpoly-generic.h: Copy region code from Xlib, switch it over
18177         to 32 bit coordinates, modify it to be mostly GTK+ style
18178         and to have interfaces that match gdkregion.h.
18179
18180         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
18181         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
18182         create a backing pixmap and redirect all drawing to
18183         that backing pixmap until a matching gdk_window_end_paint().
18184
18185         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
18186         Create a special drawable class for GtkWindow's that 
18187         redirects the drawing to the backing pixmap as necessary
18188         and then calls the real operations in _gdk_windowing_window_class.
18189
18190         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
18191         Store invalid region for each window. Generate expose events for invalid
18192         region in an idle. This replaces both the expose compression
18193         and the redrawing queuing in GTK+. It is both more efficient and
18194         simpler than either one individually and far more so then the
18195         combination.
18196
18197         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
18198         Emulate 32 bit coordinates for windows with 16 bit coordinates
18199         by offsetting drawing, guffaw scrolling techniques and
18200         mapping/unmapping child windows as necessary.
18201
18202         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
18203         where, when invalid regions are processed, the region is stored,
18204         and if expose events come in that are detectably duplicate
18205         the processed exposes (by comparison of event serial numbers),
18206         the stored region is subtracted out of those exposes.
18207
18208         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
18209         regions newly exposed when scrolling or resizing windows.
18210         This, combined with forcing processesing of queued invalidated
18211         regions, gives nice flicker-free scrolling.
18212
18213         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
18214         invalidated regions after every scroll.
18215
18216         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
18217         emulation in GDK. Its, for all practical purposes just a
18218         GtkViewport/GtkFixed hybrid now.
18219
18220         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
18221         (16-bit) structures as necessary instead of just casting.
18222
18223         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
18224         in terms of the structures from gdkregion-generic.c, using appropriate
18225         offsets from GDK to X11 coordinates. Cache clip mask and
18226         origin and ts origin locally and only flush to the server
18227         when drawing, to avoid constantly setting and resetting these
18228         values when offsetting GC's for scrolling and backing pixmaps.
18229
18230         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
18231
18232         * gtk/gtkcontainer.c: Call process_all_updates at end
18233         of resizing to reduce flicker. (Avoids having redraw
18234         lag arbitrarily behind resize under some circumstances)
18235
18236         * gtk/gtkentry.c: Remove old backing store code, and simply take
18237         advantage of the new backing store capabilities of GDK.
18238
18239         * gtk/gtkmain.c: Simple implementation of widget backing
18240         store - simply push a paint while handling each expose.
18241         (Should really be configurable widget for widget.)
18242         
18243         * gtk/gtkwidget.c: Remove all the old complicated redraw
18244         code, and simply invalidate the GDK windows from
18245         gdk_window_queue_clear(), etc. (Sigh, so much carefully
18246         debugged complexity ... gone to the winds.)
18247
18248         Remove all the code for suppressing expose events while
18249         resizes are pending; this isn't needed since the invalid
18250         areas won't be processed until after the resizes are
18251         processed, since they are in a lower priority idle.
18252
18253 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
18254
18255         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
18256         and height of dest rectangle for non-intersecting rectangles.
18257
18258 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
18259
18260         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
18261         for GdkRectangle.
18262
18263 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
18264
18265         * gdk/gdk{events,image,private,types,window}.h
18266          gdk/x11/gdkinputprivate.h: Change all coordinates
18267          from int16 to int. Also, Change width and height from
18268          unsigned to signed to avoid all the stupid C 
18269          signedness bugs.
18270
18271 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
18272
18273         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
18274         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
18275         Add some more detailed checking.
18276
18277         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
18278         New function to retrieve the depth of a drawable.
18279
18280         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
18281         field, reorder fields to save memory. 
18282
18283 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
18284
18285         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
18286         of the background image instead of scaling the background down to
18287         a line.
18288
18289         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
18290         which temporarily set slider to wrong size.
18291
18292         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
18293         queue_clear().
18294
18295 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
18296
18297 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
18298
18299         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
18300
18301 2000-03-17  Tor Lillqvist  <tml@iki.fi>
18302
18303         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
18304         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
18305
18306         * gdk/win32/gdkfont-win32.c
18307         * gdk/win32/gdkproperty-win32.c
18308         * gdk/win32/gdkselection-win32.c
18309         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
18310         now declared such.
18311
18312 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
18313
18314         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
18315
18316 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
18317
18318         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
18319         is called without trapping X errors.
18320
18321 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
18322
18323         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
18324         way into the fontset lists.
18325
18326 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
18327
18328         * gtk/gtkthemes.h: add extern "C" scope.
18329
18330 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
18331
18332         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
18333         to make appends to the list constant. (gtk-guy-990901-0.patch)
18334
18335 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
18336
18337         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
18338         for the typename hash table.
18339
18340 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
18341
18342         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
18343         to make sure we never divide by zero. 
18344         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
18345
18346 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
18347
18348         * gtk/gtkfontsel.c: Apply patch from
18349         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
18350         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
18351
18352         Also, some cleanups in atom handling.
18353
18354 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
18355
18356         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18357         not GtkWidget.
18358
18359 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
18360
18361         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
18362         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
18363         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
18364         more guint wrap-around bugs before going to bed.
18365
18366 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
18367
18368         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
18369         guint wrap arounds in allocation.width.
18370
18371         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
18372         process untill we fit the allocation given.
18373
18374 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
18375
18376         * gtk/gtkwidget.c:
18377         (gtk_widget_unrealize): guard widget access with ref/unref
18378         around signal emission.
18379         (gtk_widget_hide): same here, but also check its destroyed
18380         state before queueing a resize.
18381
18382 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
18383
18384         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
18385         of gtk_default_insensitive_bg as insensitive base color.
18386
18387         * gtk/gtktext.c (gtk_text_style_set): set the background color according
18388         to the widget's state.
18389         (gtk_text_realize): same here.
18390         (gtk_text_state_changed): same here.
18391         (draw_bg_rect): compare background color against base[] from
18392         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
18393
18394 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
18395
18396         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
18397         grabs are active, unless a delete event is send to the toplevel
18398         of the currently grab holding widget.
18399
18400 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
18401
18402         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
18403         debugging g_print's.
18404
18405 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
18406
18407         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
18408         ever make the scrolled-window requisition ever depend on the 
18409         visibility state of the scrollbars for the AUTOMATIC policy. 
18410         This breaks the GTK+ requisition model, and causes loops.
18411
18412 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
18413
18414         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
18415         the default font to avoid problems with XFree86-4.0 where the
18416         default charset is iso10646-1, not iso8859-1.
18417
18418 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
18419
18420         * acinclude.m4
18421         * config.guess
18422         * config.sub
18423         * ltconfig
18424         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
18425
18426         * gtk/Makefile.am: minor cosmetic consistency tweak
18427
18428 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
18429
18430         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
18431         the activate_time to 0, so that we handle a quick
18432         press/release press/release properly and don't suppress
18433         the second release. (Red Hat bug #7545)
18434
18435 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
18436
18437         * gtk/gtkctree.c (row_delete):
18438         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
18439         bugs with destruction notifier, *always* update internal
18440         structures *before* calling user code.
18441
18442 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
18443
18444         A few more fixes for bug #5487, #2051, #2677.
18445         * gtk/gtkclist.c : 
18446         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
18447         not GDK_BUTTON_PRESS.
18448         (resync_selection): resync only if selection_mode is
18449         GTK_SELECTION_EXTENDED
18450         * gtk/gtkctree.c (resync_selection): same here
18451
18452 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
18453
18454         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
18455         gdk_drag_get_selection() and gtk_menu_detach().
18456
18457         [ From Jeroen Ruigrok/Asmodai ]
18458
18459 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
18460
18461         * gtk/gtknotebook.c (gtk_notebook_size_request): 
18462         page->tab_label can be NULL.
18463
18464 2000-01-25  Havoc Pennington  <hp@pobox.com>
18465         
18466         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
18467         arg is boolean
18468
18469         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
18470
18471         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
18472
18473         * gdk/gdkproperty.c (gdk_property_get): return boolean
18474
18475         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
18476
18477         * gdk/gdkim.c (gdk_im_ready): return boolean
18478
18479         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
18480
18481         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
18482         glib clash, should fix glib)
18483
18484         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
18485         (gdk_get_show_events): return gboolean, and canonicalize 
18486         to TRUE/FALSE
18487
18488         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
18489         colormap is private
18490         (gdk_colors_alloc): gboolean whether to be contiguous
18491         (gdk_color_equal): return gboolean since we are a predicate
18492         and not a qsort() (this looks semi-wrong due to glib breakage,
18493         IMO glib should be fixed)
18494         
18495         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
18496         (gdk_get_use_xshm): return gboolean
18497         (gdk_pointer_is_grabbed): return gboolean
18498
18499         * gdk/gdk.h: Change prototypes to match all the above changes,
18500         and re-run egtk-format-protos as required.
18501
18502 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
18503
18504         * gtk/gtkctree.c (resync_selection): 
18505         * gtk/gtkclist.c (resync_selection):
18506
18507         Return immediately if clist->drag_pos < 0. This is a workaround
18508         for the corrupt state that the clist gets into when a
18509         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
18510
18511         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
18512         
18513         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
18514         variable from recent commit.
18515
18516 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
18517
18518         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
18519
18520 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
18521
18522         * gtk/Makefile.am: prefix all autogenerated source that get build in
18523         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
18524         in builddir. since we subsequently cd into srcdir for autogeneration,
18525         the paths have to be stripped from the target file names, thusly we
18526         use $(@F) as target names now.
18527         put a comment about configure.in's --disable-rebuilds option,
18528         which can be used for non-writable source directories, for development
18529         setups though, srcdir has to be *writable*.
18530
18531 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
18532
18533         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
18534           Finish the job of allowing event to be NULL.
18535           (Fixes bug #4283, reported by Chris Blizzard)
18536
18537         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
18538           things so that the cursor appears on screen, properly
18539           take into account INNER_BORDER.
18540           (Fixes bug #4754, reported by Antonio Campos)
18541
18542 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
18543
18544         * gtk/gtknotebook.c (gtk_notebook_map): Don't
18545           show the tab_label unless it itself is visible.
18546
18547           gtk/gtknotebook.c (gtk_notebook_size_request):
18548           Do a better job of making sure that the visibility
18549           of the tab label corresponds to whether it should
18550           be mapped or not.
18551
18552 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
18553
18554         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
18555           Use the requisition, not the allocation, since the
18556           allocation has not necessarily been computed yet.
18557           (Pointed out by Eugene Osintsev)
18558
18559 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
18560
18561         * gtk/gtkstyle.c (gtk_style_new): Dont' set
18562           style/base[GTK_STATE_INSENSITIVE] both to
18563           gtk_default_insensitive_bg!
18564           (Bug #2187, reported by Jonathan Blandford)
18565
18566         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
18567           Add Alt_L, Alt_R to list of invalid accelerators.
18568           (Bug #3736, reported by Vlad Harchev)
18569
18570 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
18571
18572         * gtk/gtkfilesel.c (open_ref_dir): Fix several
18573         bugs which occured after an attempt to open 
18574         invalid home directory left cmpl_state->reference_dir == NULL.
18575
18576          - completion on files in home directory didn't work
18577          - completion on an empty string caused  segfault
18578
18579          (Bug #3678, reported by Steve Ratcliffe)
18580
18581         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
18582         cut and paste error that was causing scales to
18583         be incorrectly positioned.
18584         (Bug #2956,
18585          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
18586
18587 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
18588
18589         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
18590         when checking for dcgettext, if we've found we needed
18591         it for dgettext.
18592 +
18593 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
18594
18595         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
18596         queue_clear on NO_WINDOW widgets during a reparent,
18597         since at that point the window and widget heirarchies
18598         are out of sync. This stops crashing in some cases
18599         (the scrolled window reparent test, for instance), and
18600         _probably_ won't cause drawing errors.
18601
18602         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
18603         test do what it was supposed to do and be robust against
18604         window closings, etc. (Bug #2443)
18605
18606 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
18607
18608         * gtk/gtkentry.c: Fix return values on mouse events.
18609         (Bug #2686, Sky <seb_sky@yahoo.com>)
18610
18611         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
18612         (pointed out by George Lebl)
18613
18614         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
18615         (From Ettore Perazzoli  <ettore@helixcode.com>)
18616  
18617 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
18618
18619         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
18620         clicks between rows or outside calender area correctly.
18621         (Patch from Damon Chaplin)
18622
18623         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
18624         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
18625           Call destroy function when overwriting existing data. 
18626           (Pointed out by Damon Chaplin)
18627
18628 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
18629
18630         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
18631           which was causing problems on various systems with Xmu.
18632           This hasn't been needed for a very long time.
18633           (Fixes #1185 3167)
18634
18635 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
18636
18637         * gdk/gdki18n.h: Include <ctype.h> when defining
18638           gdk_isw* in terms of is* as a fallback.
18639           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
18640
18641 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
18642
18643         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
18644           realize the widget when it is size allocated!
18645           (old, old bug)
18646
18647         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
18648           Removed unused call to gdk_window_get_size() that
18649           showed up when the above was fixed.
18650
18651 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
18652
18653         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
18654           fix up widget->window when the widget is a
18655           NO_WINDOW container widget.
18656
18657 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
18658
18659         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
18660           to account for the fact that feof() does _not_ 
18661           return TRUE on errors, and thus avoid infinite loops
18662           when trying to use gdk_pixmap_create_from_xpm()
18663           on unreadable values.
18664
18665 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
18666
18667         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
18668
18669 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
18670
18671         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
18672           gdk_gc_set_dashes to take gint8 instead of gchar to
18673           make it clearer that it is _not_ a NULL terminated string.
18674
18675         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
18676           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
18677           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
18678           arguments.
18679
18680 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
18681
18682         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
18683         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
18684         background size relative to our allocation, guard against small
18685         allocations, we may have not yet been size allocated.
18686
18687 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
18688
18689         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
18690         not just version == 3. We implement all 3 + most of 4 - 
18691         (we don't support matching text/plain;charset=iso-8859-1
18692         to a dest that expects text/plain). We'll still advertise
18693         3 to be safe, but any client implementing version >= 3
18694         must interoperate with 3.
18695         
18696 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
18697
18698         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
18699         background and gc members, add a warning in gtk_tooltips_set_color()
18700         indicating that this function is deprecated.
18701
18702 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
18703
18704         * docs/gtkfaq.sgml: FAQ Update:
18705           - Minor cleanups (Emmanuel, me)
18706           - New questions:
18707                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
18708                 How can I retrieve the text from a GtkMenuItem? (timj)
18709                 How do I validate/limit/filter the input to a GtkEntry? (me)
18710                 Memory does not seem to be released when I free the list
18711                         nodes I've allocated (timj)
18712
18713 2000-03-07  Tor Lillqvist  <tml@iki.fi>
18714
18715         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
18716         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
18717         for which it is no use to call GetLastError onWin9x.
18718         (gdk_other_api_failed) New function, for general error
18719         reporting without calling GetLastError.
18720         (gdk_win32_api_failed) OTOH, this function always calls
18721         GetLastError. (gdk_win32_last_error_string) Remove this function,
18722         GLib has the equivalent now.
18723
18724         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
18725         call them with function name, file name and line number in the
18726         arguments.
18727
18728         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
18729         functions.
18730         
18731         * gtk/gtk.def: Add some missing entry points.
18732
18733         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18734         gtk_paned_set_gutter_size, which don't exist any longer, as void.
18735         
18736         Fixes by Hans Breuer:
18737
18738         * gdk/makefile.msc: Update for debugging.
18739
18740         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
18741         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
18742         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
18743         in the dash_list.
18744
18745         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
18746         the x11 backend.
18747
18748         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
18749
18750         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
18751
18752 2000-03-04  Tor Lillqvist  <tml@iki.fi>
18753
18754         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
18755         just pixel value of background colour.
18756
18757         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
18758         containing code snippet previously duplicated in a couple of
18759         places.
18760         
18761         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
18762         gdk_colormap_color.
18763
18764         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
18765         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
18766         events for autorepeated Shift, Control and Alt keys. Use
18767         gdk_colormap_color.
18768
18769         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
18770         pointer is inside the window the cursor of which we are setting,
18771         call SetCursor immediately.
18772
18773         * gdk/win32/makefile.cygwin
18774         * gtk/makefile.cygwin: If we don't have the build number stamp
18775         file, use zero.
18776
18777         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18778         gtk_paned_set_gutter_size as empty.
18779
18780         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
18781         
18782 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
18783
18784         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
18785           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
18786           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
18787           docs/gtk_tut.sgml docs/gtk.texi TODO:
18788
18789           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
18790
18791 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
18792
18793         * gtk/gtkcalendar.c: Implement num_marked_dates,
18794           and don't emit mutiple day_selected signals on
18795           month_prev.
18796
18797 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
18798
18799         * docs/make-todo (lineno): let title and logo be configurable so
18800         that GNOME can use this script too.
18801
18802         * TODO.xml: added logourl and a title
18803
18804 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
18805
18806         * TODO.xml: Added some UI items, and an explanatory
18807         comment at the top of the file.
18808
18809 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
18810
18811         * TODO.xml: some updates, added abunch of new entries.
18812         a note for those fiddeling with this file, when done
18813         with it, invoke:
18814         $ ./docs/make-todo TODO.xml >/dev/null
18815         and correct output errors before comitting changes.
18816
18817 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
18818
18819         * TODO.xml: Added XML-structured TODO file.
18820         * docs/make-todo: python script to turn TODO.xml into
18821           pretty XML output. 
18822
18823 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
18824
18825         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
18826         the function to let it draw the seven dots, instead of the old,
18827         much maligned, method.
18828         (draw_dot): New function to draw a dot.
18829
18830         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
18831         to draw the handle inside the border width as opposed to outside.
18832         Use paint function instead of gdk_draw_point.
18833
18834         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
18835         to draw the handle inside the border width as opposed to outside.
18836         Use paint function instead of gdk_draw_point.
18837
18838         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
18839         Change indenting to be more GTK like.
18840
18841 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
18842
18843         * docs/gtk_tut.sgml: New section on GtkCalendar
18844         * examples/calendar: Update example code
18845
18846 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
18847
18848         * docs/gtkfaq.sgml: FAQ Update
18849
18850 2000-02-19  Anders Carlsson  <andersca@gnu.org>
18851
18852         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
18853         to prevent the scroll event to be propagated upwards.
18854
18855 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
18856
18857         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
18858         OwnerGrabButtonMask from button entries for
18859         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
18860
18861         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
18862         to the event mask (which will result in button/press release
18863         being added to the event mask on Unix) so scrolling works
18864         for layouts in scroll windows.
18865
18866         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
18867
18868         Patch from Anders Carlsson  <andersca@gnu.org> to add
18869         a scroll event.
18870
18871         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
18872         scrolling to the "Test Scrolling" part of testgtk.
18873  
18874         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
18875  
18876         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
18877         it against GDK_SCROLL.
18878  
18879         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
18880         way of mouse wheel scrolling.
18881  
18882         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
18883  
18884         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
18885  
18886         * gtk/gtkmain.c: Removed previous mouse wheel hack.
18887  
18888         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
18889         gdk_event_mask_table.
18890  
18891         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
18892         GdkEventScroll handler.
18893  
18894         * gdk/gdkevents.h: Added GdkEventScroll structure.
18895  
18896 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
18897
18898         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
18899         and Anders Carlsson to change the Paned widgets so that they
18900         can be dragged from anywhere along the length. Also change
18901         the way that this is drawn to make this apparent.
18902
18903         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
18904         from George Lebl to check that option_menu->menu is present
18905         before getting history.
18906
18907 2000-02-14  Tor Lillqvist  <tml@iki.fi>
18908
18909         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
18910         before the assertion for non-NULL segment list.
18911
18912         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
18913         Seems that pattern brushes *must* be 8x8 pixels! At least on my
18914         machine, but it might be display driver dependent. Sigh, so make
18915         sure the stipple is that size. Does Windows suck or what?
18916
18917         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
18918         places.
18919
18920 2000-02-13  Havoc Pennington  <hp@pobox.com>
18921
18922         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
18923         refcount to 1
18924         (gdk_cursor_new): init refcount to 1
18925
18926         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
18927
18928 2000-02-13  Tor Lillqvist  <tml@iki.fi>
18929
18930         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
18931         so that we don't have to do unnecessary settings to the HDC.
18932
18933         * gdk/win32/gdkdrawable-win32.c
18934         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
18935         gdk_gc_predraw.
18936
18937         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
18938         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
18939         GDI paths, call WidenPath to get the outline of the stroken path,
18940         and then fill the outline (with the brush that was built from the
18941         stipple).
18942
18943         * gdk/win32/gdkgc-win32.c: Factor out common code from
18944         _gdk_win32_gc_new and gdk_win32_gc_set_values into
18945         gdk_win32_gc_values_to_win32values. Use correct colour for
18946         SetBkColor() (Until now the code actually used a random colour in
18947         the call to SetBkColor()... but that didn't show up as not many
18948         GDI APIs use the background colour. Pattern (opaque stippled)
18949         brushes do.)
18950
18951         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
18952         gdk_win32_api_failed): New functions for error logging.
18953
18954         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
18955         WIN32_API_FAILED to call them, passing function or file name and
18956         line number.
18957
18958         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
18959
18960         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
18961         GdkColor for foreground and background in GdkGCWin32Data.
18962
18963         * gdk/makefile.cygwin: Link in the resource object separately.
18964
18965         * gdk/win32/rc/gdk.rc
18966         * gtk/gtk.rc (New file)
18967         * gdk/win32/makefile.cygwin
18968         * gtk/makefile.cygwin: Update build number in DLLs automatically,
18969         as in GLib.
18970
18971 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
18972
18973         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
18974         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
18975         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
18976         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
18977         parameters given and cursor->ref_count. coding style fixups.
18978
18979         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18980         not GtkWidget.
18981         
18982         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
18983         fix up widget macros and add _GET_CLASS() variant.
18984         
18985         * gtk/*.c: some GtkType fixups.
18986
18987 2000-02-09  Tor Lillqvist  <tml@iki.fi>
18988
18989         * gdk/win32/gdkproperty-win32.c
18990         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
18991         were reversed.
18992
18993 2000-02-04  Tor Lillqvist  <tml@iki.fi>
18994
18995         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
18996         g_filename_to_utf8 to convert the font names Windows gives us from
18997         whatever is the default codepage to UTF-8.
18998         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
18999         in the other direction.
19000
19001         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
19002         error in debugging output.
19003
19004 2000-02-02  Tor Lillqvist  <tml@iki.fi>
19005
19006         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
19007         and height parameters to gdk_window_clear_area(). Not minus one.
19008
19009 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
19010
19011         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
19012         checks if the widget passed to gtk_drag_get_data() was not the
19013         dest widget.
19014
19015 2000-02-01  Tor Lillqvist  <tml@iki.fi>
19016
19017         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
19018         g_filename_from_utf8 functions (which were added a moment ago to
19019         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
19020         size buffers.
19021
19022         gtk_file_selection_get_filename returns the filename in the C
19023         runtime encoding. It calls g_filename_from_utf8, but copies the
19024         returned string to a static buffer, which is returned. I think
19025         this is better than returning the result from g_filename_from_utf8
19026         directly, which would mean all apps that use it would have to free
19027         the return value. Or should this function care about this issue at
19028         all? Maybe a new function with clearly defined semantics.
19029
19030         * gtk/gtkfilesel.h: Add comment about
19031         gtk_file_selection_get_filename returning the filename in the C
19032         runtime's encoding.
19033
19034         * README.win32
19035         * gdk/gdk.def
19036         * gdk/makefile.{cygwin,msc}
19037         * gtk/gtk.def: Updates.
19038
19039         * gdk/gdkcursor-win32.c: Initialise refcount.
19040
19041 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
19042
19043         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
19044
19045 2000-01-30  Havoc Pennington  <hp@pobox.com>
19046
19047         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
19048         destroy
19049
19050         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
19051
19052         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
19053         implemented in platform-specific code
19054
19055         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
19056
19057         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
19058         underscore in front
19059
19060         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
19061         put an underscore in front
19062
19063         * gdk/gdkcursor.c: new file, implements
19064         gdk_cursor_ref/gdk_cursor_unref
19065
19066         * gdk/gdkcursor.h: Refcount GdkCursor
19067
19068         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
19069
19070 2000-01-29  Tor Lillqvist  <tml@iki.fi>
19071
19072         * gdk/gdkwindow.h
19073         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
19074
19075 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
19076
19077         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
19078         structures to properly inherit from GtkWidget not GtkBin.
19079
19080 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
19081
19082         * gtk+.spec.in: Added lib/gtk+/include/* to %files
19083         (bug #5178 - Peter Wainright)
19084         
19085         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
19086         so that it will be installed.
19087         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
19088
19089 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
19090
19091         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
19092         for the GtkStyleClass vtable const.
19093
19094         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
19095         take a const string argument like GtkTranslateFunc. This will
19096         require changes in use code.
19097
19098 2000-01-19  Tor Lillqvist  <tml@iki.fi>
19099
19100         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
19101         semantics (to mimic the X11 backend, which just calls XClearArea)
19102         is to check for zero width (and height), and in that case use the
19103         window's width minus x (height minus y). This fixes for instance
19104         some redraw problems with gtkclist, which were easily noticeable
19105         in the gtk file selection widget.
19106
19107         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
19108         windows.
19109
19110 2000-01-13  Tor Lillqvist  <tml@iki.fi>
19111
19112         * configure.in
19113         * gdk/Makefile.am
19114         * gdk/x11/Makefile.am
19115         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
19116         (bug #5177).
19117         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
19118         out later.
19119
19120 2000-01-09  Tor Lillqvist  <tml@iki.fi>
19121
19122         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
19123         WM_MOVE for iconified or invisible windows. This fixes various
19124         problems when minimising windows. Thanks to Bernd Herd.
19125
19126 2000-01-05  Tor Lillqvist  <tml@iki.fi>
19127
19128         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
19129         backend's draw_lines method, not draw_points.
19130
19131 2000-01-02  Tor Lillqvist  <tml@iki.fi>
19132
19133         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
19134         before Owen's reorganisation: Don't have queued_events and
19135         queued_tail statics in this file, but use gdk_queued_events and
19136         gdk_queued_tail. This makes exposure event compression work again.
19137
19138         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
19139         seem to be needed?
19140
19141 1999-12-30  Tor Lillqvist  <tml@iki.fi>
19142
19143         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
19144         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
19145         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
19146         doesn't do anything.
19147
19148         * gdk/gdk.def: Add gdk_xid_table_insert.
19149
19150         * gdk/win32/gdkprivate-win32.h
19151         * gdk/win32/gdkevents-win32.c
19152         * gdk/win32/gdkinput-win32.c
19153         
19154         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
19155         extension_events field in the GdkWindowWin32Data struct. Use only
19156         the extension_events field in GdkWindowPrivate. Previously one was
19157         set, and the other one tested, which broke tablet
19158         functionality. Thanks to Keishi Suenaga for pointing this out.
19159
19160 1999-12-18  Tor Lillqvist  <tml@iki.fi>
19161
19162         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
19163         When handling a single character (text length == 1), don't handle
19164         it as if it was UTF-8.
19165
19166 1999-12-11  Tor Lillqvist  <tml@iki.fi>
19167
19168         * Makefile.am: Distribute README.win32.
19169         
19170         * gdk/Makefile.am
19171         * gdk/win32/Makefile.am: Distribute Win32 files.
19172
19173         * gdk/makefile.msc: New file.
19174
19175         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
19176         after label).
19177
19178         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
19179         gdk_error_code as GDKVAR, as they are referred outside GDK.
19180
19181         * gdk/win32/makefile.msc: Update.
19182
19183         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
19184         tweaks. Check only if at least one of those Unicode subrange bits
19185         we care for is set. If no code page bits are set, guess (wildly)
19186         based on the charset.
19187
19188         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
19189
19190         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
19191         non-NULL.
19192
19193         * gtk/gtkdnd.c
19194         * gtk/gtklayout.c
19195         * gtk/gtkplug.c
19196         * gtk/gtkselection.c
19197         * gtk/gtksocket.c
19198         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
19199         appropriate. There must be a cleaner way to handle this?
19200
19201         * gtk/gtkrc.c: Must include windows.h on Win32.
19202
19203         * gtk/testgtk.c: No need to include gdkx.h.
19204
19205         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
19206
19207 1999-12-07  Tor Lillqvist  <tml@iki.fi>
19208
19209         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
19210         the rbearing is set to the same as the width, but this should be
19211         fixed.
19212
19213 1999-12-06  Tor Lillqvist  <tml@iki.fi>
19214
19215         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
19216         function. If Windows doesn't tell us what Unicode subranges a font
19217         covers, guesstimate based on the codepages it covers. This will
19218         hopefully help those Windows versions or fonts that don't give us
19219         any useful Unicode subrange information with GetTextCharsetInfo.
19220         Call this function in gdk_font_load_internal.
19221
19222         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
19223         minor changes.
19224
19225 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
19226
19227         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
19228         New function, long needed.
19229
19230 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
19231
19232         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
19233         only_if_exists argument of gdk_atom_intern to
19234         bool.
19235
19236 1999-11-25  Tor Lillqvist  <tml@iki.fi>
19237
19238         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
19239         Fix two copy&paste errors.
19240
19241         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
19242         win32 has changed.
19243
19244         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
19245         GdkWin32SingleFont struct.
19246
19247         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
19248         subranges of loaded fonts. Clear font signature first, in case
19249         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
19250         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
19251
19252         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
19253         Unoffset clip region.
19254
19255 1999-11-23  Tor Lillqvist  <tml@iki.fi>
19256
19257         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
19258         event->any.window before calling filter functions.
19259
19260 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
19261
19262         * gtk/gtkgamma.h: Adapt cast macros to standard.
19263
19264 [ Merges from 1.2 ]
19265
19266 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
19267
19268         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
19269         If translation does not include a '/', use entire
19270         translation instead of crashing.
19271
19272 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
19273
19274         * docs/gtk_tut.sgml:
19275         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
19276
19277 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
19278
19279         * gtk/gtkselection.c (gtk_target_list_remove): Use
19280         g_list_remove_link, not g_list_remove.
19281
19282         [ From Geert Bevin <gbevin@thunderstorms.org> ]
19283         
19284 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
19285
19286         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
19287         statement upon unselection (how the heck did that slip in?).
19288
19289 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
19290
19291         * gtk/gtktext.c (gtk_text_freeze): 
19292         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
19293         in frozen state (and aparently crashes). patch provided by Anders
19294         Melchiorsen <and@kampsax.dtu.dk>.
19295
19296 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
19297
19298         * fix insensitive default/focus widget activation,
19299         reported by Matt Goodall <mgg@isotek.co.uk>.
19300
19301         * gtk/gtkwindow.c (gtk_window_key_press_event): 
19302         (gtk_window_activate_default):
19303         (gtk_window_activate_focus):
19304         return handled=FALSE for actiavtion of insensitive default
19305         widgets. return handled=TRUE for activation of insensitive
19306         focus widgets. don't activate in either case.
19307
19308 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
19309
19310         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
19311         and $glib_cflags to match library order and in the
19312         theory that an old version of GLib is more likely to
19313         be in the include directory for X then vice-versa.
19314         (Bug #2776)
19315
19316 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19317
19318         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
19319         to determine the locale for fontsets, not LC_MESSAGES;
19320         the user may want English messages with a handling
19321         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
19322         will still be broken) (Bug #2891)
19323
19324 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19325
19326         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
19327
19328 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19329
19330         * gtk/gtkrc.ko: Changed the Korean default fontset.
19331
19332 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
19333
19334         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
19335         where when scrolling to the left or top double exposes
19336         were done, causing major slowdowns.
19337
19338 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
19339
19340         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
19341         names to lowercase and alphanumeric, before looking
19342         them up.
19343
19344         * gtk/Makefile.am: Install codeset variant gtkrc files
19345         with normalized names.
19346
19347 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
19348
19349         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
19350         popup menus when the menu is already visible, but its parent
19351         is still hidden, (happens after tornoff window got hidden).
19352
19353 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
19354
19355         * gtk/Makefile.am (install-data-local): Fix
19356         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
19357         deleted, causing error messages on install.
19358
19359 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
19360
19361         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
19362         the handle as well, since we now sometimes ignore
19363         exposes on the handle while resizing.
19364
19365 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
19366
19367         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
19368         extra g_free introduced in one of the last one or two 
19369         commits.
19370
19371 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
19372
19373         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
19374         consistent, put each style that a gtkrc.* file creates
19375         in a unique namespace, remove old files before installing.
19376
19377 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
19378
19379         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
19380         gtk_rc_init is called multiple times. (Yes, people who
19381         do that have bugs in their code.)
19382
19383 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
19384
19385         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
19386         Remove it since it's generated by the Makefile anyway
19387
19388 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
19389
19390         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
19391         device->info.axes for core pointer.
19392
19393 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
19394
19395         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
19396         idle_id, to deal with obsolete, broken C libraries.
19397
19398 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
19399
19400         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
19401         allocation->x/y twice!
19402
19403         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
19404         consistent with gtk_vscale_pos_trough().
19405
19406 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
19407
19408         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
19409         be queueing a resize on a toplevel container between
19410         the time we show it and when we map it. So, we need
19411         to test GTK_WIDGET_VISIBLE() for toplevels, and only
19412         use GTK_WIDGET_DRAWABLE() for child windows.
19413
19414 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
19415
19416         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
19417         (fixes bug #2144)
19418
19419 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
19420
19421         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
19422         container DRAWABLE (instead of VISIBLE), so we don't queue
19423         resizes on non-toplevel containers.
19424
19425 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
19426
19427         * gtk/gtkselection.[ch]: Make the data argument
19428         const guchar *.
19429
19430 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
19431
19432         * gtk/gtkwindow.c: Try to behave sensibly if 
19433         the focus widget is the window itself. (Should
19434         we allow this at all?)
19435
19436 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
19437
19438         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
19439         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
19440         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
19441         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
19442         in prototypes and implementations consistent (Tomas Ogren).
19443
19444         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
19445         before the widget is unparented (reported by damon).
19446
19447         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
19448         since we provide unsigned data anyways.
19449
19450 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
19451
19452         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
19453         the call to gtk_tooltips_layout_text() until later.
19454
19455         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
19456         Call gtk_widget_ensure_style() before using the style.
19457
19458 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
19459
19460         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
19461         for old widgets that don't propagate draws to all
19462         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
19463
19464 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
19465
19466         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
19467         for a redraw but just the widget that requested the resize.
19468
19469 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
19470
19471         * gtk/gtkcontainer.c: added new widget level method
19472         gtk_container_set_reallocate_redraws() and a GtkContainer flag
19473         reallocate_redraws : 1 to reflect the setting, exported this through
19474         the argument system as a boolean ::reallocate_redraws.
19475
19476         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
19477         on the widget because the allocation changes, do so as well for
19478         widget->parent if the parent has reallocate_redraws set to TRUE.
19479         with that containers requesting reallocation redraws get automatically
19480         redrawn if their children changed allocation (this unfortunately
19481         affects also other children that didn't change allocation, but we
19482         cannot work around that before 1.3).
19483
19484 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
19485
19486         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
19487         _and_ height are >0 (not _or_).
19488
19489         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
19490         instead of gtk_container_queue_resize(), which is a core gtk internal
19491         function (must have been on crack when i queued that).
19492
19493         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
19494         we can check more reliably if we want to discard expose events.
19495         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
19496         flag.
19497         
19498         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
19499         we simply trust these events. for deciding whether to discard exposes,
19500         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
19501         
19502 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
19503
19504         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
19505         queues of areas that are completely off screen.
19506
19507         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
19508         logic for handleboxes.
19509
19510         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
19511         check on width/height.
19512
19513 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
19514
19515         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
19516         we are fine with using $@ the way we do (if we actually encounter
19517         brokeness with $@ in VPATH builds because of additional path prefixes,
19518         we need to use $(@F) actually).
19519
19520 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
19521
19522         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
19523         short lived bugs, that would allow language bindings to do surgeries
19524         to our guts.
19525
19526 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
19527
19528         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
19529         where comparison was being done against an uninitialized
19530         value causing intermittant results depending on
19531         compiler flags. Also make it clearer that we aren't
19532         ever initializing the child as 0x0 (though this will
19533         be caught in gtk_widget_size_allocate())
19534
19535 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
19536
19537         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
19538         gtk_window_unset_transient_for() call after we do checks
19539         involving the old transient parent.
19540         [ From Lance Capser <lmc@cyberhighway.net> ]
19541
19542 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
19543
19544         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
19545         an empty file.
19546
19547 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
19548
19549         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
19550         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
19551
19552 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
19553
19554         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
19555         `$@' is valid only in the build dir, not after we've done 
19556         `cd $srcdir'.  Also use `test -f' instead of less portable
19557         `test -e'.
19558
19559 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
19560
19561         * gtk/gtktext.c (correct_cache_insert): Rewrite
19562          for simplicity, and hopefully correctness.
19563          (Fixes bug #1322, which was a segfault when
19564           on some insertions with the properties around
19565           the insertion set up just wrong.)
19566
19567         * gtk/gtktext.c (gtk_text_adjustment): When we receive
19568          a "changed" signal, clamp the new value to the adjustment
19569          bounds to avoid segfaulting if someone tries to change
19570          the adjustment to a bogus value. (Bug #1795)
19571
19572 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19573
19574         * gtk/gtkmain.c: Ignore unexpected destroy notifies
19575         for children, for toplevel windows handle them
19576         like delete_event.
19577
19578         * gtk/gtkplug.c: Add an unrealize handler so that
19579         we unref plug->socket_window when we are done
19580         with it.
19581
19582 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
19583
19584         * gtk/gtktext.c (clear_area): Fix stupid signedness
19585          problem that was causing background to sometimes
19586          be misaligned.
19587
19588 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
19589
19590         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
19591         
19592         * gtk/gtkmenu.c (gtk_menu_position): Make
19593          sure we never position menus with negative x, y,
19594          since gtk_widget_set_uposition() can't handle that.
19595
19596         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
19597          Modify the positioning code a bit so that we always
19598          put the top-left corner onscreen. (This is for
19599          UI reasons, gtk_menu_position() now takes care of
19600          gtk_widet_set_uposition() brokeness.)
19601
19602 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
19603
19604         * gtk/Makefile.am: fixed up things for -jx, x > 1.
19605
19606 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
19607
19608         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
19609           RC style that is passed in. The lack of the ref
19610           before was a bug. If people worked around this
19611           bug, this will introduce a slight memory leak
19612           in their code. The code should typically look like:
19613
19614             rc_style = gtk_rc_style_new ();
19615             [...]
19616             gtk_widget_modify_style (widget, rc_style);
19617             gtk_rc_style_unref (rc_style);
19618
19619         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
19620           the style if it was already set.
19621
19622         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
19623           style if it was set before.
19624
19625 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19626
19627         * gtk/testgtk.c (main): Add a check to see if we
19628           are being run from the correct directory and
19629           to quit nicely if we are not.
19630
19631         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
19632           static.
19633
19634 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
19635
19636         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
19637
19638         * gtk/gtkwindow.c:
19639         queue resizes unconditionally (gtk_widget_queue_resize will figure
19640         what to do if the window is not realized).
19641         (gtk_window_move_resize): only recenter the window
19642         for GTK_WIN_POS_CENTER_ALWAYS.
19643         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
19644         the same way as GTK_WIN_POS_CENTER.
19645
19646 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
19647
19648         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
19649         with (!(info->last_flags & GDK_HINT_POS)) instead of
19650         (!info->last_flags & GDK_HINT_POS).
19651
19652         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
19653         new_height unconditionally, because we use these values even if
19654         !default_size_changed && !hints_changed.
19655         comented the (default_size_changed || hints_changed) case with
19656         respect to resize rejects from the window manager.
19657
19658         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
19659         in the zvt condition hack, since this includes the window hints, set
19660         the hints after the handling_resize case.
19661
19662         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
19663         window is initially shown with to the geometry.
19664
19665 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
19666
19667         * gtk/gtkwindow.c (gtk_window_move_resize):
19668         s/size_changed/default_size_changed/g so i know what's
19669         really going on (frying brain on smaller flame now).
19670
19671 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
19672
19673         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
19674         we have size_changed upon handling_resize. this is a gross
19675         workaround for the broken zvt widget and should be removed in
19676         1.3 again (search for FIXME).
19677         Owen provided an accurate comment for this:
19678
19679         /* We could be here for two reasons
19680          *  1) We coincidentally got a resize while handling
19681          *     another resize.
19682          *  2) Our computation of size_changed was completely
19683          *     screwed up, probably because one of our children
19684          *     is broken. It's probably a zvt widget.
19685          *
19686          * For 1), we could just go ahead and ask for the
19687          * new size right now, but doing that for 2)
19688          * might well be fighting the user (and can even
19689          * trigger a loop). Since we really don't want to
19690          * do that, we requeue a resize in hopes that
19691          * by the time it gets handled, the child has seen
19692          * the light and is willing to go along with the
19693          * new size. (this happens for the zvt widget, since
19694          * the size_allocate() above will have stored the
19695          * requisition corresponding to the new size in the
19696          * zvt widget)
19697          *
19698          * This doesn't buy us anything for 1), but it shouldn't
19699          * hurt us too badly, since it is what would have
19700          * happened if we had gotten the configure event before
19701          * the new size had been set.
19702          */
19703
19704 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
19705
19706         * gtk/gtkrc.c: deal properly with the fact that RC
19707           style lists may include rc styles more than once.
19708
19709         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
19710           unused static function.
19711
19712         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
19713           stack of directories of RC files currently being
19714           parsed and implicitely add them to pixmap path.
19715           
19716           This fixes a bug where the directory would get
19717           appended then overwritten by pixmap_path declarations.
19718
19719           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
19720
19721         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
19722           theme's exit function. (Patch from Peter Wainwright,
19723           bug #1454)
19724
19725         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
19726           Add a destroy() handler to take care of removing
19727           group for menu item. (Fixes bug #1197)
19728
19729         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
19730           in warning message.
19731
19732 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
19733
19734         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
19735         roundtrip to figure window's width and height, since we know that
19736         anyways from widget->allocation.
19737
19738 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
19739
19740         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
19741           the hints after we request the new size.
19742
19743 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
19744
19745         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
19746           GTK_WIDGET_REALIZED() assertion - we can compute the
19747           hints before we are realized.
19748
19749         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
19750           hint changing so that we have a value of hints_changed
19751           when we decide whether to constrain the window size.
19752
19753         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
19754
19755         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
19756         change back to G_MAXINT.
19757
19758 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
19759
19760         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
19761         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
19762         contain uncluttered values.
19763         (gtk_window_compute_hints): simply assert that window is realized
19764         and that geometry_info is valid, since we rely on this anyways.
19765         (gtk_window_constrain_size): major cleanups to the code.
19766         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
19767         for the base size, instead of the minimums. use 32767 as max width
19768         and height (like in gtkwindow.c) instead of G_MAXINT.
19769
19770 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
19771
19772         * cleaned up the GtkContainer.need_resize flag handling mess, we
19773         only need to force resize requests when we were prematurely
19774         realized, or our widget tree was modified when we were temporarily
19775         hidden. handling these cases directly upon showing the window (i.e.
19776         while the GdkWindow is still unmapped) avoids the need to wait for
19777         a configure event response and therefore makes the GUI more snappier
19778         and avoids blank windows during the roundtrip.
19779
19780         * gtk/gtkwidget.c:
19781         (gtk_widget_hide): 
19782         (gtk_widget_show): don't queue resizes on toplevels, they know how
19783         to deal with matters.
19784
19785         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
19786         flag directly for not visible resize containers and spare us unecessary
19787         signal emissions.
19788
19789         * gtk/gtkwindow.c:
19790         (gtk_window_realize): if we need to enforce premature size allocation,
19791         queue a container resize so we are correctly resized later on.
19792         (gtk_window_init):
19793         (gtk_window_size_request):
19794         don't freak around with the ->need_resize flag,
19795         gtk_container_queue_resize() will care about that.
19796         (gtk_window_show):
19797         handle initial resizing issues here, we can handle matters better in
19798         this place, especially since we know that our GdkWindow is still
19799         unmapped.
19800         (gtk_window_move_resize):
19801         don't care about ->need_resize at all.
19802         handle size changes properly that occoured while we waited for a
19803         configure event.
19804
19805 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
19806
19807         * gtk/gtkwidget.c (gtk_widget_set_uposition):
19808         * gtk/gtkwindow.[hc] (gtk_window_reposition):
19809         Move the hint setting code from gtk_widget_set_uposition
19810         to here; set the hints so that we respect any previously
19811         set geometry hints.
19812
19813         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
19814         change the window hints here or move the window here,
19815         let that happen in gtk_window_move_resize().
19816
19817 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
19818
19819         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
19820         to already queued resizes (and therefore redraws) on a widget, check
19821         its anchestry as well.
19822
19823         * gtk/gtkcontainer.c:
19824         (gtk_container_queue_resize): clear resize widgets for resize
19825         containers before aborting prematurely. this is especially important
19826         for toplevels which may need imemdiate processing or their resize
19827         handler to be queued.
19828         (gtk_container_dequeue_resize_handler): added new internal function for
19829         gtkwindow.c.
19830
19831         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
19832         configure event, take possible changes in window position into account
19833         as well.
19834         if we request a new window size, queue up a resize handler that will
19835         last until the configure event response arrives.
19836         combined the ->need_resize case (initial show) with the general size
19837         (hints) changed case and added even more comments.
19838         if !auto_shrink, only revert to the old allocation if the new size
19839         is smaller than the current allocation.
19840
19841 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
19842
19843         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
19844                            gtk_window_set_geometry_hints
19845                            gtk_window_set_default_size):
19846         When hints are set, queue a resize so that the hints will
19847         be eventually reset on the toplevel.
19848
19849         * gtk/gtkwindow.c (gtk_window_show): Use
19850         gtk_window_compute_default_size(). Clear the need_resize flag
19851         on the initail map so that we don't unnecessarily trigger the
19852         resize code.
19853
19854         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
19855         into separate functions. Compare the hints we are setting
19856         with what we set last time so that we can accurately
19857         tell when we need to reset the hints.
19858
19859         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
19860         function to figure out the size from requisition
19861         and default_size.
19862
19863         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
19864         from fvwm to constrain a size to the geometry hints.
19865
19866         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
19867         to compare two sets of geometry hints.
19868
19869         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
19870         from gtk_window_set_hints(), just compute the hints,
19871         don't set them.
19872
19873         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
19874         code from gtk_window_move_resize() to separate function,
19875         rationalize a bit.
19876
19877 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
19878
19879         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
19880         structure into a new private structure.
19881
19882         * gtkrc.c: Split GtkRcStyle into public/private.
19883         In the private part, add a list of pointers to the
19884         RcStyle lists this RcStyle participates in.
19885
19886         * gtkrc.c: When a RcStyle is free, remove all
19887         lists referencing it from the 
19888         realized_style_ht hash, and free those lists.
19889         
19890         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
19891         gtk_rc_init(), since that adds the default styles
19892         to the list of parsed RC files again.
19893
19894         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
19895         
19896 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
19897
19898         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
19899         checks that ensure that a widget's allocation is at least 1 in width
19900         and height. (GNOME note: this doesn't affect old panel code anymore,
19901         because GtkSocket will request width and height of at least 1 since
19902         Fri Jul 23).
19903
19904         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
19905         allocated yet (happens if the user realizes the window prematurely),
19906         size request and allocate it.
19907         (gtk_window_size_allocate): guard against guint underflows.
19908
19909 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
19910
19911         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
19912         in gtk_built_sources, so gtk.defs gets built prior to all other
19913         sources.
19914
19915 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19916
19917         * gtk/Makefile.am:
19918         invoke indent on gtkmarshal.*. 
19919         rewrote source generation rules, use COPYING as oldest source tag for
19920         a piggyback rule to generate all sources from (don't touch it ;).
19921         major cleanups, strip spaces on build rules for GNU Make.
19922
19923         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
19924         source and target files from commandline arguments. don't invoke indent.
19925
19926 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19927
19928         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19929         notebook after switch to avoid drawing problems.
19930         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19931         
19932         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19933         show them instead. 
19934         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19935
19936 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19937
19938         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19939         notebook after switch to avoid drawing problems.
19940         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19941         
19942         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19943         show them instead. 
19944         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19945
19946 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
19947
19948         * gtk/gtkwindow.c:
19949         we use window->need_resize from configure_event now, to indicate that
19950         the gtkwindow should keep its allocation (e.g. because the user resized
19951         the window through window manager handles). resize_count is now reliably
19952         used to figure whether we got the allocation we requested from the
19953         window manager.
19954         configure events get queued as resizes now, the real stuff (size
19955         computation and allocation) now only goes on in gtk_window_move_resize().
19956         GtkWindow's requisition now contains its *real* requisition (like all
19957         other widgets), *not* taking usize into account.
19958         geometry_info->last_{width|height} is now updated from set_hints() only
19959         so it always contains the last hints we set for the window manager.
19960         made some event handlers return TRUE instead of FALSE.
19961         the overall code should be much more straight forward now, and the
19962         significant code portions are accompanied by comments now.
19963         (gtk_window_set_hints):
19964         removed requisition argument and made it
19965         fetch the requisition through gtk_widget_get_child_requisition.
19966         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
19967         does that now.
19968         (gtk_window_show):
19969         ensure that the widget is realized before calling 
19970         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
19971         ensure that we got properly size requested and allocated before
19972         realization.
19973         (gtk_window_configure_event):
19974         ignore plain window moves, or reallocate the widget tree through the
19975         resize queue otherwise.
19976         (gtk_window_move_resize):
19977         mostly rewrote this function to figure window manager hints more
19978         reliably, coalesce window moves and resizes to reduce configure events
19979         and do actuall size allocations.
19980
19981 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19982
19983         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
19984         that have a resize pending, because a redraw is already queued for them.
19985
19986         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
19987         hack to clear resize_widgets.
19988
19989         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
19990         for resize containers prior to size allocation. (this is also a bit
19991         ugly, but avoids side effects for stopped emissions and is thus more
19992         reliable).
19993         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
19994
19995         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
19996         function from gtk_tooltips_expose, as we connect to ::expose_event
19997         *and* ::draw now.
19998
19999 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
20000
20001         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
20002         checks.
20003         (gtk_target_list_unref): Likewise.
20004
20005         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
20006
20007 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
20008
20009         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
20010         guard against division by zero. (Fixes bug #1339)
20011
20012 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
20013
20014         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
20015         Prevent the trivial leak of information of allowing
20016         word motion when the entry is not visible.
20017
20018 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
20019
20020         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
20021         modality to error dialog as well as confirmation dialogs.
20022         (Bug #1803, reported by Rosanna Wing Sze Yuen)
20023
20024 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
20025
20026         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
20027         tree->view_lines.
20028         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
20029
20030         * gtk/Makefile.am (install-data-local): Solaris apparently
20031         has various troubles with ln -f; use rm first instead.
20032         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
20033
20034 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
20035
20036         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
20037         use `cp' followed by `rm' (the `rm' was already there).
20038
20039 July 30, 1999 Elliot Lee <sopwith@redhat.com>
20040         
20041         * configure.in: Fix autoconf warnings about cross compilation by
20042         trying to provide sane defaults for AC_TRY_RUN.
20043         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
20044         put them into $(srcdir) when generated. Also add a dependency of
20045         gtksignal.h on gtkmarshal.h for -j builds. 
20046         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
20047
20048 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
20049
20050         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
20051         GDK_THREADS_{LEAVE,ENTER} pair.
20052         (From Paul Fisher <pnfisher@redhat.com>)
20053
20054 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
20055
20056         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
20057         width and height are always >0 (owen).
20058
20059 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
20060
20061         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
20062         change that assured that a widget's allocated with and height are
20063         always >1, since this breaks *buggy* panel code. unfortunately this
20064         back-breaks the gimp's color selector.
20065
20066         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
20067         allocation is always >0 in width and height, before sending the
20068         configure event; this is a *gross* hack to get the gimp back to work.
20069         
20070         * marked both cases with TODO-1.3
20071
20072 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
20073
20074         * gtk/gtktext.c: Don't display wrap indicators when
20075         text is not editable and word wrap is on.
20076
20077 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
20078
20079         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
20080         option menus here as they are not derived from menu shell, assure that
20081         the option menu has a menu we can add items to.
20082
20083 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
20084
20085         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
20086         width/height to (gint) before calculations and check against < 0 to
20087         avoid guint wraparounds.
20088
20089 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
20090
20091         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
20092         width and height is never zero. sanity check both dimensions against
20093         32767 and issue a warning if the allocation is greater than that.
20094
20095 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
20096
20097         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
20098         to g_main_pending() as well.
20099
20100 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
20101
20102         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
20103         call to g_main_iteration() - since that will regrab
20104         GTK+ lock to process events.
20105
20106 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
20107
20108         * gtk/gtkwindow.c
20109         - Regularize with the rest of GTK+ by making widget->requisition
20110           not reflect the set_usize()
20111         - Always recompute geometry hints, then check if they
20112           changed before sending them to the X server. The
20113           previous checks for changes would fail in a number
20114           of circumstances. 
20115
20116 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
20117
20118         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
20119
20120 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
20121
20122         * gtk/gtkdnd.c:
20123         - Code cleanups
20124         - Instantaneously update on modifier key presses
20125         - Allow cancellation of the drag with Escape.
20126
20127 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
20128
20129         * gtk/testgtk.c (create_handle_box): Set the policy
20130         to auto_shrink - otherwise the appearance is rather
20131         strange when flipping between horizontal and vertical.
20132
20133 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
20134
20135         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
20136         (gtk_window_set_default_size): don't change a value if it's < 0.
20137         queue a resize.
20138
20139 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
20140
20141         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
20142
20143 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
20144
20145         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
20146         add an extra "/" when concating "/" + filename.
20147         (From Matt Grossman <mattg@oz.net>)
20148
20149 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
20150
20151         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
20152         for fg_gc if we set it for drawing pixmap.
20153
20154 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
20155
20156         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
20157         
20158         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
20159         already set, call old engine's destroy function and
20160         unref the old engine.
20161
20162 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
20163
20164         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
20165
20166 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
20167
20168         * gtk/gtkaccelgroup.h: mark certain functions as internal.
20169
20170 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
20171
20172         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
20173         expand behaviour changed.
20174
20175         * gtk/gtklabel.c (gtk_label_set_pattern):
20176         (gtk_label_set_justify):
20177         (gtk_label_set_line_wrap):
20178         don't bother invoking queue_clear, the reallocation does
20179         that for us, always free_words so the upcoming resize will
20180         relayout the label's contents.
20181
20182 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
20183
20184         * applied argument implementation patches from Elena Devdariani
20185         <elena@cogent.ca>.
20186
20187         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
20188         ::space_style, ::relief
20189         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
20190         * gtk/gtkpreview.c: ::expand
20191         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
20192         * gtk/gtknotebook.c: ::homogeneous
20193         * gtk/gtklabel.c: ::wrap
20194         * gtk/gtklist.c: ::selection_mode
20195         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
20196         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
20197         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
20198         * gtk/gtkclist.c: ::sort_type
20199         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
20200         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
20201
20202 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
20203
20204         * gtk/gtkstyle.c: Removed ill-thought-out part of last
20205         comment.
20206
20207 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
20208
20209         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
20210         counting right when we have to attach a new style
20211         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
20212
20213         * gtk/gtkstyle.c: Documented the refcounting
20214         peculularities of gtk_style_attach.
20215
20216 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
20217
20218         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
20219         window types.
20220
20221         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
20222         of GTK_TOPLEVEL for creating the window.
20223
20224 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
20225
20226         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
20227         the last argument (reported by Per Winkvist).
20228         
20229 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
20230
20231         Fixes for invisible XOR lines (Frank Loemker
20232         <floemker@TechFak.Uni-Bielefeld.DE>)
20233         
20234         * gtk/gtkclist.c (gtk_clist_realize): Always use
20235         a non-zero pixel for GDK_XOR.
20236
20237         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
20238         Use GDK_INVERT instead of GDK_XOR.
20239
20240 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
20241
20242         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
20243         signals if h/voffsets differ from adjustment values.
20244         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
20245
20246 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
20247
20248         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
20249         ::selection-done emissions up to the topmost menu shell.
20250
20251 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
20252
20253         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
20254         the user data on the window before destroying it.
20255
20256         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
20257         unrealize handler to take care of destroying 
20258         notebook->panel properly. 
20259         (Bug #1198 - Morten Welinder <terra@diku.dk>)
20260
20261         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
20262         of g_new and g_realloc to stop memory leak. (Actually,
20263         we could just use g_realloc(), but I'm not 100% sure
20264         that is portable).
20265         (Bug #1196 - Morten Welinder <terra@diku.dk>)
20266
20267 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
20268
20269         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
20270
20271         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
20272         for fontsets.
20273
20274         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
20275         with bin/button confusion.
20276
20277 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
20278
20279         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
20280         and show how preselection of radio items is done.
20281
20282 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
20283
20284         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
20285         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
20286         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
20287         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
20288         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
20289         * gtk/gtktable.c (gtk_table_attach): 
20290         * gtk/gtklist.c (gtk_list_insert_items): 
20291         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
20292         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
20293         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
20294         * gtk/gtkbin.c (gtk_bin_add): 
20295         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
20296         * gtk/gtkfixed.c (gtk_fixed_put): 
20297         * gtk/gtklayout.c (gtk_layout_put):
20298         general fixups to container_add logic. always realize child if
20299         child->parent is realized, only map the child and queue a resize
20300         if child and child->parent are both visible.
20301
20302 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
20303
20304         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
20305         instead of gtk_container_foreach to walk and unrealize children, so
20306         composite children get also unrealized.
20307         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
20308         (gtk_widget_map): assert that the widget is visible (basic constrain).
20309         (gtk_widget_real_map): assert that the widget is realized (basic
20310         constrain).
20311
20312 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
20313
20314         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
20315
20316 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
20317
20318         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
20319         file for iso-8859-2 locales.
20320
20321         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
20322
20323 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
20324
20325         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
20326          (Pointed out by andy@rz.uni-karlsruhe.de and others).
20327          Remove some suspicious and useless lines. 
20328
20329 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
20330
20331         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
20332         width,height = 0, 0 to mean - here to edge of window,
20333         instead of -1, -1, since the former is all we support.
20334
20335 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
20336
20337         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
20338         when removing from quit_functions list.
20339
20340 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
20341
20342         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
20343
20344 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
20345
20346         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
20347          When redrawing characters on non-visible entry, use appropriate
20348          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
20349
20350 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
20351
20352         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
20353         from drag coordinates.
20354         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
20355         use drag_dest_cell.
20356
20357         * gtk/gtktree (drag_dest_cell)
20358         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
20359         (Bug #1129)
20360
20361 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
20362
20363         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
20364         translate_* fields.
20365         (gtk_item_factory_finalize): invoke translate_notify independant from
20366         translate_data.
20367         (gtk_item_factory_set_translate_func): likewise.
20368         (gtk_item_factory_destroy): only remove ifactory pointer from those
20369         widgets that belong to us (stupid me).
20370
20371 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
20372
20373         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
20374         rc_style list when lookup succeeeds.
20375
20376 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
20377
20378         * gtk/gtkctree.c (resync_selection): 
20379         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
20380         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
20381         bug.
20382
20383 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
20384
20385         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
20386         Add some missing GDK_THREADS_ENTER()/LEAVE around
20387         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
20388
20389 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
20390
20391         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
20392         rather than emit_by_name.
20393
20394         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
20395         on the widget across multiple signal emissions.
20396         (gtk_editable_delete_text): same here.
20397         (gtk_editable_class_init): set widget_class->activate_signal after
20398         editable_signals[ACTIVATE] has been created.
20399
20400 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
20401
20402         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
20403         position here prematurely -- we might not have the
20404         right ->min_position and ->max_position yet.
20405
20406 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
20407
20408         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
20409         Add error traps so if the other end of the connection
20410         dies, we survive.
20411
20412         * gtk/gtkselection.c (gtk_selection_notify): Clean
20413         up properly when selection property retrieval fails.
20414         
20415         * gtk/gtkselection.c (gtk_selection_request): Correctly
20416         reject SelectionRequest notifies where the handler
20417         returns no data.
20418
20419 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20420
20421         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
20422         when we've previously highlighted.
20423
20424         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
20425         emit two "drag_leave" signals for Motif drops.
20426
20427         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
20428         back the correct status messages when dropping from
20429         Motif onto a proxy window that is rejecting the
20430         drop.
20431
20432 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
20433
20434         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
20435         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
20436         to compare two argument values. added gtk_arg_to_valueloc() to set a
20437         variable from an arg through its location (pointer).
20438
20439         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
20440         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
20441         as gfloat*, uchars are collected as guchar*, ints are collected as
20442         gint*, etc...
20443
20444 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
20445
20446         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
20447         Include <string.h> instead of <strings.h>.
20448
20449         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
20450         (actually, a lot more duplicate includes occur if
20451          you trace through the sequence of #include's)
20452         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
20453         
20454 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
20455
20456         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
20457         gtk-a-higuti-990322-[0-3]
20458
20459         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
20460         that was causing -DX_LOCALE not to work.
20461
20462         * gtk/gtkrc.c (gtk_rc_init):
20463         X_LOCALE will never have LC_MESSAGES defined
20464
20465 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
20466
20467         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
20468         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
20469
20470         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
20471         left/right as well (gtk-michael-980726-0.patch.gz).
20472
20473         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
20474         for pointer values, use gchar instead of char. fixed uline allocation
20475         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
20476         chunks instead of G_ALLOC_ONLY.
20477         (gtk_label_size_request): always alter requisition as passed and leave
20478         widget->requisition alone.
20479         (gtk_label_set_text): allow NULL strings.
20480         (gtk_label_new): likewise.
20481
20482 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
20483
20484         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
20485
20486 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
20487
20488         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
20489         *and* mapped (i.e. drawable).
20490         (gtk_bin_expose): only send exposes to drawable children.
20491
20492         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
20493         (gtk_box_expose): only send exposes to drawable children.
20494
20495         * gtk/gtkhscale.c (gtk_hscale_draw): 
20496         * gtk/gtkvscale.c (gtk_vscale_draw):
20497         hm, this is an ugly one. we first compute the size of our trough area
20498         here (window relative) and then check intersection with the draw_area
20499         which is parent relative because we're a NO_WINDOW widget, so we need
20500         to offset the trough area by allocation.x and allocation.y before the
20501         check. (this must not be done for the background area though, since
20502         that's already computed parent relative).
20503
20504 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
20505
20506         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
20507         unrealize title buttons.
20508
20509 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
20510
20511         * gtk/gtkclist.c (gtk_clist_column_title_passive)
20512         (gtk_clist_column_title_active): 
20513         only connect/disconnect to GtkWidgetClass::event to block mouse events.
20514
20515         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
20516         zero initialize event, removed superfluous gdk_window_get_pointer call
20517
20518         * gtk/gtklist.c (gtk_list_vertical_timeout)
20519         (gtk_list_horizontal_timeout): removed superfluous
20520         gdk_window_get_pointer call
20521
20522 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
20523
20524         * plugging problems reported by "Bruce Mitchener, Jr."
20525         <bruce@puremagic.com> due to a purify session.
20526
20527         * gtk/gtkstyle.c:
20528         (gtk_style_ref): 
20529         (gtk_style_unref): assert ref_count to be > 0.
20530
20531         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
20532         the requisition.
20533         (gtk_clist_set_shift): likewise.
20534
20535         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
20536         adjustments.
20537
20538         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
20539         event before sending it and set send_event to TRUE (which needs to
20540         be done for *all* synthesized events).
20541         (gtk_list_vertical_timeout): likewise.
20542
20543         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
20544         leaks.
20545
20546         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
20547         to TRUE when synthesizing events.
20548
20549 [ *** end of merges from 1.2 *** ]      
20550         
20551 1999-11-21  Tor Lillqvist  <tml@iki.fi>
20552
20553         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
20554         (or copied from gdkconfig.h.win32 on Win32, sigh).
20555
20556         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
20557
20558         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
20559
20560         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
20561
20562         * gdk/gdkconfig.h.win32: New file.
20563
20564         * gdk/win32/makefile.cygwin: Build just a static archive here.
20565
20566         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
20567         for the DLL from the static archive built above.
20568
20569         * gdk/gdk.def: Moved here from the win32 subdirectory.
20570
20571         * gdk/win32/*: Adapt for the changed private struct organisation.
20572
20573         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
20574
20575 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
20576
20577         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
20578         for wheel mice (buttons 4 and 5).
20579
20580 1999-11-18  Tor Lillqvist  <tml@iki.fi>
20581
20582         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
20583         drawables use just the pixel field in the foreground and
20584         background GdkColor of the GdkGC.
20585
20586         gdk_gc_set_{fore,back}ground() are called in the GIMP with
20587         GdkColors containing uninitialized (red,green,blue) fields, and
20588         just the pixel field filled in, and furthermore in the
20589         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
20590         It thus turns out that we really don't need to have the full
20591         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
20592         it later to have just the pixel values.
20593
20594 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
20595
20596         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
20597
20598 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
20599
20600         * docs/gtkfaq.sgml: threads example from Erik Mouw.
20601         New question on GtkLabel background colors.
20602
20603         * docs/gtk_tut.sgml:
20604           - Correct the example code callback
20605             function definitions.
20606           - Update the gtkdial example code, from Frans van Schaik.
20607           - Update setselection.c to current API.
20608
20609         * examples/Makefile examples/*/*.c: Update to code
20610         listed in tutorial.
20611
20612 1999-11-10  Tor Lillqvist  <tml@iki.fi>
20613
20614         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
20615         subrange table (from the "Developing International Software for
20616         WIndows 95 and Windows NT" book) was missing the Hangul syllable
20617         block... Get the loaded font's charset correctly.
20618
20619         (Note that this, and the other *-win32.c files, still really are
20620         the old ones, the win32 subdirectory is not ready for compilation
20621         yet after the reorg.)
20622
20623 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
20624
20625         * gtk/gtkclist.c: Fix off-by-one bug in parameter
20626         check.
20627
20628 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
20629
20630         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
20631         on results of XQueryDeviceState().
20632
20633 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
20634
20635         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
20636         we need to accesss only ->children. We need an accessor
20637         for the children.
20638
20639         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
20640         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
20641         to get rid of gdkx.h include.
20642         
20643         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
20644         and random references to 'None'.
20645
20646         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
20647         Get rid of unused #include <gdk/gdkx.h>
20648
20649         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
20650         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
20651         gdkconfig.h.
20652
20653 1999-11-08  Tor Lillqvist  <tml@iki.fi>
20654
20655         * gdk/win32/gdkdraw.c
20656         * gdk/win32/gdkfont.c
20657         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
20658         following yesterday's changes. (Unrelated to Owen's reorg.)
20659
20660 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
20661
20662         * gdk/x11/gdkinput-gxi.c: Add missing include,
20663           fix GdkWindowPrivate => GdkDrawablePrivate.
20664
20665         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
20666
20667         * gdk/x11/Makefile.am (xinput_sources): Add missing
20668         backslash to fix building with --with-xinput=none
20669
20670 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
20671
20672         Move all X specific code into the x11/ directory.
20673         Aside from shuffling things around, did the following:
20674
20675        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
20676          gdk_arg_context_* - a simple argument parsing system
20677          in the style of popt.
20678
20679        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
20680          gdk/x11/gdkprivate-x11.h:
20681          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
20682          add ->klass and ->klass_data fields. The klass_data
20683          field points to an auxilliary structure that is
20684          windowing system dependent.
20685
20686        * gdk/gdkfont.c: Make most of the measurement functions
20687          simply wrappers around gdk_text_extents().
20688
20689        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
20690          _gdk_font_strlen() function that hides the weird
20691          behavior in gtk+-1.[02] where a string is interpreted
20692          differently for 8-bit and 16-bit fonts.
20693
20694        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
20695          to store common code for synthesizing double/triple
20696          press events.
20697         
20698        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
20699          Make all the function that modify an existing GC
20700          simply wrappers around gdk_gc_set_values().
20701          
20702        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
20703          for throwing out later.
20704
20705        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
20706          GdkImagePrivate and GdkColormapPrivate to have a
20707          windowing system dependent part (GdkFontPrivateX etc.)
20708          that "derives" from the system-independent part.
20709
20710        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
20711          Got rid of the included-source-files for XInput in
20712          favor of automake conditionals. (Which didn't exist
20713          when XInput support was originally added.)
20714
20715        * gdk/gdkrgb.c: Remove the visual id from the debugging
20716          statements since that is X11 specific; print out
20717          type/depth info instead.
20718          
20719
20720 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
20721
20722         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
20723         loading duplicates of hashed fonts.
20724
20725         * gdk/gdk.c (gdk_keysym_convert_case): rename
20726         gdk_XConvertCase to gdk_keysym_convert_case, allow
20727         results to be NULL in the GTK+ style.
20728
20729         * gdk/gdkcompat.h: Started compatibility header
20730         for renames.
20731
20732 1999-11-07  Tor Lillqvist  <tml@iki.fi>
20733
20734         * gdk/win32/gdkprivate.h: New font private structures, related to
20735         fontsets.
20736
20737         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
20738         gdk_font_list_free(). On X11, will just be wrappers to
20739         XListFonts() and XFreeFontNames(). On Win32, the code previously
20740         in gtkfontsel.c is now here.
20741
20742         New function gdk_font_xlfd_create(). On X11 will get the FONT
20743         property of the font (for GDK_FONT_FONTs), or call
20744         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
20745         builds a XLFD style name from the font information in the LOGFONT
20746         struct(s).
20747
20748         New function gdk_font_xlfd_free(), which correspondingly frees the
20749         string returned by gdk_font_xlfd_create().
20750
20751         Implement fontsets on Win32. Add a function that iterates over a
20752         wide char string and calls a callback function for each substring
20753         of wide chars from the same Unicode subrange (and thus probably
20754         available in the same real font).
20755
20756         Improve the XLFD emulation a bit.
20757
20758         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
20759
20760         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
20761         Beta3, WM_IME_CHAR messages don't seem to contain the composed
20762         multi-byte char as with the Active IMM on Win9x. Oh well, handle
20763         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
20764         ImmGetCompositionStringW() to get the composed Unicode chars.
20765
20766         * gdk/win32/gdkgc.c
20767         * gdk/win32/gdkdraw.c: Changes needed because of the font private
20768         struct changes.
20769
20770         * gdk/win32/gdk.def: Add the new functions.
20771
20772 1999-11-04  Tor Lillqvist  <tml@iki.fi>
20773
20774         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
20775         get the Platform SDK to get <dimm.h>.
20776
20777         * gdk/win32/gdkevents.c: More event handling fixes and
20778         simplification. Never generate motion events with is_hint true. We
20779         used to do that on bogus grounds earlier. Windows sends
20780         WM_MOUSEMOVE messages on button events even if the mouse hasn't
20781         moved, ignore these.
20782
20783         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
20784
20785         * gdk/win32/gdkglobals.c
20786         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
20787         the TrackMouseEvent function, and use it.
20788
20789         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
20790         char before calling WideCharToMultiByte in order to get a string
20791         for the window title.
20792
20793         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
20794
20795         * gdk/win32/gdk.def: Remove obsolete functions.
20796
20797         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
20798         /nodefaultlib and /defaultlib switches.
20799
20800         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
20801
20802 1999-10-31  Tor Lillqvist  <tml@iki.fi>
20803
20804         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
20805         EuroSign).
20806
20807         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
20808         same type as GdkWChar, especially on Win32.
20809
20810         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
20811
20812         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
20813         before passing to Windows GDI for drawing etc. Convert to the
20814         system default codepage before passing to Windows as window
20815         titles.
20816
20817         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
20818         support changing input locale on the fly.
20819
20820         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
20821         on-the-fly changes. Convert incoming characters from the current
20822         codepage to Unicode (and then to a UTF-8 multi-byte string) based
20823         on the current input language. Use keysym<->Unicode mapping tables
20824         and functions borrowed from xterm sources.
20825
20826         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
20827         editions of Win9x, use the ActiveX-based Active IMM (Input Method
20828         Manager) if available. IMEs and the Active IMM are available under
20829         the disguise of Chinese, Korean and Japanese support for IE and
20830         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
20831         support is present in all editions (as long as you install it).
20832
20833         Call DispatchMessage from gdk_events_queue() (and thus
20834         gdk_WindowProc()), instead of duplicating the code in
20835         gdk_WindowProc().
20836
20837         Reworked the grab handling and propagation code, factored out
20838         duplicated code snippets into separate functions. Other cleanups,
20839         too.
20840
20841         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
20842         the <dimm.h> header describing the Active IMM.
20843
20844         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
20845         just do the same as for "single" fonts.
20846
20847         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
20848         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
20849         the new keysyms from gdkkeysyms.h.
20850
20851         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
20852         fontset, so that gtkentry uses wide characters.
20853
20854         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
20855         GTk+'s system directory "gtk+", not "gtk".
20856
20857 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
20858
20859         * docs/gtkfaq.sgml: FAQ update
20860
20861 1999-10-21  Tor Lillqvist  <tml@iki.fi>
20862
20863         * gdk/win32/gdkprivate.h: Add more font private data.
20864
20865         * gdk/win32/gdkfont.c
20866         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
20867         fonts and strings. Now works much better. You still have to
20868         have a correct font selected, though. No fontset emulation yet.
20869
20870 1999-10-19  Tor Lillqvist  <tml@iki.fi>
20871
20872         * gtk/maketypes.awk: Use G_OS_WIN32.
20873
20874         * gtk/gtk.def: Add some missing entry points. Also some non-public
20875         ones, but PyGTK porter claims to need them.
20876
20877         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
20878         built-in type generation.
20879
20880 1999-10-14  Tor Lillqvist  <tml@iki.fi>
20881
20882         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
20883         GDK_FONT_FONT fonts (which is all we have for now, we don't
20884         emulate fontsets). The X11 version uses plain XDrawString in that
20885         case, too. The string passed to gdk_draw_text_wc seems to be in
20886         fact (at least, when used by gtkentry and gtktext) either in a
20887         single-byte charset, or a DBCS. Not Unicode.
20888
20889         This fixes the problem in gtkfontsel, where even if you had
20890         selected a font with a non-Latin1 charset (windows-greek, for
20891         instance), the preview still used Latin-1 glyphs.
20892
20893         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
20894         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
20895         (gdk_font_load): Recognize the demibold etc weights, even if we
20896         don't have the corresponding constants in the headers.
20897         (gdk_font_hash_insert): Use same hash mechanism as in the X11
20898         version. Should save font resources a bit, when we don't have
20899         multiple HFONTs for the same font.
20900
20901         * gdk/win32/gdkprivate.h: Add the names field as in the X11
20902         version.
20903
20904 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
20905
20906         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
20907         X values
20908
20909 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
20910
20911         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
20912         layout support (as mentioned on
20913         http://www.jcinteractive.com/gnome-ui/software/widgets/)
20914
20915 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
20916
20917         * gtk/fnmatch.c
20918         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
20919
20920 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
20921
20922         * configure.in (ALL_LINGUAS): Added Galician (gl)
20923
20924 1999-10-05  Tor Lillqvist  <tml@iki.fi>
20925
20926         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
20927
20928         * gdk/win32/gdkcompat.c: New file, actually provide an
20929         implementation for the deprecated functions. (Just temporarily.)
20930
20931         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
20932
20933         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
20934
20935         * gdk/win32/gdk.def gtk/gtk.def: Updates.
20936
20937 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
20938
20939         * configure.in: Added "uk" to ALL_LINGUAS.
20940         
20941 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
20942
20943         * configure.in: correct checking for BeOS check
20944
20945         * gdk/gdktypes.h
20946         * gtk/fnmatch.c
20947         * gtk/gtkfilesel.c
20948         * gtk/gtkitemfactory.c
20949         * gtk/gtkmain.[ch]
20950         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
20951
20952 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
20953
20954         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
20955         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
20956         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
20957         by Bulgarian). 
20958
20959 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
20960
20961         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
20962         Fix a reference to window_private->destroyed.   
20963
20964         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
20965         (ugly) setting of an internal GdkWindow member to use
20966         a _slightly_ cleaner macro.
20967
20968         * gdk/gdkprivate.h: Split GdkWindowPrivate into
20969         GdkDrawablePrivate and GdkWindowPrivate.
20970         Add extra macros for accessing GDK_DRAWABLE_ components.
20971
20972         * *.[ch]: Massive adjustments for the above, use the
20973         new macros in a lot of places.
20974
20975 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
20976
20977         * gdk/gdktypes.h: Make GdkDrawable the base type,
20978         not GdkWindow.
20979
20980 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
20981
20982         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
20983
20984 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
20985
20986         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
20987
20988 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
20989
20990         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
20991         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
20992
20993         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
20994
20995         * docs/gtk-config.1: Now autogenerated.
20996         * docs/Changes-1.4.txt: started
20997         
20998 1999-10-03  Tor Lillqvist  <tml@iki.fi>
20999
21000         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
21001         to #ifdef also here.
21002
21003         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
21004         Owen did to the X11 backend.
21005
21006         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
21007         ScrollWindowEx when blitting inside a window, it can't be correct
21008         in the general case.
21009
21010         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
21011         WM_GETMINMAXINFO is easier.
21012
21013         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
21014         depth equal to the bitspixel value, not the visual's depth.
21015
21016         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
21017         to 24 even if the bitspixel value is 32.
21018
21019         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
21020         need to check for depth==32 when bpp==32, depth will always be 24.
21021
21022 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
21023
21024         * docs/Changes-1.4.txt: Started
21025         
21026         * gtk/Makefile.am (gdk_headers): Include all the new headers.
21027
21028         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
21029         
21030         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
21031         into C file.
21032         
21033         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
21034         header to gdkinputprivate.h.
21035
21036         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
21037         unused since before 1.2.
21038
21039 1999-09-30  Tor Lillqvist  <tml@iki.fi>
21040
21041         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
21042         expand possible hex escapes in the font family (put there by
21043         logfont_to_xlfd if the font name isn't a legal XLFD font family,
21044         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
21045         On Win32, add hex escapes here, too.
21046
21047 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
21048
21049         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
21050         to #ifdef GDK_WINDOWING_X11.
21051
21052 [ Merges from gtk-1-2 ]
21053
21054 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
21055
21056         * configure.in: fixed "GNU Make" check to pass with new make version
21057         3.77.95.
21058
21059 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
21060
21061         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
21062         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
21063         AM_PATH_GTK() macros don't get confused by the -pre1.
21064
21065 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
21066
21067         * configure.in (REBUILD): Change check for perl5
21068           to check explicitely for v >= 5.002. (5.001
21069           does not work with our scripts.)
21070
21071 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
21072
21073         * configure.in: evaluate $PERL for the perl version check. added
21074         --disable-rebuilds to give the user an option to completely disable
21075         any source autogeneration rules.
21076
21077 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
21078
21079         * configure.in: evaluate $ac_make when checking for GNU Make.
21080
21081 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
21082
21083         * docs/Makefile.am: added generation.txt.
21084
21085         * Makefile.am: require automake 1.4, build README from README.in and
21086         INSTALL from INSTALL.in in dist-hook.
21087         
21088         * README.in:
21089         * INSTALL.in: new files to autogenerate README and INSTALL from.
21090
21091         * configure.in: figure whether we have GNU Make
21092
21093         * docs/generation.txt: minor additions/corrections.
21094
21095 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21096
21097         * docs/gtkfaq.sgml: FAQ Update
21098
21099 July 30, 1999 Elliot Lee <sopwith@redhat.com>
21100         
21101         * configure.in: Fix autoconf warnings about cross compilation by
21102         trying to provide sane defaults for AC_TRY_RUN.
21103
21104 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
21105
21106         * ltconfig
21107         * ltmain.sh: upgrade to libtool 1.3.3
21108
21109 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
21110
21111         * INSTALL: Indicate that the --with-glib= configure
21112         time flag is unsupported.
21113
21114 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
21115
21116         * docs/generation.txt: Added a file that gives
21117         documenation about the autogeneration process for
21118         various autogenerated files.
21119         
21120 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
21121
21122         * configure.in (LIBS): Look for libgmodule in the
21123         right location.
21124
21125 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
21126
21127         * docs/gtk_tut.sgml: Removed references to
21128         code examples in my directory on gtk.org as
21129         they should all be in the tutorial now.
21130
21131         * docs/gtk_tut.sgml: Added sources for dial-test
21132         and scribble-xinput programs that were previously
21133         missing.
21134
21135 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
21136
21137         * TODO: Added entry about menu keyboard navigation, removed
21138         some finished items.
21139
21140 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
21141
21142         * acinclude.m4: Standardize on func_dgettext
21143         not func_gettext, so that the checks for dgettext
21144         actually are paid attention to.
21145
21146 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
21147
21148         * configure.in (LIBS): Add $INTLLIBS into $LIBS
21149         directly, rather than repeating the checks for
21150         gettext.
21151
21152         * INSTALL: Added information about gettext and
21153         NLS support.
21154
21155         * acinclude.m4 (LIBM): Check for dgettext, not
21156         just gettext. This should hopefully fix things wrt
21157         systems with old versions of GNU gettext installed.
21158
21159 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
21160
21161         * configure.in (LIBS): Look for libgmodule in the
21162         right location.
21163
21164 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
21165
21166         * autogen.sh: add --enable-maintainer-mode
21167
21168         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
21169
21170 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
21171
21172         * docs/gtk-config.1.in:
21173           docs/Makefile.am:
21174           configure.in: gtk-config is now generated.
21175
21176         * docs/gtk-config.1: Removed, now generated.
21177
21178 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
21179
21180         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
21181         handle CreateNotify itself, still put out a debuging message for
21182         --gdk-debug=events. made the ReparentNotify debugging message more
21183         verbose.
21184         wrap xcoords translation for ConfigureEvents into an error trap,
21185         a destroy event may already be pending, and in that case, the
21186         actuall coordinate values are not at all critical.
21187
21188 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
21189
21190         * gdk/gdkcc.c: Stop leaking the color_hash all over
21191         the place. Simplify and improve the logic.
21192
21193 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
21194
21195         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
21196         for prototypes and function implementations consistent (reported
21197         by Tomas Ogren).
21198
21199 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
21200
21201         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
21202         send_event set in debugging output.
21203         (gdk_compress_exposures): default initialize the event so we don't
21204         operate on bogus values (namely send_event).
21205
21206 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
21207
21208         * gdk/gdkwindow.c: When we receive an unexpected
21209         destroy notify on one of our windows, don't just
21210         warn about it, also mark our windows as destroyed.
21211
21212 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
21213
21214         * gdk/gdkfont.c (gdk_font_hash_insert): Add
21215           name => font and name => fontset hashes. The 
21216           name => fontset hash is a _big_ win since we
21217           weren't previously caching fontsets at all and loading
21218           fontsets is expensive. The name => font hash
21219           is less of a win, but it does save us from doing
21220           repeated XQueryFont calls on the same font.
21221
21222         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
21223           list so we can remove font/fontset from hash.
21224
21225 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
21226
21227         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
21228           and slightly confusing test. [ XInternAtom (,,TRUE)
21229           will never return None ].
21230
21231 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
21232
21233         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
21234           gdk/gdkwindow.c (gdk_window_set_hints):
21235
21236         Don't omit setting the properties if flags == 0 -
21237         there may be an existing set of properties there
21238         already. (Very old bug. Would it be better to
21239         delete the property instead?)
21240
21241         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
21242           spelling error in comment.
21243
21244 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
21245
21246         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
21247           to avoid stomping over gdk_error_warnings.
21248
21249         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
21250           as (bits_per_pixel + 7) / 8. This gives the same
21251           result as before for multiples of 8, but actually
21252           a "reasonable" value for 1bit or 4bit displays.
21253
21254 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
21255
21256         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
21257         GNU Make.
21258
21259 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
21260
21261         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
21262         discarding configure events.
21263
21264 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
21265
21266         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
21267         refcount is greater than zero.
21268
21269         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
21270
21271         * gdk/gdkfont.c (gdk_font_unref): Likewise.
21272
21273         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
21274
21275         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
21276
21277 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
21278
21279         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
21280         that format 32 => sizeof(item) == 4. It really is
21281         sizeof(long).
21282
21283 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
21284
21285         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
21286         core dump at all on X IO errors, only core dump
21287         if --enable-debug for X errors.
21288
21289 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
21290
21291         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
21292         unknown window:" message. disabled ConfigureNotify discarding code,
21293         because it led to events being processed out of order.
21294
21295 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
21296
21297         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
21298
21299         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
21300         we export this function, supress error warnings and don't reset the
21301         error code in the first half of this function.
21302
21303         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
21304         code (instead of just -1) so gdk_error_trap_pop() reveals something
21305         actually informative about the error that happened.
21306
21307         * gdk/*.c:
21308         don't rely on gdk_error_code being -1 if an error occoured, but just
21309         gdk_error_code != 0.
21310
21311 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
21312
21313         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
21314         pointer *before* invoking the filter function, so we at least don't
21315         crash if a filter is removed that is currently executed. window filters
21316         *really* need to be made truely reentrant at some point.
21317
21318 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
21319
21320         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
21321         PropertyNotify debug messages.
21322
21323 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
21324         
21325         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
21326         
21327         * gdk/gdkim.c: Fix cut-and-paste errors for 
21328         x/y and PreeditAttributes/StatusAttributes.
21329
21330 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21331
21332         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
21333         G_MAXINT to 2^16 to alleviate overflow problems in
21334         various window managers.
21335
21336 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
21337
21338         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
21339         for fontsets.
21340
21341 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
21342
21343         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
21344         Initialize size_hints.x and size_hints.y because kwm
21345         brokenly pays attention to them.
21346         (Bug #1181 -  Lars Heete <hel@admin.de>)
21347
21348 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
21349
21350         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
21351         return value of gdk_list_visuals(). 
21352         (Bug #1193 - Morten Welinder <terra@diku.dk>)
21353
21354 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
21355
21356         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
21357         XSetIMValues to (void *) when comparing to NULL, to workaround
21358         the problem of some compilers barfing since older X headers don't
21359         have the prototype for it.
21360
21361 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
21362
21363         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
21364         for pseudocolor where colormap->colors was double
21365         allocated.
21366
21367         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
21368         color value in the hash table with the pixel filled
21369         in so when we do later hash table lookups, the color
21370         value is correct.
21371         
21372 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
21373
21374         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
21375         making the call
21376
21377 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
21378
21379         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
21380         pointed out by Morten Welinder <terra@diku.dk>.
21381
21382 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21383
21384         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21385           default filter from the list
21386
21387 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21388
21389         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21390           default filter from the list
21391
21392 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
21393
21394         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
21395
21396         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
21397         g_strdup_printf instead of calcing the length separately
21398
21399 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
21400
21401         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
21402         that we don't do in many other places. (Fixing duplicate 
21403         #include of config.h)
21404
21405         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
21406         Otherwise, #ifndef XINPUT_NONE check in the latter
21407         doesn't work. (Bug #546)
21408
21409 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
21410
21411         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
21412         "None" case insensitive.
21413
21414 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
21415
21416         * gdk/gdkselection.c: 
21417         Add error traps so if the other end of the connection
21418         dies, we survive.
21419
21420 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21421
21422         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
21423         dest_xid field into two fields - one for the window
21424         to send in messages, one to indicate the last looked
21425         up window for caching purposes. This is needed, so
21426         that Leave messages get the correct window.
21427
21428 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
21429
21430         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
21431         Fix warning created by people mucking around
21432         with the gsource API.
21433
21434         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
21435         Change mapping between GIOCondition and GdkInputCondition
21436         to match the way the Linux kernel does it. This should
21437         fix problems where closed pipes were no longer signalling
21438         GDK_INPUT_READ on systems with a native poll().
21439
21440 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
21441
21442         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
21443         explicitly for the string "None" - it is in the XPM
21444         spec and some servers treat unknown colors in odd ways
21445         (like asking the user!)
21446
21447 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
21448
21449         * gdk/gdkevents.c: made "->" into a "." of previous change so
21450         it compiles
21451
21452 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
21453
21454         * gdk/gdkevents.c (gdk_compress_exposures): Set the
21455         window field of the event structure before calling
21456         user filters.
21457
21458 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
21459
21460         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
21461         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
21462
21463 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
21464
21465         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
21466         intermediate text property - prevents major memory
21467         leak when gdk_use_mb.
21468         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
21469
21470 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
21471
21472         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
21473         gtk-a-higuti-990322-[0-3]
21474
21475         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
21476         sizeof(wchar_t) != sizeof (GdkWChar)
21477
21478         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
21479         that was causing -DX_LOCALE not to work.
21480
21481         * gtk/gtkrc.c (gtk_rc_init):
21482         X_LOCALE will never have LC_MESSAGES defined
21483
21484         * gdk/gdk.c (gdk_init_check):
21485         Remove --xim-preedit and --xim-status from argv properly.
21486
21487         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
21488         that the client window is present on the X server
21489         before we pass it to the input method.
21490
21491 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
21492
21493         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
21494         if --display is specified on the command line, than
21495         the drag window will not be created on that display.
21496         
21497 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
21498
21499         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
21500         lookups with only_if_exists == TRUE were inserting
21501         bogus values into the atom cache.
21502
21503 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
21504
21505         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
21506         then reset it to NULL.
21507
21508         * gdk/gdkcolor.c:
21509         (gdk_colors_free): 
21510         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
21511         key for g_hash_table_remove() in both functions, this prevents us
21512         from accessing possibly uninitialized portions of a GdkColor structure
21513         where we are only interested in its pixel value.
21514
21515 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21516
21517         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21518         font hash table, if we have a GdkFontPrivate entry for this font
21519         already, simply increment its reference count, provided by Olaf Dietsche
21520         <olaf.dietsche+list.gtk@netcologne.de>.
21521
21522 1999-09-21  Tor Lillqvist  <tml@iki.fi>
21523
21524         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
21525         just to be sure.
21526
21527         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
21528         unused variables, leftovers from the X11 version.
21529
21530         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
21531
21532         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
21533         downcase fields on X11.
21534
21535 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
21536         
21537         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
21538         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
21539
21540 1999-09-17  Tor Lillqvist  <tml@iki.fi>
21541
21542         * gdk/win32/gdk.def: Add gdk_threads_mutex.
21543
21544         * gtk/makefile.msc: Correct path to libintl.
21545
21546         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
21547         use of gint vs. int, and gint vs. gboolean in headers and
21548         definitions. Use GtkType for the *_get_type functions. Note that
21549         these changes preserve binary compatibility.
21550
21551         * gdk/gdk.c
21552         * gdk/win32/gdk.c
21553         * gdk/gdk.h: Fix inconsistencies: gint vs int.
21554
21555         * gtk/gtkmain.c
21556         * gtk/gtkclist.c
21557         * gtk/gtkmenufactory.c
21558         * gtk/gtknotebook.c
21559         * gtk/gtkwidget.c: Fix inconsistencies, also gint
21560         vs. gboolean.
21561
21562         * gtk/gtkcolorsel.[ch]
21563         * gtk/gtkcombo.[ch]
21564         * gtk/gtkdrawingarea.[ch]
21565         * gtk/gtkgamma.[ch]
21566         * gtk/gtkhandlebox.[ch]
21567         * gtk/gtkhpaned.[ch]
21568         * gtk/gtkhruler.[ch]
21569         * gtk/gtkplug.[ch]
21570         * gtk/gtkpreview.[ch]
21571         * gtk/gtkruler.[ch]
21572         * gtk/gtksocket.[ch]
21573         * gtk/gtkstatusbar.[ch]
21574         * gtk/gtktoolbar.[ch]
21575         * gtk/gtkvbbox.[ch]
21576         * gtk/gtkvpaned.[ch]
21577         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
21578         functions.
21579
21580         * gtk/gtkgamma.h: Fix bug, missing () in call of
21581         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
21582
21583 1999-09-14  Tor Lillqvist  <tml@iki.fi>
21584
21585         * gdk/gdkcolor.c (gdk_colormap_new)
21586         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
21587         colormap->colors was allocated twice.
21588
21589         * gdk/win32/gdk.c: Remove some unused stuff.
21590
21591         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
21592         colormap.
21593
21594         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
21595         * gtk/gtklabel.h (gtk_label_get_type)
21596         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
21597         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
21598         in a couple of places, not guint.
21599
21600 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21601
21602         * configure.in,po/et.po: added Estonian language file
21603
21604 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21605
21606         * configure.in,po/da.po: added Danish file
21607
21608 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
21609
21610         * docs/gtkfaq.sgml: Minor FAQ Update
21611
21612 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
21613
21614         * docs/gtkfaq.sgml: FAQ update
21615
21616 1999-08-27  Tor Lillqvist  <tml@iki.fi>
21617
21618         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
21619         way to get window contents continually refreshed while resizing. I
21620         didn't like the effects myself, so it's not on by default.
21621
21622         * gdk/win32/gdkprivate.h: New flag variable
21623         gdk_event_func_from_window_proc, FALSE by default.
21624
21625         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
21626         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
21627         are passed --gdk-event-func-from-window-proc.
21628
21629         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
21630         and we have am event_func, call it instead of enqueing the event.
21631
21632 1999-08-23  Tor Lillqvist  <tml@iki.fi>
21633
21634         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
21635         Kelley: Set expose_count in GdkEventExposes correctly.
21636
21637         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
21638         MULTIPLE_WINDOW_CLASSES).
21639
21640         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
21641         for bug in NT, apparently NT *does* draw the end pixel, too, in
21642         LineTo with a one-pixel pen, so we don't have to do it ourselves.
21643
21644 1999-08-21  Tor Lillqvist  <tml@iki.fi>
21645
21646         Improvements by Hans Breuer: 
21647
21648         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
21649
21650         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
21651         CS_?REDRAW flags as they cause lots of (late) redraws when "show
21652         window contents while dragging" is turned on. Allocate at least
21653         one unique class for every GdkWindowType. If support for single
21654         window-specific icons is ever needed (eg. Dialog specific), every
21655         such window should get its own class.
21656
21657 1999-08-19  Tor Lillqvist  <tml@iki.fi>
21658
21659         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
21660         error that caused crashes.
21661
21662 1999-08-17  Tor Lillqvist  <tml@iki.fi>
21663
21664         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
21665         window, use ScrollWindowEx, and call UpdateWindow. This prevents
21666         bugs when for instance part of the window was outside the
21667         display. Thanks to Philippe Colantoni for finding and fixing this.
21668
21669 1999-08-16  Tor Lillqvist  <tml@iki.fi>
21670
21671         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
21672         endpoint calculations which were totally wrong. (A little RTFMing
21673         helps a lot ;-)
21674
21675         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
21676         from a separate directory, not from gettext, because of licensing
21677         issues (we want to use the LGPL version).
21678
21679         * README.win32: Mention the intl from glibc vs from gettext issue.
21680
21681 1999-08-13  Tor Lillqvist  <tml@iki.fi>
21682
21683         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
21684         in the key event handling: Now AltGr chars work again. Also,
21685         now Alt-digits are passed up as well as Control-digits.
21686         Pass keypad plus and minus as normal plus and minus.
21687
21688 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21689
21690         * docs/gtkfaq.sgml: FAQ Update
21691
21692 1999-07-25  Tor Lillqvist  <tml@iki.fi>
21693
21694         * README.win32
21695         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
21696         the Wintab SDK.
21697
21698         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
21699         OK, but getting closer. Guard against bogus tilt data from Wacom
21700         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
21701         enable easier building without Wintab.
21702
21703         * gdk/win32/gdkinput.h
21704         * gdk/win32/gdkevents.c 
21705         * gdk/win32/gdkwindow.c: Minor changes related related to above.
21706         
21707         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
21708         code. As we have just one visual on Win32, no sense to have it in a
21709         table, and no need for the hash table.
21710
21711         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
21712         better on white background.
21713
21714 1999-07-21  Tor Lillqvist  <tml@iki.fi>
21715
21716         * README.win32: Update gcc build instructions. Mention gettext is
21717         GPL.
21718
21719         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
21720         supported cursor size with GetSystemMetrics.
21721
21722         * gdk/win32/gdkfont.c
21723         * gtk/gtkfontsel.c: Guard against some font weight and charset
21724         symbols being undefined (in mingw32 headers).
21725
21726         * gdk/win32/makefile.cygwin
21727         * gtk/makefile.cygwin
21728         * gtk/gtkthemes.c: No longer need to have differently named
21729         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
21730
21731 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
21732
21733         * docs/gtkfaq.sgml: Long awaited FAQ update.
21734
21735 1999-07-15  Tor Lillqvist  <tml@iki.fi>
21736
21737         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
21738         it. Obscure bit manipulation needed.
21739
21740         * gdk/win32/gdkevents.c: Logging.
21741         
21742         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
21743         style (file name include compiler name) for theme engines.
21744
21745 1999-07-13  Tor Lillqvist  <tml@iki.fi>
21746
21747         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
21748
21749         * gdk/win32/gdkevents.c: Fix long-standing bug in key
21750         events. The key.string wasn't zero-terminated, still we strdup'ed
21751         it in gdk_event_copy(). Synthesize crossing events for button
21752         events before possible propagation.
21753
21754         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
21755
21756         * gdk/win32/makefile.cygwin
21757         * gtk/makefile.cygwin: Use new DLL naming style for the
21758         GCC-compiled ones.
21759
21760         * gdk/win32/makefile.msc
21761         * gtk/makefile.msc: Cosmetics mostly.
21762
21763         * gtk/gtk.def: Add missing entry points.
21764
21765         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
21766
21767 1999-07-09  Tor Lillqvist  <tml@iki.fi>
21768
21769         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
21770         or height is zero. Don't print a warning if Pie or Arc fails, they
21771         always fail (?) for very narrow ellipses.
21772
21773         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
21774         the part or the destination window corresponding to source area
21775         outside of the source drawable's boundary.
21776
21777         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
21778         anything if less than two points.
21779
21780         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
21781         return NULL. Gtk cut-and-paste inside a single program works
21782         better this way. (It always gets the clipboard contents from
21783         Windows, not from its own copy, which is cleared anyway. I can't
21784         say I fully understand what happens... Emulating the X selection
21785         and property stuff is a bit of a mess.)
21786
21787         * gdk/win32/gdkevents.c
21788         * gdk/win32/gdkproperty.c: A bit more verbose logging.
21789
21790         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
21791         that never got deleted). Revamp gdk_region_shrink.
21792
21793         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
21794         after use.
21795
21796         * gtk/gtk.def: Add some missing entry points.
21797
21798         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
21799         component.
21800
21801 1999-07-04  Tor Lillqvist  <tml@iki.fi>
21802
21803         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
21804         Control-digits specially.
21805
21806 1999-07-03  Tor Lillqvist  <tml@iki.fi>
21807
21808         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
21809
21810 1999-06-28  Tor Lillqvist  <tml@iki.fi>
21811
21812         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
21813         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
21814         finding this.)
21815
21816 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
21817
21818         * gtk+.spec.in: Corrected some typos in files section.
21819         
21820 1999-06-15  Tor Lillqvist  <tml@iki.fi>
21821
21822         * README.win32: Mention using GNU gettext.
21823         * config.h.win32: Enable NLS stuff.
21824         * gtk/makefile.msc: Use GNU gettext.
21825         * gdk/win32/gdkdnd.c: Minor header reorg.
21826         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
21827         cosmetics.
21828         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
21829         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
21830
21831 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
21832
21833         * acinclude.m4
21834         * config.guess
21835         * config.status
21836         * ltconfig
21837         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
21838
21839 1999-05-30  Tor Lillqvist  <tml@iki.fi>
21840
21841         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
21842         SafeAdjustWindowRectEx. Don't override all calls to
21843         AdjustWindowRectEx by it, but use it only in two places: When
21844         creating a new top-level window and when moving a top-level
21845         window.
21846
21847         Use screen coordinate rectangle, not client rectangle, in
21848         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
21849         when we try to place a window so that the decoration (mainly,
21850         title bar) isn't visible.
21851
21852         These changes fix the bug that showed up for instance as the
21853         GIMP's saved top-level windows moving right and down (by an amount
21854         equal to the window decoration) for each session. This bug showed
21855         up also in testgtk's "Saved Position".
21856
21857         gdk_window_resize also redone a bit.
21858
21859 1999-05-25  Tor Lillqvist  <tml@iki.fi>
21860
21861         * gtk/testgtkrc: Add (commented out) Windows-style theme
21862         include line.
21863
21864         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
21865
21866 1999-05-18  Tor Lillqvist  <tml@iki.fi>
21867
21868         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
21869         gdkx.h to a gdk subdirectory, so that applications can include
21870         these with <gdk/*.h> without trouble.
21871
21872         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
21873         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
21874         have their bitmap destroyed.
21875
21876         * gdk/win32/gdk.def: Add gdk_root_parent.
21877
21878 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
21879
21880         * configure.in
21881           gtk-config.in
21882           ltconfig
21883           ltmain.sh     
21884           gtk/Makefile.am: changes to compile nicely (with xlib) 
21885           on BeOS
21886
21887 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
21888
21889         * acinclude.m4
21890         * config.guess
21891         * config.sub
21892         * ltconfig
21893         * ltmain.sh: upgrade to libtool 1.3
21894
21895 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
21896
21897         * gtk/gtkclist.c:
21898         * gtk/gtkctree.c: merges from gtk-1-2
21899
21900 1999-04-25  Tor Lillqvist  <tml@iki.fi>
21901
21902         Support added for building using a GNU toolchain on Win32,
21903         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
21904
21905         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
21906         * config.h.win32: Changes for gcc.
21907         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
21908         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
21909         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
21910         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
21911         Protect shl stuff unavaiilable with mingw32 headers.
21912         * gdk/win32/gdkevents.c: Fix typo.
21913         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
21914         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
21915         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
21916         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
21917         the mingw32 headers.
21918         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
21919         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
21920         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
21921         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
21922         Test for NATIVE_WIN32, not _MSC_VER.
21923         * gtk/gtkmain.c: No use warning about developer version on Win32,
21924         there aren't any non-developer versions anyhow.
21925         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
21926         * gtk/makefile.msc: Use pthread from another directory. Minor other
21927         changes. 
21928
21929 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21930
21931         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21932           default filter from the list
21933
21934 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
21935
21936         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
21937          when gtk_widget_grab_default() is called for a widget that
21938          is not within a GtkWindow.
21939
21940 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
21941
21942         * docs/gtk_tut.sgml, examples/clist.c: use a
21943           scrolled window in the clist example. Minor
21944           tutorial fixes.
21945
21946 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
21947
21948         * docs/gtk_tut.sgml: Style check from David King
21949           <dking@youvegotmail.net>
21950
21951 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
21952
21953         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
21954         compile with unknown value of GDK_WINDOWING
21955
21956 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
21957
21958         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
21959         after the rule is fired.
21960         (install-exec-local): Install gdkconfig.h only if the contents are
21961         different from the currently installed gdkconfig.h.
21962
21963 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
21964
21965         * gdk/Makefile.am (configexecincludedir): Rename from 
21966         configincludedir so that gdkconfig.h will be installed 
21967         as part of `make install-exec'. 
21968
21969 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
21970
21971         * acinclude.m4
21972         * config.guess
21973         * config.sub
21974         * ltconfig
21975         * ltmain.sh: upgrade to libtool 1.2f
21976
21977         * autogen.sh: libtool is not required to autogen gtk+
21978
21979         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
21980         needed)
21981
21982 1999-03-18  Tor Lillqvist  <tml@iki.fi>
21983
21984         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
21985         declaring gdk variables exported/imported from the DLL. New image
21986         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
21987         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
21988         GDK_DRAG_PROTO_OLE2.
21989
21990         * gdk/gdk.h: Merge in Win32 version: Two new functions,
21991         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
21992         declared only for the Win32 version, but could be in the X11
21993         version as well. (Needed for a Xlib-less gdk_imlib.)
21994         gdk_color_hash should have only one parameter. Declare
21995         gdk_threads_mutex with GDKVAR.
21996         
21997         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
21998         just one parameter.
21999
22000         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
22001         per pixel, not bits.
22002
22003         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
22004         Fetch bpp (which means bits-per-pixel here) from another place on
22005         Win32. Accept also depth==32 (which we might get on Win32) with
22006         bpp==32.
22007
22008         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
22009         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
22010         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
22011         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
22012         in the backend-dependent directory, not in the common gdk
22013         directory.
22014
22015         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
22016         headers.
22017
22018 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
22019
22020         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
22021         want to use the Gtk+ devel version (which is true, and yes - even i am
22022         currently working with the 1.2.x branch). so everyone reading this, you
22023         probably want to issue
22024         cvs checkout -r glib-1-2 glib
22025         and
22026         cvs checkout -r gtk-1-2 gtk+
22027         as your next two comands.
22028
22029 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
22030
22031         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
22032         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
22033
22034         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
22035         file. strongly deprecated the GTK_HAVE_* macros, we provide
22036         GTK_CHECK_VERSION() for people that need to check for certain
22037         Gtk+ versions.
22038
22039         * gtk/gtkcompat.h: removed this from CVS.
22040         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
22041         idea right from the start, it just didn't seem like that back then.
22042
22043 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
22044
22045         * merges from gtk-1-2:
22046
22047 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
22048
22049         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
22050         item factory class has been created.
22051         (gtk_item_factory_parse_rc): likewise.
22052
22053         * gtk/gtkmenu.c:
22054         keep proper references for old_active_menu_item.
22055         (gtk_menu_reparent): unset the usize of the new parent,
22056         so the menu can sanely be size requested and we don't get nasty screen
22057         artefacts upon next reparentation.
22058         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
22059         enter notify. only synthesize enter notifies if the pointer really is
22060         inside the event window.
22061         (gtk_menu_popdown): use gtk_menu_shell_deselect().
22062         (gtk_menu_popup): move the background setting stuff into
22063         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
22064
22065         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
22066         gtk_menu_shell_select_item() to select the new item.
22067         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
22068         do the right thing for deselection as well.
22069
22070 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
22071
22072         * gtk/gtkwidget.[hc]:
22073         (gtk_widget_accelerators_locked): return whether a widget's accelerators
22074         are locked.
22075
22076         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
22077         existing accelerators if the widget's accelerators are locked.
22078
22079 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
22080
22081         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
22082
22083         * gtk/gtkmenu.c: truely forward key press and key release events to
22084         the menu widget from the toplevel or tearoff window. we can't simply
22085         connect to that, we need to stop further processing of the events as
22086         well.
22087
22088 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
22089
22090         * gtk/gtkmenu.c:
22091         (gtk_menu_key_press): pass event->keyval, event->state to
22092         gtk_accelerator_valid, instead of event->keyval twice.
22093         refuse to install single letter accelerators for menus that use
22094         single letter shortcuts.
22095
22096         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
22097         gtk_menu_ensure_uline_accel_group().
22098
22099         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
22100         which will always return an uline accel group, made
22101         gtk_menu_get_uline_accel_group() return NULL if the group isn't
22102         yet created.
22103
22104 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
22105
22106         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
22107
22108         * gtk/gtkclist.c (gtk_clist_column_title_passive):
22109         Leave button sensitive, trap  button_press, button_release,
22110         motion_notify, enter_notify and leave_notify events instead.
22111         (gtk_clist_column_title_active): disconnect event handler.
22112         (gtk_clist_drag_data_get): fixed memory leak. Reported by
22113         Guillaume Laurent <glaurent@worldnet.fr>
22114
22115 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
22116
22117         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
22118         width/height mixups.
22119
22120         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
22121         if needed.
22122
22123 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
22124
22125         * gtk/testgtk.c (create_item_factory): unref the item factory after
22126         window's destruction.
22127
22128         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
22129         count on the menu shell around the menu item's activation, since the
22130         signal emission may cause menu shell destruction.
22131
22132         * gtk/gtkitemfactory.c:
22133         the previous code leaked one accel group per menu. we use
22134         gtk_menu_get_uline_accel_group() now to fix that, and with that
22135         also create the underline accelerator group of the menus only if
22136         required (i.e. an underline accelerator has been specified).
22137         (gtk_item_factory_construct):
22138         (gtk_item_factory_create_item): removed code that would create an
22139         extra accel group for the menu (and leak references).
22140         (gtk_item_factory_create_item): adapted the underline accelerator
22141         installation code to properly feature gtk_menu_get_uline_accel_group().
22142
22143         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
22144         menu->accel_group, this may return NULL if the accelerator group
22145         hasn't been set yet.
22146         added gtk_menu_get_uline_accel_group() to retrive the underline
22147         accelerator group of the menu, this will be created on demand
22148         and proper care is taken about its reference count.
22149
22150         * gtk/gtkitemfactory.h:
22151         * gtk/gtkitemfactory.c:
22152         dumped the approach of keeping a widgets by action list on the
22153         factory since the factory<->widget destroy negotiation didn't work
22154         and would be hard to get going at all. instead we keep a list of
22155         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
22156         persistant throughout a program's life time).
22157         also, i removed the static const gchar *key_* variables, and made
22158         them inline strings (they weren't actually used anyways).
22159         (gtk_item_factory_add_item): update ifactory->items.
22160         (gtk_item_factory_destroy): destroy ifactory->items (and remove
22161         the item factory pointer from the remaining ifactory widgets).
22162         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
22163         list to find the widget.
22164         (gtk_item_factory_get_item): new function that works around
22165         gtk_item_factory_get_widget() limitations, this function will only
22166         return menu items, even for <Branch> entries.
22167
22168 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22169
22170         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22171         font hash table, if we have a GdkFontPrivate entry for this font
22172         already, simply increment its reference count, provided by Olaf Dietsche
22173         <olaf.dietsche+list.gtk@netcologne.de>.
22174
22175         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
22176         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
22177
22178 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
22179
22180         * gtk/gtkcontainer.c:
22181         (gtk_container_add_with_args):
22182         (gtk_container_addv):
22183         (gtk_container_add): before adding a child to a conatiner, make sure
22184         it is (default) constructed, this is neccessary because under certain
22185         circumstances the child will get relized and mapped immediatedly, in
22186         which case it has to be constructed already.
22187
22188 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
22189
22190         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
22191         values > 1 as TRUE also.
22192
22193 1999-03-16  Tor Lillqvist  <tml@iki.fi>
22194
22195         * README.win32: New file.
22196                 
22197         * configure.in: Check for lstat.
22198
22199         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
22200         completeness.
22201
22202         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
22203
22204         * gtk/gtk.def: Removed CRs.
22205
22206         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
22207         ..\gdk\win32).
22208
22209         * gdk/win32/makefile.msc: Correct upwards relative paths.
22210         
22211 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
22212
22213         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
22214           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
22215           it was connecting a void function to expose_event and the int
22216           returning function to the draw signal
22217
22218 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
22219
22220         * configure.in:
22221         Use correct path to libgmodule.la when ref'ing uninstalled copy
22222         of glib.  (Already in stable branch, Bug #417)
22223
22224 1999-03-15  Tor Lillqvist  <tml@iki.fi>
22225
22226         Win32 merge and general portability stuff:
22227                 
22228         * acconfig.h,configure.in: Check for <sys/time.h>.
22229
22230         * gdk/win32: New directory (actually, been there for a while).
22231         
22232         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
22233         NATIVE_WIN32, and use these. Always case fold on Win32. No
22234         backslashed escapes on native Win32.
22235
22236         * gtk/{gtk.def,makefile.msc}: New files.
22237
22238         * gtk/Makefile.am: Add above new files.
22239         
22240         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
22241         instead of <strings.h>.
22242
22243         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
22244         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
22245         <unistd.h> appropriately.
22246
22247         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
22248         Use ABS() (from <glib.h>) instead of abs().
22249         
22250         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
22251         of gtk (and thus glib) headers, so that WIN32 will be
22252         defined. With MS C, include <direct.h> for mkdir prototype.
22253
22254         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
22255         some casts, needed by MS C.
22256
22257         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
22258         implemented).
22259
22260         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
22261         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
22262         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
22263
22264         * gtk/gtkmain.h: Mark variables for export/import on Win32.
22265                 
22266         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
22267         the event is not a hint, or its window is not the slider. Needed
22268         on Win32, at least.
22269
22270         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
22271         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
22272         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
22273         a subdirectory of the Windows directory as gtk system
22274         configuration directory.
22275
22276         * gtk/gtkselection.c: No chunks on Win32.
22277
22278         * gtk/gtksocket.c: Not implemented on Win32.
22279
22280         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
22281
22282         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
22283
22284         * gtk/maketypes.awk: Declare variables with a macro that expands to
22285         necessary export/import magic in the case of Win32.
22286                 
22287         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
22288
22289 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
22290
22291         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
22292         since those were meant only for gdki18n.h.  
22293         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
22294         for widechar tests.
22295         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
22296
22297 1999-03-13  Tor Lillqvist  <tml@iki.fi>
22298
22299         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
22300         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
22301
22302         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
22303         installed) to CFLAGS.
22304
22305         * gdk/Makefile.am: Add rules for gdkconfig.h.
22306
22307         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
22308         APIs.
22309
22310         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
22311         gdkx.h anyway when compiling for X11.
22312         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
22313         general): Merge in Win32 version.
22314         
22315         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
22316         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
22317         expansion (if we don't have HAVE_PWD_H), allow for drive
22318         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
22319         included code from Craig Setera's port to Win32 (the one that uses
22320         X11, and the cygwin dll), even if it probably will be abandoned.
22321
22322         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
22323         the user entered one herself.  This way one can complete *.h and
22324         don't get matches on any .help files, for instance.
22325         
22326 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22327
22328         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22329         font hash table, if we have a GdkFontPrivate entry for this font
22330         already, simply increment its reference count, provided by Olaf Dietsche
22331         <olaf.dietsche+list.gtk@netcologne.de>.
22332
22333         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
22334         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
22335
22336 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
22337
22338         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
22339         the number of calls to gdk_draw_point() (and thus to X) by
22340         clipping the points by hand.
22341
22342         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
22343         the clip parameter.
22344         (gtk_handle_box_paint): Only paint the handle if the expose area
22345         intersects it.
22346
22347 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
22348
22349         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
22350
22351 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
22352
22353         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
22354         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
22355
22356 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
22357
22358         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
22359          textmode (O_TEXT) for OS/2 version.
22360
22361 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
22362
22363         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
22364         GtkSpinButton, "input" and "output", to make the output more flexible.
22365         The user has to provide a mapping between adjustment->value and the
22366         output string (and vice versa, if the spin button is editable). 
22367         See testgtk for examples.
22368
22369 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
22370
22371         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
22372         new one.
22373         
22374         * configure.in: set gtk+ version to 1.3.0.