]> Pileus Git - ~andy/gtk/blob - ChangeLog.pre-2-0
Do search GTK_BINARY_VERSION -specific directory on Windows, too (#63759).
[~andy/gtk] / ChangeLog.pre-2-0
1 2001-11-06  Tor Lillqvist  <tml@iki.fi>
2
3         * gtk/gtkmain.c (find_module): Do search GTK_BINARY_VERSION
4         -specific directory on Windows, too (#63759).
5
6 Mon Nov  5 12:46:44 2001  Owen Taylor  <otaylor@redhat.com>
7
8         * gdk/x11/gdkdrawable-x11.[ch] gdk/x11/gdkgc-x11.c
9         gdk/x11/gdkpixmap-x11.c gdk/x11/gdkprivate-x11.h
10         gdk/x11/gdkwindow-x11.c: Redo Xft support to go
11         directly to Picture objects instead of using XftDraw.
12         This fixes the problem where we weren't able to 
13         properly destroy XftDraw objects before destroying
14         the accompanying windows, and probably improves
15         efficiency a bit too. (#50214)
16
17 Mon Nov  5 10:01:49 2001  Owen Taylor  <otaylor@redhat.com>
18
19         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): 
20         Clamp max window width/height to 32767, not 32768 since
21         we have to be able to deal with a dx/y of -32768 without
22         getting a width of 65536 when guffaw scrolling.
23
24         * gdk/x11/gdkgeometry-x11.c: Implement gdk_window_scroll()
25         for the guffaw scrolling case, fixing some problems with
26         copy-area case as well. Fix BadValue bug with moving windows
27         by large amounts.
28
29         * gdk/x11/gdkgeometry-x11.c (gdk_window_clip_changed): Update
30         clip in window structue before calling gdk_window_invalidate_region
31         since that trims new invalidations to the window's visible
32         region.
33
34         * gdk/x11/gdkwindow-x11.c (gdk_window_set_static_gravities): 
35         Really set the static window gravity on the children, not
36         repeatedly on the window.
37
38         * gtk/testgtk.c: Add a torture test for big windows and 
39         gdk_window_scroll().
40
41 Sun Nov  4 17:36:08 2001  Manish Singh  <yosh@gimp.org>
42
43         * acconfig.h configure.in: sigsetjmp is macroized in some places,
44         so use AC_TRY_LINK instead of AC_CHECK_FUNCS for the check.
45
46 Sun Nov  4 19:16:23 2001  Owen Taylor  <otaylor@redhat.com>
47
48         * gdk/gdkcolor.c (gdk_color_parse): Implement gdk_color_parse()
49         in terms of pango_color_parse().
50
51         * gdk/{linux-fb,win32,x11}/gdkcolor-*.c: Remove port-specific
52         gdk_color_parse() implementations.
53
54 Sun Nov  4 18:39:43 2001  Owen Taylor  <otaylor@redhat.com>
55
56         * gtk/gtksizegroup.c (gtk_size_group_set_mode): 
57         queue_resize_on_group with both the old and new mode, not
58         just the new mode. (#60171, Nicolas Setton). Also, notify
59         the "mode" property.
60         
61 Sun Nov  4 16:02:08 2001  Owen Taylor  <otaylor@redhat.com>
62
63         * gdk/gdkwindow.[ch]: Add a function gdk_window_invalidate_maybe_recurse() 
64         for use in "shallow invalidation" of a widget. (Windows belonging
65         to the widget, but not to the widget's children)
66
67         * gtk/gtkprivate.h gtk/gtkwidget.c gtk/gtksizegroup.c: Add private
68         flags GTK_ALLOC_NEEDED, GTK_REQUEST_NEEDED.  These flags are set
69         up on ancestors up to the resize container on queue_resize. Size
70         requests only actually take place if GTK_REQUEST_NEEDED, size
71         allocations only take place if GTK_ALLOC_NEEDED or the size
72         changed.
73
74         * gtk/gtkcontainer.c gtk/gtkwidget.c: Remove
75         container->resize_widgets and the RESIZE_NEEDED flag since the
76         above flags are sufficient to figure out what needs to be
77         resized/reallocated. Remove code manipulating
78         container->resize_widget.
79
80         * gtk/gtkwidget.[ch]: Add gtk_widget_set_redraw_on_alloc(); this
81         allows widgets to turn off being automatically invalidated is when
82         they are resized.
83
84         * gtk/gtkwidget.[ch] (gtk_widget_size_allocate): Invalidation when
85         a widget is resized or moved is "shallow" as described above -
86         only the windows that need to be invalidated are invalidated.
87
88         * gtk/gtkbox.c gtk/gtktable.c gtk/gtkalignment.c docs/Changes-2.0.txt: 
89         Make these widget's init functions call 
90         gtk_widget_set_redraw_on_allocate(widget,FALSE).
91
92         * gtk/gtkwindow.c (gtk_window_configure_event): Call 
93         _gtk_container_queue_resize(), since we don't want
94         redrawing. (Probably could be done for other 
95         calls to gtk_widget_queue_resize() in gtkwindow.c,
96         but this is the most important one.)
97
98         * gtk/gtkwindow.c (gtk_window_move_resize): Don't call
99         gtk_widget_queue_draw() - size_allocate() handles
100         that as appropriate.
101
102         * gtk/gtkframe.c (gtk_frame_size_allocate): Invalidate instead
103         of queue_clear() to avoid invalidating children.
104
105 2001-11-04  jacob berkman  <jacob@ximian.com>
106
107         * gtk/gtkmain.c (find_module): don't free the module name until
108         after we load the module
109
110 Sat Nov  3 13:57:21 2001  Owen Taylor  <otaylor@redhat.com>
111  
112         * gtk/gtkctree.c: Convert GTK_TYPE_CTREE_NODE to pointer
113         derivation instead of boxed derivation.
114  
115         * gtk/gtkmarshal.list: Remove some now unused marshallers.
116  
117 2001-11-04  Tor Lillqvist  <tml@iki.fi>
118
119         * gtk/gtkimmodule.c: Can't include gtkprivate.h (I added the
120         include yesterday, without really thinking), as that defeats the
121         working of correct_libdir_prefix() (it becomes a no-op.). Add
122         comment mentioning that. Thanks to Hans Breuer for noticing.
123         
124 2001-11-03  Daniel Elstner  <daniel.elstner@gmx.net>
125
126         * gtk/gtkwindow.h (frame_event): Use GtkWindow* as first
127         signal argument (was GtkWidget*).
128
129         * gtk/gtkwindow.c (gtk_window_frame_event),
130           gtk/gtkwindow-decorate.c (gtk_decorated_window_frame_event):
131         Fixed argument types as above, removed GTK_WINDOW casts and
132         added some GTK_WIDGET casts instead.
133
134 2001-11-03  Hans Breuer  <hans@breuer.org>
135
136         * gtk/gtkfilesel.c (gtk_file_selection_finalize) : chain
137         finalize to parent class to get removed from the toplevel_list.
138         Should fix 'random' crashes of #63474.
139
140         * gtk/gtktreemodelsort.c : chain finalize() to parent class
141
142 2001-11-03  Tor Lillqvist  <tml@iki.fi>
143
144         * modules/input/Makefile.am: Use -no-undefined on Windows. Look
145         for .dll or .so as appropriate as module suffix.
146
147         * gtk-zip.sh.in: Use correct import library names.
148
149         * gtk/gtk.def: Add a couple of missing entry points. (#63585)
150
151         * gtk/gtkimmodule.c (correct_libdir_prefix): New function, used on
152         Windows to turn build-time paths from a gtk.immodules distributed
153         as part of a binary package into runtime ones in the
154         end-user-chosen installation directory.
155         (gtk_im_module_init): Use it for module path and domain
156         directory.
157
158 2001-11-02  Tor Lillqvist  <tml@iki.fi>
159
160         * gtk/gtkrc.c (gtk_rc_make_default_dir): Fix typo: extraneous
161         comma.  Include gtkprivate.h for GTK_LIBDIR etc definitions on
162         Windows.
163
164 2001-10-30  Tor Lillqvist  <tml@iki.fi>
165
166         * Makefile (install-data-hook): Use cp, not $(LN_S) on the .pc
167         files. Configure on Win32 (running on Cygwin) thinks symlinks
168         exist, but pkg-config is not necesarily a Cygwin program, and
169         doesn't understand them.
170
171 Fri Nov  2 16:45:17 2001  Jonathan Blandford  <jrb@redhat.com>
172
173         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Clean up height code
174         a bit.  I don't think it's completely correct yet, but it's
175         getting there.
176
177 Fri Nov  2 16:14:15 2001  Owen Taylor  <otaylor@redhat.com>
178
179         * gtk/gtkviewport.c (gtk_viewport_size_request): Remove
180         random + 5 for width and height. If people want padding,
181         they should add padding. (Note the +5 isn't padding
182         that will always appear - it just appears in the case
183         where the widget is allocated it's requisition.)
184         (#51018, Janet Davis)
185
186 Fri Nov  2 15:53:23 2001  Owen Taylor  <otaylor@redhat.com>
187
188         * gtk/gtkimcontext.h (struct _GtkIMContextClass): Pad
189         the structure for future expansion.
190
191 Fri Nov  2 15:30:34 2001  Owen Taylor  <otaylor@redhat.com>
192
193         Patch from HideToshi Tajima (#51922)
194         
195         * gtk/gtkimmulticontext.c: Proxy set_use_preedit().
196
197         * gtk/modules/input/gtkimcontextxim.[ch]: Implement
198         set_use_preedit().
199         
200         * gtk/modules/input/gtkimcontextxim.[ch]: If we have
201         to destroy the input context because we change the
202         client window or use_preedit, make sure we empty
203         the preedit string.
204
205 Fri Nov  2 14:55:53 2001  Owen Taylor  <otaylor@redhat.com>
206
207         * gtk/{gtkcolorseldialog.c,gtkfilesel.c,gtkfontsel.c,
208         gtkgamma.c,gtkmessagedialog.c}: Go to the GUP
209         proposed ordering of buttons with [OK] in the lower
210         right hand corner. Patch from Gregory Merchan,
211         #56331.
212
213 Fri Nov  2 11:51:49 2001  Jonathan Blandford  <jrb@redhat.com>
214
215         * gtk/gtklabel.c (gtk_label_select_region_index): remove
216         extraneous gtk_label_clear_layout (label)
217
218 2001-11-02  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
219
220         * tests/makefile.msc, gtk/makefile.msc.in: Removed
221         -DGTK_DISABLE_COMPAT_H.
222
223         * docs/Changes-2.0.txt:
224         s/GDK_DISABLE_COMPAT_H/GDK_DISABLE_DEPRECATED/
225
226         * gtk/gtkcompat.h.in, gdk/gdkcompat.h: Removed from CVS.
227
228 Fri Nov  2 10:21:03 2001  Owen Taylor  <otaylor@redhat.com>
229
230         * examples/**/Makefile.am: Convert to use pkg-config
231         rather than gtk-config. (#53375, Skip Montanaro)
232
233 2001-11-02  Matt Wilson  <msw@redhat.com>
234
235         * gtk/gtkdialog.c (find_child_by_response_id): remove totally
236         broken unused, non-compiling, static function.
237
238 Fri Nov  2 08:17:06 2001  Owen Taylor  <otaylor@redhat.com>
239
240         * gtk/gtkdialog.c (gtk_dialog_set_response_sensitive): 
241         Iterate through children of the action area, not of
242         the vbox. (#58278, Sergey Kuzminov)
243
244 2001-11-01  Havoc Pennington  <hp@pobox.com>
245
246         * gtk/gtktext.c (gtk_text_set_position): handle -1 argument in
247         order to remove a workaround in Nautilus that forced
248         GTK_ENABLE_BROKEN
249
250         * gtk/gtkwidget.c (gtk_widget_modify_style): fix typos in the docs
251
252 Thu Nov  1 20:09:31 2001  Owen Taylor  <otaylor@redhat.com>
253
254         * gtk/gtkrange.c: Patch from George Lebl to 
255         fix division by zero for full scroll bars. (#62114)
256
257 Thu Nov  1 19:56:40 2001  Owen Taylor  <otaylor@redhat.com>
258
259         * gtk/gtkmain.c (gtk_main_do_event): ref/unref
260         around gtk_widget_event() if we are going to
261         set a flag afterwards. (#63464)
262
263 Thu Nov  1 19:44:48 2001  Owen Taylor  <otaylor@redhat.com>
264
265         * gtk/gtkiconfactory.c gtk/stock-icons/Makefile.am: 
266         Actually add the missing/broken image icon as the
267         image for the "missing image" stock icon.
268
269 Thu Nov  1 19:18:34 2001  Owen Taylor  <otaylor@redhat.com>
270
271         * demos/gtk-demo/stock_browser.c (do_stock_browser): 
272         Set a reasonable default height for the window.
273
274         * demos/gtk-demo/stock_browser.c (id_to_macro): Fix
275         bug where subsequent '-' weren't converted to '_'.
276         (#59550, Matthias Clasen)
277
278         * demos/gtk-demo/appwindow.c (menu_items): Don't right 
279         justify the Help menu - just include a comment on
280         how to do it. (#63539,  Marius Andreiana)
281
282         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): Don't 
283         list GTK_ICON_SIZE_INVALID.
284
285         * demos/gtk-demo/stock_browser.c: Show the biggest available
286         size, not a fixed size. (Often reported, including #63539, 
287         Marius Andreiana)
288
289 Thu Nov  1 19:11:35 2001  Jonathan Blandford  <jrb@redhat.com>
290
291         * gtk/gtkrbtree.c (gtk_rbtree_reorder_fixup): Fix reorder_fixup,
292         #59583
293
294         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): fix
295         warning.
296
297 Thu Nov  1 16:54:00 2001  Owen Taylor  <otaylor@redhat.com>
298
299         * gtk/gtktypeutils.h: Make GtkFunction return boolean, not gint.
300         (Daniel Elstner).
301
302 Thu Nov  1 16:20:56 2001  Owen Taylor  <otaylor@redhat.com>
303
304         * gtk/gtkimcontext.[ch]: Add:
305           - A ::retrieve_surrounding signal that asks the widget for
306             context around the insertion point.
307           - A ::delete_surrounding signal that asks the widget to 
308             delete context aroudn the insertion point.
309           - gtk_im_context_set_context() for widgets to set context
310             around the insertion point in response to ::retrieve_context.
311           - gtk_im_context_get_context() for context to get context
312             around the insertion point
313
314         * gtkmarshal.list: Add BOOL:INT,INT
315
316         * gtk/gtkimmulticontext.c: Proxy the get_surrounding() /
317         set_surrounding() methods, and the ::retrieve_surrounding /
318         ::delete_surrounding signals.
319
320         * gtk/gtkentry.c gtk/gtktreeview.c: Hook up to the
321         GtkIMContext::retrieve_surrounding / ::delete_surrounding
322         signals.
323
324 Thu Nov  1 15:45:04 2001  Jonathan Blandford  <jrb@redhat.com>
325
326         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
327         it's amazing how well things work sometimes, even when they're
328         completely wrong.
329
330         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
331         where you could try to collapse a node w/o it having children.
332
333         (gtk_tree_view_class_init): remove Shift L<->R as they already
334         existed for expand/collapse.
335
336 Thu Nov  1 12:21:31 2001  Jonathan Blandford  <jrb@redhat.com>
337
338         * gtk/gtktreeview.c (gtk_tree_view_focus_to_cursor): Fix crash
339         found by Matt Wilson.
340
341 Thu Nov  1 00:44:50 2001  Jonathan Blandford  <jrb@redhat.com>
342
343         * gtk/gtktreeview.c (gtk_tree_view_class_init): Support Shift,
344         Control, and Shift|Control L<->R, #63475
345
346 Wed Oct 31 18:53:51 2001  Jonathan Blandford  <jrb@redhat.com>
347
348         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): fix
349         infinite loop noticed by yosh.
350
351 2001-11-01  Michael Meeks  <michael@ximian.com>
352
353         * gtk/gtksocket.c (gtk_socket_unrealize): unset the
354         GTK_REALIZED flag so we don't re-enter when we are
355         destroyed from the plug side.
356
357 Wed Oct 31 18:23:47 2001  Owen Taylor  <otaylor@redhat.com>
358
359         * gtk/gtkoptionmenu.c (gtk_option_menu_detacher): 
360         Add a "menu" property and notify on it. (#62798,
361         Padraig O'Briain)
362
363         * gtk/gtkselection.[ch] gtk/{gtkentry.c, gtkfilesel.c,
364         gtkoldeditable.c, gtktextbuffer.c, gtktextview.c}: 
365         Fix set_text to take a gchar, not a guchar, and to have 
366         a len argument.
367
368 Wed Oct 31 15:31:13 2001  Manish Singh  <yosh@gimp.org>
369
370         * gtk/gtkstock.c: fix typo to make it compile
371
372 Wed Oct 31 17:27:20 2001  Jonathan Blandford  <jrb@redhat.com>
373
374         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): if
375         the widget is insensitive, draw the text insensitively, #63306
376
377 2001-10-31  Matthias Clasen  <matthiasc@poet.de>
378
379         * gtk/gtkstock.c: Add stock items for most stock icons. (#61757)
380
381 Wed Oct 31 16:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
382
383         * gtk/gtktreednd.c (gtk_tree_set_row_drag_data): rename
384         gtk_selection_data_set_tree_row, #60218
385         (gtk_tree_get_row_drag_data): rename
386         gtk_selection_data_get_tree_row, #60218
387
388         * gtk/gtktreemodel.c (gtk_tree_row_ref_deleted_callback): Actually
389         get this right, after the third try, #63122.
390
391 2001-10-31  jacob berkman  <jacob@ximian.com>
392
393         * gdk/gdkselection.h (GDK_TARGET_STRING): 
394         (GDK_SELECTION_TYPE_STRING): these should be 31, not 3.  Hooray
395         for Xatoms (and not using the XA_* macros)!
396
397 Wed Oct 31 15:38:14 2001  Owen Taylor  <otaylor@redhat.com>
398
399         * gtk/gtkwindow.[ch] (gtk_window_get_focus): Add a
400         gtk_window_get_focus() getter to determine the currently
401         focused widget within the window. (#63145, request
402         from Damian Ivereigh)
403
404 Wed Oct 31 14:45:08 2001  Jonathan Blandford  <jrb@redhat.com>
405
406         * gtk/gtkenums.h (enum): Add GTK_SELECTION_NONE enum, #61695
407
408         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Handle new
409         GTK_SELECTION_NONE enum.
410         (_gtk_tree_selection_internal_select_node): ditto
411
412         * gtk/gtkcellrenderer.h (struct _GtkCellRendererClass): add
413         constness.
414
415         * gtk/gtkcellrenderertoggle.c: more yummy constness.
416
417         * gtk/gtkclist.c (gtk_clist_set_selection_mode): g_return_if_fail
418         if mode == GTK_SELECTION_NONE
419
420 Wed Oct 31 14:05:17 2001  Jonathan Blandford  <jrb@redhat.com>
421
422         * gtk/gtktreeview.c (gtk_tree_view_class_init): Added a
423         "cursor_changed" signal, #62850.
424
425 2001-10-31  Matt Wilson  <msw@redhat.com>
426
427         * gtk/gtktreedatalist.c (_gtk_tree_data_list_alloc): after
428         allocating the treedatalist, zero it to make sure the values are
429         cleared from any garbage that was in this chunk.
430
431 2001-10-31  Murray Cumming  <murrayc@usa.net>
432
433         * gtk/cellrenderertext.h: "edited" default signal handler
434         gchar* args are now const.
435         gtk/cellrenderertoggle.h: "toggled" default signal handler
436         gchar* arg is now const.
437         Also changed other signal handlers for "edited" and "toggled" to
438         have the same signature.
439
440 Tue Oct 30 19:17:57 2001  Jonathan Blandford  <jrb@redhat.com>
441
442         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): massize
443         rewrite.  Static models now totally work.  I'm not 100% sure about
444         row_inserted and row_changed, but I'll get those later.
445
446 2001-10-30  Sven Neumann  <sven@gimp.org>
447
448         * configure.in: use GLIB_AC_DIVERT_BEFORE_HELP() so we get proper
449         output for configure --help.
450
451 2001-10-30  Havoc Pennington  <hp@pobox.com>
452
453         * gtk/gtktextview.c (changed_handler): Update the IM spot location
454         here, if text was invalidated in the visible area, because the
455         scroll offset doesn't normally change in that case, and the mark
456         isn't set, just implicitly moved over as text is added/removed
457         
458 Mon Oct 29 19:18:35 2001  Jonathan Blandford  <jrb@redhat.com>
459
460         * gtk/gtkseparatormenuitem.c: Code cleanup.
461         (gtk_separator_menu_item_class_init): Fix bugs in this code.
462
463 2001-10-29  jacob berkman  <jacob@ximian.com>
464
465         * gdk/Makefile.am (LDFLAGS): 
466         * gtk/Makefile.am (LDFLAGS): automake doesn't support conditionalized
467         LDFLAGS, so put win32 flags in here
468
469 Mon Oct 29 15:41:58 2001  Jonathan Blandford  <jrb@redhat.com>
470
471         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_sort_level): Darn.
472         I can't believe this took this long to fix.
473
474 Mon Oct 29 13:54:49 2001  Jonathan Blandford  <jrb@redhat.com>
475
476         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered): fix
477         reordered signal.
478
479 Mon Oct 29 12:27:51 2001  Owen Taylor  <otaylor@redhat.com>
480
481         * gtk/gtkfilesel.c (gtk_file_selection_rename_file): Grab
482         the focus to the fileop entry for create dir / rename
483         file. (#62838)
484
485 Mon Oct 29 12:21:49 2001  Owen Taylor  <otaylor@redhat.com>
486
487         * configure.in: Don't use AC_CHECK_FILE to check for a 
488         file since it always spits warnings about cross compilation,
489         use -f instead. It's not like we cross compile properly
490         anyways.
491
492         * configure.in (gtktargetlib): Move call to AC_PROG_CC
493         to suppress autoconf warning.
494
495         * acconfig.h: Add some missing #undefs from recent
496         Win32 additions.
497
498 Mon Oct 29 11:31:40 2001  Owen Taylor  <otaylor@redhat.com>
499
500         * m4macros/gtk-2.0.m4: Don't try to use pkg-config
501         when we didn't find it. (#62944, Eric Lemings)
502
503         * m4macros/gtk-2.0.m4: Fix problem with spaces around =
504         sign in assignment. (#63209, Arkadiusz Miskiewicz)
505
506 2001-10-29  Anders Carlsson  <andersca@gnu.org>
507
508         * gtk/gtktreeview.c (gtk_tree_view_size_request): Calculate
509         the buttons size request before using it. Fixes #61696.
510
511 2001-10-29  Tor Lillqvist  <tml@iki.fi>
512
513         * README.win32: Updates.
514
515         * gtk-zip.sh.in: New file, used to build distribution package for
516         Windows.
517
518         * gdk/gdkglobals.c: Mark gdk_threads_mutex for DLL export when
519         applicable with GDKVAR.
520
521         * gdk/win32/libwntab32x.la: New file, hand-written wrapper for the
522         Wintab library.
523
524         * gdk/win32/gdkwin32.h
525         * gdk/win32/gdkprivate-win32.h: Reorganise to match corresponding
526         X11 headers better, and to enable gdkwin32.h to be installed and
527         included from applications, but not the *-win32.h headers.
528
529         * gdk/win32/*.c: Corresponding small changes, simplifications of
530         #includes.
531         
532         * gdk/win32/gdkregion-win32.c: Remove.
533
534         * gdk/win32/gdkevents-win32.c (print_event): Add GDK_SETTING.
535
536         * gdk/win32/gdkfont-win32.c
537         * gdk/win32/gdkgeometry-win32.c: Remove unused variables.
538
539         * gdk/win32/gdkproperty-win32.c (gdk_atom_intern): Don't insert
540         GDK_NONE values into hash table.
541
542         * gtk/gtk.def: Update.
543
544         * gtk/gtkfilesel.c: Include <winsock.h> (if available) for
545         gethostname().
546
547         * gtk/gtkmain.c 
548         * gtk/gtkrc.c: (Win32) Save actual DLL name for later use in DLL
549         entry function. Avoid hardcoded paths GTK_LIBDIR, GTK_SYSCONFDIR,
550         GTK_DATA_PREFIX and GTK_LOCALEDIR, instead add functions that call
551         g_win32_get_package_installation_subdirectory() with the actual
552         DLL name saved above. Redefine above directory name macros to call
553         these functions. Remove some ifdefs.
554
555         * gtk/maketypes.awk: Output GTKTYPEBUILTINS_VAR (that marks
556         variable for export on Win32) also to the _vars file.
557
558         Changes for autoconfiscated build on Win32, and addition of Win32
559         backend to the related files:
560         
561         * configure.in: Like in GLib, set LT_CURRENT_MINUS_AGE for use
562         when forming DLL name in some files. Set MS_LIB_AVAILABLE is
563         lib.exe is available. Call AC_LIBTOOL_WIN32_DLL. Set
564         PLATFORM_WIN32, OS_WIN32 and USE_WIN32 automake conditionals. Add
565         win32 target, using pangowin32. Don't use the
566         -export-symbols-regex option on Win32, we use .def files to list
567         exported symbols. Check <winsock.h> (for gethostname() in
568         gtkfilesel.c). Enclose nested AC_CHECK_* macros in brackets to
569         prevent premature m4 expansion.
570
571         * acconfig.h: Add HAVE_WINTAB.
572
573         * gdk/Makefile.am: Add libgdk-win32-1.3.la target and associated
574         macros and rules. Use -no-undefined on Win32. Use gdk.def file. If
575         MS_LIB_AVAILABLE, build MS import library. Install the import
576         libraries. If HAVE_WINTAB, link with the Wintab library.
577
578         * gdk/win32/Makefile.am: Actually enable building the win32
579         objects here, not just list all files in EXTRA_DIST. Link in the
580         compiled resource file from rc/gdk-win32res.lo. If HAVE_WINTAB,
581         copy the Wintab library into the .libs directory. 
582
583         * gdk/win32/gdkwindow-win32.c (RegisterGdkClass): Don't assume the
584         name of the GDK DLL when fetching the icon. Use the HMODULE saved
585         in gdk_dll_hinstance by DllMain.
586
587         * gdk/win32/rc/Makefile.am: Build gdk-win32res.lo using the
588         build/win32/lt-compile-resource script.
589
590         * gdk/win32/rc/gdk.rc.in
591         * gtk/gtk-win32.rc.in: Use the DLL name that libtool would use.
592
593         * gtk/Makefile.am: Add libgtk-win32-1.3.la target and associated
594         macros and rules. Use -no-undefined on Win32. Use gtk-win32.def
595         file. Install import libraries.
596
597 2001-10-29  Anders Carlsson  <andersca@gnu.org>
598
599         * gtk/gtkiconfactory.c (get_default_icons): Fix build.
600
601 2001-10-28  Hans Breuer  <hans@breuer.org>
602
603         * gdk/gdk.c gdk/gdkevents.c
604           gdk/win32/gdkcolor-win32.c gdk/win32/gdkdnd-win32.c
605           gdk/win32/gdkdrawable-win32.c gdk/win32/gdkevents-win32.c
606           gdk/win32/gdkfont-win32.c gdk/win32/gdkgc-win32.c
607           gdk/win32/gdkim-win32.c gdk/win32/gdkmain-win32.c
608           gdk/win32/gdkprivate-win32.h gdk/win32/gdkproperty-win32.c
609           gdk/win32/gdkselection-win32.c gdk/win32/gdkwin32.h
610           gdk/win32/gdkwindow-win32.c gdk/win32/gdkwindow-win32.h :
611         static correct-ness, underscore prefixing of library internal 
612         functions
613         (applied the undisputed and the win32 part. Of the latter 
614          I'm probably the one who will change it back again, if Owen
615          decides that the Gdk*Impl types should not be private to Gdk)
616
617         * gdk/gdk.def : added the remaining exported functions
618
619 2001-10-28  Matthias Clasen  <matthiasc@poet.de>
620
621         * gtk/gtkcellrenderertoggle.c, gtk/gtkimcontextsimple.c,
622         gtk/gtkimmulticontext.c, gtk/gtkimagemenuitem.c,
623         gtk/gtkiconfactory.c, gtk/gtkwindow.c: Documentation updates.
624
625 2001-10-28  jacob berkman  <jacob@ximian.com>
626
627         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): do not call
628         gtk_settings_get_default() here as that requires an X connection
629         (which breaks doc building with no X connection) and is not
630         multihead safe
631         (gtk_color_selection_init): delay palette loading until realize
632         time
633         (gtk_color_selection_realize): load the palette, and initialize
634         the global palette if it hasn't been already
635
636         * gtk/gtkpreview.c (gtk_preview_class_init): don't initialize the
637         visual/cmap fields of klass->info since they are gone
638         (gtk_preview_get_visual): just return gdk_rgb_get_visual ()
639         (gtk_preview_get_cmap): just return gdk_rgb_get_colormap ()
640         (gtk_preview_realize): don't set VISUAL and COLORMAP attributes
641
642         * gtk/gtkpreview.h (struct _GtkPreviewInfo): remove visual and
643         cmap fields
644         (gtk_preview_get_visual):
645         (gtk_preview_get_cmap): mark as deprecated
646
647         * docs/Changes-2.0.txt: add a little note about the GtkPreviewInfo
648         changes
649
650 Sun Oct 28 09:15:39 2001  Owen Taylor  <otaylor@redhat.com>
651
652         * gtk/gtkimcontext.h (struct _GtkIMContext): Fixed
653         structure to have GObject not GtkObject as
654         parent_instance. (Jeff Franks.)
655
656 2001-10-27  Matthias Clasen  <matthiasc@poet.de>
657
658         * gdk/x11/gdkinput.c: Typo fix.
659
660 2001-10-26  Havoc Pennington  <hp@pobox.com>
661
662         * gtk/gtktextview.c (gtk_text_view_mark_set_handler): Call
663         update_im_spot_location here explicitly
664         (gtk_text_view_reset_im_context): don't update the spot location
665         here
666
667 2001-10-27  Anders Carlsson  <andersca@gnu.org>
668
669         * gtk/gtktreemodel.c (gtk_tree_model_get): Fix typo in docs.
670         This fixes #62942.
671
672         * gtk/gtkspinbutton.c (gtk_spin_button_new_with_range): 
673         Clarify that we're returning a spin button in the _new function.
674         This fixes #54097.
675         
676 Fri Oct 26 20:55:57 2001  Owen Taylor  <otaylor@redhat.com>
677
678         * gtk/gtkbutton.c: Revert changes to GTK_RUN_LAST. 
679         Unfortunately, people apparently erroneously connect
680         to ::clicked for GtkToggleButton and expect
681         they know what happened in the default signal handler
682         instead of appropriately connecting to notification
683         signal ::toggled. When the revolution comes, such
684         people will be first against the wall.
685
686         We'll just have to go back to the old less-reliable
687         set-it-back hacks for handling model-view check
688         buttons and radio buttons. :-(. 
689
690 2001-10-27  Hans Breuer  <hans@breuer.org>
691
692         * gtk/gtkbbox.c gtk/gtkctree.c gtk/gtkhbbox.c
693           gtk/gtkimmulticontext.c gtk/gtklabel.c gtk/gtkliststore.c
694           gtk/gtkmenu.c gtk/gtkpaned.c gtk/gtkrc.c gtk/gtkscale.c
695           gtk/gtkstyle.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
696           gtk/gtktexttag.c gtk/gtktexttagtable.c gtk/gtktextview.c
697           gtk/gtktreestore.c gtk/gtkvbbox.c : 
698         to simplify parsing for exported functions:
699         - made implementation signature static, when the local 
700           prototype already was
701         - put the functions return value on it's own line
702         - added as space between the function name and the 
703           opening bracket
704
705         * gtk/gtk.def : added the remaining exported functions
706
707 2001-10-27  Anders Carlsson  <andersca@gnu.org>
708
709         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width): 
710         Add note about width having to be greater than 0. This fixes
711         #55574. 
712
713         * gtk/gtktextiter.c (gtk_text_iter_backward_sentence_start): 
714         Fix docs to say previous instead of next.
715         (gtk_text_iter_backward_word_start): Likewise.
716         This fixes bug #62980.
717
718         * gtk/gtkcontainer.c (gtk_container_set_border_width): Mention
719         that the valid width is in range 0-65535 pixels. Fixes bug 
720         #56754.
721
722         * gtk/gtksizegroup.c (gtk_size_group_set_mode): Remove
723         a dot in the documentation. Fixes bug #62632.
724
725         * gdk/x11/gdkmain-x11.c: Replace int and guint with
726         long and gulong in some places to make the code 64-bit
727         clean.
728         (_gdk_windowing_init_check): Replace gint with gulong.
729         This patch was made by George Lebl and fixes bug #62113.
730
731         * tests/testgtk.c (create_range_controls): Don't set a 
732         fixed height on the hscale widget. This fixes "bug" 
733         #55840.
734         (create_window_states): Set up destroy signals so that
735         all windows will be destroyed when one is. This fixes 
736         bug #58133.
737
738 2001-10-26  Anders Carlsson  <andersca@gnu.org>
739
740         * gtk/gtktreeview.c: 
741         (gtk_tree_view_class_init): Create new "indent_expander"
742         style property.
743
744         (gtk_tree_view_get_arrow_xrange): Add a tree argument
745         to the function since the xrange can change depending
746         on where in the tree we are. 
747         
748         (coords_are_over_arrow): Update function call to
749         gtk_tree_view_get_arrow_xrange.
750         (gtk_tree_view_draw_arrow): Likewise.
751         
752         (gtk_tree_view_real_expand_collapse_cursor_row):
753         Call real_{expand|collapse}_row, so that we'll have an
754         animation.
755
756 Fri Oct 26 20:13:36 2001  Kristian Rietveld  <kristian@planet.nl>
757
758         * tests/Makefile.am: fixed a small typo
759
760 Fri Oct 26 18:27:11 2001  Kristian Rietveld  <kristian@planet.nl>
761
762         * demos/gtk-demo/list_store.c (create_model): Anders
763         Carlsson suggested to use G_N_ELEMENTS here
764
765 2001-10-26  Sven Neumann  <sven@gimp.org>
766
767         * gtk/gtkbutton.[ch]
768         * gtk/gtkdnd.c: fixed inline comments
769         
770         * gtk/gtkgamma.c: gtk_entry_get_text() returns a const gchar.
771
772 2001-10-26  Hans Breuer  <hans@breuer.org>
773
774         * gdk-pixbuf/gdk_pixbuf.def : 
775         * gdk/gdk.def : 
776         * gtk/gtk.def : updated externals
777
778         * gdk/win32/gdkpixmap-win32.c : removed duplicate of
779         gdk_window_lookup implementation. It already was in
780         gdk/win32/gdkwindow-win32.c
781
782         * gdk/win32/gdkproperty-win32.c : made it compile again
783         after GdkAtom API change
784
785         * gtk/gtk/makefile.msc.in : updated
786
787 Wed Oct 24 11:36:33 2001  Owen Taylor  <otaylor@redhat.com>
788
789         * configure.in (GTK_MICRO_VERSION): Version 1.3.10,
790         require GLib 1.3.10.
791
792         * NEWS: updates.
793
794 Thu Oct 25 16:27:29 2001  Jonathan Blandford  <jrb@redhat.com>
795
796         * gtk/gtkrbtree.c (_gtk_rbnode_rotate_left): Add support for
797         invalid nodes.
798          (_gtk_rbnode_rotate_right): Ditto.
799          (_gtk_rbtree_node_mark_invalid): New function.
800          (_gtk_rbtree_node_mark_valid): New function.
801
802         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_class_init): We're a
803         GObject, not a GtkObject.
804         (gtk_tree_model_sort_row_has_child_toggled): Rewrote to be more
805         correct.
806         (gtk_tree_model_sort_row_deleted): ditto.
807         (gtk_tree_model_sort_{un,}ref_node): Fix.
808
809         * gtk/gtktreeview.c: Protean incremental reflow support (commented
810         out)
811
812         * gtk/gtktreeview.h (GtkTreeViewSearchEqualFunc): change char *key
813         to const char *key.
814
815         * gtk/gtktreemodel.c (gtk_tree_row_reference_unref_path_helper):
816         Important 1 line fix to fix a lot of refcounting woes.
817
818 2001-10-25  Matt Wilson  <msw@redhat.com>
819
820         * gtk/gtktextview.c (gtk_text_view_destroy): call
821         gtk_text_view_destroy_layout after gtk_text_view_set_buffer (which
822         now invalidates) so that we remove our idle functions.
823         (gtk_text_view_destroy_layout): remove the first_validate_idle as
824         well.
825
826         * gtk/gtktexttag.c (gtk_text_tag_class_init): the valid range for
827         the 'indent' property is G_MININT to G_MAXINT.  Don't use
828         -G_MAXINT for the minimum of the 'rise' property, use G_MININT
829         instead.
830
831 2001-10-24  Anders Carlsson  <andersca@gnu.org>
832
833         * gtk/gtktreeview.c: 
834         (gtk_tree_view_real_expand_row): add an animate argument
835         (gtk_tree_view_real_collapse_row): likewise
836         
837         (gtk_tree_view_button_press), (gtk_tree_view_button_release), 
838         (gtk_tree_view_collapse_all), (gtk_tree_view_expand_row),
839         (gtk_tree_view_collapse_row): update functions that call
840         real_{expand|collapse}_row to set the animate argument 
841         accordingly.
842         
843 2001-10-24  Alex Larsson  <alexl@redhat.com>
844
845         * gdk/linux-fb/gdkfont-fb.c:
846         Update to new Pango APIs
847
848         * gdk/linux-fb/gdkproperty-fb.c:
849         Update to new GdkAtom APIs
850
851         * gdk/linux-fb/gdkwindow-fb.c:
852         Remove warnings
853
854 Mon Oct 22 20:07:21 2001  Jonathan Blandford  <jrb@redhat.com>
855
856         * gtk/gtktreestore.c (gtk_tree_store_prepend): Fix docs, #62808
857
858 Wed Oct 24 22:54:07 2001  Kristian Rietveld  <kristian@planet.nl>
859
860         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_row_inserted): treat
861         s_path as a child path
862
863 Wed Oct 24 20:29:47 2001  Kristian Rietveld  <kristian@planet.nl>
864
865         * gtk/gtktreemodelsort.c: more changes in an attempt to get
866         it right. It's not yet ready for general consumption.
867
868         * tests/treestoretest.c: add a button and entry for the new
869         iter_change function
870         (iter_change): new function, to test
871         the row_changed signal implementation of the GtkTreeModelSort
872
873         * tests/testtreesort.c: cleanups, changes to test more features
874         of the GtkTreeModelSort at once
875
876 2001-10-24  Havoc Pennington  <hp@redhat.com>
877
878         * gtk/gtktextbuffer.c (clipboard_clipboard_buffer_received):
879         remove hack to strip off the bogus newline, since we killed the
880         bogus newline; fixes #61779
881
882 2001-10-24  Havoc Pennington  <hp@redhat.com>
883
884         * gtk/gtktextview.c (gtk_text_view_update_adjustments): don't
885         create layout if we didn't have one
886         (gtk_text_view_set_buffer): invalidate so we get the idle handlers
887         as appropriate, avoids blanking the screen 
888         (gtk_text_view_invalidate): new function to do invalidation,
889         containing old guts of invalidated_handler
890
891 Wed Oct 24 10:29:47 2001  Owen Taylor  <otaylor@redhat.com>
892
893         * gtk/gtkalignment.c (gtk_alignment_class_init): Improve
894         dreadful tooltips.
895
896 Tue Oct 23 17:31:42 2001  Owen Taylor  <otaylor@redhat.com>
897
898         * gdk/x11/gdkwindow-x11.c gdk/win32/gdkwindow-win32.c: Always 
899         set window->parent (except or the root window itself); if 
900         the window's parent is not a GdkWindow, or is a window of 
901         type GDK_WINDOW_FOREIGN, set window->parent to the root parent.
902
903         * gdk/gdkwindow.c (gdk_window_get_toplevels): Don't include
904         windows of type GDK_WINDOW_FOREIGN.
905
906 2001-10-24  Havoc Pennington  <hp@pobox.com>
907
908         * gtk/gtktextiter.c (gtk_text_iter_backward_chars): if we move to
909         the front of a segment, use the "slow" technique for moving
910         backward, so we don't mess up the any_segment field in the iter. 
911         Fixes #57707
912
913         * tests/testtextbuffer.c: add code to detect #57707, to avoid
914         regression
915
916 2001-10-23  Havoc Pennington  <hp@redhat.com>
917
918         * gtk/gtktextview.c (popup_targets_received): only sensitize Cut
919         if selection contains some editable text, #60975
920         (gtk_text_view_scroll_to_iter): remove warning about scrolling
921         prior to map; it should actually be OK to do so in many cases, 
922         it would be nice to warn about scrolling when many lines have
923         height 0, but I don't know what to do about that. Perhaps 
924         move part of flush_scroll into this function? comment added 
925         to consider this.
926
927 2001-10-23  Havoc Pennington  <hp@redhat.com>
928
929         * gtk/gtktextview.c (changed_handler): Correctly keep the same
930         text on the top of the screen, considering that the changed region
931         may have overlapped the first paragraph. Should fix msw's "text
932         widget scrolled to wrong place on map" bug, and probably some
933         other scrolling cases as well.
934         (gtk_text_view_set_scroll_adjustments): start adjustments at 0.0, 
935         instead of some random value
936
937         * gtk/gtktextview.c (gtk_text_view_class_init): actually override
938         grab_focus, so #59708 is really fixed
939
940 2001-10-24  Anders Carlsson  <andersca@gnu.org>
941
942         * gtk/gtkentry.c: (append_action_signal): Use an image menu item here
943         (popup_targets_received): Call append_action_signal with stock items
944         
945         * gtk/gtklabel.c: (append_action_signal): Use an image menu item here
946         (gtk_label_do_popup): Call append_action_signal with stock items
947         
948         * gtk/gtktextview.c: (append_action_signal): Use an image menu item here
949         (popup_targets_received): Call append_action_signal with stock items
950
951 2001-10-23  Havoc Pennington  <hp@redhat.com>
952
953         * gtk/gtktextview.c (changed_handler): queue a resize here; will
954         temporarily slow down the widget a lot, until we figure out how to
955         optimize to avoid full redraw everytime we queue a resize.
956
957 2001-10-23  Havoc Pennington  <hp@redhat.com>
958
959         * gtk/gtktextiter.c (test_log_attrs): handle case where offset ==
960         0 and char_len == 0, bug #61729
961
962 2001-10-23  Havoc Pennington  <hp@redhat.com>
963
964         * gtk/gtktextiter.c (gtk_text_iter_forward_cursor_positions): fix
965         return value, #61714 (Vitaly Tishkov)
966         (gtk_text_iter_backward_sentence_starts): ditto
967         (gtk_text_iter_backward_word_starts): ditto
968         (gtk_text_iter_forward_word_ends): ditto
969         (gtk_text_iter_forward_sentence_ends): ditto
970         (gtk_text_iter_backward_cursor_positions): ditto
971
972 2001-10-23  Havoc Pennington  <hp@redhat.com>
973
974         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_pixel): Apply
975         fix from Dov Grobgeld, #61858
976
977 2001-10-23  Havoc Pennington  <hp@redhat.com>
978
979         * gtk/gtktextview.c (gtk_text_view_update_im_spot_location): 
980         Update IM spot location at appropriate times, #50626
981         (Hidetoshi Tajima)
982
983 2001-10-23  Havoc Pennington  <hp@redhat.com>
984
985         * gtk/gtktextview.c (gtk_text_view_grab_focus): scroll to cursor
986         on grab focus, unless it's caused by button click, #59708
987
988 Tue Oct 23 11:53:00 2001  Owen Taylor  <otaylor@redhat.com>
989
990         * gtk/Makefile.am (INCLUDES): Remove G_DISABLE_CONST_RETURNS.
991
992         * gtk/gtkfontsel.[ch]: Make gtk_font_selection_get_font()
993         G_CONST_RETURN. (Murray Cumming)        
994
995         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_preview_text):
996         Make G_CONST_RETURN.
997
998         * gtk/gtkfilesel.c (open_user_dir): Fix bug with freeing
999         results of g_get_home_dir().
1000
1001         * gtk/gtkfilesel.c: Make filesel->fileop_file a duplicated 
1002         copy. Storing the return from gtk_entry_get_text() is evil.
1003
1004         * gtk/gtkcombo.c gtk/gtkcellrenderertext.c gtk/gtkbindings.c 
1005         gtk/gtkfilesel.c gtk/gtkfontsel.c gtk/gtkimmodule.c 
1006         gtk/gtkobject.c gtk/gtkoldeditable.c gtk/gtktreedatalist.c
1007         gtk/gtksignal.c: Add const.
1008
1009         * gdk/x11/gdkkeys-x11.c (get_direction): Add missing const.
1010
1011         * gtk/gtktreeview.c: Namespace object data keys to be safe, even 
1012         if we are setting them on private widgets.
1013
1014         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search): 
1015         Duplicate entry->text before setting it as object data.
1016
1017 2001-10-22  Havoc Pennington  <hp@redhat.com>
1018
1019         * gtk/gtktextbuffer.c (gtk_text_buffer_place_cursor): don't back
1020         up a char from the end iterator, fixes #61859 ("can't put cursor
1021         at the end of the buffer")
1022
1023         * gtk/gtktextiter.c (gtk_text_iter_forward_to_line_end): fix this
1024         to work with delimiters other than newline.
1025
1026         * tests/testtextbuffer.c: add some tests for get_chars_in_line,
1027         get_bytes_in_line
1028
1029         * gtk/gtktextiter.c (gtk_text_iter_get_chars_in_line): fix for the
1030         last line, since the newline is no longer counted.
1031         (gtk_text_iter_get_bytes_in_line): ditto
1032
1033 2001-10-22  Havoc Pennington  <hp@redhat.com>
1034
1035         * gtk/gtktextbtree.c (_gtk_text_btree_insert): add assertion that 
1036         #58290 would trigger if it reappeared, I think
1037
1038 2001-10-22  Havoc Pennington  <hp@redhat.com>
1039
1040         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
1041         add temporary code to dump btree contents on assertion failure
1042         described in #62656
1043         
1044         * gtk/gtktextbtree.c (ensure_end_iter_segment): add some
1045         assertions that we're getting the right end iter segment
1046
1047         * gtk/gtktextiter.c (_gtk_text_iter_forward_indexable_segment):
1048         verify that we aren't on the end iterator after moving 
1049         forward one segment - fixes return value in an obscure case. 
1050         Also, some trivial code cleanup/rearranging.
1051         
1052 2001-10-22  Havoc Pennington  <hp@redhat.com>
1053
1054         * gtk/gtktextlayout.h: add a #error unless you define
1055         GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API, so people don't use this accidentally
1056
1057         * gtk/gtktext*.c: #define GTK_TEXT_USE_INTERNAL_UNSUPPORTED_API as appropriate.
1058         
1059 2001-10-22  Havoc Pennington  <hp@redhat.com>
1060
1061         * gtk/gtktextview.c (gtk_text_view_get_border_window_size): fix 
1062         #62365
1063
1064 2001-10-22  Havoc Pennington  <hp@redhat.com>
1065
1066         * gtk/gtktextview.c (gtk_text_view_get_window_type): fix 
1067         #62436
1068
1069 2001-10-22  Havoc Pennington  <hp@redhat.com>
1070
1071         * gtk/gtktextview.c (gtk_text_view_set_border_window_size): Fix 
1072         #62366
1073
1074 Mon Oct 22 11:47:47 2001  Owen Taylor  <otaylor@redhat.com>
1075
1076         * gtk/gtklabel.c: Add cursor-position, selection-bound 
1077         properties. (#62148, reported by Padraig O'Briain)
1078
1079         * gtk/gtkentry.c (gtk_entry_class_init): Rename text_position
1080         to cursor_position. (1.3.x addition, text_position is an awful
1081         name.) Make cursor_position read-only to avoid sticky questions
1082         of interaction with selection_bound. (#62636, reported by
1083         Padraig O'Briain)
1084
1085 Mon Oct 22 16:25:12 2001  Owen Taylor  <otaylor@redhat.com>
1086
1087         Fixing popup menus to have "Paste" sensitized correctly. Original
1088         patches from Damian Ivereigh, much mangled.
1089
1090         * gtk/gtkselection.c: Add functions gtk_selection_data_get_targets(),
1091         gtk_selection_data_targets_include_text(). (#60854)
1092
1093         * gtk/gtkclipboard.c: Add a simple do-it-all non-async "check if
1094         the clipboard has text" function gtk_clipboard_wait_is_text_available.
1095         (#60854)
1096
1097         * gtk/gtkentry.c: Only enable the paste item if the clipboard
1098         contains text. (#60973)
1099
1100         * gtk/gtktextview.c: Only enable the paste item if the clipboard
1101         contains text. (#60975)
1102
1103 2001-10-22  Havoc Pennington  <hp@redhat.com>
1104
1105         * gtk/gtktextview.c (gtk_text_view_class_init): rip out
1106         "height_lines" and "width_columns" properties, it doesn't make
1107         sense to set the size request on a text view really. #62103
1108
1109 Mon Oct 22 15:17:05 2001  Jonathan Blandford  <jrb@redhat.com>
1110
1111         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): Realized
1112         g_node_depth is broken, and that it's not worth being consistent
1113         with it.
1114
1115 2001-10-22  Havoc Pennington  <hp@redhat.com>
1116
1117         * gtk/gtktextiter.c (gtk_text_iter_set_line): Clarify behavior in
1118         docs, #61777
1119         (gtk_text_iter_forward_search) (gtk_text_iter_backward_search):
1120         change the two boolean args to a flags field, so we can extend 
1121         to add case insensitive, regexp searches later. #61852
1122
1123 Mon Oct 22 15:07:17 2001  Jonathan Blandford  <jrb@redhat.com>
1124
1125         * gtk/gtktreestore.c (gtk_tree_store_iter_depth): update docs to
1126         reflect reality, #62810
1127
1128 Mon Oct 22 14:08:26 2001  Jonathan Blandford  <jrb@redhat.com>
1129
1130         * demos/gtk-demo/appwindow.c: Remove handle_box from App demo.
1131
1132         * gtk/gtktreeview.c (size_allocate): Move to a different drawing
1133         system.  Instead of having a window the size of the tree, we have
1134         a window the size of widget->allocation, and simply draw with the
1135         offset.
1136         (coords_are_over_arrow): ditto.  Move to window coordinates.
1137         (do_prelight): ditto
1138         (do_unprelight): ditto
1139
1140         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_rows_reordered):
1141         Minor fix from Kristian Rietveld to fix unsorted case.
1142
1143 2001-10-22  jacob berkman  <jacob@ximian.com>
1144
1145         * gtk/gtkclist.c (cell_size_request): don't cast a PIXTEXT cell to
1146         a PIXMAP cell (fixes crash when using PIXTEXT cells)
1147
1148 Sat Oct 20 18:58:25 2001  Owen Taylor  <otaylor@redhat.com>
1149
1150         * gtk/gtkentry.h: Deprecate gtk_entry_set_editable.
1151         (#58768, Vitaly Tishkov)
1152         
1153         * gtk/gtkobject.h: Deprecate with abandon. 
1154         (#61942, Vitaly Tishkov, Matthias Clasen)
1155
1156         * gtk/gtksignal.h: Deprecate everything.
1157
1158         * gtk/gtkmain.h (GTK_PRIORITY_INTERNAL): Deprecate
1159         all GTK_PRIORITY_* defines other than GKT_PRIORITY_RESIZE>
1160         (#61942, Matthias Clasen)
1161
1162         * gtk/gtkstyle.h: Deprecate gtk_draw_*. (#61140,
1163         Havoc Pennington)
1164
1165         * gtk/gtkitemfactory.h: Deprecate compat functions
1166         for GtkMenuFactory code. (#62071)
1167
1168         * gdk/gdkdrawable.h: Deprecate gdk_draw_string,
1169         gdk_draw_text,gdk_draw_text_wc. (#62071)
1170
1171 Mon Oct 22 10:12:08 2001  Owen Taylor  <otaylor@redhat.com>
1172
1173         * gdk/gdk.c docs/Changes-2.0.txt (gdk_threads_init): Don't call
1174         g_thread_init(), we don't want to link to -lgthread if we don't
1175         have to.
1176
1177 Mon Oct 22 08:51:02 2001  Owen Taylor  <otaylor@redhat.com>
1178
1179         * gdk/gdk.[ch] (gdk_threads_init) docs/Changes-2.0.txt: 
1180         Add a function, gdk_threads_init() that must be explicitely 
1181         called to enable the GDK thread mutex.
1182
1183 2001-10-22  Jakub Steiner <jimmac@ximian.com>
1184
1185         * gtk/stock-icons/stock_stop.png: no body parts
1186         
1187 Sun Oct 21 23:27:00 2001  Owen Taylor  <otaylor@redhat.com>
1188
1189         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Fix
1190         problem with g_return_if_fail return value.
1191
1192         * gdk/x11/gdkproperty-x11.c docs/Changes-2.0.txt: Move over the 
1193         virtual atom code from the gdk-multihead branch, removing the per-display
1194         part. Virtualizing atoms needs to be done now to prevent compat
1195         breakage in direct Xlib accessing code in the future. (#62208)
1196  
1197         * gdk/x11/gdkx.h: gdk/gdk/x11/gdkproperty-x11.c: Export
1198         gdk_x11_xatom_to_atom, gdk_x11_atom_to_xatom().
1199  
1200         * gdk/gdktypes.h docs/Changes-2.0.txt: Make GdkAtom
1201         an opaque pointer type so the compiler catches attempts
1202         to mingle it with X atoms.
1203
1204         * gdk/x11/{gdkdnd-x11.c,gdkevents-x11.c,gdkglobals-x11.c,
1205           gdkkeys-x11.c, gdkmain-x11.c, gdkprivate-x11.c, 
1206           gdkproperty-x11.c, gdkselection-x11.c, gdkwindow-x11.c}
1207           gtk/{gtkclist.c,gtkctree.c,gtkdnd.c,gtkplug.c,gtksocket.c}
1208           tests/testdnd.c,tests/testselection.c: 
1209         Fix up for above atom changes.
1210
1211         * gdk/gdkselection.h (GDK_SELECTION_CLIPBOARD): Add, since we
1212         now have the ability to add custom predefines.
1213
1214         * gtk/{gtkentry.c,gtklabel.c,gtkoldeditable.c,gtktextview.c}:
1215         Use GDK_SELECTION_CLIPBOARD instead of GDK_NONE in calls
1216         to gtk_clipboard_get().
1217
1218         * gdk/win32/gdkproperty-win32.c: Add CLIPBOARD, fix up
1219         for GdkAtom => pointer change.
1220
1221         * gdk/linux-fb/gdkproperty-fb.c: Fix handling of predefined
1222         atoms, fix for GdkAtom => pointer change.
1223
1224 Mon Oct 22 00:26:46 2001  Kristian Rietveld  <kristian@planet.nl>
1225
1226         * gtk/gtkspinbutton.c: remove ARROW_SIZE constant, use
1227         new function spin_button_get_arrow_size() instead.
1228
1229         * gtk/gtkstyle.c (gtk_default_draw_arrow): actual size of
1230         arrow was hardcoded, it's now variable.
1231
1232         Fixes bug #50200
1233
1234 Sat Oct 20 18:16:04 2001  Manish Singh  <yosh@gimp.org>
1235
1236         * gtk/gtktreeview.c (gtk_treeview_get_property): PROP_MODEL and
1237         PROP_EXPANDER_COLUMN can be NULL, so don't do a object cast check
1238         for those
1239
1240 Sat Oct 20 19:38:16 2001  Owen Taylor  <otaylor@redhat.com>
1241
1242         * demos/*.c demos/gdk-pixbuf/*.c: Eliminate gtk_signal_*
1243         in favor of g_signal_*, gtk_object_* in favor of 
1244         g_object_*.
1245
1246 Fri Oct 19 18:35:22 2001  Manish Singh  <yosh@gimp.org>
1247
1248         * gtk/{gtkentry.c,gtktextview.c}: since GtkIMContext derives directly
1249         from GObject now, we have to use the g_object_* functions, not
1250         gtk_object_*.
1251
1252 Fri Oct 19 22:46:54 2001  Kristian Rietveld  <kristian@planet.nl>
1253
1254         * gtk/gtktreemodelsort.[ch]: we probably have rows_reordered
1255         nailed down now (this code is not yet ready for general consumption)
1256
1257 Fri Oct 19 13:44:51 2001  Manish Singh  <yosh@gimp.org>
1258
1259         * gtk/gtktreeview.c (gtk_treeview_scroll_to_cell): correct docs
1260         for use_align
1261
1262 Fri Oct 19 15:34:06 2001  Owen Taylor  <otaylor@redhat.com>
1263
1264         * gtk/gtk.h gtk/Makefile.am: Export GtkIMContextSimple publically. (#61862)
1265
1266 Fri Oct 19 15:08:30 2001  Owen Taylor  <otaylor@redhat.com>
1267
1268         * gtk/{gtkimcontext.c,gtkimcontextsimple.c,gtkimmulticontext.c}
1269         modules/input/{gtkimcontextxim.c,imcyrillic-translit.c,iminuktitut.c,
1270         imipa.c,imthai-broken.c,imviqr.c}: Make GtkIMContext derive from
1271         GObject, not GtkObject. (#62621)
1272
1273 Fri Oct 19 12:49:12 2001  Owen Taylor  <otaylor@redhat.com>
1274
1275         * tests/testsocket.c: Remove now useless include of unistd.h,
1276         fix wrong argument gtk_socket_steal. (Hans Breuer, #58541)
1277         
1278 Fri Oct 19 12:24:32 2001  Owen Taylor  <otaylor@redhat.com>
1279
1280         * gdk/linux-fb/gdkfont-fb.c: Fix up for change to 
1281         Pango font API. #61933. (Untested, even for compilation.)
1282
1283 Fri Oct 19 11:24:58 2001  Owen Taylor  <otaylor@redhat.com>
1284
1285         * gtk/gtkmain.[ch] (gtk_disable_setlocale): Actually
1286         export gtk_disable_setlocale(). (Caught by Sven Neumann)
1287
1288 2001-10-18  Havoc Pennington  <hp@redhat.com>
1289
1290         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_lookup): fix compilation
1291
1292 2001-10-18  Havoc Pennington  <hp@redhat.com>
1293
1294         * gtk/gtkbutton.c (gtk_button_class_init): Change button signals
1295         to GTK_RUN_LAST, #50239
1296
1297 2001-10-18  HideToshi Tajima  <hidetoshi.tajima@sun.com>
1298
1299         * gtk/gtkimmodule.c (match_locale):
1300         Support "*" for all locales with least priority
1301         when to select default im module, #58201
1302
1303 2001-10-18  Matthias Clasen  <matthiasc@poet.de>
1304
1305         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): 
1306         Fix docs. (#61976)
1307  
1308         * gtk/gtkplug.c (gtk_plug_get_id) : Fix docs. (#62144)
1309
1310         * gtk/gtkliststore.c: Fix docs. (#61672, #61675)
1311
1312         * gdk/gdkwindow.h, gdk/gdkpixmap.h, gdk/x11/gdkx.h,
1313         gdk/x11/gdkwindow-x11.c, gdk/x11/gdkpixmap-x11.c,
1314         gdk/win32/gdkwin32.h, gdk/win32/gdkwindow-win32.c,
1315         gdk/win32/gdkpixmap-win32.c, gdk/linux-fb/gdkfb.h,
1316         gdk/linux-fb/gdkwindow-fb.c, gdk/linux-fb/gdkpixmap-fb.c:
1317         Add gdk_window_lookup, gdk_window_foreign_new, gdk_pixmap_lookup
1318         and gkd_pixmap_foreign_new to the gdk frontend api. (#62063)
1319
1320         * gtk/gtkselection.c: Remove gdk backend dependencies. (#62063)
1321
1322         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): 
1323         Don't restrict the width of the spinbutton entry field 
1324         to 10 digits. (#58681)
1325
1326 Thu Oct 18 14:58:14 2001  Jonathan Blandford  <jrb@redhat.com>
1327
1328         * tests/testtreeflow.c: new test program for the tree.
1329
1330 Thu Oct 18 14:22:10 2001  Jonathan Blandford  <jrb@redhat.com>
1331
1332         * gtk/gtktreestore.c (gtk_tree_store_remove): fix small bug
1333         reported by (Oleg Maiboroda), #62600
1334
1335 2001-10-18  Michael Meeks  <michael@ximian.com>
1336
1337         * gtk/gtkentry.c (gtk_entry_set_property),
1338         (gtk_entry_get_property): impl 'text'
1339         (gtk_entry_class_init): add the 'text' prop.
1340         (gtk_entry_insert_text): notify 'text' changed.
1341         (gtk_entry_delete_text): ditto.
1342
1343 2001-10-17  Matthias Clasen  <matthiasc@poet.de>
1344
1345         * gtk/gtkdnd.c, gtk/gtkclipboard.c, gdk/x11/gdkmain-x11.c:
1346         Documentation updates.
1347
1348 Wed Oct 17 15:17:20 2001  Owen Taylor  <otaylor@redhat.com>
1349
1350         * gtk/gtkentry.c (gtk_entry_real_insert_text): Fix mistake
1351         in truncating length of text to MAX_SIZE. (Found by 
1352         Padraig O'Briain, #62055)
1353
1354 Tue Oct 16 17:04:44 2001  Owen Taylor  <otaylor@redhat.com>
1355
1356         * gtk/gtkwidget.c: Rename ACTIVATE_MNEMONIC enum to
1357         MNEMONIC_ACTIVATE; signal was changed a long time
1358         ago.
1359
1360         * gdk/x11/gdkim-x11.c (_gdk_x11_initialize_locale): 
1361         Fix wrong return statement. (Reported by HideToshi
1362         Tajima and others.)
1363
1364         * gtk/gtklabel.h (struct _GtkLabelClass): Remove
1365         left over select_all vfunc.
1366
1367 Tue Oct 16 15:50:03 2001  Owen Taylor  <otaylor@redhat.com>
1368
1369         * gtk/gtkwidget.c (gtk_widget_translate_coordinates): Add
1370         a utility function to translate coordinates relative to
1371         one widget's allocation to coordinates relative to another
1372         widget's allocation.
1373
1374         * gtk/gtkradiobutton.c: Add a special ->focus() implementation
1375         that:
1376          - only accepts external focus if there is no active
1377            member of the group or the button is active.
1378          - makes arrow keys move the active button as well
1379            as the focus
1380          - make tab tab out directly.
1381         This makes a radio button group act as a single focus location.
1382         (#53577).
1383         
1384         * gtk/gtkcontainer.c (gtk_container_focus): Remove prefiltering -
1385         it was only a small optimization that didn't matter and made
1386         things more complicated.
1387
1388         * gtk/gtkcontainer.c (gtk_container_focus_tab): Get rid of custom
1389         sorter for FOCUS_TAB as we did for the other focus directions,
1390         sort by center of widgets, not upper-left corner. (Shouldn't
1391         matter in general.)
1392
1393         * gtk/gtkcontainer.c: Restructure code to remove duplicate code
1394         from the different types of focusing: encapsulate sorting the
1395         widgets for the focus direction into one routine
1396         (gtk_container_focus_sort()) and then share the work of moving the
1397         focus between the different focus directions.
1398
1399         * gtk/gtkcontainer.c: Fix bug where arrow navigation might not
1400         work correctly with focus chains containing non-immediate
1401         children. Sorting was being done using allocation coordinates for
1402         each widget in the focus chain, and if there were intermediate
1403         window-widgets, these allocations would not be in the same
1404         coordinate system.
1405
1406 Tue Oct 16 15:12:26 2001  Jonathan Blandford  <jrb@redhat.com>
1407
1408         * gtk/gtkoptionmenu.c (gtk_option_menu_mnemonic_activate): add a
1409         mnemonic_activate function to option menu.
1410
1411 2001-10-15  Murray Cumming <murrayc@usa.net>
1412
1413         * gtk/gtkinputdialog.c, gtk/gtktoolbar.c,  gtk/gtkwidget.c:
1414           Corrected the type names used in some calls to g_signal_new().
1415         
1416 Sat Oct 13 07:09:30 2001  Tim Janik  <timj@gtk.org>
1417
1418         * gtk/gtkbindings.c (gtk_binding_set_add_path): to compare pattern
1419         specs, use g_pattern_spec_equal() instead of direct field accesses.
1420         upon compressing two equal paths of the same type, the resulting
1421         priority has to be the maximum.
1422         * gtk/gtkenums.h (enum): take GTK_PATH_PRIO_MASK out of the
1423         GtkPathPriorityType enum and make it a macro.
1424
1425 2001-10-12  Matthias Clasen  <matthiasc@poet.de>
1426
1427         * gtk/gtkwidget.c: Fix some doc comments.
1428
1429 Fri Oct 12 11:39:20 2001  Joshua N Pritikin  <vishnu@pobox.com>
1430
1431         * gtk/gtktreeview.c (gtk_tree_view_get_path_at_pos): Fix to work
1432         on empty models.
1433
1434 2001-10-11  Matthias Clasen  <matthiasc@poet.de>
1435
1436         * gtk/gtkcolorsel.c, gtk/gtkwidget.c, gtk/gtktreeview.c:
1437         Remove stale gdk backend includes.
1438  
1439 2001-10-10  Michael Meeks  <michael@ximian.com>
1440
1441         * gtk/gtkcombo.c (gtk_combo_class_init): add enable_empty
1442         and value_in_list properties.
1443         (gtk_combo_set_value_in_list): notify change.
1444         (gtk_combo_set_property, gtk_combo_get_property): impl. prop.
1445
1446 2001-10-11  James Henstridge  <james@daa.com.au>
1447
1448         * configure.in: add AS=CC and ASFLAGS=CFLAGS substitutions so
1449         that gtk+ can be built with automake 1.5 while not breaking
1450         things for automake 1.4.
1451
1452 Wed Oct 10 12:48:38 2001  Owen Taylor  <otaylor@redhat.com>
1453
1454         * gtk/gtkmain.c (gtk_init_check): Call setlocale (LC_ALL, "").
1455         (#60606)
1456
1457         * gtk/gtkmain.c (gtk_disable_setlocale): Add function
1458         to disable calling setlocale (LC_ALL, "").
1459
1460         * gtk/gtkmain.c (gtk_set_locale): Indicate in the 
1461         docs that this function is not typically useful.
1462
1463         * gdk/x11/{gdkim-x11.c,gdkmain-x11.c,gdkprivate-x11.h}: 
1464         Automatically initialize GDK for the current locale
1465         on gdk_init(). Don't reset locale to C when
1466         XSupportsLocale() fails.
1467
1468         * gdk/linux-fb/gdkim-fb.c (gdk_set_locale): Remove
1469         useless checks for UTF-8 locale breakage that mattered
1470         only for X.
1471
1472         * examples/calendar/calendar.c
1473         tests/{testgtk.c,testtext.c,testcalendar.c}: Remove calls to 
1474         gtk_set_locale().
1475
1476         * gtk/gtkiconfactory.c gtk/gtkitemfactory.c:
1477         gdk_pixbuf_new_from_stream => gdk_pixbuf_new_from_inline.
1478
1479 Wed Oct 10 21:13:46 2001  Kristian Rietveld  <kristian@planet.nl>
1480
1481         * gtk/gtktreemodel.[ch]: added gtk_tree_model_get_iter_from_string().
1482
1483         Fixes bug #61904
1484
1485 Wed Oct 10 01:19:04 2001  Jonathan Blandford  <jrb@redhat.com>
1486
1487         * gtk/gtktreeselection.c (gtk_tree_selection_iter_is_selected):
1488         new function, #61923
1489         (gtk_tree_selection_path_is_selected): Ditto
1490
1491 Tue Oct  9 17:40:24 2001  Jonathan Blandford  <jrb@redhat.com>
1492
1493         * gtk/gtktreestore.c (gtk_tree_store_finalize): We're a gobject,
1494         not a GtkObject.  Thanks andersca.
1495
1496         * gtk/gtkliststore.c (gtk_list_store_finalize): ditto
1497
1498 Tue Oct  9 14:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
1499
1500         * gtk/gtktreeviewcolumn.c
1501         (gtk_tree_view_model_sort_column_changed): fix broken code.
1502
1503 2001-10-08  Matthias Clasen  <matthiasc@poet.de>
1504
1505         * gtk/gtkselection.c: s/succesfully/successfully/g
1506
1507 2001-10-08  Havoc Pennington  <hp@pobox.com>
1508
1509         * demos/gtk-demo/stock_browser.c: remove unused enum
1510
1511         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
1512         pass the current selection state of the node in to the user
1513         selection func
1514
1515 2001-10-06  Matthias Clasen  <matthiasc@poet.de>
1516
1517         * gdk/x11/gdkx.h (GDK_CURSOR_XCURSOR): Replace reference to 
1518         non-existent function gdk_x11_cursor_get_xid 
1519         by gdk_x11_cursor_get_xcursor.
1520
1521 Fri Oct  5 20:50:00 2001  Jonathan Blandford  <jrb@redhat.com>
1522
1523         * gtk/gtktreestore.c (gtk_tree_store_iter_has_child): improve
1524         warning.
1525
1526         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): ref and
1527         unref nodes, #okay61676
1528
1529         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_sort): we listen
1530         to the property; no need to clear the other columns.  Also, we go
1531         to 'unsorted' if the model supports it.
1532
1533 2001-10-05  Sven Neumann  <sven@gimp.org>
1534
1535         * demos/testpixbuf-save.c
1536         * demos/testpixbuf-scale.c: simple tests for the new PNG tEXt chunk 
1537         feature.
1538
1539 Fri Oct  5 19:06:07 2001  Kristian Rietveld  <kristian@planet.nl>
1540
1541         * gtk/gtktreeview.c (gtk_tree_view_leave_notify): should
1542         destroy the search dialog
1543
1544         * gtk/gtktreeview.c (gtk_tree_view_real_start_interactive_search):
1545         added check to prevent creation of a search dialog if there's
1546         already one around
1547
1548         * gtk/gtktreeview.c: Define GTK_TREE_VIEW_SEARCH_DIALOG_KEY, and use
1549         it instead of "search-dialog" (when getting/setting the search dialog
1550         widget).
1551
1552 2001-10-05  Jakub Steiner <jimmac@ximian.com>
1553
1554         * gtk/stock-icons/stock_broken_image.png: broken images icon
1555
1556 2001-10-04  Havoc Pennington  <hp@pobox.com>
1557
1558         Fix #56586
1559         
1560         * gtk/gtksettings.c (gtk_settings_class_init): move the F10
1561         accelerator setting here...
1562
1563         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): ...from over here,
1564         because we try to use it when a menu bar hasn't necessarily been 
1565         initialized.
1566
1567 2001-10-03  Havoc Pennington  <hp@redhat.com>
1568
1569         * tests/testtextbuffer.c (logical_motion_tests): fix test case, 
1570         it previously verified incorrect behavior
1571
1572         Fixes for #61565
1573         
1574         * gtk/gtktextiter.c (gtk_text_iter_set_line): don't return lines
1575         off the end
1576         (_gtk_text_btree_get_iter_at_line_char): don't return lines off
1577         the end
1578         (_gtk_text_btree_get_iter_at_line_byte): don't return lines off
1579         the end
1580         (gtk_text_iter_forward_lines): if on the last line, move to end of
1581         it
1582
1583         * gtk/gtktextbtree.c (_gtk_text_btree_last_could_contain_tag):
1584         don't return a line off the end
1585
1586 Wed Oct  3 23:47:25  Kristian Rietveld  <kristian@planet.nl>
1587
1588         * gtk/gtkeditable.[ch]: move insert_text and delete_text virtual
1589         functions to do_insert_text and do_delete_text, add signals
1590         insert_text, delete_text and changed
1591
1592         * gtk/gtkentry.[ch]: remove signals insert_text, delete_text
1593         and changed. Updates to match new situation.
1594
1595         * gtk/gtkspinbutton.c: updates to match new situation
1596
1597         * gtk/gtkoldeditable.h: remove signals changed, insert_text
1598         and delete_text
1599
1600         * gtk/gtkoldeditable.c: updates to match new situation
1601
1602         * gtk/gtktext.c: updates to match new situation
1603
1604         Fixes bug #59803
1605
1606 2001-10-03  Havoc Pennington  <hp@redhat.com>
1607
1608         * gtk/gtktextiter.c (test_log_attrs): allow testing the end 
1609         position
1610
1611         * gtk/gtktextbuffer.c (compute_log_attrs): update for pango
1612         changes
1613
1614         * tests/testtextbuffer.c (logical_motion_tests): updates
1615
1616 2001-10-03  jacob berkman  <jacob@ximian.com>
1617
1618         * gtk/gtkwidget.c (gtk_widget_style_get_property): 
1619         * gtk/gtkstyle.c (_gtk_style_peek_property_value): 
1620         * gtk/gtksettings.c (apply_queued_setting): 
1621         * gtk/gtkmain.c (gtk_init_check): 
1622         * gtk/gtkcontainer.c (gtk_container_child_get_property):
1623         s/retrive/retrieve/
1624
1625 Wed Oct  3 20:29:29 2001  Kristian Rietveld  <kristian@planet.nl>
1626
1627         * gtk/gtktreemodelsort.[ch]: preparation for surgery
1628         * tests/testtreesort.c: ditto
1629
1630 2001-10-02  Havoc Pennington  <hp@redhat.com>
1631
1632         Throughout: assorted docs
1633         
1634         * gdk/gdkwindow.h: deprecate gdk_window_set_hints(), it's broken,
1635         gdk_window_set_geometry_hints() should be used instead.
1636
1637         * gdk/gdkimage.h: deprecate gdk_image_ref, gdk_image_unref, and
1638         document them
1639
1640         * gdk/x11/gdkx.h: remove gdk_get_client_window() since it doesn't
1641         seem to exist in any .c files
1642
1643         * gdk/x11/gdkcolor-x11.c (gdk_colormap_query_color): docs, 
1644         g_return_if_fail (pixel < colormap->size).
1645
1646 Wed Oct  3 10:42:54 2001  Owen Taylor  <otaylor@redhat.com>
1647
1648         * gtk/gtkdnd.c (gtk_drag_dest_find_target): Allow
1649         NULL for @target_list to mean, use
1650         gtk_drag_dest_get_target_list (widget).
1651
1652         * gtk/gtkdnd.c (gtk_drag_finish): Fix problem where
1653         drop could hang when calling gtk_drag_finish with 
1654         success == FALSE and del == TRUE.
1655
1656         * gtk/gtkdnd.c (gtk_drag_dest_drop): Fix problem where
1657         drops without a matching target found would propagate
1658         to the parent widget rather than being rejected.
1659
1660         * gtk/gtktextview.c (gtk_text_view_drag_data_received): 
1661         Use text_view->dnd_mark instead of mark name to be
1662         consistent with the rest of the code.
1663
1664         * gtk/gtktextview.c (gtk_text_view_drag_motion): Make
1665         pendantically correct for a drop-only-in-some-places
1666         widget. (Check whether you can insert in drag_drop,
1667         not just in drag_motion ... matters in theory, and
1668         for Motif drag and drop in practice.)
1669
1670         * gtk/gtkentry.c (gtk_entry_drag_drop): Patch from 
1671         Damian Ivereigh to not allow drops on non-editable
1672         entries. (#61124)
1673
1674         * gtk/gtkentry.c (gtk_entry_motion_notify): Don't allow
1675         text to be moved from a non-editable entry.
1676         
1677 2001-10-03  James Henstridge  <james@daa.com.au>
1678
1679         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_fixed_width):
1680         s/width/fixed_width/ in order to get things to compile.
1681
1682 Wed Oct  3 00:37:09 2001  Jonathan Blandford  <jrb@redhat.com>
1683
1684         * gtk/gtkcelleditable.c: docs
1685
1686         * gtk/gtktreemodel.h: more docs.
1687
1688 2001-10-02  Havoc Pennington  <hp@redhat.com>
1689
1690         * gdk/x11/gdkwindow-x11.c: docs
1691
1692         * tests/testtextbuffer.c (logical_motion_tests): add sentence
1693         boundary tests
1694
1695 Tue Oct  2 20:18:32 2001  Kristian Rietveld  <kristian@planet.nl>
1696
1697         * demos/gtk-demo/Makefile.am: add editable_cells.c,
1698         list_store.c and tree_store.c
1699
1700         * demos/gtk-demo/appwindow.c: remove tearoff item from
1701         File menu, put menubar and toolbar in handle boxes.
1702
1703         * demos/gtk-demo/genincude.pl: various changes to support trees
1704
1705         * demos/gtk-demo/main.c: various changes to support trees
1706
1707         * demos/gtk-demo/stock_browser.c: changed name of demo
1708         to Stock Item and Icon Browser, so geninclude.pl doesn't see
1709         it as child
1710
1711         * demos/gtk-demo/editable_cells.c: new file/demo
1712         * demos/gtk-demo/list_store.c: new file/demo
1713         * demos/gtk-demo/tree_store.c: new file/demo
1714
1715 Mon Oct  1 16:05:44 2001  Owen Taylor  <otaylor@redhat.com>
1716
1717         * gtk/gtkrc.c gtk/gtksettings.c: 
1718         g_string_printfa => g_string_append_printf.
1719
1720 Mon Oct  1 16:08:23 2001  Jonathan Blandford  <jrb@redhat.com>
1721
1722         * gtk/gtkliststore.c (gtk_list_store_class_init): add a finalize
1723         and destroy handler.
1724
1725         * gtk/gtktreestore.c (gtk_list_store_class_init): ditto, #59963
1726
1727         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Add
1728         'start_editing' flag to select_cursor_row.  Bug spotted by Manish
1729         Singh <yosh@gimp.org>.
1730
1731 2001-10-01  Matthias Clasen  <matthiasc@poet.de>
1732
1733         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_scanner): replace
1734         g_scanner_add/remove_symbol by g_scanner_scope_add/remove_symbol.
1735
1736         * gtk/gtkrc.c (gtk_rc_parse_any): here as well.
1737
1738 Mon Oct  1 14:07:02 2001  Jonathan Blandford  <jrb@redhat.com>
1739
1740         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): change
1741         scroll_to_cell delayed code to happen in size_allocate.
1742
1743         * gtk/gtkstyle.c (gtk_default_draw_expander): change
1744         prelight/normal arrow drawing.
1745
1746         * gtk/gtktreedatalist.c: Change compare func to use g_utf8_collate
1747
1748         * gtk/gtktreestore.c: refactor.
1749
1750 Sun Sep 30 22:15:52 2001  Manish Singh  <yosh@gimp.org>
1751
1752         * gtk/gtkcheckbutton.c (gtk_check_button_size_allocate): Applied
1753         patch from Soeren Sandmann <sandmann@daimi.au.dk>. Vertically
1754         centers the child in relation to the to indicator height.
1755
1756 Sun Sep 30 15:11:59 2001  Jonathan Blandford  <jrb@redhat.com>
1757
1758         * gtk/gtktreestore.c (gtk_tree_store_remove): Make ITERS_PERSIST
1759         correct
1760
1761 Sun Sep 30  07:01:42 2001 CEST <mikeh@bahnhof.se>
1762
1763         * gtk/gtkcellrenderertext.c: I reverted back to old "weight"
1764         property code using g_param_spec_int and changed from
1765         g_value_get_enum to g_value_get_int instead. Probably a better way
1766         to fix the problem :-)
1767
1768 Sun Sep 30  05:31:32 2001 CEST Mikael Hermansson <tyan@linux.se>
1769
1770     * gtk/gtkcellrenderertext.c changed "weight" property type from 
1771       g_param_spec_int to g_param_spec_enum.
1772
1773 Sat Sep 29 12:25:26 2001  Manish Singh  <yosh@gimp.org>
1774
1775         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): typo
1776         fix: s/Wether/Whether/ in reorderable property description
1777
1778 Thu Sep 27 16:46:36 2001  Jonathan Blandford  <jrb@redhat.com>
1779
1780         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): only
1781         start editing when you select with a keyboard.
1782
1783         (gtk_tree_view_button_press_event): much more graceful now.
1784
1785         * gtk/gtkstyle.c: Draw togglebutton better.
1786
1787 2001-09-26  Havoc Pennington  <hp@redhat.com>
1788
1789         * demos/gtk-demo/dialog.c (interactive_dialog_clicked): add demo
1790         of passing non-stock label in to gtk_dialog_new_with_buttons
1791
1792         * gtk/gtktextview.c (cursor_blinks): disable cursor blink when
1793         debugging updates
1794
1795         * gtk/gtktextiter.h: comment about how GtkTextIter struct contents
1796         are private
1797
1798         * gtk/gtkbutton.c (gtk_button_new_from_stock): if stock ID doesn't
1799         exist, fall back to mnemonic label, not plain label, bug #61184
1800         
1801 Wed Sep 26 19:48:01 2001  Jonathan Blandford  <jrb@redhat.com>
1802
1803         * gtk/gtktreestore.c (gtk_tree_store_set_valist): Stop being
1804         stupid and emitting the signal every time.
1805
1806         * gtk/gtkliststore.c (gtk_list_store_set_valist): ditto
1807
1808 Wed Sep 26 16:35:59 2001  Owen Taylor  <otaylor@redhat.com>
1809
1810        Patch from Mark McLoughlin <mark@skynet.ie> (#61233)
1811
1812        * contrib/gdk-pixbuf-xlib/Makefile.am: install
1813        gdk-pixbuf-xlib-2.0.pc.
1814
1815 Wed Sep 26 16:15:25 2001  Owen Taylor  <otaylor@redhat.com>
1816
1817         * gtk/gtknotebook.c (gtk_notebook_set_tab_label): Fix
1818         problem where menmonic wasn't removed properly when
1819         setting a label when there already is a label.
1820         Also, handle setting the tab label back to the same
1821         value. (#61160, #61161)
1822
1823         * gtk/gtkentry.c (paste_received): Patch from 
1824         Damian Ivereigh to replace selection if there is 
1825         one. (#61121)
1826
1827 2001-09-25  Darin Adler  <darin@bentspoon.com>
1828
1829         * tests/.cvsignore: Ignore new test program.
1830
1831 2001-09-25  Havoc Pennington  <hp@redhat.com>
1832
1833         * gtk/gtktextview.c: fix for #50317
1834         
1835 2001-09-25  Havoc Pennington  <hp@redhat.com>
1836
1837         * gtk/gtktextview.c (gtk_text_view_key_press_event): use 
1838         gtk_text_iter_can_insert
1839         
1840         * gtk/gtktextbuffer.c: use gtk_text_iter_can_insert
1841
1842         * gtk/gtktextiter.c (find_line_log_attrs): fixes, #57611, #57613
1843          (gtk_text_iter_can_insert): new function to fix #60282, should
1844         also fix msw's "can paste into empty buffer" bug.
1845
1846         * gtk/gtktexttag.c (gtk_text_tag_event): change type check for 
1847         "event object,"  #59091
1848
1849         * gtk/gtktextbtree.c: indentation fixes
1850
1851         * gtk/gtktextiter.c (find_by_log_attrs): fixes
1852
1853 Tue Sep 25 12:41:17 2001  Owen Taylor  <otaylor@redhat.com>
1854
1855         * configure.in: Version 1.3.9, interface age 0, binary age 0.
1856
1857         * configure.in: Require GLib-1.39, Pango 0.20, Atk 0.5.
1858
1859         * NEWS: Updates.
1860
1861 Mon Sep 24 11:59:09 2001  Owen Taylor  <otaylor@redhat.com>
1862
1863         * gtk/gtkstyle.[ch] (_gtk_draw_insertion_cursor): Shared
1864         function for drawing cursors between gtkentry/gtklabel/gtktextview.
1865         Should this be public? It has a bit of an odd interface, but
1866         custom editing widgets probably should be using it.
1867         Function will draw with wider width for taller cursors, and
1868         draws a little indicator arrow to indicate directoin for split 
1869         cursors.
1870
1871         * gtk/gtktextview.c: Add a "cursor_color" property.
1872
1873         * gtk/gtktextdisplay.[ch]: Add a cursor_gc parameter to
1874         gtk_text_layout_draw().
1875
1876         * gtk/gtkentry.c gtk/gtklabel.c gtk/gtktextdisplay.c: Use
1877         _gtk_draw_insertion_cursor().
1878
1879 Tue Sep 25 11:22:23 2001  Owen Taylor  <otaylor@redhat.com>
1880
1881         * gtk/gtkcellrenderertext.c gtk/gtktexttag.c: Restore
1882         the behavior where you could turn family_set (etc) back on
1883         and get back the values you had before.
1884
1885         * demos/gtk-demo/stock_browser.c (id_to_macro): Use
1886         g_string_ascii_up() rather than looping through the
1887         string ourself.
1888
1889 Tue Sep 25 15:32:44 2001  Jonathan Blandford  <jrb@redhat.com>
1890
1891         * gtk/gtktreeviewcolumn.c
1892         (gtk_tree_view_column_set_cell_renderer): Removed
1893         (gtk_tree_view_column_set_alignment): xalign = CLAMP (xalign, 0.0, 1.0);  Fixes 61012.
1894
1895         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Fixed #61012
1896         Patch from Detlef Reichl
1897
1898 2001-09-25  Havoc Pennington  <hp@redhat.com>
1899
1900         * tests/testtextbuffer.c (line_separator_tests): Add tests for
1901         line separators, addresses bug #57428
1902
1903 Tue Sep 25 12:34:42 2001  Jonathan Blandford  <jrb@redhat.com>
1904
1905         * gtk/gtkentry.c: Make a GtkCellEditable
1906         (get_widget_window_size): Change to let it honor size_allocate
1907         when a CellEditable.
1908
1909         * gtk/gtktreeview.c: M-x clean-line-ends.  Lots of focus and
1910         editable changes.
1911         (gtk_tree_view_set_cursor): Now you can set the cursor
1912         horizontally, as well as start editing.
1913
1914         * gtk/gtkstyle.c (gtk_default_draw_check): changing toggle drawing
1915         code to look more like the other check buttons.
1916
1917         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_get_size):
1918         Change the way we calculate cell size.
1919
1920         * gtk/gtkmarshal.list (VOID:STRING,STRING): new marshaller.
1921
1922         * demos/gtk-demo/sizegroup.c: Add mnemonics.
1923
1924         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): Fix docs.
1925         Fix logic.
1926
1927         * gtk/gtkcellrenderertext.c: Change to be editable.
1928
1929         * gtk/gtkcellrenderertoggle.c: Change to be activatable.
1930
1931         * test/testtreesort.c: Fix misspelling
1932
1933         * test/testreecolumns.c: Add mnemonics.
1934
1935         * test/testreeedit.c: New test program.
1936
1937 2001-09-25  Havoc Pennington  <hp@pobox.com>
1938
1939         * gtk/gtkwindow.c: Put notes in gtk_window_set_has_frame(),
1940         etc. docs about how these are not going to do what you want for 
1941         the X/win32 ports. Futile attempt to avoid a FAQ...
1942
1943 2001-09-24  James Henstridge  <james@daa.com.au>
1944
1945         * gtk/gtkmarshal.list (VOID): add marshal function types.
1946
1947         * gtk/gtkctree.c (gtk_ctree_class_init): make arguments have type
1948         GTK_TYPE_CTREE_NODE|G_SIGNAL_TYPE_STATIC_SCOPE rather than
1949         GTK_TYPE_POINTER.
1950         (gtk_ctree_node_get_type): implement boxed type for GtkCTreeNodes
1951         with no-op copy/free functions.
1952
1953         * gtk/gtkctree.h (gtk_ctree_node_get_type): add prototype for
1954         GtkCTreeNode get_type function.
1955
1956 2001-09-24  Havoc Pennington  <hp@redhat.com>
1957
1958         * gtk/gtktextiter.c, gtk/gtktextbuffer.c, gtk/gtktextbtree.c,
1959         gtktextlayout.c:
1960         Get rid of the newline-that-could-not-be-deleted; buffers may 
1961         now be zero-length. Much easier to fix than expected, once 
1962         I figured out the right way to do it. However, there are 
1963         various subtle bugs introduced by this that will have to get 
1964         sorted out. Please use bugzilla.
1965
1966 Mon Sep 24 15:09:08 2001  Owen Taylor  <otaylor@redhat.com>
1967
1968         * gtk/gtkwindow.c (gtk_window_move_resize): Don't wait for a
1969         response back from the window manager if our size hasn't changed 
1970         since we won't get a response back from the window manager;
1971         there was code in there to do this, but it was in the wrong
1972         place so if the hints change and the size didn't we'd expect
1973         a response.
1974
1975         Also, optimize the position-only-changed case by running
1976         the resize queue immediately, and clean up some comments
1977         for the changes.
1978
1979 Mon Sep 24 12:48:25 2001  Owen Taylor  <otaylor@redhat.com>
1980
1981         * gtk/gtknotebook.h: Add a compat macro that got lost.
1982
1983         * gtk/gtktreestore.c: Doc fixes.
1984
1985         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix reference
1986         leak for windows that receive events after being destroyed.
1987         (#60863, Joshua N. Pritikin)
1988
1989         * gtk/gtktable.c (gtk_table_remove): Use gtk_widget_queue_resize
1990         rather than gtk_container_queue_resize().
1991
1992         * gtk/{gtkcontainer.c,gtkwidget.c,gtkwindow.c}: _gtk prefix
1993         gtk_container_queue_resize, gtk_container_queue_resize_widgets,
1994         gtk_container_child_composite_name. (#60217.)
1995
1996 2001-09-22  Hans Breuer  <hans@breuer.org>
1997
1998         * gtk/gtkmenu.h : fix compat macros for gtk_menu_<prepend|insert>
1999
2000 Sat Sep 22 16:50:34 2001  Kristian Rietveld  <kristian@planet.nl>
2001
2002         * gtk/gtktexttag.c (gtk_text_tag_set_property): (case PROP_WEIGHT):
2003         weight value should be an int
2004
2005 Sat Sep 22 15:17:41 2001  Kristian Rietveld  <kristian@planet.nl>
2006
2007         * gtk/gtkmenu.c (gtk_menu_select_item): move most code
2008         to gtk_menu_scroll_item_visible(). Only call
2009         gtk_menu_scroll_item_visible() if the menu widget has been
2010         realized. Fixes bug #55310.
2011
2012 2001-09-21  Havoc Pennington  <hp@redhat.com>
2013
2014         * gtk/gtktextview.c (gtk_text_view_key_press_event): don't pass
2015         key press to IM context if cursor isn't in an editable location;
2016         bug #58425, patch from Hidetoshi Tajima
2017
2018 2001-09-21  Havoc Pennington  <hp@redhat.com>
2019
2020         Bug #60862
2021         
2022         * gtk/gtktextbtree.c (gtk_text_btree_node_destroy): 
2023         (_gtk_text_btree_unref): fix up mark memory management
2024
2025         * gtk/gtktextmark.c (mark_segment_delete_func): ditto
2026
2027 2001-09-20  Havoc Pennington  <hp@redhat.com>
2028
2029         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): don't
2030         try to handle alignment here, because it's done by PangoLayout
2031         after we set the layout width. Fix from Dov.
2032
2033 2001-09-21  Hans Breuer  <hans@breuer.org>
2034
2035         * gdk/gdk.def :
2036         * gtk/gtk.def : updated externals
2037
2038         * gtk/gtkmain.h : define get_gtk_win32_directoty () 
2039         * gtk/gtkmain.c (find_module) : don't use module_name after freeing it.
2040         Also handle that Win32 pathes cann't be hard-coded      
2041
2042         * gtk/gtkrc.c : use get_gtk_win32_directoty () to cleanup the various
2043         module, themes etc directory calculations
2044
2045         * gdk/win32/gdkgeometry-win32.c : some more hacking to get coordinates
2046         >16 bit right. The size limit within Win9x appears _not_ to be 32767
2047         but slightly smaller ...
2048
2049         * gdk/win32/gdkwindow-win32.c : use impl->position_info to avoid 
2050         >16 bit clipping. Added dummy body for gdk_window_set_icon_list ()
2051
2052         * gdk/win32/gdkdrawable-win32.c : implement gdk_win32_drawable_get_handle ()
2053
2054         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
2055         handling. I'm not sure if it is better now, but at least not worse
2056
2057         * gdk/win32/makefile.msc : define INSIDE_GDK_WIN32, some cleanup
2058
2059         * gdk/win32/gdkwin32.h : reflect recent API restrictions
2060
2061 2001-09-21  Matt Wilson  <msw@redhat.com>
2062
2063         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy): set
2064         radio_menu_item->group to NULL after removing it from the list, as
2065         it is no longer in the group. (#60869)
2066
2067         * gtk/gtkradiobutton.c (gtk_radio_button_destroy): likewise
2068
2069 2001-09-20  Havoc Pennington  <hp@pobox.com>
2070
2071         * configure.in (PANGO_REQUIRED_VERSION)
2072         (ATK_REQUIRED_VERSION): add variables and checks for specific 
2073         versions of dependencies. Previously we didn't verify the 
2074         Pango or ATk versions.
2075
2076 2001-09-09  Havoc Pennington  <hp@pobox.com>
2077
2078         * gtk/gtktextiter.c: fool with indentation
2079         (gtk_text_iter_in_range): add g_return_if_fail
2080
2081 Thu Sep 20 17:45:54 2001  Joshua N Pritikin  <vishnu@pobox.com>
2082
2083         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): Fix
2084         ref count on new tag to be 1.  Update doc.  (#60836)
2085
2086 Thu Sep 20 16:20:47 2001  Owen Taylor  <otaylor@redhat.com>
2087
2088         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Remove unnecessary
2089         call to gdk_image_new_bitmap(). (#59094, reported by
2090         by Sven Neumann)
2091
2092 Thu Sep 20 15:31:35 2001  Owen Taylor  <otaylor@redhat.com>
2093
2094         * gtk/gtkcalendar.c (gtk_calendar_init): Use the current
2095         day, as well as the current month and year.
2096         (#59047, reported by Vitaly Tishkov)
2097
2098 Thu Sep 20 15:10:30 2001  Owen Taylor  <otaylor@redhat.com>
2099
2100         * gtk/gtkdialog.c (gtk_dialog_init): Automatically set
2101         set dialogs to GTK_WIN_POS_CENTER_ON_PARENT. (#60554)
2102         
2103 Thu Sep 20 18:00:56 2001  Kristian Rietveld  <kristian@planet.nl>
2104
2105         * tests/testgtk.c (struct OptionMenuItem): get rid of it,
2106
2107         (build_option_menu): add func argument, connect ::changed
2108         signal to option menu instead of connecting the ::activate
2109         signal to the menu items,
2110
2111         (toplevel): get rid of RADIOMENUTOGGLED macro,
2112
2113         (list_toggle_sel_mode), (clist_toggle_sel_mode),
2114         (ctree_toggle_line_style), (ctree_toggle_expander_style),
2115         (ctree_toggle_justify), (ctree_toggle_sel_mode),
2116         (progressbar_toggle_orientation), (progressbar_toggle_bar_style):
2117         use gtk_option_menu_get_history() instead of RADIOMENUTOGGLED,
2118
2119         (notebook_type_changed): merged standard_notebook(),
2120         notabs_notebook(), scrollable_notebook() and borderless_notebook()
2121         into notebook_type_changed()
2122
2123         (create_list), (create_ctree), (create_notebook),
2124         (create_progress_bar): changed OptionMenuItem arrays into
2125         gchar * arrays. Removed "Extended" item where used.
2126
2127         Fixes bug #59885
2128
2129 2001-09-20  Sven Neumann  <sven@gimp.org>
2130
2131         * configure.in
2132         * gdk/Makefile.am
2133         * gtk/Makefile.am
2134         * gtk/gtkselection.c
2135         * gtk/gtktreeview.c
2136         * gtk/gtkwindow.c: removed remaining traces of nanox GDK backend.
2137
2138 Thu Sep 20 11:19:42 2001  Owen Taylor  <otaylor@redhat.com>
2139
2140         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): Add
2141         a missing pango_layout_iter_free ().
2142
2143 Thu Sep 20 11:03:51 2001  Owen Taylor  <otaylor@redhat.com>
2144
2145         * gtk/gtkobject.c gtk/gtklist.c gtk/gtkplug.c gtk/gtksocket.c
2146         gtk/gtktreemodelsort.c gtk/gtktreeview.c: Small warning cleanups.
2147
2148         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_get_group): Change
2149         the function definition so we don't accidentally rely on
2150         the compat #define from gtk_radio_menu_item_group.
2151         (#60782, Jeff Franks)
2152
2153 Thu Sep 20 16:51:02 2001  Kristian Rietveld  <kristian@planet.nl>
2154
2155         * gtk/gtkwindow.c (gtk_window_get_frame_dimensions): returned
2156         incorrect values for top, right and bottom due to cut-and-paste
2157         bug. Pointed out by Vitaly Tishkov, fixes bug #59008
2158
2159 Wed Sep 19 17:59:27 2001  Owen Taylor  <otaylor@redhat.com>
2160
2161         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set
2162         _NET_WM_PID and WM_CLIENT_MACHINE properties on each
2163         window, not just on the client leader. (#58463)
2164
2165 Wed Sep 19 17:28:47 2001  Owen Taylor  <otaylor@redhat.com>
2166
2167         * gtk/gtkwidget.c (gtk_widget_new): Add missing cast.
2168
2169         * gtk/gtkmenuitem.[ch] gtk/gtkmenushell.c: Underscore prefix
2170         non-public _gtk_menu_item_set_placement.
2171
2172         * gtk/gtktooltips.h: Deprecate gtk_tooltips_set_delay().
2173
2174 Wed Sep 19 16:16:38 2001  Owen Taylor  <otaylor@redhat.com>
2175
2176         * gdk/win32/gdkcolor-win32.c gdk/x11/gdkcolor-x11.c 
2177           gdk/linux-fb/gdkcolor-fb.c:
2178         Fix propagated (flags && GDK_COLOR_WRITEABLE) typo.
2179         (#59723)
2180
2181 Wed Sep 19 16:12:16 2001  Owen Taylor  <otaylor@redhat.com>
2182
2183         * gdk/gdkpixbuf-render.c: Allow -1 for width/height
2184         to mean "width/height of pixbuf" (Patch from Matthias Clasen,
2185         #59723)
2186
2187 Wed Sep 19 16:01:27 2001  Owen Taylor  <otaylor@redhat.com>
2188
2189         Patch from Frank Belew #59037 for Solaris compilation.
2190
2191         * gtk/maketypes.awk: Change syntax slightly for a call
2192         to sub(), apparently making awk on Solaris happier.
2193
2194         * gtk/gtktreeview.c: Remove C++ comments.
2195
2196 Wed Sep 19 15:46:29 2001  Owen Taylor  <otaylor@redhat.com>
2197
2198         * gtk/gtkwindow.c: Add xgettext:no-c-format comment to
2199         to handle '99% of the time. (#60473, reported by Christian Rose)
2200
2201         * gtk/gtkwidget.h: Remove prototype for gtk_widget_get_usize()
2202         which no longer exists. (#60379, reported by Vitaly Tishkov)
2203
2204 Wed Sep 19 11:06:24 2001  Tim Janik  <timj@gtk.org>
2205
2206         * Released 1.3.8.
2207
2208         * gdk/Makefile.am: kill EXTRA_DIST clearing.
2209         
2210 Wed Sep 19 02:50:40 2001  Tim Janik  <timj@gtk.org>
2211
2212         * demos/Makefile.am ($(testpixbuf_OBJECTS)): don't use BUILT_SOURCES
2213         as its broken in automake 1.4, add explicit object rule to
2214         generate this.
2215         
2216         * gdk-pixbuf/Makefile.am: fix maintainer and normal cleanfiles.
2217         get rid of uneccessary stamps, group stuff more logically, and build
2218         sources due to object rules. fix srcdir!=builddir.
2219
2220 Tue Sep 18 20:47:16 2001  Owen Taylor  <otaylor@redhat.com>
2221
2222         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Fix 
2223         incorrect parameter to compute_double_length
2224         (#58680, patch from Matthias Clasen)
2225
2226         Fixes for compilation with Forte cc. (#59734, Derek Rafter)
2227
2228         * gtk/gtkwindow.h gtk/gtksizegroup.h: Remove extra ;.
2229
2230         * gdk/gdktypes.h (GdkModifierType): Write 1u << 31
2231         for GDK_RELEASE_MASK to avoid warnings with Forte.
2232
2233         * gtk/gtktexttag.c gtk/gtkcellrendertext.c: Add some missing
2234         break; statements.
2235
2236 2001-09-18  Alex Larsson  <alexl@redhat.com>
2237
2238         * gtk/gtkcheckbutton.c:
2239         * gtk/gtkradiobutton.c:
2240         Don't draw with GTK_STATE_ACTIVE.
2241
2242         * gtk/gtkclist.c:
2243         * gtk/gtkctree.c:
2244         Draw lines between rows with base_gc[GTK_STATE_NORMAL].
2245
2246         * gtk/gtktextdisplay.c:
2247         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2248         unfocused with base_gc [GTK_STATE_ACTIVE].
2249         
2250         * gtk/gtkentry.c:
2251         Add select all menu-item.
2252         Default cursor color is red.
2253         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2254         unfocused with base_gc [GTK_STATE_ACTIVE].
2255
2256         * gtk/gtklabel.[ch]:
2257         Add keynav + menu to selectable lables.
2258         Focused selection is drawn with base_gc [GTK_STATE_SELECTED] and
2259         unfocused with base_gc [GTK_STATE_ACTIVE].
2260
2261         * gtk/gtkfilesel.c:
2262         Add drag and drop support.
2263
2264         * gtk/gtkstyle.c:
2265         (This was checked in earlier)
2266         New default values for text/base SELECTED and ACTIVE
2267         
2268 Tue Sep 18 23:51:49 2001  Tim Janik  <timj@gtk.org>
2269
2270         * configure.in: up version to 1.3.8, interface age 0,
2271         binary age 0, depend on glib 1.3.8.
2272
2273         * NEWS: 1.3.8 updates.
2274
2275 Tue Sep 18 18:46:54 2001  Jonathan Blandford  <jrb@redhat.com>
2276
2277         * gtk/gtktreeview.c (gtk_tree_view_start_editing): centralize all
2278         the editing code
2279
2280         * gtk/gtkcelleditable.c: Got rid of stop_editing, as there was no
2281         reason to call it beyond emiting the two signals.
2282
2283         * gtk/gtkentry.c (gtk_entry_class_init): add "has_frame" property
2284         to GtkEntry.
2285
2286 Wed Sep 12 11:21:14 2001  Owen Taylor  <otaylor@redhat.com>
2287
2288         * gtk/gtkcellrenderertext.[ch] gtk/gtktexttag.[ch]
2289           gtk/gtktextview.c tests/testgtk.c: Fix up for changes to 
2290         PangoFontDescription.
2291
2292         * gtk/gtkentry.c gtk/gtkclist.c gtk/gtkcellrenderertext.c
2293         gtk/gtkspinbutton.c: Fix up for change to PangoMetrics
2294         structure.
2295   
2296         * gtk/gtkfontsel.c: Fix up for new Pango font listing API.
2297
2298         * gtk/gtkstyle.[ch]: Add gtk_style_get_font/set_font to replace
2299         direct access to style->font. Deprecate gtk_style_ref/unref.
2300   
2301         * gtk/gtkclist.c gtk/gtkctree.c gtk/gtkstyle.c gtk/gtkwidget.c:
2302         Remove gtk_style_ref/unref with g_object_ref/unref.
2303   
2304         * gtk/gtkcalendar.c: Remove leftover macros accessing
2305         style->font.
2306   
2307         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): Remove unused
2308         variable.
2309   
2310         * gtk/gtktext.c gtk/gtklabel.c: Use gtk_style_get_font() instead of 
2311         style->font.
2312
2313 Tue Sep 18 13:51:35 2001  Jonathan Blandford  <jrb@redhat.com>
2314
2315         * gtk/gtkcellrenderer.h (enum): Get rid of broken "can_edit" and
2316         "can_activate" properties in favor of
2317         GTK_CELL_RENDERER_MODE_INERT, GTK_CELL_RENDERER_MODE_ACTIVATABLE,
2318         and GTK_CELL_RENDERER_MODE_EDITABLE
2319
2320 Tue Sep 18 12:12:43 2001  Jonathan Blandford  <jrb@redhat.com>
2321
2322         * gtk/gtktreeview.c (gtk_tree_view_put): Add put for use with
2323         editable widgets.  This function is private, and should only be
2324         used by GtkTreeView.
2325
2326 2001-09-18  Matt Wilson  <msw@redhat.com>
2327
2328         * docs/Makefile.am (EXTRA_DIST): don't use += before =
2329
2330         * docs/faq/Makefile.am (EXTRA_DIST): likewise
2331
2332         * docs/tutorial/Makefile.am (EXTRA_DIST): likewise
2333         
2334         * gdk/Makefile.am (MAINTAINERCLEANFILES): likewise
2335         (EXTRA_HEADERS): likewise
2336
2337         * gtk/Makefile.am (MAINTAINERCLEANFILES): likewise
2338         (EXTRA_HEADERS): likewise
2339         (EXTRA_DIST): likewise
2340         (CLEANFILES): likewise
2341
2342         * gtk/stock-icons/Makefile.am (CLEANFILES): likewise
2343
2344         * tests/Makefile.am (EXTRA_DIST): likewise
2345         
2346         * Makefile.am (install-data-local): changed to use
2347         install-data-hook, which runs after install-pkgconfigDATA, so that
2348         the pkgconfigdir will have been created and populated first.
2349
2350 Mon Sep 17 17:39:52 2001  Jonathan Blandford  <jrb@redhat.com>
2351
2352         * gtk/gtkcelleditable.[ch]: Add editable interface.  This should
2353         be the last big GtkTreeView API change.
2354
2355         * gtk/gtkcellrenderer.[ch]: Get rid of the "event" vfunc, and
2356         replace with "activate" and "start_editing".  Also, added a
2357         "can_activate" and "can_edit" property.
2358
2359         * gtk/gtktreeviewcolumn.c: modify to use above.
2360
2361 2001-09-16  Alexander Larsson  <alla@lysator.liu.se>
2362
2363         * gtk/gtkoptionmenu.c:  Handle scroll wheel events.
2364
2365 Fri Sep 14 22:31:25 2001  Matthias Clasen  <matthiasc@poet.de>
2366
2367         * demos/gtk-demo/main.c (setup_default_icon): Use a shaped
2368         icon instead of one with ugly white background.
2369
2370 Fri Sep 14 22:26:01 2001  Matthias Clasen  <matthiasc@poet.de>
2371
2372         * demos/gtk-demo/stock_browser.c (id_to_macro): make
2373         the uppercasing work. (#59550)
2374
2375 2001-09-14  Jakub Steiner <jimmac@ximian.com>
2376
2377         * gtk/stock-icons/dialog_error.png:
2378         * gtk/stock-icons/dialog_question.png: more road signs
2379
2380 2001-09-13  Jakub Steiner <jimmac@ximian.com>
2381
2382         * gtk/stock-icons/dialog_question.png:
2383         * gtk/stock-icons/dialog_warning.png: anders and jonathan seem to
2384           like a road sign.
2385
2386 Wed Sep 12 19:01:05 2001  Jonathan Blandford  <jrb@redhat.com>
2387
2388         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Rename interface
2389         signals to make them more clear.  Also, change ::range_changed to
2390         ::row_changed.
2391         * gtk/gtktreemodel.c: Adjust to interface change
2392         * gtk/gtktreemodel.h: ditto
2393         * gtk/gtktreemodelsort.c: ditto
2394         * gtk/gtktreestore.c: ditto
2395         * gtk/gtkliststore.c: ditto
2396         * gtk/gtktreeview.c: ditto
2397         * tests/testtreecolumns.c: ditto
2398         * gtk/gtkmarshal.list: Actually remove a marshaller!
2399
2400 2001-09-12  Padraig O'Briain <padraig.obriain@sun.com>
2401
2402         * gtk/gtktextview.c
2403         Add support for Ctrl+Up/Down arrow to move cursor to beginning
2404         of previous/next paragraph. If within a paragraph cursor moves to
2405         beginning of that paragraph.
2406
2407 2001-09-12  Jakub Steiner <jimmac@ximian.com>
2408
2409         * gtk/stock-icons/dialog_question.png: replacing the shaky
2410           question mark with a sans-serif one.
2411         * gtk/stock-icons/stock_top.png, stock_bottom.png,
2412      stock_first.png, stock_last.png: using the new style arrows
2413         * gtk/stock-icons/stock_font.png: simple one to replace the ugly
2414      colors.
2415         * gtk/stock-icons/stock_refresh.png: anti-aliased and changed
2416      color.
2417         * gtk/stock-icons/stock_zoom*: anti-aliased
2418         * gtk/stock-icons/dialog_error.png, dialog_warning.png: confused
2419      '-' with a '_', removed the wrong files
2420
2421 Sat Sep  8 16:19:02 2001  Owen Taylor  <otaylor@redhat.com>
2422  
2423         * gtk/gtkmain.c: Implement a search path for GTK+ modules.
2424  
2425         * configure.in gtk/gtkrc.c gtk/Makefile.am: Look for modules
2426         in gtk-2.0/<type>/major.minor.(micro-binary_age) rather
2427         than in gtk-2.0/major.minor.micro/<type>/. This
2428         works better for a search path for modules.
2429  
2430         * gtk+-2.0.pc.in gtk+-2.0-uninstalled.pc.in: Add
2431         gtk_binary_version variable holding major.minor.(micro-binary_age).
2432  
2433         * modules/input/Makefile.am (moduledir): Fix installation
2434         directory to match change in lookup location.
2435  
2436         * gtk/gtkmain.c (gtk_init_check): Remove OS/2 code for dll 
2437         suffixes. Needs to be handled in g_module_build_path().
2438
2439         * gtk/gtkrc.c gtk/queryimmodules.c: Use g_build_filename() where
2440         appropriate.
2441  
2442 Tue Sep 11 13:59:12 2001  Owen Taylor  <otaylor@redhat.com>
2443
2444         * gtk/gtkrc.c (insert_rc_property): Fixed reversed comparison
2445         causing RC properties not to work.
2446
2447 2001-09-11  Jakub Steiner <jimmac@ximian.com>
2448
2449         * gtk/stock-icons/dialog-error.png: less drastic
2450         * gtk/stock-icons/dialog-warning.png: no body parts. (I hope
2451           "STOP" is international enough.
2452         * gtk/stock-icons/stock_dnd*.png: get rid of the cursor
2453         * gtk/stock-icons/stock_menu_properties.png: 16x16 version
2454
2455 Mon Sep 10 21:26:24 2001  Joshua N Pritikin  <vishnu@pobox.com>
2456
2457         * gtk/gtktextview.c (gtk_text_view_set_buffer): Make
2458         (add|remove)_selection_clipboard symmetric. (bug #59836)
2459
2460         * gtk/gtktreeview.c (gtk_tree_view_unref_and_check_selection_tree): 
2461         Avoid SEGV for empty tree. (bug #60243)
2462
2463 Mon Sep 10 20:47:22 2001  Tim Janik  <timj@gtk.org>
2464
2465         * tests/testgtk.c (create_idle_test): slight fix for
2466         g_object_set() not usable for nesting anymore.
2467
2468         * gtk/gtkhandlebox.c (gtk_handle_box_class_init): 
2469         * gtk/gtkframe.c (gtk_frame_class_init): deprecate ::shadow
2470         properties, supply ::shadow_type properties instead as most
2471         other widgets do.
2472
2473 2001-09-10  Alex Larsson  <alexl@redhat.com>
2474
2475         * demos/gtk-demo/stock_browser.c:
2476         * gdk/gdkcolor.c:
2477         * gdk/gdkfont.c:
2478         * gdk/gdkcursor.c:
2479         * gdk/gdkevents.c:
2480         * gdk/gdkrectangle.c:
2481         * gtk/gtktypeutils.c:
2482         Update to use the new g_boxed_type_register_static API.
2483
2484 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
2485
2486         * gtk/gtktreestore.c:
2487         Fix looping in gtk_tree_store_init() waiting for zero random int.
2488
2489 Mon Sep 10 16:55:49 2001  Tim Janik  <timj@gtk.org>
2490
2491         * gtk/gtkalignment.c (gtk_alignment_init): fix xscale and yscale
2492         behaviour which havoc broke. they have to default to 1.0 for
2493         expand behaviour.
2494
2495         * gtk/gtkwindow.c (gtk_window_get_property): don't cast NULL objects.
2496
2497 2001-09-10  Padraig O'Briain <padraig.obriain@sun.com>
2498
2499         * gtk/gtkstyle.c (_gtk_style_peek_property_value)
2500         Amend previous change to avoid runtime error in g_param_spec_ref()
2501
2502 Mon Sep 10 06:58:56 2001  Owen Taylor  <otaylor@redhat.com>
2503
2504         * gtk/gtkrc.c (insert_rc_property): Fix blank line
2505         in the wrong place.
2506
2507 Mon Sep 10 06:50:39 2001  Owen Taylor  <otaylor@redhat.com>
2508
2509         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Don't
2510         do a lookup immediately after creating style->property_cache,
2511         since bsearch crashes on zero length for Solaris.
2512         (Found by Padraig O'Briain.)
2513
2514 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2515
2516         * gtk/gtkwidget.c (_gtk_widget_peek_colormap):
2517         Really return NULL if not set.
2518         (gtk_widget_init): Remove unused varaible.
2519         
2520 2001-09-09  Alexander Larsson  <alla@lysator.liu.se> 
2521
2522         * configure.in:
2523         Remove gdk/nanox/Makefile from AC_OUTPUT(), since it is no longer
2524         in cvs.
2525
2526 2001-09-08  Havoc Pennington  <hp@pobox.com>
2527
2528         * gtk/gtkaccelgroup.c: add docs to functions that I can imagine 
2529         people might want to use
2530
2531 2001-09-08  Havoc Pennington  <hp@pobox.com>
2532
2533         * gtk/gtkalignment.c (gtk_alignment_class_init): default
2534         xscale/yscale to 0.0, not 0.5, 0.5 isn't useful
2535
2536         * tests/testtextbuffer.c: fix usage of gtk_text_iter_spew
2537
2538         * gtk/gtktextiter.c: fix docs
2539         (gtk_text_iter_spew): get rid of this
2540
2541         * gtk/gtklayout.c: docs
2542
2543         * gtk/gtkbutton.c (gtk_button_construct_child): add an alignment
2544         to center image and label together, instead of having image on
2545         left and label centered, patch/suggestion from Jacob
2546
2547         * gtk/gtkdialog.c: docs
2548
2549 Sat Sep  8 14:19:49 2001  Jonathan Blandford  <jrb@redhat.com>
2550
2551         * gtk/gtkliststore.c: Write documentation
2552         * gtk/gtktreestore.c: Write documentation
2553
2554 Sat Sep  8 13:53:09 2001  Owen Taylor  <otaylor@redhat.com>
2555
2556         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch]: Replace uses of GBSearchArray
2557         with GArray and bsearch(), to remove dependency on a still
2558         evolving interface that we want to keep private to glib/gobject. 
2559
2560 2001-09-08  Havoc Pennington  <hp@pobox.com>
2561
2562         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_add_attribute):
2563         docs fixes
2564
2565         * gtk/gtktable.c (gtk_table_get_col_spacing): docs fixes
2566
2567         * gtk/gtkspinbutton.c (gtk_spin_button_get_increments): docs fixes
2568
2569         * gtk/gtksocket.c (gtk_socket_steal): docs fixes
2570
2571         * gtk/gtkscrolledwindow.h: docs fixes
2572
2573         * gtk/gtkimage.c (gtk_image_new): docs fixes
2574
2575 Sat Sep  8 01:49:22 2001  Owen Taylor  <otaylor@redhat.com>
2576
2577         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check): Prevent a 
2578         false alarm  constness warning with a cast.
2579
2580         * gdk/x11/gdkx.h: Undefine GDK_ROOT_PARENT before redefining it
2581         for the inside-gdk case.
2582
2583 Sat Sep  8 01:44:18 2001  Jonathan Blandford  <jrb@redhat.com>
2584
2585         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_cell_set_dirty):
2586         remove g_print.
2587
2588         * gtk/gtktreeview.c (gtk_tree_view_set_model): unref model when we
2589         change models, #59899
2590
2591 2001-09-07  Havoc Pennington  <hp@pobox.com>
2592
2593         * gtk/gtkmain.c: move some docs inline
2594
2595 2001-09-07  Havoc Pennington  <hp@pobox.com>
2596
2597         * gtk/gtk.h: tsk tsk, jrb broke the build
2598
2599 Fri Sep  7 20:45:29 2001  Jonathan Blandford  <jrb@redhat.com>
2600
2601         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_{start,end}):
2602         Removed 'fill' attribute.  It was silly b/c that was a property of
2603         the cell renderer, anyway.
2604         (gtk_tree_view_column_render): Actually render the packed
2605         renderers.
2606         * doc/tree-column-sizing.txt: initial devel documentation.
2607         * gtk/gtktreeview.c (gtk_tree_view_expand_all): Fix bug.
2608         * gtk/gtkcellrenderertextpixbuf.[ch]: removed.
2609
2610         * tests/testtreefocus.c: fix up to reflect above changes.
2611         * tests/testtreeview.c: ditto
2612         * demos/gtk-demo/stock_browser.c: ditto
2613
2614 2001-09-07  Alex Larsson  <alexl@redhat.com>
2615
2616         * gdk/linux-fb/gdkcolor-fb.c:
2617         Removed unused function.
2618         
2619         * gdk/linux-fb/gdkdrawable-fb2.c
2620         * gdk/linux-fb/gdkfont-fb.c:
2621         Use PangoLanguage functions.
2622
2623         * gdk/linux-fb/gdkinput.c:
2624         * gdk/linux-fb/gdkselection-fb.c:
2625         Fix const warnings.
2626         
2627         * gdk/linux-fb/gdkwindow-fb.c:
2628         Fix warning. Implement gdk_window_set_icon_list() and
2629         gdk_window_get_frame_extents(). (No icon support yet though.)
2630
2631         * gtk/gtkwindow.c (gtk_window_get_position):
2632         If window->frame is set get the extents of it instead.
2633         
2634 Fri Sep  7 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
2635
2636         * gtk/gtkwidget.c (gtk_widget_get_default_colormap): 
2637         Make the default default colormap the GdkRGB colormap,
2638         not the system colormap.
2639
2640         * gtk/gtkinvisible.c (gtk_invisible_init) 
2641           gtk/gtkwindow.c (gtk_window_init): Set the current
2642         colormap, as returned by _gtk_widget_peek_colormap()
2643         on the widget.
2644
2645         * gtk/gtkwidget.[ch]: Export _gtk_widget_peek_colormap
2646         to GTK+. Make it return %NULL instead of the default
2647         colormap if no colormap has explicitely been pushed.
2648
2649         * gtk/gtkwidget.c (gtk_widget_get_colormap): Check for
2650         colormaps on ancestral widgets before defaulting the
2651         the system default colormap.
2652
2653         * docs/Changes-2.0.txt: explain colormap changes.
2654
2655 2001-09-07  Havoc Pennington  <hp@redhat.com>
2656
2657         * gtk/gtktextiter.c: add some lame code to handle G_MININT, fixes 
2658         #57424
2659
2660 Fri Sep  7 18:17:47 2001  Owen Taylor  <otaylor@redhat.com>
2661
2662         * gdk/gdk.h gdk/x11/gdkmain-x11.c: Deprecate gdk_set/get_use_xshm, 
2663         make gdk_set_use_xshm a noop. Remove --no-xshm command line
2664         option. If we aren't autodetecting properly, we need
2665         to fix the problem, or at least make it an environment
2666         variable setting, to avoid problems with propagating
2667         to embedded children, plugins, etc.
2668
2669         * gdk/gdkcolor.h: Deprecate gdk_colormap_get_system_size().
2670
2671         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf.h
2672         (gdk_pixbuf_render_pixmap_and_mask_for_colormap):
2673         New function to render a pixmap and mask for a particular colormap.
2674
2675         * gtk/gtkwindow.c (get_pixmap_and_mask): Change to use
2676         gdk_pixbuf_render_pixmap_and_mask_for_colormap () instead
2677         of internal implementation of the same.
2678
2679 2001-09-07  Havoc Pennington  <hp@redhat.com>
2680
2681         * gtk/gtktextlayout.c (gtk_text_layout_get_lines): remove some
2682         debug code that seems to have caused a breakpoint in valid cases
2683         
2684         * gtk/gtktextbtree.c (_gtk_text_btree_add_view): set the prev
2685         pointer on the first view when adding the second view, fixes
2686         crash when closing gtk-demo text test with active selection
2687
2688         * gtk/gtktextbuffer.c
2689         (gtk_text_buffer_remove_selection_clipboard): don't leave dead
2690         clipboards in the list of clipboards - probably fixes #59836
2691
2692 Fri Sep  7 11:51:44 2001  Owen Taylor  <otaylor@redhat.com>
2693
2694       Make gdkx.h the only installed header from gdk/x11.
2695       All structures in gdk/x11 are opaque.
2696
2697         * gdk/x11/Makefile.am gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h:
2698         Don't install gdk{drawable,pixmap,window}-x11.h.
2699
2700         * gdk/x11/{gdkcolormap-x11.c, gdkfont-x11.c, gdkx.h, gdkvisual-x11.c: 
2701         Move GdkColormapPrivateX11, GdkFontPrivateX GdkImagePrivateX11, 
2702         GdkVisualClass into C files.
2703
2704         * gdk/gdkpixmap-x11.[ch]: Make gdk_pixmap_impl_get_type() static.
2705
2706         * gdk/x11/{gdkcolor-x11.c, gdkcursor-x11.c, gdkdrawable-x11.c,
2707         gdkfont-x11.c, gdkgc-x11.c, gdkx.h, gdkimage-x11,gdkvisual-x11.c}
2708         Add public functions to replace previously exported direct
2709         structure access.
2710         gdk_x11_colormap_get_{xdisplay,xcolormap} 
2711         gdk_x11_cursor_get_{xdisplay,xcursor},
2712         gdk_x11_drawable_get_{xdisplay,xcursor,gdk_x11_visual_get_xvisual, 
2713         gdk_x11_font_get_{xdisplay,xfont}, gdk_x11_image_get_{xdisplay,ximage},
2714         gdk_x11_gc_get_{xdisplay,ximage}
2715         
2716         * gdk/gdkprivate.h gdk/gdkinternals.h: Move GdkColorInfo,
2717         GdkEventFilter, GdkClientFilter, GdkFontPrivate to gdkinternals.
2718
2719       Fix a number of variables and functions that were exported
2720       "accidentally" from GDK.
2721
2722         * gdk/**.[ch]: gdk => _gdk for gdk_visual_init,
2723         gdk_events_init, gdk_input_init, gdk_dnd_init, gdk_image_exit, 
2724         gdk_input_exit, gdk_windowing_exit, gdk_event_func, gdk_event_data,
2725         gdk_event_notify, gdk_queued_events, gdk_queued_tail,
2726         gdk_event_new, gdk_events_queue, gdk_events_unqueue,
2727         gdk_event_queue_find_first, gdk_event_queue_remove_link,
2728         gdk_event_queue_append, gdk_event_button_generate,
2729         gdk_debug_flags, gdk_default_filters, gdk_parent_root.
2730
2731         * gdk/x11/{gdkevents-x11.c, gdkglobals-x11.c, gdkimage-x11.c, 
2732            gdkmain-x11.c, gdkprivate-x11.h, gdk/x11/gdkwindow-x11.c}:
2733         gdk => _gdk for gdk_event_mask_table, gkd_nevent_masks, 
2734         gdk_wm_window_protocols, gdk_leader_window, gdk_xgrab_window,
2735         gdk_use_xshm, gdk_input_ignore_core.
2736
2737         * gdk/x11/xsettings-common.h (xsettings_list_insert): Add
2738         #defines to namespace functions into the private _gdk_ 
2739         namespace.
2740
2741         * gdk/gdkwindow.[ch] gdk/x11/gdkx.h: Add gdk_get_default_root_window ()
2742         to replace gdk_parent_root exported variable. Adjust and
2743         deprecate GDK_ROOT_PARENT().
2744
2745         * demos/{testpixbuf-drawable.c,testpixbuf-save.c}: Fix
2746         GDK_ROOT_PARENT usage, remove includes of port-specific
2747         headers.
2748
2749         * gdk/{win32,x11,fb}/gdkinput*.[ch]: s/gdk/_gdk/ for 
2750         _gdk_input_gxid_host, _gdk_input_gxid_port, _gdk_input_ignore_core, 
2751         gdk_input_devices, _gdk_input_windows, gdk_init_input_core.
2752
2753         * gdk/x11/{gdkevents-x11.,c gdkglobals-x11.c, gdkmain-x11.c}
2754         docs/Changes-2.0.txt: Remove gdk_wm_protocols, 
2755         gdk_wm_delete_window functions, gdk_wm_take_focus, 
2756         use gdk_atom_intern() instead.
2757
2758         * gdk/linux-fb/{gdkselection-fb.c, gdkmain-fb.c, gdkprivatefb.h}
2759           gdk/win32/{gdkselection-win32.c, gdkmgdkwin32.h, gdkprivate-win32.h} 
2760           gdk/x11/{gdkselection-x11.c gdkx.h, gtkprivate-x11.h}
2761           gtk/gtkselection.c 
2762         Unexport gdk_selection_property, just use 
2763         gdk_atom_intern ("GDK_SELECTION").
2764
2765         * gdk/x11/{gdkprivate-x11.h,gdkdrawable-x11h,gdkgc-x11.c,gdkx.h}: 
2766         Unexport gdk_drawable_impl_x11_get_type, gdk_gc_x11_get_type, 
2767         GDK_GC_X11 cast macros, GdkGCX11 structures, GdkCursorPrivate, 
2768         GdkVisualprivate, gdk_x11_gc_flush.
2769
2770       Make a number of public exports of variables into functions
2771       to increase encapsulation.
2772
2773         * gdk/gdkinternals.h gdk/gdkinput.h gdk/gdkevents.h 
2774         gdk/linux-fb/gdkmouse-fb.c: gdk_core_pointer => _gdk_core_pointer, 
2775         move to gdkinternals.h. Add gdk_device_get_core_pointer ().     
2776
2777         * gdk/gdkprivate.h gdk/gdkpango.c gdk/gdkinternals.h
2778         docs/Changes-2.0.txt: Unexport gdk_parent_root, gdk_error_code, 
2779         gdk_error_warnings.
2780
2781         * gdk/x11/{gdkcolormap-x11.c, gdkmain-x11.c, gdkx.h}
2782           docs/Changes-2.0.txt: 
2783         s/gdk_screen/_gdk_screen/, add gdk_x11_get_default_screen()
2784         s/gdk_root_window/_gdk_root_window/, add gdk_x11_get_default_root_xwindow()
2785         Add gdk_x11_get_default_xdisplay().
2786
2787         * gdk/gdk.h gdk/gdk.c linux-fb/gdkfb.h linux-fb/gdkglobals-fb.c 
2788         win32/gdkwin32.h x11/gdkglobals-x11.c gdk/x11/gdkmain-x11.c 
2789         gdk/x11/gdkx.h: gdk/gdk.def: Add gdk_get/set_program_class, 
2790         Don't export gdk_progclass, move --class command line
2791         option and handling to common portion of GDK.
2792
2793       Miscellaneous fixes:
2794
2795         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): Fix
2796         g_return_val_if_fail that should have been g_return_if_fail.
2797
2798         * gdk/gdkinternals.h gdk/gdkprivate.h: Move
2799         gdk_synthesize_window_state() to the semi-public gdkprivate.h.
2800
2801         * gtk/gtkdnd.c (_gtk_drag_source_handle_event): Remove uneeded
2802         X11 dependency.
2803
2804         * gdk/linux-fb/gdkmain-fb.c gdk/win32/gdkmain-win32.c gdk/TODO: 
2805         Remove unused gdk_key_repeat_disable/restore.
2806
2807         * linux-fb/gdkglobals-fb.c win32/gdkglobals-win32.c 
2808         x11/gdkglobals-x11.c x11/gdkprivate-x11.h gdk/gdk.def:
2809         Remove unused gdk_null_window_warnings variable.
2810
2811         * gdk/Makefile.am (DIST_SUBDIRS) nanox/*: cvs remove nanox;
2812         it can be retrieved from the repository; it is too far
2813         from functional to be worth having people check out;
2814         it would be easier to start from scratch, I suspect.
2815
2816         * gdk/x11/gdkpixmap-x11.c: Fix lvalue usage of GDK_PIXMAP_XID().
2817
2818         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2819         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2820         Fix some accidentally global variables and unused global variables.
2821
2822         * gdk/x11/gdkkeys-x11.c gdk/gdkrgb.c gdk/gdkwindow.c 
2823         gdk/x11/gdkpango-x11.c gdk/x11/gdkselection-x11.c: 
2824         Fix some accidentally global variables and unused global variables.
2825
2826       Add some space for future expansion to multihead.
2827
2828         * gdk/gdkdrawable.h: Add four reserved function pointers
2829         for future expansion of GdkDrawableClass.
2830
2831         * gtk/gtkwindow.h gtk/gtkinvisible.h: Add reserved pointer
2832         where we can put a GdkScreen * later.
2833
2834 2001-09-07  Havoc Pennington  <hp@redhat.com>
2835
2836         * gtk/gtktextview.c (gtk_text_view_flush_scroll): update
2837         adjustments after validating destination yrange; fixes #53918
2838         (This may cause other issues, but I hope it won't)
2839         
2840 2001-09-05  Havoc Pennington  <hp@redhat.com>
2841
2842         * gtk/gtktextbtree.c (_gtk_text_btree_delete): when merging end
2843         line into start line, update the character counts in parent nodes; 
2844         caused a bug when end and start line had different parent nodes.
2845
2846 2001-08-30  Havoc Pennington  <hp@redhat.com>
2847         
2848         * gtk/gtktexttag.c (_gtk_text_attributes_fill_from_tags): add
2849         assertion that tag is in a table
2850
2851 Fri Sep  7 12:48:56 2001  Matthias Clasen  <matthiasc@poet.de>
2852
2853         * gdk/x11/gdkkeys-x11.c (get_direction): Don't call
2854         g_strcasecmp on NULL strings. (#59058)
2855
2856 2001-09-06  Alex Larsson  <alexl@redhat.com>
2857
2858         * gtk/gtkbin.c:
2859         * gtk/gtkfontsel.c:
2860         * gtk/gtkspinbutton.c:
2861         * gtk/gtktipsquery.c:
2862         Use GtkType/GType instead of uint.
2863
2864 Tue Sep  4 18:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
2865
2866         * gtk/gtkliststore.c (gtk_list_store_init): fix initial val for
2867         sort column.
2868
2869         * gtk/gtktreestore.c (gtk_list_store_init): ditto
2870
2871         * gtk/gtktreesortable.c: add docs.
2872
2873 Tue Sep  4 09:37:19 2001  Owen Taylor  <otaylor@redhat.com>
2874
2875         * Version 1.3.7
2876
2877         * configure.in docs/Makefile.am docs/gtk-config.1.in: Remove 
2878         docs for gtk-config
2879
2880         * modules/input/Makefile.am (install-data-local): Don't
2881         run gtk-query-immodules if DESTDIR is set.
2882
2883         * NEWS: Various additions.
2884
2885 Tue Sep  4 03:12:25 2001  Tim Janik  <timj@gtk.org>
2886
2887         * NEWS: updates for 1.3.7 release.
2888
2889 Mon Sep  3 18:03:56 2001  Jonathan Blandford  <jrb@redhat.com>
2890
2891         * gtk/gtktreestore.c (gtk_tree_store_set_default_sort_func):
2892         handle default sort feature
2893
2894         * gtk/gtktreesortable.c (gtk_tree_sortable_set_default_sort_func):
2895         new function to handle default sort.
2896         (gtk_tree_sortable_has_default_sort_func): check if default sort
2897         is set.
2898
2899         * gtk/gtkliststore.c (gtk_list_store_set_default_sort_func): 
2900         handle default sort feature
2901
2902 Sun Sep  2 20:32:36 2001  Jonathan Blandford  <jrb@redhat.com>
2903
2904         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): patch from
2905         vishnu@pobox.com (Joshua N Pritikin) to fix math and an assertion,
2906         #59731
2907
2908 Sun Sep  2 17:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
2909
2910         * gtk/gtktreeview.c (gtk_tree_view_deleted): Patch from
2911         vishnu@pobox.com (Joshua N Pritikin) to emit signal at the correct
2912         time, #59727
2913
2914         * gtk/gtkbutton.c (gtk_button_update_state): Get depressed
2915         correctly.
2916
2917 Sun Sep  2 21:41:21 2001  Owen Taylor  <otaylor@redhat.com>
2918
2919         * gdk/x11/gdkkeys-x11.c (update_keymaps): Set current serial
2920         so that we don't eternally update the keymap after we
2921         get a change notification.
2922
2923         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Fix
2924         incorrect cast.
2925
2926 Sun Sep  2 23:27:16 2001  Kristian Rietveld  <kristian@planet.nl>
2927
2928         * gtk/gtktreemodelsort.[ch]: much changes in an attempt to make
2929         it working. It mostly works now, although there're still a few issues
2930         to be worked out.
2931
2932         * tests/testtreesort.c (main): changes to have a better test
2933         application for the GtkTreeModelSort.
2934
2935 Sun Sep  2 23:19:07 2001  Kristian Rietveld  <kristian@planet.nl>
2936
2937         * gtk/gtktreeview.c (gtk_tree_view_search_iter): code cleaup,
2938         fix for bug #59222.
2939
2940         * gtk/gtktreeview.c (gtk_tree_view_search_equal_func): add
2941         gpointer search_data argument to function definition and
2942         prototype, to match GtkTreeViewSearchEqualFunc typedef.
2943
2944 Sat Sep  1 21:57:27 2001  Kristian Rietveld  <kristian@planet.nl>
2945
2946         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): add warnings
2947         per jrb's request.
2948
2949 Fri Aug 31 20:01:23 2001  Jonathan Blandford  <jrb@redhat.com>
2950
2951         * gtk/gtktreeview.c (gtk_tree_view_search_iter): pass in user data.
2952
2953         * gtk/gtktreeview.c (gtk_tree_view_destroy): destroy search_data.
2954
2955 Wed Aug 29 20:40:58 2001  Owen Taylor  <otaylor@redhat.com>
2956
2957         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_add/remove_selection_clipboard): 
2958         Instead of always mirroring the selection to a single PRIMARY
2959         selection, allow it to be mirrored to any number of clipboards.
2960
2961         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_paste_primary): Remove, 
2962         just use gtk_text_buffer_paste_clipboard with the appropriate clipboard.
2963
2964         * gtk/gtktextbuffer.[ch] (gtk_text_buffer_cut/copy/paste_clipboard): Add a
2965         GtkClipboard argument, and for paste_clipboard, the
2966         @override_location argument from @paste_primary.
2967
2968         * gtk/gtktextview.c: Adapt to above change.
2969         
2970 2001-08-30  Havoc Pennington  <hp@redhat.com>
2971
2972         * gtk/gtktextview.c (invalidated_handler): put validate idle at
2973         resize - 2 just for flexibility
2974
2975 2001-08-30  Havoc Pennington  <hp@redhat.com>
2976
2977         * gtk/gtktextdisplay.c (render_layout_line): handle NULL shaped
2978         object from the empty-child-anchor case by drawing a little box.
2979         
2980         * gtk/gtktextlayout.c (add_child_attrs): Still set shape attribute
2981         if the child anchor has no anchored widgets - fixes #59328.
2982
2983         Also, remove bizarre deletion of preedit string that seems to have
2984         gotten in here somehow.
2985
2986 2001-08-30  Havoc Pennington  <hp@redhat.com>
2987
2988         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): apply fix
2989         to #58420 from Hidetoshi Tajima and Matthias Clasen
2990
2991 Wed Aug 29 17:28:04 2001  Jonathan Blandford  <jrb@redhat.com>
2992
2993         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
2994         change color when the GtkTreeView loses focus.
2995
2996         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render):
2997         ditto.
2998         
2999         * gtk/gtkstyle.c (gtk_default_draw_flat_box): ditto
3000
3001 2001-08-28  Havoc Pennington  <hp@pobox.com>
3002
3003         * gtk/gtkwindow.c (gtk_window_set_icon_list): fix g_object_notify
3004
3005 2001-08-28  Havoc Pennington  <hp@pobox.com>
3006
3007         * demos/gtk-demo/main.c (setup_default_icon): add default icon
3008
3009         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic):
3010         warning fix
3011         (gtk_radio_button_new_with_label): warning fix
3012
3013         * gtk/gtkdnd.c: used some random GtkImage private structs, 
3014         update to reflect GtkImage changes
3015
3016         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_list): don't check
3017         whether the hint is supported, just always set the icon. A task
3018         list might want to use it even if the WM doesn't, and the WM may
3019         change over time. Also, XDeleteProperty() if list == NULL.
3020
3021         * gtk/gtkwindow.c (gtk_window_set_icon_list)
3022         (gtk_window_get_icon_list)
3023         (gtk_window_set_icon)
3024         (gtk_window_get_icon)
3025         (gtk_window_set_default_icon_list)
3026         (gtk_window_get_default_icon_list):
3027         new functions
3028
3029         * gtk/gtk-boxed.defs (GtkIconSet): add GtkIconSet
3030
3031         * gtk/gtkimage.c: Implement property support, bug #59408
3032
3033         * gtk/gtkcontainer.c (gtk_container_add): make the warning message
3034         on reparent-without-removing-first a bit more helpful.
3035         Let's just destroy this FAQ.
3036
3037 Tue Aug 28 21:37:11 2001  Matthias Clasen  <matthiasc@poet.de>
3038
3039         * demos/gtk-demo/appwindow.c (do_appwindow): Use g_signal_connect_object
3040         instead of gtk_signal_connect, to avoid warnings at destruction time. (#58161)
3041
3042 Tue Aug 28 21:00:44 2001  Matthias Clasen  <matthiasc@poet.de>
3043
3044         * gtk/gtkprogressbar.c (gtk_progress_bar_set_text): Move the setting
3045         of use_text_format to the end of the function. (#56447)
3046
3047 Tue Aug 28 20:06:07 2001  Matthias Clasen  <matthiasc@poet.de>
3048
3049         * demos/testpixbuf.c (update_timeout): Use gdk_pixbuf_loader_get_pixbuf
3050         only in response to an area_prepared signal.
3051
3052 2001-08-28  Alex Larsson  <alexl@redhat.com>
3053
3054         * gtk/gtkwidget.c (gtk_widget_class_init):
3055         Make unrealize GTK_RUN_LAST.
3056
3057 Mon Aug 27 22:00:41 2001 Manish Singh <yosh@gimp.org>
3058
3059         * gtk/gtkradiobutton.c: fix silly cut'n'paste error,
3060         with_label and with_mnemonic should create radio buttons, not
3061         check buttons
3062
3063 Mon Aug 27 15:28:56 2001  Jonathan Blandford  <jrb@redhat.com>
3064
3065         * tests/testtreefocus.c (main): Fix to use GtkSelectionMode.
3066         * tests/treestoretest.c (make_window): ditto
3067         * demos/gtk-demo/main.c (create_tree): ditto
3068         * demos/gtk-demo/stock_browser.c (do_stock_browser): ditto.
3069
3070 Mon Aug 27 15:18:14 2001  Jonathan Blandford  <jrb@redhat.com>
3071
3072         * gtk/gtktreeselection.c (gtk_tree_selection_set_mode): Use the
3073         GTK selection types rather than GtkTreeSelectionMode.
3074
3075         * docs/Changes-2.0: Add comment about selection change.
3076
3077 Mon Aug 27 14:21:30 2001  Jonathan Blandford  <jrb@redhat.com>
3078
3079         * gtk/gtkenums.h (GtkSelectionMode): deprecate
3080         GTK_SELECTION_EXTENDED.
3081
3082         * gtk/gtkclist.c: Remove old GTK_SELECTION_MULTIPLE behavior.
3083         Make GTK_SELECTION_EXTENDED be GTK_SELECTION_MULTIPLE.
3084
3085         * gtk/gtkctree.c: ditto
3086
3087         * gtk/gtklist.c: ditto
3088
3089         * gtk/gtktree.c: ditto
3090
3091 Mon Aug 27 14:18:12 2001  Owen Taylor  <otaylor@redhat.com>
3092
3093         * gtk/gtkmenubar.h (gtk_menu_bar_prepend): Fix a cuple
3094         of typos in compat macros. (#59624, Skip Montaro)
3095
3096 Sun Aug 26 20:00:00 2001  Owen Taylor  <otaylor@redhat.com>
3097
3098         * configure.in acinclude.m4: Use autoconf 2.13/2.50 compat
3099         macro.
3100
3101          (patch from ERDI Gergo  <cactus@cactus.rulez.org>, #58920)
3102  
3103         * gtk/gtkmenuitem.c (gtk_menu_item_set_right_justified): Change
3104         interface to be a standard setter from gtk_menu_item_right_justify.
3105         (gtk_menu_item_get_right_justified): a getter to go with the setter
3106
3107         * gtk/gtkmenuitem.h: Add a deprecated compat macro for
3108         gtk_menu_item_right_justify.
3109
3110         * demos/gtk-demo/menus.c tests/testgtk.c: Switch to 
3111         gtk_menu_item_set_right_justified.
3112  
3113 2001-08-27  Jens Finke <jens@gnome.org>
3114
3115         * gtk+.spec.in: Updated to match gpp requirements, reworked the
3116         files section to make it work with 1.3.x releases.
3117
3118 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
3119
3120         * gtk/gtkbutton.[ch]:
3121         Add properties for labels, mnemonics and stock items.
3122         Added C accessor functions for the properties.
3123         Removed deprecated button->child.
3124
3125         * gtk/gtkradiobutton.c:
3126         * gtk/gtktogglebutton.c:
3127         Update to use the functions in GtkButton.
3128
3129         * gtk/gtkcheckbutton.c:
3130         Update to use the functions in GtkButton.
3131         Changed size allocation of child. Now only gets as much
3132         space as it requests.
3133
3134         * gtk/gtkclist.c:
3135         Don't use GtkButton->child
3136
3137         * gtk/gtklabel.c:
3138         Fixed typo in docs
3139         
3140 2001-08-26  Alexander Larsson  <alla@lysator.liu.se>
3141
3142         * tests/testgtk.c:
3143         * tests/Makefile.am:
3144         Ressurect the properties test.
3145         I don't care if it is inferior, I just want to test my property code.
3146
3147 2001-08-25  Chema Celorio  <chema@celorio.com>
3148
3149         * gtk/gtktable.c (gtk_table_set_child_property): pass ->nrows to
3150         gtk_table_resize as the first argument for CHILD_PROP_RIGHT_ATTACH
3151         and CHILD_PROP_LEFT_ATTACH v.s. using ->ncols
3152
3153 2001-08-24  Havoc Pennington  <hp@pobox.com>
3154
3155         * gtk/gtkcompat.h: remove gtk_menu_* compat defines; 
3156         these are already in gtkmenu.h, and the copies
3157         here were broken.
3158
3159         Also, change GTK_DISABLE_COMPAT_H to GTK_DISABLE_DEPRECATED
3160
3161         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_image):
3162         special-case bitmaps to allow no colormap
3163         (bitmap1): implement no-colormap bitmap-getting
3164         (bitmap1a): implement no-colormap bitmap-getting to pixbuf with
3165         alpha
3166         (rgb8): indentation
3167         (rgb1a, rgb1): change the way we read the data out of the image, 
3168         old way didn't seem to work quite right.
3169
3170         I'm pretty sure a lot of the rgbconvert code is still broken.
3171         
3172         * gtk/gtkwindow.c (gtk_window_move_resize): move hints comparison
3173         above position constraint (I really intended to do this before,
3174         don't know what's up with that)
3175         (gtk_XParseGeometry): shut up gcc
3176
3177         * gdk/gdkpixbuf-drawable.c (rgb1a): fix bug where "x1" was used
3178         and "0" should have been. remove the attempted 4-bytes-at-once
3179         optimization, it was totally broken.
3180
3181 Sat Aug 25 19:02:39 2001  Owen Taylor  <otaylor@redhat.com>
3182
3183         * gtk/gtkbutton.[ch] gtk/gtktogglebutton.c: Add optional movement
3184         on push to buttons (based on patch from Soeren Sandmann, #54720)
3185
3186           - Add child_displacement_x/y style properties to control how far the
3187             child moves when the button is depressed.
3188
3189           - Add non-exported function _gtk_button_set_depressed to clean
3190             up the handling of the in/out shadow and separate it frmo
3191             widget->state.
3192
3193           - Lots of code cleanup and simplification of state handling
3194             for GtkButton/GtkToggleButton.
3195  
3196         * tests/testgtkrc: Set the x/y displacement to 1 to provide a test
3197         of button movement. testgtk + testgtkrc == test ugly GTK+, as always.   
3198
3199 Fri Aug 24 23:09:05 2001  Owen Taylor  <otaylor@redhat.com>
3200
3201         * gtk/gtkimage.[ch] docs/Changes-2.0.txt: Break compatibility 
3202         and make gtk_image_new() take no arguments. The compiler will
3203         catch it, and it is vastly more useful than having
3204         gtk_image_new() be a deprecated alias for gtk_image_new_from_image().  
3205
3206         * gtk/gtkmenu.c (gtk_menu_set_property): Apply patch
3207         to add tearoff-title property (#51319, Lee Mallabone)
3208
3209 Fri Aug 24 22:12:32 2001  Owen Taylor  <otaylor@redhat.com>
3210
3211         * gtk/gtkmenuitem.[ch]: Remove unused and useless function
3212         gtk_menu_item_configure(). (#58925)
3213
3214 Fri Aug 24 16:03:45 2001  Jonathan Blandford  <jrb@redhat.com>
3215
3216         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_cell): Add
3217         "use_align" to give people the option to just make a cell visible.
3218
3219         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): fix bug where
3220         we were scrolling past the end of the tree.
3221
3222         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_pack_start):
3223         rename gtk_tree_view_column_pack_start_cell_renderer to
3224         gtk_tree_view_column_pack_start.  Same for pack_end, and clear.
3225
3226 Fri Aug 24 12:02:08 2001  Owen Taylor  <otaylor@redhat.com>
3227
3228         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Remove
3229         a stray g_object_ref() left over from gtk_object_ref/sink.
3230         (Pointed out by Josh Pritikin.)
3231
3232 Thu Aug 23 19:33:54 2001  Owen Taylor  <otaylor@redhat.com>
3233
3234         * gtk/gtkcontainer.[ch]: Rename gtk_container_children()
3235         to gtk_container_get_children. Added deprecated compatibility
3236         macro. (Suggested by Vitaly Tishkov, #59051)
3237
3238         * gtk/gtktoolbar.c gtkdialog.c: Fix gtk_container_children()
3239         calls.
3240
3241 Thu Aug 23 19:10:01 2001  Owen Taylor  <otaylor@redhat.com>
3242
3243         * gtk/gtkmenubar.h (gtk_menu_bar_insert): Deprecate 
3244         gtk_menu_bar_append/prepend/insert, forgot to do this
3245         when we deprecated gtk_menu_append/prepend/insert.
3246
3247         * gtk/gtkmenu.h (gtk_menu_insert): Add casts to deprecated
3248         compat macros.
3249
3250         * gtk/gtkmenu.c: Fix problem with static gtk_menu_insert() being
3251         renamed by compat macro.
3252
3253         * gtk/gtkfontsel.h: Deprecated gtk_font_selection_get_font(),
3254         gtk_font_selection_dialog_get_font(). (Suggested by
3255         Vitaly Tishkov, #59383)
3256
3257 Thu Aug 23 18:23:31 2001  Owen Taylor  <otaylor@redhat.com>
3258
3259         * gtk/gtktexttag.c (gtk_text_tag_table_get_size): 
3260         Rename from gtk_text_tag_table_size(). (#59366)
3261
3262 Thu Aug 23 20:01:41 2001  Kristian Rietveld  <kristian@planet.nl>
3263
3264         * gtk/gtktreemodelsort.[ch], gtk/gtktreesortable.[ch],
3265         gtk/gtktreestore.[ch], gtk/gtktreeviewcolumn.[ch],
3266         gtk/gtkliststore.[ch]: use GtkSortType instead of GtkTreeSortOrder.
3267         (#59173).
3268
3269 Thu Aug 23 16:26:47 2001  Tim Janik  <timj@gtk.org>
3270
3271         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): 
3272         * gtk/gtktextmark.c (gtk_text_mark_finalize): chain parent class
3273         handlers, pointed out by Joshua N Pritikin <vishnu@pobox.com>.
3274
3275 Wed Aug 22 19:15:39 2001  Owen Taylor  <otaylor@redhat.com>
3276
3277         [ Patch from Sebastian Wilhelmi, 52790 ]
3278
3279         * gtk/gtkversion.h.in gtk/gtk.h: New file replacing gtkcompat.h
3280
3281         * gdk/gdkcompat.h gdk/gdk*.h gtk/gtkcompat.h.in gtk/gtk*.h: 
3282         Move compatibility macros from g[dt]kcompat.h to within 
3283         #ifndef G[DT]K_DISABLE_DEPRECATED in each file.
3284
3285         * gdk/gdk-pixbuf-csource.c: Fix up include of gtkcompat.h.
3286
3287         * demos/Makefile.am demos/gtk-demo/Makefile.am 
3288           docs/reference/gdk-pixbuf/Makefile.am modules/input/Makefile.am
3289           tests/Makefile.am: Remove references to -G[DT]K_DISABLE_DEPRECATED.
3290
3291         * demos/{pixbuf-demo.c,testpixbuf-drawable.c,testpixbuf-save.c,
3292                  testpixbuf.c}: Fix usages of deprecated functions.
3293
3294 Wed Aug 22 19:03:27 2001  Jonathan Blandford  <jrb@redhat.com>
3295
3296         * gtk/gtktreeview.c (gtk_tree_view_set_model): clean up selection
3297         when changing models.
3298
3299 Wed Aug 22 18:25:46 2001  Jonathan Blandford  <jrb@redhat.com>
3300
3301         * gtk/gtktreeview.c: Fix selection.  I think it's all dandy now.
3302         We check the current event for modifiers rather than try to trap
3303         all presses.
3304
3305 2001-08-22  Anders Carlsson  <andersca@gnu.org>
3306
3307         * gtk/gtkliststore.h (GTK_LIST_STORE_CLASS): Fix a small typo.
3308         It's LIST_STORE, not LISTSTORE.
3309
3310 Tue Aug 21 12:43:29 2001  Owen Taylor  <otaylor@redhat.com>
3311
3312         * gtk/gtk.h: Remove commented out gtkpacker reference.
3313
3314 2001-08-21  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3315
3316         * configure.in (all_loaders): Add tga loader, 
3317         patch by Nicola Girardi. (#56067)
3318
3319 Tue Aug 21 02:57:13 2001  Jonathan Blandford  <jrb@redhat.com>
3320
3321         * gtk/gtktreeview.c (gtk_tree_view_button_press): Fix up selection
3322         a little.  More needs to be done tomorrow.
3323
3324 Tue Aug 21 00:45:55 2001  Jonathan Blandford  <jrb@redhat.com>
3325
3326         * gtk/gtktreeview.c (gtk_tree_view_destroy): Grr... Get it right.
3327
3328 Mon Aug 20 23:48:18 2001  Jonathan Blandford  <jrb@redhat.com>
3329
3330         * gtk/gtktreeview.c (gtk_tree_view_get_cell_area): Fix bug
3331         reported by Kristian Rietveld <kristian@planet.nl> to handle row
3332         == NULL.
3333         (gtk_tree_view_destroy): Fix bug reported by Kristian Rietveld
3334         <kristian@planet.nl> to change destroy order.
3335
3336 Mon Aug 20 11:39:44 2001  Jonathan Blandford  <jrb@redhat.com>
3337
3338         * gtk/gtktreeselection.c (gtk_tree_selection_class_init): Use
3339         correct marshaller.
3340
3341 Sun Aug 19 03:22:59 2001  Jonathan Blandford  <jrb@redhat.com>
3342
3343         * gtk/gtkliststore.c: Fix up warnings, #58928.
3344
3345         * gtk/gtktreeselection.h: Change signal prototype, #58647
3346
3347         * gtk/gtktreeview.c (_gdk_tree_view_find_node): Make more robust,
3348         #59221.
3349
3350         * gtk/gtkstyle.c: Actually prelight arrow, #50981
3351         
3352 2001-08-18  Hans Breuer  <hans@breuer.org>
3353
3354         * gdk/gdk.def : updated externals
3355
3356         * gdk/win32/gdkselection-win32.c : returning TRUE with gdk_selection_set
3357         is required to get (at least) visible in entry fields. Some selections
3358         are really handled now - even on win32 - but copying via middle
3359         mouse button into a different app needs to wait ... 
3360
3361         * gdk/win32/gdkdnd-win32.c : implemented inter-app drag&drop
3362         mostly by stealling code from gdkdnd-fb.c. Thanks to who ever wrote it!
3363
3364         * gdk/win32/gdkevents-win32.c : some tweaking to get better expose
3365         handling. I'm not sure if it is better now, but at least not worse
3366
3367         * gdk/win32/gdkgeometry-win32.c : replaced every call to MoveWindow
3368         with SetWindowPos () which allows more fine-tuning backing-store wise
3369
3370         * gdk/win32/gdkwindow-win32.c : allow unraised gdk_window_show ().
3371         Also changed move/resize to be more like the X version.
3372
3373         * gtk/gtk.def : updated externals
3374
3375 2001-08-19  Sven Neumann  <sven@gimp.org>
3376
3377         * gtk/gtktooltips.c
3378         * tests/testtreesort.c
3379         * tests/treestoretest.c: inserted some casts to get rid of compiler
3380         warnings.
3381
3382 Sun Aug 19 01:44:44 2001  Jonathan Blandford  <jrb@redhat.com>
3383
3384         * gtk/gtktreeviewcolumn.c
3385         (gtk_tree_view_column_pack_{start,end}_cell_renderer): sink cell.
3386
3387         * gtk/gtktreeview.c (gtk_tree_view_insert_column): sink column.
3388         (_gtk_tree_view_find_node): If *node is NULL,
3389         *tree should be NULL too.
3390
3391         * demos/gtk-demo/stock_browser.c (do_stock_browser): don't unref
3392         column/renderers.
3393         * tests/testtreecolumns.c: ditto
3394         * tests/testtreefocus.c: ditto
3395         * tests/testtreesort.c: ditto
3396         * tests/testtreeview.c: ditto
3397         * tests/treestoretest.c: ditto
3398
3399 Sat Aug 18 04:34:31 2001  Jonathan Blandford  <jrb@redhat.com>
3400
3401         * gtk/gtkcellrenderer.c (gtk_cell_renderer_class_init): 2 new
3402         signals; is_expander/is_expanded.
3403
3404         * gtk/gtlcellrendererpixbuf.c: Allow other expanded and closed
3405         pixbufs.
3406
3407         * gtk/gtktreeview.c: set above properties.
3408
3409 Sat Aug 18 23:01:33 2001  Owen Taylor  <otaylor@redhat.com>
3410
3411         * gtk/gtkwidget.h: Really remove set_default_style().
3412
3413         * docs/Changes-2.0.txt: added a note about
3414         gtk_widget_push/pop/set_default_style.
3415
3416 2001-08-18  Havoc Pennington  <hp@pobox.com>
3417
3418         * gtk/gtkwindow.c (gtk_window_move_resize): constrain position on
3419         hints_changed in addition to the other cases.
3420         (gtk_window_move_resize): include last position from configure
3421         notify in debug spew
3422
3423 2001-08-18  James Henstridge  <james@daa.com.au>
3424
3425         * gtk/gtkaccelgroup.c (gtk_accel_group_object_destroy): use the
3426         second argument to the weak ref notify, cleaning up some uglyness.
3427         (gtk_accel_group_attach): remove and add the weak notifier when
3428         changing the accel groups slist.
3429         (gtk_accel_group_detach): same here.
3430
3431 2001-08-17  Darin Adler  <darin@bentspoon.com>
3432
3433         * gtk/gtktreeview.c: (gtk_tree_view_search_equal_func): Add
3434         missing parameters to utf8 functions to make it compile.
3435
3436 Fri Aug 17 19:30:14 2001  Jonathan Blandford  <jrb@redhat.com>
3437
3438         * gtk/gtktreeprivate.h:
3439         * gtk/gtktreeview.c: (gtk_tree_view_class_init),
3440         (gtk_tree_view_init), (gtk_tree_view_set_property),
3441         (gtk_tree_view_get_property), (gtk_tree_view_destroy),
3442         (gtk_tree_view_key_press), (gtk_tree_view_leave_notify),
3443         (gtk_tree_view_focus_out), (gtk_tree_view_set_model),
3444         (gtk_tree_view_set_destroy_count_func),
3445         (gtk_tree_view_set_enable_search),
3446         (gtk_tree_view_get_enable_search),
3447         (gtk_tree_view_get_search_column),
3448         (gtk_tree_view_set_search_column),
3449         (gtk_tree_view_get_search_equal_func),
3450         (gtk_tree_view_set_search_equal_func),
3451         (gtk_tree_view_search_dialog_destroy),
3452         (gtk_tree_view_search_position_func),
3453         (gtk_tree_view_interactive_search),
3454         (gtk_tree_view_search_delete_event),
3455         (gtk_tree_view_search_button_press_event),
3456         (gtk_tree_view_search_key_press_event),
3457         (gtk_tree_view_search_move), (gtk_tree_view_search_equal_func),
3458         (gtk_tree_view_search_iter), (gtk_tree_view_search_init):
3459         * gtk/gtktreeview.h:
3460         Add heavily modified patch from Kristian Rietveld to handle
3461         interactive searching.
3462
3463 Fri Aug 17 17:30:34 2001  Tim Janik  <timj@gtk.org>
3464
3465         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): const correct
3466         string parameter.
3467
3468         * gtk/gtkoptionmenu.c (gtk_option_menu_set_menu): connect to
3469         GtkMenuShell::selection_done, now that we have it, instead of 
3470         ::deactivate so we're not tearing the menu apart and notify
3471         the user prematurely.
3472
3473 Thu Aug 16 05:22:01 2001  Tim Janik  <timj@gtk.org>
3474
3475         * gtk/gtkwindow.c (gtk_window_move_resize): if we actually move our
3476         window, clear window->need_default_position to avoid infinite loops.
3477         some comment fixups and GTK_RESIZE_IMMEDIATE fixups.
3478
3479 Wed Aug 15 12:36:55 2001  Tim Janik  <timj@gtk.org>
3480
3481         * gtk/gtktreeview.c (gtk_tree_view_set_model): move all model setup
3482         code into this place. get rid of GTK_TREE_VIEW_MODEL_SETUP usage.
3483         (gtk_tree_view_set_property): don't cast possible NULL objects.
3484         (gtk_tree_view_destroy): reset the model to NULL.
3485
3486         * gtk/gtktreeselection.c (gtk_tree_selection_finalize): chain
3487         parent_class handler.
3488
3489 2001-08-17  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3490
3491         * gtk/demos/gtk-demo/*: Remove all uses of deprecated functions.
3492
3493 2001-08-17  Anders Carlsson  <andersca@gnu.org>
3494
3495         * gtk/gtkstyle.c (create_expander_affine): Divide with floating
3496         point numbers so that the result will be floating point.
3497
3498 2001-08-16  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3499
3500         * tests/testgtk.c (create_handle_box): 
3501         (create_toolbar): Replace gtk_window_set_policy calls by
3502         gtk_window_set_resizable.
3503
3504 2001-08-16  Jakub Steiner <jimmac@ximian.com>
3505
3506         * gtk/stock-icons/dialog_info.png: new style bulb
3507         * gtk/stock-icons/dialog_error.png: maybe a little drastic ;)
3508         * gtk/stock-icons/dialog_warning.png: need a hand?
3509         * gtk/stock-icons/stock_add.png, stock_remove.png: I hope 
3510           the aa border gets chopped off ok
3511         * gtk/stock-icons/stock_colorselector.png: using the new hand
3512         * gtk/stock-icons/stock_dnd_multiple.png: I'm not totally sure what 
3513           this one is for, but the old icon was butt ugly.
3514         * gtk/stock-icons/stock*_insert_image.png: not sure if it belongs here
3515         * gtk/stock-icons/stock*_insert_object.png: "
3516         * gtk/stock-icons/stock_index.png: using new hand icon
3517         * gtk/stock-icons/stock*_new.png: the document template being used 
3518           elsewhere too
3519         * gtk/stock-icons/stock*_print*.png: new print and print preview 
3520           icons (panel/menu)  
3521         * gtk/stock-icons/stock*_save*.png, stock*_revert.png: new save/revert 
3522           icons based on Tuomas' floppy image.
3523         * gtk/stock-icons/stock*_search*.png: search and s'n'r icons for panel/menu
3524         * gtk/stock-icons/stock*_stop.png: replacing the old 'x' button
3525         * gtk/stock-icons/stock*_trash.png: based on Tuomas' trash icon
3526         * gtk/stock-icons/stock*_undelete.png: "
3527         * gtk/stock-icons/stock_preferences.png: I have a version with a 
3528           document base if the sliders are no good.
3529         * gtk/stock-icons/stock_properties.png: properties 
3530         
3531
3532         * gtk/stock-icons/stock*_copy.png, stock*_cut.png, stock*_paste.png: Tuomas' 
3533           (tigert@ximian.com) clipboard icons
3534         * gtk/stock-icons/stock_{up,down,left,right}_arrow.png: tigert's new arrows
3535         * gtk/stock-icons/stock*_{undo,redo}.png: tigert's undo/redo icons.
3536         * gtk/stock-icons/stock_open.png: shaded open icon by Tuomas. we should make it a
3537           little bigger IMHO
3538
3539 2001-08-16  Sven Neumann  <sven@gimp.org>
3540
3541         * gtk/gtkbox.c (gtk_box_class_init): removed unused widget_class.
3542
3543 2001-08-15  Padraig O'Briain  <padraig.obriain@sun.com>
3544
3545         * gtk/gtkcellrenderertext.c:
3546         Avoid warning when specifying NULL for "attributes" property
3547
3548 2001-08-15  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3549
3550         * docs/debugging.txt: Add a warning about --enable-debug=no,
3551         some editorial changes.
3552
3553 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3554
3555         * gtk/docs/debugging.txt, gdk/gdk.c, gdk/gdkinternals.h, 
3556         gdk/x11/gdkmain-x11.c, gtk/gtkdebug.h, gtk/gtkmain.c: Update 
3557         debugging info, remove unused debug flags. (#58330)
3558
3559 Mon Aug 13 13:17:32 2001  Jonathan Blandford  <jrb@redhat.com>
3560
3561         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): 
3562         (gtk_tree_selection_select_all): Remove strict checking for rows.
3563
3564 2001-08-13  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3565         
3566         * gtk/gtktooltips.c (gtk_tooltips_set_tip, gtk_tooltips_draw_tips): 
3567         Don't remove the tooltip window when the tip text changes. (#15891)
3568
3569 Sun Aug 12 12:02:09 2001  Owen Taylor  <otaylor@redhat.com>
3570
3571         * gtk/Makefile.am ($(srcdir)/gtkmarshal.c): Remove extra
3572         $(srcdir).
3573
3574 Sun Aug 12 10:39:12 2001  Owen Taylor  <otaylor@redhat.com>
3575
3576         * Makefile.am (EXTRA_DIST): Fix problem with trying to
3577         dist files from intl/, which is no longer there.
3578
3579 2001-08-11  Hans Breuer  <hans@breuer.org>
3580
3581         * gtk/gtkalignment.c, gtk/gtkarrow.c, gtk/gtkaspectframe.c,
3582           gtk/gtkcellrenderer.c, gtk/gtkcellrenderertext.c, 
3583           gtk/gtkcombo.c, gtk/gtkcurve.c, gtk/gtkfontsel.c, 
3584           gtk/gtklayout.c, gtk/gtkmisc.c, gtk/gtkpacker.c, 
3585           gtk/gtkprogress.c, gtk/gtkruler.c,, gtk/gtksettings.c,
3586           gtk/gtkspinbutton.c, gtk/gtktexttag.c : coalescing property notifies
3587
3588         * gtk/gtkclist.c, gtk/gtktipsquery.c, gtk/gtktexttag.c,
3589           gtk/gtkwidget.c : added G_SIGNAL_TYPE_STATIC_SCOPE to all
3590         GDK_TYPE_EVENT signals
3591
3592         * gtk/gtkalignment.c : removed 'direct allocation bug',
3593         which Tim discovered while reading the patch
3594
3595 Sat Aug 11 14:32:14 2001  Owen Taylor  <otaylor@redhat.com>
3596
3597         * gtk/gtkwidget.h (gtk_widget_set_default_visual): Add some
3598         compat macros for push/pop/set_visual that were supposed
3599         to be added a long time ago, but got dropped. 
3600
3601 Fri Aug 10 16:55:53 2001  Tim Janik  <timj@gtk.org>
3602
3603         * gtk/gtkwindow.c (gtk_window_set_policy): coalesce multiple
3604         property notifies.
3605
3606 2001-08-07  Havoc Pennington  <hp@pobox.com>
3607
3608         * gtk/gtkfilesel.c (open_ref_dir): fix a typo.
3609
3610         * gtk/gtkplug.c (gtk_plug_init): remove setting of auto_shrink;
3611         some fixage is needed here, but nothing simple. Owen understands
3612         it. ;-)
3613
3614         * gtk/gtkwindow.h, gtk/gtkwindow.c: Rework code and API for window
3615         sizing and positioning.  Also, fix bug in compute_geometry_hints
3616         (width/height confusion for setting min size). 
3617         (gtk_window_move): new function
3618         (gtk_window_resize): new function
3619         (gtk_window_get_size): new function
3620         (gtk_window_get_position): new function
3621         (gtk_window_parse_geometry): new function
3622         
3623         * gtk/gtkwidget.c (gtk_widget_set_size_request): new function
3624         (gtk_widget_get_size_request): new function
3625         (gtk_widget_get_usize): delete, that was a short-lived function
3626         ;-)
3627         (gtk_widget_set_usize): deprecate
3628         (gtk_widget_set_uposition): deprecate, make it a trivial 
3629         gtk_window_move() wrapper
3630         (gtk_widget_class_init): remove x/y/width/height properties,
3631         add width_request height_request
3632         
3633         * demos/*: update to avoid deprecated functions
3634         
3635         * gtk/gtklayout.c: add x/y child properties
3636
3637         * gtk/gtkfixed.c: add x/y child properties, and get rid of 
3638         uses of "gint16"
3639
3640         * tests/testgtk.c (create_window_sizing): lots of tweaks to window
3641         sizing test
3642
3643         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ensure that
3644         configure events on toplevel windows are always in root window
3645         coordinates, following ICCCM spec that all synthetic events 
3646         are in root window coords already, while real events are 
3647         in parent window coords. Previously the code assumed that 
3648         coords of 0,0 were parent window coords, which was 
3649         really broken.
3650   
3651         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): fix
3652         warning
3653  
3654         * gdk/gdkwindow.h (GdkWindowHints): add GDK_HINT_USER_POS 
3655         and GDK_HINT_USER_SIZE so we can set USSize and USPosition 
3656         hints in gtk_window_parse_geometry()
3657  
3658         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): support
3659         new USER_POS USER_SIZE hints    
3660
3661 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3662
3663         * tests/prop-editor.c (properties_from_type): Use 
3664         g_object_class_list_properties to get the param specs 
3665         for a given type. (#58609)
3666
3667 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3668
3669         * gtk/gtkstyle.c (gtk_style_real_unrealize): Don't forget to
3670         free the text_aa parts. (#57549)
3671
3672 2001-08-09  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3673
3674         * gdk/gdkgc.c (gdk_gc_set_rgb_bg_color): Set the background color,
3675         not the foreground color. (#57621)
3676
3677 2001-08-09  Alexander Larsson <alexl@redhat.com>
3678
3679         * gdk/win32/gdkfont-win32.c:
3680         Update to the new pango win32 api.
3681
3682 2001-08-08  HideToshi Tajima  <tajima@eng.sun.com>
3683
3684         * gtk/gtkclipboard.c (request_text_received_func): ask apps for
3685         COMPOUND_TEXT instead of TEXT
3686         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): correctly
3687         interpret the return value of g_string_to_compound_text()
3688         (#55152)
3689
3690 2001-08-08  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3691
3692         * gtk/gtktreestore.c (gtk_tree_store_iter_n_children): Don't
3693         fail if iter is NULL. (#58347)
3694
3695 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3696
3697         * gtk/gtktextdisplay.c (render_para, gtk_text_layout_draw): Fix
3698         some off-by-one issues, fixing selection of line-ends. (#50323)
3699
3700 2001-08-07  Matthias Clasen  <matthiasc@waldgeist.poet.de>
3701
3702         * gtk/gtkhsv.c (gtk_hsv_map, gtk_hsv_unmap): Reinstate these
3703         functions in order to make mouse operation work again in the
3704         color wheel. (#58604)
3705
3706 2001-08-07  James Henstridge  <james@daa.com.au>
3707
3708         * gtk/gtkaccellabel.c (gtk_accel_label_set_accel_object): refetch
3709         the accelerator when the accel object is changed.  Fixes bug
3710         #58628.
3711
3712 2001-08-06  HideToshi Tajima  <tajima@eng.sun.com>
3713
3714         * modules/input/gtkimcontextxim.c (mb_to_utf8), xim_text_to_utf8):
3715         Skip g_convert when to_codeset and from_codeset are both 'UTF-8'
3716         (gnome bugzilla #58202)
3717
3718 2001-08-06  Havoc Pennington  <hp@pobox.com>
3719  
3720         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): The whole 
3721         GDK_IS_WINDOW() branch of this was a bit screwed up, because 
3722         it was expecting a GdkWindow, not a GdkWindowImplX11.
3723  
3724         Also, we were getting the window rect in screen coords 
3725         and the screen rect in window coords then intersecting 
3726         them; instead, get window rect in window coords.
3727  
3728         Finally, there were codepaths that resulted in a stuck server grab
3729         (when the window was fully onscreen, or on gdk_image_new()
3730         failure); make the server ungrab thing a bit more
3731         robust/consistent.
3732
3733 2001-08-06  Sven Neumann  <sven@gimp.org>
3734
3735         * gdk/gdkpango.c (gdk_pango_context_destroy): 
3736         check if info->colormap != NULL before unref'ing it. It might have
3737         been set to NULL using gdk_pango_context_set_colormap().
3738
3739 Sun Aug  5 11:24:27 2001  Owen Taylor  <otaylor@redhat.com>
3740
3741         * gtk/gtkcolorsel.c (gtk_color_selection_set_current_alpha): 
3742         Fix conversion from float to int so that we don't get
3743         skew in the int => float => int roundtrip. 
3744         (#58120, reported by Vitaly Tishkov). Also fix problem
3745         where if no alpha was set, the returned alpha
3746         from (say) set_current_alpha() was returned as 1, not 65535.
3747
3748 Sun Aug  5 09:48:08 2001  Owen Taylor  <otaylor@redhat.com>
3749
3750         * gtk/gtklist.c (gtk_list_clear_items): Fix
3751         problem with selecting a new focus child.
3752
3753         * gtk/gtklist.c (gtk_list_clear_items): Clear 
3754         list->undo/list_focus_child after unparenting
3755         child, since unparenting the child can result
3756         in list->last_focus_child being set. (#58024)
3757
3758         * Makefile.am (SUBDIRS): Add target specific pc
3759         files to DISTCLEANFILES.
3760
3761         * gtk/Makefile.am: add @GTK_DEBUG_FLAGS@
3762         (58327, Matthias Clasen)
3763
3764 Sat Aug  4 19:28:21 2001  Owen Taylor  <otaylor@redhat.com>
3765
3766         * tests/testgtk.c: Patch from Hans (with various modifications),
3767         to add the ability to use testgtk as a rough-and-ready
3768         benchmark. Try, 'testgtk --bench all:5' (if you want decent
3769         numbers, run without a window manager)
3770
3771 2001-08-04 Alexander Larsson <alexl@redhat.com>
3772
3773         * gdk/win32/gdkinput.c:
3774         Add #ifdef HAVE_WINTAB around wintab.h include.
3775
3776         * gtk/gtk.def:
3777         Removed marshals that have been moved to glib.
3778         Commented out plug and socket. They didn't compile for me 
3779         on win32.
3780
3781 2001-08-04  Hans Breuer  <hans@breuer.org>
3782
3783         * gtk/stocks-icons/makefile.msc : new file
3784         * gtk/makefile.msc.in : use it
3785
3786         * gtk/gtkstyle.c : not all platforms do provide M_PI and
3787         friends, but luckily there is G_PI
3788
3789         * gtk/gtk.def : updated
3790
3791         * gdk/win32/gdkwindow.c (gdk_window_new) : don't make all TEMP 
3792         windows WS_POPUP, but only those without a parent. This fixes the 
3793         mis-alignment between the selectable (temp, input only) window and 
3794         the window text of GtkLabel.
3795
3796         (gdk_window_show) : respect private->state when actually showing
3797         the window.
3798
3799         (gdk_window_set_transient_for) : Implementation from Wolfgang 
3800         Sourdeau <wolfgang@contre.com> ported to 2.0 and added some 
3801         error handling. Should fix #50586.
3802
3803         * gdk/win32/gdkevents-win32.c : beautify log output
3804
3805 2001-08-04  Michael Natterer  <mitch@gimp.org>
3806
3807         * gtk/gtkitemfactory.c (gtk_item_factory_create_item):
3808         Need to show the image after adding it to the GtkImageMenuItem.
3809         This used to work without in testgtk because of the
3810         gtk_widget_show_all() at the end of the function.
3811         (Closes #54978).
3812
3813 Tue Jul 31 22:59:33 2001  Tim Janik  <timj@gtk.org>
3814
3815         * gtk/gtknotebook.c (gtk_notebook_get_child_property): 
3816         (gtk_notebook_set_child_property): fix finding of child's page,
3817         since we have to validly deal with labels and menus here as well.
3818         (gtk_notebook_get_child_property): fix warning.
3819         (gtk_notebook_class_init): property tab_pack is of type
3820         GTK_TYPE_PACK_TYPE (enum) not boolean.
3821         (gtk_notebook_find_child): don't always warn, we might be looking
3822         for a label or menu child.
3823         (gtk_notebook_map): fix mapping of panel.
3824
3825         * gtk/gtkwidget.c (gtk_widget_set_child_visible): always constrain
3826         widget's mapped state, regardless of the value being set equals
3827         old settings, since things like REALIZED(parent) or MAPPED(parent)
3828         may have changed since the old value was set. make it an error to
3829         invoke this function on a toplevel widget.
3830
3831 2001-07-31  Darin Adler  <darin@bentspoon.com>
3832
3833         * gdk/gdkprivate.h:
3834         * gdk/x11/gdkx.h:
3835         Put all mentions of GdkFont inside #ifndef GDK_DISABLE_DEPRECATED.
3836
3837         * demos/gtk-demo/menus.c: (do_menus): Cast to G_OBJECT, not
3838         GTK_OBJECT.
3839
3840 Tue Jul 31 15:34:57 2001  Jonathan Blandford  <jrb@redhat.com>
3841
3842         * gtk/gtktreeview.c (gtk_tree_view_remove_column): Whoops.  Stupid
3843         scoping error pointed out by matthiasc@poet.de.
3844
3845 2001-07-31  Sven Neumann  <sven@gimp.org>
3846
3847         * demos/gtk-demo/appwindow.c
3848         * demos/gtk-demo/item_factory.c
3849         * tests/testgtk.c: gtk_accel_group_attach() takes a GObject.
3850
3851 Mon Jul 30 10:49:16 PDT 2001 Suresh Chandrasekharan <suresh.chandrasekharan@sun.com>
3852
3853         * gtk/gtksignal.h (gtk_signal_handler_pending): corrected the wrong
3854         argument order for g_signal_has_handler_pending.
3855
3856 Sun Jul 29 17:14:01 2001  Tim Janik  <timj@gtk.org>
3857
3858         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): use g_file_test()
3859         instead of long deprecated g_scanner_stat_mode().
3860
3861 2001-07-29  Hans Breuer  <hans@breuer.org>
3862
3863         * gdk/makefile.msc : build in the backend dir after
3864         auto-generating files
3865
3866         * gdk/win32/gdkfont-win32.c (gdk_font_load) : reimplement
3867         with code from win32-production-branch.
3868
3869         *  gdk/win32/gdkwindow-win32.c : set the private->destroyed flag
3870         before calling DestroyWindow, which indirectly calls 
3871         gdk_window_destroy_notify ()
3872
3873         (performance patch merged from win32-production-branch)
3874         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_segments): 
3875         Use PatBlt() instead of LineTo() when possible (solid single-pixel pen, 
3876         R2_COPYPEN rop). It is claimed to be much faster.
3877
3878 Fri Jul 27 11:31:15 2001  Jonathan Blandford  <jrb@redhat.com>
3879
3880         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_get_property):
3881         add an "attributes" property to the text renderer for ATK.
3882
3883 2001-07-26  Alex Larsson  <alexl@redhat.com>
3884
3885         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
3886         Initialize image->bits_per_pixel from the drawable, not from
3887         the root window.
3888
3889         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_get_depth):
3890         Fix cast. argument is an IMPL already.
3891
3892 2001-07-15  James Henstridge  <james@daa.com.au>
3893
3894         * gtk/gtkwindow.c (gtk_window_add_accel_group): cast to GObject.
3895         (gtk_window_remove_accel_group): same here.
3896         (gtk_window_key_press_event): same here.
3897
3898         * gtk/gtkwidget.c (gtk_widget_add_accelerator): cast to GObject.
3899         (gtk_widget_remove_accelerator): same here.
3900         (gtk_widget_remove_accelerators): same here.
3901
3902         * gtk/gtkplug.c (gtk_plug_accel_entries_changed): same here.
3903
3904         * gtk/gtkmenushell.c (gtk_menu_shell_key_press): cast to GObject
3905         instead of GtkObject.
3906
3907         * gtk/gtkmenu.c (gtk_menu_key_press): update since GtkAccelGroup
3908         now takes GObjects.
3909
3910         * gtk/gtkitemfactory.c (gtk_item_factory_propagate_accelerator):
3911         pass a GObject to gtk_accel_group_entries_from_object.
3912         (gtk_item_factory_create_item): s/accel_widget/accel_object/
3913
3914         * gtk/gtk-boxed.defs: remove GtkAccelGroup boxed def.
3915
3916         * gtk/gtkaccellabel.c: convert to handle GObject accel objects.
3917
3918         * gtk/gtkaccellabel.h: fix header to reflect that arbitrary
3919         GObjects can have accelerators set now.  Add compatibility
3920         defines.
3921
3922         * gtk/gtkmarshal.list: add missing marshallers.
3923
3924         * gtk/gtkaccelgroup.[ch]: convert to a GObject, and allow setting
3925         accelerators on plain GObjects.  gtk_accel_group_object_destroy
3926         has been converted into a weak reference, and
3927         gtk_accel_group_delete_entries is now a destroy notify for that
3928         piece of data.
3929
3930 2001-07-23  Ron Steinke  <rsteinke@w-link.net>
3931
3932         * gdk/gdkdraw.c: Added a check on the colormap depth to
3933         gdk_drawable_set_colormap()
3934         * gdk/x11/gdkimage-x11.c: combination of Matthias Clasen's
3935         patch to fix colorsel and my patch to fix gdk_drawable_get_image()
3936         for pixmaps without visuals (more specifically, bitmaps)
3937         * gdk/x11/gdkpixmap-x11.c: Fixed gdk_pixmap_new() so it
3938         doesn't set a colormap with the wrong depth
3939
3940
3941 2001-07-22  Anders Carlsson  <andersca@gnome.org>
3942
3943         * gtk/gtktreeview.c (gtk_tree_view_class_init): Replace the
3944         expander_height and expander_width properties with a single
3945         property, expander_size.
3946         (gtk_tree_view_init): Set the tab_offset to expander_size
3947         plus some padding.
3948         (gtk_tree_view_unrealize): Remove the expand/collapse
3949         timeout if it exists.
3950         (coords_are_over_arrow): Fix a small bug.
3951         (gtk_tree_view_motion_draw_column_motion_arrow): Use
3952         expander_size.
3953         (gtk_tree_view_draw_focus): Use "treeview" instead of
3954         "add-mode" as detail when drawing the focus.
3955         (gtk_tree_view_bin_expose): Use "treeview-drop-indicator"
3956         instead of "add-mode" as detail when drawing the focus.
3957         (gtk_tree_view_deleted): If we have a node currently being
3958         expanded or collapsed, remove the timeout and set the node 
3959         to NULL.
3960         (gtk_tree_view_queue_draw_arrow): New function that just
3961         redraws the arrow of a node.
3962         (gtk_tree_view_draw_arrow): Use expander_size instead of
3963         expander_width/expander_height, also pass a different
3964         expander_style to gtk_paint_expander depending on the 
3965         state of the node being drawn.
3966         (expand_collapse_timeout): New function for expanding 
3967         or collapsing a node depending on the previous state.
3968         (gtk_tree_view_real_expand_row): Add timeout and set 
3969         correct state for node being expanded.
3970         (gtk_tree_view_real_collapse_row): Add timeout and set
3971         correct state for node being collapsed.
3972
3973         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): Add
3974         information about the node currently being expanded or
3975         collapsed, and also a timeout id.
3976
3977         * gtk/gtkstyle.h (struct _GtkStyleClass): Replace is_open
3978         with expander_style for draw_expander.
3979
3980         * gtk/gtkstyle.c (gtk_draw_expander): Replace is_open with
3981         expander_style.
3982         (create_expander_affine): New function for creating an 
3983         expander affine.
3984         (apply_affine_on_point): New function for applying an 
3985         affine to a point.
3986         (gtk_default_draw_expander): Modified to take expander_style
3987         instead of is_open, and to draw the rectangle rotated differently
3988         depending on the expander style.
3989         (gtk_paint_expander): Replace is_open with expander_style.
3990
3991         * gtk/gtkrbtree.h: Add expander states to GtkRBNodeColor.
3992
3993         * gtk/gtkenums.h: Add expander style enum.
3994
3995 2001-07-21  Jonas Borgström  <jonas@codefactory.se>
3996
3997         * gtk/gtktreemodel.c (gtk_tree_model_foreach): Check the return
3998         value from gtk_tree_model_get_iter, the model might be empty.
3999
4000 2001-07-20  Hans Breuer  <hans@breuer.org>
4001
4002         * gdk/win32/gdkinput-win32.c : gdk_device_get_history moved to
4003         gdk/gdkinput.c like the other backends
4004
4005         * gdk/win32/gdkinput-win32.h :
4006         * gdk/win32/gdkinput.c :
4007         * gdk/win32/gdkvisual-win32.c :
4008         * gdk/win32/gdkwin32.h : mechanical adaption to GdkDevice and
4009         GdkVisual GObjectification. UNTESTED for pen-devices because
4010         I simply have none.
4011
4012         * gdk/gdk.def :
4013         * gtk/gtk.def : updated externals
4014
4015         * gtk/gtkiconfactory.c :
4016         * gtk/gtkoldeditable.c : GError *error needs to be initialized (= NULL) 
4017         before passing &error to functions to avoid strange crashes
4018         
4019         * gtk/gtkcontainer.c (gtk_container_real_set_focus_child) : is static
4020
4021         * gtk/gtkwidget.c (gtk_widget_get_child_visible): use g_return_val_if_fail
4022
4023         * gtk/makefile.msc.in : updated
4024
4025 Thu Jul 19 15:35:32 2001  Owen Taylor  <otaylor@redhat.com>
4026
4027         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_vadjustment):
4028         Add property support. (#51858)
4029
4030 Thu Jul 19 14:56:33 2001  Owen Taylor  <otaylor@redhat.com>
4031
4032         * gtk/gtkaccellabel.c (gtk_accel_label_class_init) 
4033         * gtk/gtkinputdialog.c (gtk_input_dialog_set_key):
4034         Use Shift/Ctrl instead of Shft/Ctl. (#53807)
4035
4036 Thu Jul 19 11:41:00 2001  Owen Taylor  <otaylor@redhat.com>
4037
4038         * gtk/gtkcolorsel.c: Add propery support (roughly
4039         based on patch from Lee Mallabone, #51014)
4040
4041         * gtk/gtkcolorsel.h: Mark gtk_color_selection_set_update_policy as
4042         deprecated, since we already g_warning() on it.
4043
4044 Thu Jul 19 14:24:34 2001  Owen Taylor  <otaylor@redhat.com>
4045
4046         * gtk/gtkentry.c (gtk_entry_set_positions): Fix
4047         typo that sometimes caused selection not to work properly.
4048
4049         * gtk/gtkentry.c (gtk_entry_grab_focus): Select text in
4050         entry when tabbing in. (#57743)
4051         
4052         * gtk/gtkentry.c (gtk_entry_motion_notify): If the
4053         user drags up above or down below the entry, move
4054         to the end or the beginning of the entry. (Suggestion
4055         from Jay Cox, #50940)
4056
4057         * gtk/gtkentry.c (gtk_entry_move_cursor): If we have
4058         a current selection, then when moving by chars or
4059         words, move to the end of the selection rather than
4060         from entry->current_pos. (Suggestion from Jay Cox,
4061         #50942)
4062         
4063 Thu Jul 19 12:14:28 2001  Owen Taylor  <otaylor@redhat.com>
4064
4065         * gtk/gtkwindow.c (gtk_window_set_decorated): Actualy
4066         set window->decorated. (Patch from Hidetoshi Tajima,
4067         #55846)
4068
4069 Sat Jul  7 02:50:14 2001  Owen Taylor  <otaylor@redhat.com>
4070
4071         * gtk/gtkwidget.c (gtk_widget_set_parent): Enforce
4072         the widget/child realization/mapping invariants.
4073
4074         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add functions 
4075         gtk_widget_[get/set]_child_visible() to control
4076         whether visible children of a mapped window are
4077         mapped.
4078
4079         * docs/widget_system.txt: Updated for changes in
4080         container contract, and addition of GTK_CHILD_VISIBLE.
4081
4082         * gtk/gtkcontainer.c: Add generic map()/unmap()
4083         functions that work for almost all containers.
4084
4085         * gtk/gtknotebook.c gtk/gtkpacker.c: Use 
4086         gtk_widget_set_child_visible() where necessary.
4087
4088         * gtk/*.c: Remove excess map(), unmap(), and 
4089         realization/mapping invariant enforcing code
4090         from many containers.
4091
4092 Wed Jul 18 19:51:45 2001  Owen Taylor  <otaylor@redhat.com>
4093
4094         * gtk/gtktextview.c (gtk_text_view_set_attributes_from_style): 
4095         Get the foreground color from 'text', nor 'fg'. (#57568)
4096
4097 Wed Jul 18 19:28:46 2001  Owen Taylor  <otaylor@redhat.com>
4098
4099         * gtk/*.c: Patch from Matthias Clasen to remove remove
4100         all instances of g_return_if_fail (foo != NULL); that are
4101         immediately before a g_return_if_fail (GTK_IS_FOO (foo));
4102         since the second check catches the NULL anyways.
4103
4104 Wed Jul 18 18:23:05 2001  Owen Taylor  <otaylor@redhat.com>
4105
4106         * gtk/gtkbutton.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtktextview.c
4107         gtktreeview.c: Fix idles and timeouts to be properly surrounded by 
4108         GDK_THREADS_ENTER()/LEAVE() pairs.
4109
4110         * gtk/gtkdialog.c gtk/gtkclipboard.c: Surround calls
4111         to g_main_loop_run() with GDK_THREADS_LEAVE()/ENTER()
4112         pairs. (Problem found by M. Meeks)
4113
4114 2001-07-18  Darin Adler  <darin@bentspoon.com>
4115
4116         * gtk/gtkiconfactory.c: (gtk_icon_size_register): Reorder code so
4117         that we don't get a g_warning message every time we register a new
4118         icon size.
4119
4120         * gdk/x11/gdkcolor-x11.c: (gdk_colormap_alloc1): Fix warning by
4121         using pixel variable of the correct type.
4122         
4123 Fri Jul 13 15:33:32 2001  Owen Taylor  <otaylor@redhat.com>
4124
4125         * gdk/gdkwindow.[ch]: Add a function gdk_window_get_internal_paint_info(),
4126         so that using X functions on a GdkWindow is possible, if
4127         a little hairy.
4128
4129         * gdk/gdkgc.c (gdk_gc_offset): Add a function to offset the clip
4130         and ts_origin of a GC, so that external parties can offset/restore
4131         a GC, when using gdk_window_get_internal_paint_info().
4132
4133 2001-07-17  Darin Adler  <darin@bentspoon.com>
4134
4135         * .cvsignore: Ignore the sgml directory made by gtkdoc.
4136         * demos/pixbuf-demo.c: (main): Use gtk_window_set_resizable
4137         instead of the deprecated gtk_window_set_policy.
4138         * demos/testpixbuf-scale.c: Add missing <stdlib.h> include.
4139         * gdk/gdkkeys.c: (gdk_keymap_class_init): Remove empty finalize
4140         function to get rid of warning and some code too.
4141         * gdk/x11/gdkfont-x11.c: (gdk_font_charset_for_locale): Add
4142         missing const.
4143         * gdk/x11/gdkmain-x11.c: (_gdk_windowing_init_check): Remove
4144         unused local.
4145         * gdk/x11/gdkpango-x11.c: (gdk_pango_context_get): Add missing
4146         const.
4147         * gdk/x11/gdkselection-x11.c: (gdk_text_property_to_utf8_list),
4148         (gdk_utf8_to_compound_text): Add missing const.
4149         * gtk/gtkimage.c: (gtk_image_expose): Remove unused local.
4150         * gtk/gtkmenubar.c: (gtk_menu_bar_hierarchy_changed): Add missing
4151         cast and get rid of an unnecessary one.
4152         * gtk/gtksettings.c: (gtk_settings_notify): Remove unused local.
4153         * gtk/gtkstatusbar.c: (gtk_statusbar_size_allocate): Remove unused
4154         local.
4155         * gtk/gtktreemodelsort.c: (gtk_tree_model_sort_build_level):
4156         Remove unused local.
4157         * modules/input/gtkimcontextxim.c: (gtk_im_context_xim_new): Add
4158         missing const.
4159         * tests/testsocket.c: (add_child): Add cast so the printf format
4160         doesn't make us implicitly depend on what integer type
4161         gtk_socket_get_id returns.
4162         * tests/testtextbuffer.c: Add missing const.
4163         * tests/testtreefocus.c: (main): Remove unused local.
4164         * tests/treestoretest.c: (iter_remove): Remove unused local.
4165         (uppercase_value): Remove unused function.
4166         (make_window): Add statement to quiet the compiler's uninitialized
4167         variable warning.
4168
4169 Sat Jul 14 12:47:35 2001  Tim Janik  <timj@gtk.org>
4170
4171         * gtk/gtkrange.c:
4172         (second_timeout): 
4173         (initial_timeout): 
4174         (update_timeout): add GDK_THREADS_ENTER/GDK_THREADS_LEAVE.
4175         (gtk_range_calc_layout): compute the new layout based on an
4176         adjustment->value being passed in as argument.
4177         (gtk_range_button_press): for button2 slider warps, first recalc
4178         the layout, then adjust the value. also, use update_slider_position()
4179         for adjusting the value, so we keep pixel quantisation at which we
4180         usually operate (upon motion or button releases). the reason for this
4181         is that, we can't change the adjustment upon button2 presses to a non
4182         quantised value and upon button2 release re-quantise the value since
4183         that'd alter the value even if we didn't get any motion events (causing
4184         unexpected scroll area warps upon release and/or slider pixel-jitter).
4185         (gtk_range_motion_notify): update the slider position from queried
4186         coordinates, not event coordinates.
4187
4188 Fri Jul 13 09:47:52 2001  Tim Janik  <timj@gtk.org>
4189
4190         * gtk/gtkstyle.c (gtk_default_draw_focus): fix line style resetting,
4191         the default gc values are: width=0, CapBut, JoinMiter.
4192
4193 2001-07-13  Anders Carlsson  <andersca@codefactory.se>
4194
4195         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Take
4196         into account the xpad and ypad when calculating the width and the
4197         height of the pixbuf cel.
4198
4199 Thu Jul 12 18:29:40 2001  Owen Taylor  <otaylor@redhat.com>
4200
4201         * gtk/gtkradiomenuitem.[ch] (gtk_radio_menu_item_group): 
4202         Rename to gtk_radio_menu_item_get_group(), add deprecated
4203         alias. (#57044)
4204
4205         * gtk/gtkfilesel.c: Indentation fix.
4206
4207 Thu Jul 12 17:33:00 2001  Owen Taylor  <otaylor@redhat.com>
4208
4209         * gtk/gtkbbox.h gtk/gtkcompat.h: Patch from Mathias 
4210         Hasselmann to fix warnings in compat macros. 
4211         (#56773)
4212
4213         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Fix 
4214         stupid wrong cast added in last patch.
4215
4216 Thu Jul 12 16:51:34 2001  Owen Taylor  <otaylor@redhat.com>
4217
4218         * gtk/gtkwidget.c: Replace a couple of inappropriate calls to 
4219         GTK_WIDGET_HAS_FOCUS() with gtk_widget_is_focus(). (#57067)
4220
4221 Thu Jul 12 14:06:19 2001  Owen Taylor  <otaylor@redhat.com>
4222
4223         * gtk/gtkmenubar.c (gtk_menu_bar_hierarchy_changed): Add
4224         missing cast.
4225
4226         * gtk/gtkcontainer.c (gtk_container_get_focus_chain): Fix
4227         NULL/FALSE return value confusion.
4228
4229         * gtk/gtkrange.c (coord_to_value): Fix division-by-zero
4230         problem when scrollbar completely fills range. (Patch
4231         from  Matthias Clasen, #57047)
4232
4233 Thu Jul 12 13:53:28 2001  Owen Taylor  <otaylor@redhat.com>
4234
4235         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Properly
4236         clean up when handling events for move-resize emulation.
4237         (Problem traced down by Matthias Clasen, #57271)
4238
4239 Thu Jul 12 13:43:27 2001  Owen Taylor  <otaylor@redhat.com>
4240
4241         * gtk/gtkclist.c gtk/gtkcolorsel.c gtk/gtkcombo.c
4242           gtk/gtkctree.c gtk/gtkcurve.c gtk/gtkentry.c
4243           gtk/gtkfontsel.c gtk/gtkhandlebox.c 
4244           gtk/gtkimcontextsimple.c gtk/gtkmain.c gtk/gtkmenu.c
4245           gtk/gtkmenuitem.c gtk/gtkoptionmenu.c gtk/gtkpixmap.c
4246           gtk/gtkselection.c gtk/gtktextdisplay.c gtk/gtktextview.c
4247           gtk/gtktooltips.c gtk/gtkwidget.c gtk/gtkwindow.c:
4248         Formatting fixes from multihead brnach. [ mostly foo(bar) => foo (bar) ]
4249
4250 2001-07-09  Peter Williams  <peterw@ximian.com>
4251
4252         * gtk/Makefile.am ($(srcdir)/stamp-gtk.defs): Add a cd $(srcdir)
4253         for when srcdir != builddir
4254
4255 Mon Jul  9 12:50:51 2001  Jonathan Blandford  <jrb@redhat.com>
4256
4257         * gtk/gtktreemodel.c: remove gtk_tree_model_get_first in favor of
4258         gtk_tree_model_get_iter_root.
4259
4260         * gtk/gtkliststore.c: Add a bunch of g_return statements.
4261         (gtk_list_store_iter_n_children): Fix up.
4262
4263         * gtk/gtktreestore.c: Add a bunch of g_return statements.
4264
4265 Fri Jul  6 15:38:33 2001  Owen Taylor  <otaylor@redhat.com>
4266
4267         * gtk/gtkwidget.c (gtk_widget_class_init):
4268         G_SIGNAL_TYPE_STATIC_SCOPE GtkSelectionData to
4269         restore some workingness.
4270
4271         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Fix 
4272         handle of window type for input-only windows.
4273
4274 Thu Jul  5 21:53:46 2001  Owen Taylor  <otaylor@redhat.com>
4275
4276         * gtk/gtkbbox.[ch] gtk/gtkbox.[ch] gtk/gtk[hv]bbox.c:
4277         Patch from Gregory Merchan to add 
4278         gtk_button_box_set_secondary(), which separates
4279         the child into a separate group from the normal
4280         buttons. (#56331)
4281
4282         * gtk/gtkdialog.c: Make help buttons secondary by
4283         default.
4284
4285         * gtk/gtkbbox.c: Added a child property "secondary".
4286
4287         * gtk/testgtk.c: Turn on the help button for the 
4288         color selector to check that it properly appears
4289         as secondary.
4290
4291 Mon Jul  2 01:09:37 2001  Owen Taylor  <otaylor@redhat.com>
4292  
4293         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkwindow-x11.c
4294         gdk/linux-fb/gdkwindow-fb.c gdk/x11/gdkwindow-x11.c gdk/gdk:
4295         Add gdk_set_pointer_hooks() to allow pointer-querying to
4296         be hooked by an event record/playback system like GERD.
4297         (#56914)
4298         
4299 Thu Jul  5 08:57:07 2001  Owen Taylor  <otaylor@redhat.com>
4300
4301         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Pass
4302         in the right value of initial_emission to
4303         gtk_widget_set_style_internal (#57091)
4304
4305 Wed Jul  4 23:17:04 2001  Owen Taylor  <otaylor@redhat.com>
4306
4307         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed):
4308         Make compile.
4309
4310         * gtk/gtkwidget.c (gtk_widget_reset_rc_style): Fix problem
4311         with calling gtk_widget_set_style_internal() with
4312         the old style, not the new style. (#56989)
4313
4314 Wed Jul  4 22:35:40 2001  Owen Taylor  <otaylor@redhat.com>
4315
4316         * gtk/gtklabel.c gtk/gtkmenubar.c gtk/gtktreeviewcolumn.c
4317           gtk/gtkwidget.c:
4318         Check GTK_WIDGET_TOPLEVEL(gtk_widget_get_toplevel (widget)),
4319         not GTK_WIDGET_GET_ANCESTOR ... see 
4320         http://mail.gnome.org/archives/gtk-devel-list/2001-July/msg00072.html.
4321         Indicate the best practice in the docs for gtk_widget_get_toplevel().
4322
4323         * gtk/gtkwidget.[ch]: Expose a private _gtk_widget_hierarchy_changed(),
4324         so GtkPlug can give the correct signals when transforming
4325         from a child to a toplevel.
4326         
4327         * gtk/gtkdnd.c (gtk_drag_dest_hierarchy_changed): Handle
4328         reparentation correctly.
4329
4330         * gtk/gtkwidget.c (gtk_widget_propagate_hierarchy_changed):
4331         Propagate the previous_toplevel argument down properly.
4332
4333         * gtk/gtklabel.c (gtk_label_finalize): Fix unrefing
4334         of wrong atr list.
4335
4336         * gtk/gtkplug.[ch]: Add an "embedded" signal.
4337
4338         * gtk/gtksocket.[ch]: Add "child_added", "child_removed"
4339         signals.
4340
4341         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: Add 
4342         functions gtk_plug_get_id(), gtk_socket_get_id(),
4343         to avoid the user having to worry about realization,
4344         and gdkx.h.
4345
4346         * tests/testsocket.c: Extend to try out the new signals
4347         and gtk_plug/socket_get_id().
4348
4349         * gtk/gtklabel.c (gtk_label_set_pattern_internal): Fix
4350         setting of underline attributes.
4351
4352         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore
4353         DestroyNotify events from SubstructureNotifyMask
4354
4355         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent):
4356         Switch GDK_WINDOW_TYPE (window) as needed.
4357
4358         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Clean up,
4359         allow creation of toplevel windows as children of
4360         foreign windows.
4361
4362         * gtk/gtkplug.c: Remove hacks involving changing private
4363         fields of GdkWindow.
4364
4365         * gtk/gtkplug.[ch] gtk/gtksocket.c: Work to make 
4366         exactly the same signals and notification
4367         be emitted for local embedding as for inter-process
4368         embedding.
4369
4370 2001-07-04  James Henstridge  <james@daa.com.au>
4371
4372         * gtk/gtkliststore.h: add missing gtk_list_store_newv prototype.
4373
4374 Mon Jul  2 16:53:25 2001  Owen Taylor  <otaylor@redhat.com>
4375
4376         * gtk/xembed.h gtk/gtkplug.c gtk/gtksocket.c: For
4377         XEMBED embedding add a _XEMBED_INFO property to the
4378         client with version number and a "mapped" flags.
4379         Use the mapped flag instead of the racy MapRequestEvent
4380
4381         * gtk/gtksocket.c: Clean up the gtk_socket_steal()
4382         code to reliably set things (when the child is a passive
4383         embedder participating in the XEMBED protocol) intead
4384         of just being a hack for embedding non-participating
4385         programs. Fix various bugs and race conditions.
4386         
4387         * gtk/gtksocket.[ch] gtk/gtkplug.[ch]: Make local embedding
4388         work by simply making the GtkSocket the gtk parent
4389         of the GtkPlug. Set a flag in this case and make
4390         the GtkPlug work like a normal container by overriding
4391         methods such as check_resize and "chaining past" GtkWindow
4392         to GtkBin.
4393
4394         * gtk/gtkentry.c (gtk_entry_real_activate)
4395           gtk/gtkmain.c (gtk_propagate_event): 
4396         Eliminate use of gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW).
4397         
4398         * gtk/gtkwidget.c (gtk_widget_get_toplevel,
4399         gtk_widget_get_ancestor):
4400         Explain why gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW)
4401         might not give the expected result and recommend
4402         an alternative.
4403
4404         * tests/testsocket.c tests/testsocket_child.c
4405         tests/testsocket_common.c tests/Makefile.am: Extended
4406         to test different type of adding plugs to sockets
4407         (local,active,passive), and to test mapping/unmapping
4408         the plug.
4409
4410         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Don't
4411         mark the window as destroyed until after we
4412         called _gdk_windowing_window_destroy().
4413         (_gdk_windowing_window_destroy() may use GDK functions
4414         on the window.)
4415
4416         * gdk/x11/gdkinput.c: Remove the check for finalization - 
4417         devices can be finalized under some circumnstances.
4418  
4419         * gdk/x11/gdkinput-x11.c (gdk_input_device_new): Fix 
4420         small problem with GDK_TYPE_DEVICE.
4421  
4422 2001-07-02  Havoc Pennington  <hp@pobox.com>
4423
4424         * gdk/x11/gdkwindow-x11.c (gdk_wmspec_change_state): fix to 
4425         use constants not atoms.
4426
4427 2001-07-02  James Henstridge  <james@daa.com.au>
4428
4429         * gtk/gtktextview.c (gtk_text_view_class_init): same here for
4430         PANGO_TYPE_TAB_ARRAY.
4431
4432         * gtk/gtktexttag.c (gtk_text_tag_class_init): same here, but also
4433         for PANGO_TYPE_TAB_ARRAY.
4434
4435         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_class_init):
4436         s/GTK_TYPE_PANGO_FONT_DESCRIPTION/PANGO_TYPE_FONT_DESCRIPTION/
4437
4438         * gtk/gtk-boxed.defs: move all the boxed definitions to the top of
4439         the file.  Remove Pango types from defs -- they are now defined in
4440         libpango.
4441
4442 Mon Jul  2 06:35:10 2001  Tim Janik  <timj@gtk.org>
4443
4444         * gdk/gdkkeys.c (gdk_keymap_class_init): s/signal_newc/signal_new/
4445
4446         * gtk/gtkobject.c (gtk_object_destroy): invoke
4447         g_object_run_dispose().
4448
4449         * gtk/gtkwindow.c: 
4450         * gtk/gtkwidget.c: 
4451         * gtk/gtkobject.c:
4452         * gtk/gtklist.c: s/shutdown/dispose/ for the GObject
4453         method.
4454
4455 Sat Jun 30 20:44:48 2001  Owen Taylor  <otaylor@redhat.com>
4456
4457         * gtk/gtktypeutils.c (gtk_type_class): Remove
4458         change check for GTK_TYPE_OBJECT derivation to
4459         G_TYPE_OBJECTS - it's Tim-approved to use this 
4460         for arbitary objects.
4461
4462         * gtk/gtkwindow.c gtk/gtkcontainer.[ch]: underscore
4463         prefix gtk_container_dequeue_resize_handler().
4464
4465         * gtk/gtkwidget.[ch]: Add a previous_toplevel argument
4466         to the hierarachy_changed signal, since you otherwise
4467         have to always keep that around.
4468
4469         * gtk/gtkmenubar.c gtk/gtklabel.c gtk/gtksocket.c: Adapt
4470         for extra argument to hierarchy_changed.
4471
4472 Tue Jun 26 19:39:03 2001  Owen Taylor  <otaylor@redhat.com>
4473
4474         * gtk/gtkwidget.c (gtk_widget_set_style): Allow %NULL
4475         for style to mean "revert to default style"
4476
4477         * gtk/gtkwidget.[ch] (gtk_widget_set_rc_style,
4478           gtk_widget_restore_default_style): Make this functions
4479         deprecated aliases for gtk_widget_set_style (widget, NULL).
4480
4481         * gtk/gtkwidget.[ch]: Remove:
4482            gtk_widget_set_default_style ()
4483            gtk_widget_push_style ()
4484            gtk_widget_pop_style ()
4485         These functions interact are overriden by RC files, and
4486         thus virtually useless, and complicated.
4487
4488 Fri Jun 22 18:49:48 2001  Owen Taylor  <otaylor@redhat.com>
4489
4490         * gtk/gtkrc.c: Add a GtkRcContext structure to hold 
4491         most of the previous global variables in gtkrc.c. This is
4492         in preparation for multi-head, since each screen can
4493         have different GtkSettings and RC information.
4494
4495         * gtk/gtkrc.[ch]: 
4496
4497         * gtk/gtkrc.h (struct _GtkRcStyleClass): Add a
4498         GtkSettings parameter to GtkRcStyle::parse.
4499
4500         * gdk/x11/gdkevents-x11.c gtk/gtksettings.c gtk/gtkrc.c: 
4501         Add two new settings gtk-theme-name, gtk-key-theme-name,
4502         for RC files that are loaded by name after reading
4503         the default RC files.
4504         
4505         * gtk/gtkrc.c: Allow priorities for styles, as wll as
4506         bindings.
4507
4508         * gtk/gtkenums.h gtk/gtkrc.c: Add GTK_PATH_PRIO_THEME,
4509         and use it by default for RC files loaded via 
4510         gtk-theme-name, gtk-key-theme-name.
4511
4512         * gtk/gtkiconfactory.c (gtk_icon_source_set_filename)
4513         gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string) 
4514         tests/testgtkrc: Require pathnames to be absolute.
4515
4516         * gtk/gtkrc.c gtk/gtkiconfactory.c: Look up the full filename for
4517         the source when parsing, since the operation of looking up a
4518         pixmap from an RC file depends on the parsing context.
4519
4520         * gtk/gtkrc.c (gtk_rc_context_reparse_all): Automatically
4521         reset RC styles on all widgets when files are reparsed.
4522
4523         * tests/testgtk.c (create_rc_file) 
4524           gtk/gtkwindow.c (gtk_window_read_rcfiles): 
4525         Simplify, now that gtk_rc_reparse_all() resets styles on
4526         all widgets itself.
4527
4528         * gtk/gtkmain.c (gtk_get_default_language): Fix broken
4529         return value.
4530
4531         * gtk/gtksettings.[ch] (gtk_settings_install_property[_ch]): Remove
4532         GtkSettings argument.
4533
4534         * gtk/gtksettings.[ch] (gtk_settings_get_default): Rename from
4535         gtk_settings_get_global().
4536
4537         * gtk/gtkwidget.[ch]: Add a function gtk_widget_Get_settings()
4538         to get the appropriate GtkSettings for a widget. (For now,
4539         just gets the default GtkSetttings.) 
4540
4541         * gtk/gtkcolorsel.c gtk/gtkentry.c gtk/gtkmenu.c gtk/gtkmenubar.c
4542           gtk/gtktextview.c gtk/gtktoolbar.c: Fixes for GtkSettings
4543         changes.
4544
4545         * gtk/gtkrc.[ch]: Add gtk_rc_get_style_by_paths() to allow
4546         getting a style for a path without actually having a widget.
4547         (Allows using a style for a subpart of a widget, for
4548         example.)
4549
4550         * gtk/gtkrc.[ch]: Add gtk_rc_reparse_all_for_setting() to allow forcing
4551         the RC files to be reloaded for just one GtkSettings
4552         (not sure how useful this really is.)
4553
4554         * gtk/gtkrc.h: Deprecate
4555         gtk_rc_add_widget_name/widget_class/class_style
4556
4557 2001-06-30  Alex Larsson  <alexl@redhat.com>
4558
4559         * gdk/linux-fb/gdkinput-none.c:
4560         * gdk/linux-fb/gdkinput.c:
4561         * gdk/linux-fb/gdkinputprivate.h:
4562         Convert GdkDevice to a GObject.
4563
4564         * linux-fb/gdkprivate-fb.h:
4565         * linux-fb/gdkvisual-fb.c:
4566         Convert GdkVisual to a GObject.
4567
4568 2001-06-29  Alex Larsson  <alexl@redhat.com>
4569
4570         * gdk/gdkvisual.h:
4571         * gdk/gdkcolor.c:
4572         * gdk/x11/gdkx.h:
4573         * gdk/x11/gdkvisual-x11.c:
4574         Convert GdkVisual to a GObject.
4575
4576         * gdk/gdkinput.h:
4577         * gdk/gdkevents.c:
4578         * gdk/x11/gdkinputprivate.h:
4579         * gdk/x11/gdkinput-gxi.c:
4580         * gdk/x11/gdkinput-none.c:
4581         * gdk/x11/gdkinput-x11.c:
4582         * gdk/x11/gdkinput-xfree.c:
4583         * gdk/x11/gdkinput.c:
4584         Convert GdkDevice to a GObject.
4585
4586 Fri Jun 29 22:13:28 2001  Jonathan Blandford  <jrb@redhat.com>
4587
4588         * gtk/gtktreestore.c (gtk_tree_store_new): changed new_with_types
4589         to just plain new, fixing the number of columns, and column types
4590         at creation time.
4591
4592         * gtk/gtkliststore.c (gtk_list_store_new): ditto.
4593
4594         * gtk/gtkcellrenderertext.c
4595         (gtk_cell_renderer_text_set_fixed_height_from_font): FIX the
4596         height to a specific font.
4597
4598         * gtk/gtktreeview.c (gtk_tree_view_is_expander_column): fix brokenness.
4599
4600         * tests/*c: change to work with new store models.
4601
4602 2001-06-29  Havoc Pennington  <hp@redhat.com>
4603
4604        * Throughout: fixes to compile with G_DISABLE_COMPAT
4605         (s/g_signal_connectc/g_signal_connect/,
4606         s/g_signal_newc/g_signal_new/,
4607         s/g_signal_disconnect_by_func/g_signal_handlers_disconnect_by_func/)
4608
4609 Fri Jun 29 03:14:16 2001  Jonathan Blandford  <jrb@webwynk.net>
4610
4611         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
4612         add path argument to selection callbacks.
4613
4614 Fri Jun 29 00:13:34 2001  Jonathan Blandford  <jrb@redhat.com>
4615
4616         * gtk/gtktreemodel.c (gtk_tree_model_foreach): New function to
4617         walk through a model in a depth first manner, with the option to
4618         break out.
4619
4620 Fri Jun  8 18:52:10 2001  Jonathan Blandford  <jrb@redhat.com>
4621
4622         * gtk/gtktreeview.[hc]: Patch Thomas Broyer from
4623         <tbroyer@ltgt.net>. Expander arrows are now attached to a specific
4624         column and follow it when draged, rather than a location in the
4625         view. "expander_column" property and drawing functions changed
4626         accordingly.  Fixes bug #55942.
4627
4628         (gtk_tree_view_{set,get}_expander_column): Now works with a
4629         GtkTreeViewColumn* instead of int.
4630
4631 Thu Jun 28 22:53:18 2001  Owen Taylor  <otaylor@redhat.com>
4632
4633         *  gdk/gdk.c gtk/gtktypeutils.c: Fix args to g_type_init(). 
4634
4635 2001-06-28  Havoc Pennington  <hp@pobox.com>
4636
4637         * gdk/x11/gdkimage-x11.c (_gdk_x11_get_image): Clip the retrieved
4638         image data to the screen, using a server grab to avoid race
4639         conditions.
4640
4641         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): remove 
4642         check for NULL return from gtk_image_new_from_stock(), it never
4643         returns NULL.
4644         (gtk_item_factory_create_item): fix bug where we parsed the stock
4645         ID as an inline pixbuf
4646
4647         * gtk/gtktext.c (gtk_text_key_press): numeric keypad support
4648
4649         * gtk/gtkspinbutton.c (gtk_spin_button_key_press): numeric keypad
4650         support (should be using binding set here)
4651
4652         * gtk/gtkoptionmenu.c (gtk_option_menu_key_press): numeric keypad
4653         support (should be using binding set here)
4654
4655         * gtk/gtkmenushell.c (gtk_menu_shell_class_init): numeric keypad 
4656         support
4657
4658         * gtk/gtkmenu.c (gtk_menu_class_init): numeric keypad support
4659
4660         * gtk/gtkmenubar.c (gtk_menu_bar_class_init): numeric keypad
4661
4662         * gtk/gtklistitem.c (gtk_list_item_class_init): numeric keypad
4663
4664         * gtk/gtkimcontextsimple.c
4665         (gtk_im_context_simple_filter_keypress): keypad
4666
4667         * gtk/gtkfilesel.c (gtk_file_selection_key_press): keypad 
4668
4669         * gtk/gtkentry.c (gtk_entry_class_init): numeric keypad fixes
4670
4671         * gtk/gtkctree.c (gtk_ctree_class_init): numeric keypad support
4672
4673         * gtk/gtkcolorsel.c (palette_activate): keypad support (of course,
4674         should be binding-setted)
4675
4676         * gtk/gtkwindow.c (gtk_window_class_init): numeric keypad fixes
4677
4678         * gtk/gtkclist.c (gtk_clist_class_init): numeric keypad fixes
4679
4680         * gtk/gtkcalendar.c: numeric keypad fixes
4681
4682         * gtk/gtktextview.c (gtk_text_view_class_init): numeric keypad
4683         support
4684
4685         * gdk/gdkwindow.c (gdk_window_get_clip_region): fix infinite loop
4686         screwup
4687
4688         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha): 
4689         clip the render area to the drawable's clip region in advance,
4690         so we don't get data from the server that we don't need.
4691
4692         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
4693         check return value of gdk_pixbuf_get_from_drawable(), fall back 
4694         to bilevel alpha if we can't get the pixbuf to composite against.
4695
4696         * gdk/gdkdraw.c (gdk_drawable_get_image): set the image colormap
4697
4698         * gdk/gdkimage.c (gdk_image_get_colormap): add
4699         gdk_image_set_colormap, gdk_image_get_colormap
4700
4701         * gdk/gdkpixbuf-drawable.c (rgbconvert): Change all converters to
4702         take a region of the image, instead of converting the entire
4703         image.
4704
4705         * gtk/gtkwidget.h (struct _GtkWidgetClass): add show_help
4706         keybinding signal. Add default bindings for it. Add default
4707         handler for show_help that shows the tooltip for the widget.
4708
4709         * gtk/gtkdialog.c (gtk_dialog_class_init): add binding set and
4710         "close" keybinding signal, remove key press handler.
4711
4712         * gtk/gtktooltips.c (gtk_tooltips_set_colors): Just remove this,
4713         it's not our usual practice to leave a deprecated function around
4714         with a runtime warning, plus we don't want it to appear in docs,
4715         plus if we make them yellow no one will want to change them
4716         anyhow.
4717
4718 Thu Jun 28 23:53:31 2001  Tim Janik  <timj@gtk.org>
4719
4720         * gtk/gtkwidget.c (gtk_widget_hide): !GTK_OBJECT_DESTROYED() ->
4721         GTK_WIDGET_REALIZE() for resize queueing.
4722
4723         * gtk/gtkmain.c (gtk_main_do_event): !GTK_OBJECT_DESTROYED() ->
4724         GTK_WIDGET_REALIZE() for post event delivery destruction upon
4725         GDK_DESTROY.
4726         
4727         * gtk/gtkwidget.c: added GtkWidget::event-after notification signal, to
4728         sompensate for former (pre-2.0) connect_after() facility.
4729         (gtk_widget_send_expose): 
4730         (gtk_widget_event): assert the widget is realized, since event delivery
4731         to non-realized widgets is essentially a bug. event handlers should
4732         be able to unconditionally rely on widget->window (unless they
4733         emit events on their own which can trigger widget destruction).
4734         (gtk_widget_event_internal): removed old outdated GTK_OBJECT_DESTROYED()
4735         logic. event delivery happens as follows:
4736         a) emission of GtkWidget::event (RUN_LAST handler). returns was_handled.
4737         b) if !was_handled in (a) and the widget is still realized, emit event-
4738            specific signal (RUN_LAST handler). returns was_handled.
4739         c) emission of GtkWidget::event-after for notification if the widget is
4740            still realized (regardless of was_handled from previous stages, no
4741            class handler). no return value.
4742         d) was_handled gets passed on to caller, to determine further
4743            propagation. if the widget got unrealized meanwhile, was_handled
4744            is returned as TRUE.
4745
4746         * gdk/gdkevents.[hc]: added gdk_event_get_root_coords() and
4747         gdk_event_get_coords().
4748
4749 Thu Jun 28 17:18:41 2001  Tim Janik  <timj@gtk.org>
4750
4751         * configure.in (GTK_MICRO_VERSION): up version to 1.3.7, interface
4752         age 0, binary age 0. depend on glib 1.3.7.
4753
4754         * gtk/gtkcontainer.c: remove g_signal_handlers_disconnect_by_func() hack.
4755
4756         * gtk/gtkmenubar.c: same here.
4757         
4758         * gtk/gtkcontainer.c (gtk_container_focus_tab): fix param-spec retrival.
4759
4760         * gtk/gtkcolorsel.c (gtk_color_selection_init): fix connect_data() usage.
4761
4762         * gtk/gtkentry.c (gtk_entry_focus_in): same here.
4763         
4764         * gtk/gtkmenubar.c (add_to_window): likewise.
4765         
4766         * gtk/gtktextbtree.c: and here...
4767         
4768         * gtk/gtktextview.c (gtk_text_view_ensure_layout): same thing.
4769         
4770         * gtk/gtktoolbar.c (gtk_toolbar_init): once more.
4771         
4772         * gtk/gtktreemodel.c (connect_ref_callbacks): and another time.
4773         
4774         * gtk/gtktreeviewcolumn.c:
4775         (_gtk_tree_view_column_set_tree_view): yet again.
4776
4777         * demos/gtk-demo/images.c (progressive_timeout): demonstrate
4778         signal connections without g_signal_connect_data().
4779         
4780         * demos/gtk-demo/stock_browser.c (do_stock_browser): second
4781         demo of the matter.
4782         
4783         * demos/testpixbuf.c (main): running out of equality phrases for the
4784         ChangeLog, but had to adapt connections here as well.
4785         
4786         * demos/testanimation.c (progressive_timeout): and for the fun of it,
4787         tackled this the same way.
4788         
4789         * tests/testtext.c (create_view): ok, it's becoming a pain at this
4790         point, but had enough enery for one more fix.
4791
4792         * tests/testtreecolumns.c (main): stand up man, do your work!
4793
4794         * tests/testtreeview.c (set_columns_type): ok, this is the last file i
4795         fix, either that's been all of it or CVS gtk is broken yet again.
4796         
4797 2001-06-29  James Henstridge  <james@daa.com.au>
4798
4799         The following changes correspond to bug #56812
4800
4801         * gdk/gdkinput.h, gdk/gdkevents.c (GDK_TYPE_DEVICE): register type
4802         code for GdkDevice.
4803
4804         * gdk/gdkcursor.[ch] (GDK_TYPE_CURSOR): register type code for
4805         GdkCursor.
4806
4807 2001-06-19  Havoc Pennington  <hp@pobox.com>
4808
4809         * gdk/x11/gdkwindow-x11.c (gdk_window_show_unraised): new function
4810         for mapping a window without fooling with stacking order, but
4811         updating the "withdrawn" flag
4812
4813         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Do event
4814         filtering as soon as possible, moving move resize and wmspec_check
4815         handling after the event filter.  Make default filter apply to all
4816         events, not just those with no GdkWindow wrapped around the X
4817         window. Fix a FIXME about how the window could be a pixmap using 
4818         RTTI; this of course assumes GDK_IS_WINDOW() is optimized. 
4819
4820         Also, be robust against events not on a known GdkWindow.
4821
4822         * gdk/x11/gdkmain-x11.c (gdk_x11_grab_server,
4823         gdk_x11_ungrab_server): export reference-counted server grabs, so
4824         other people can grab server over a GDK function that also does
4825         so.
4826
4827 Wed Jun 27 19:40:31 2001  Jonathan Blandford  <jrb@redhat.com>
4828
4829         * gtk/gtktreeviewcolumn.c
4830         (gtk_tree_view_column_pack_start_cell_renderer): New function to
4831         reflect that you can (hypothetically) pack cell renderers into a
4832         column.
4833         (gtk_tree_view_column_pack_end_cell_renderer): ditto.
4834         (gtk_tree_view_column_cell_is_visible): Move more functionality to
4835         the column.
4836         (gtk_tree_view_column_cell_can_focus): Move more functionality to
4837         the column.
4838
4839         * gtk/gtktreeview.c: Move to use new column-packing code.
4840         (gtk_tree_view_real_expand_row): remove totally braindead code.
4841         (gtk_tree_view_real_collapse_row): ditto.
4842
4843 2001-06-27  Kjartan Maraas  <kmaraas@gnome.org>
4844
4845         * gtk/gtktreeviewcolumn.c: Fix a typo.
4846         
4847 2001-06-26  Joel Becker  <jlbec@evilplan.org>
4848
4849         * gdk-pixbuf/gdk-pixbuf-csource.c: remove '#include "x"' line
4850           at the end of the file
4851
4852 2001-06-26  Havoc Pennington  <hp@redhat.com>
4853
4854         * gtk/gtkwindow.c (gtk_window_set_policy): forgot a notification
4855
4856 2001-06-26  Havoc Pennington  <hp@redhat.com>
4857
4858         * gtk/gtkwindow.c (gtk_window_class_init): add "resizable"
4859         property
4860
4861 Tue Jun 26 12:59:28 2001  Jonathan Blandford  <jrb@redhat.com>
4862
4863         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): fix
4864         stupid missing statement
4865
4866         * gtk/gtktreeview.c (gtk_tree_view_set_destroy_count_func): New
4867         private function for ATK.  It notifies you of how many _visible_
4868         children are deleted when a node is deleted.  Should be used by
4869         atk only.
4870
4871 Tue Jun 26 11:06:34 2001  Owen Taylor  <otaylor@redhat.com>
4872
4873         * gtk/gtkclist.c gtk/gtkentry.c gtk/gtkspinbutton.c:
4874         Use new pango_context_get_metrics() to fix problems
4875         with font lists in descriptions. (#56184, reported by
4876         Jonas Borgström)
4877
4878 Tue Jun 26 10:04:30 2001  Tim Janik  <timj@gtk.org>
4879
4880         * gtk/gtkiconfactory.c:
4881         * gtk/gtkitemfactory.c: use gdk_pixbuf_new_from_stream(). fixed up
4882         item factory so inlined pixbufs actually work.
4883
4884 2001-06-25  Havoc Pennington  <hp@redhat.com>
4885
4886         * gtk/gtktreeviewcolumn.h, gtk/gtktreeviewcolumn.c:
4887         s/RESIZEABLE/RESIZABLE/
4888
4889         * gtk/gtkwindow.c, gtk/gtkwindow.h: s/resizeable/resizable/
4890
4891 2001-06-25  Alexander Larsson  <alexl@redhat.com>
4892
4893         * configure.in:
4894         Added --enable-fbmanager. This is some experimental code
4895         that lets several GtkFB apps coordinate their access to the
4896         framebuffer.
4897         
4898         * acconfig.h:
4899         Added ENABLE_FB_MANAGER.
4900
4901         * gdk/linux-fb/Makefile.am:
4902         Added gdkfbmanager and gdkfbswitch.
4903
4904         * gdk/linux-fb/gdkkeyboard-fb.c:
4905         * gdk/linux-fb/gdkmouse-fb.c:
4906         * gdk/linux-fb/gdkprivate-fb.h:
4907         Split device init and open so that
4908         they can be opened and closed while switched
4909         away.
4910
4911         * gdk/linux-fb/gdkmain-fb.c:
4912         Add the basic manager communication.
4913
4914         * gdk/linux-fb/gdkrender-fb.c:
4915         Don't update to the shadow fb if we're
4916         blocked by the fb manager.
4917
4918 Sun Jun 24 22:15:16 2001  Owen Taylor  <otaylor@redhat.com>
4919
4920         * docs/Changes-2.0.txt: Add note about child property
4921         changes.
4922
4923 Sun Jun 24 21:34:32 2001  Owen Taylor  <otaylor@redhat.com>
4924
4925         * gtk/gtkenums.h gtk/gtkiconfactory.c: Add a special size for
4926         drag-and-drop GTK_ICON_SIZE_DND (Default to 32x32)
4927
4928         * gtk/gtkdnd.c (gtk_drag_dest_set_target_list): Fix problem
4929         with un'reffing wrong list reported by Jeff Franks.
4930
4931         * gtk/gtkdnd.[ch] (_gtk_drag_{source,}dest_handle_event): _prefix.
4932
4933         * gtk/gtkdnd.c (gtk_drag_set_icon_default): Use GTK_STOCK_DND
4934         for the default icon. Remove inline XPM.
4935
4936         * gtk/gtkstock.h gtk/gtkiconfactory.c:
4937         Add GTK_STOCK_DND GTK_STOCK_DND_MULTIPLE (Currently, stock_new
4938         is used for GTK_STOCK_DND, but it is a bit too small.)
4939
4940         * gtk/stock-icons/stock_dnd_multiple.png
4941         gtk/stock-icons/Makefile.am: New stock icon moved from gnome-libs.
4942
4943         * gtk/gtkdnd.c (gtk_drag_source_event_cb): Only return
4944         TRUE when starting a drag. In other cases, we are
4945         just observing. (#52995)
4946
4947         * gtk/gtkdnd.[ch] (gtk_drag_set_icon_{stock,pixbuf}): Add 
4948         function to set the icon for a drag from a GdkPixbuf
4949         or stock ID.
4950
4951         * gtk/gtkdnd.[ch] (gtk_drag_source_set_icon_{stock,pixbuf}): 
4952         Likewise, for drag sources.
4953
4954         * gtk/gtkdnd.h: Deprecate gtk_drag_set_default_icon.
4955         (Now should be done using the stock system.)
4956
4957 Sun Jun 24 12:06:47 2001  Owen Taylor  <otaylor@redhat.com>
4958
4959         * gtk/gtktextview.[ch] (gtk_text_view_set_text_window_size): 
4960         Removed - didn't work and not particularly useful anyways
4961         if it did. 
4962
4963 Sun Jun 24 11:29:35 2001  Owen Taylor  <otaylor@redhat.com>
4964
4965         * gdk/x11/gdkimage-x11.c (gdk_image_new): Fix stupid error
4966         introduced last night that was making things decidedly not work.
4967
4968         * gtk/*.[ch]: Patch from Kristian Rietveld adding 80 getters
4969         so that we have getter/setter pairing everywhere it makes
4970         sense. (#55767)
4971
4972         * gtk/gtkradiobutton.[ch] gtk/gtktoolbar.c tests/testgtk.:
4973         Rename gtk_radio_button_group to gtk_radio_button_get_group, add a
4974         deprecated compat macro. (#55516)
4975
4976         * gtk/gtklabel.[ch]: Add functions
4977         gtk_label_set/get_use_underline(), gtk_label_set/get_use_markup(),
4978         gtk_label_set_label(), which mirror the property API for GtkLabel.
4979         Make gtk_label_get_attributes() only reflect the attributes
4980         set by gtk_label_set_attributes.
4981
4982         * gtk/gtknotebook.c (gtk_notebook_set_current_page) gtk/gtkcompat.h: Rename
4983         from gtk_notebook_set_page().
4984
4985 Sat Jun 23 18:02:46 2001  Owen Taylor  <otaylor@redhat.com>
4986
4987         * configure.in: Fix tests for XShm.h.
4988
4989         * gdk/x11/gdkimage-x11.c: Cleanup error handling in
4990         gdk_image_new() by use of goto, properly use g_object_unref().
4991
4992 Sat Jun 23 22:03:20 2001  Tim Janik  <timj@gtk.org>
4993
4994         * gdk/x11/gdkimage-x11.c (gdk_image_init): disabled g_free (image)
4995         calls, as GdkImage is an object. these should be g_obejct_unref()
4996         instead but that won't work because of the g_error() statement
4997         in gdk_x11_image_destroy(). so for now, i did s/g_free/LEAK_IMAGE/
4998         to spot these places.
4999
5000 Sat Jun 23 10:27:53 2001  Owen Taylor  <otaylor@redhat.com>
5001
5002         * modules/input/gtkimcontextxim.c: Fixup some problems with 
5003         text length handling in error cases.
5004
5005         * gtk/gtkwidget.c (gtk_widget_size_allocate): Reorder
5006         a bit to make test actually warn on attempt to allocation
5007         a negative size. (#56101, Matthias Clasen)
5008
5009 Fri Jun 22 14:06:08 2001  Jonathan Blandford  <jrb@redhat.com>
5010
5011         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
5012         noticed by Brian Cameron.
5013         (gtk_tree_view_real_expand_row): Fix bug noticed by Brian
5014         Cameron.
5015
5016 2001-06-22  Hans Breuer  <hans@breuer.org>
5017
5018         * gdk/gdk.def : updated externals
5019
5020         * gdk/win32/gdkdrawable-win32.c : corrected some casts
5021         in GDK_NOTEs
5022
5023         * gdk/win32/gdkevents-win32.c : use _gdk_windowing_window_get_offsets
5024         to translate coordinates to the internal > 16 bit system
5025         Try to handle WM_WINDOWPOSCHANGED to get better performance for
5026         when moving/resizing
5027
5028         * gdk/win32/gdkkeys-win32.c : implement gdk_keymap_get_default ()
5029         and gdk_keymap_get_direction (). The latter is untested for
5030         the RTL case
5031
5032         * gtk/gtk.def : updated externals
5033
5034         * gtk/gtkmain.c : gtk_get_default_language () should reurn the result
5035         from pango_language_from_string (), not an already freed pointer
5036
5037         * gtk/stock-icons/stock_menu_sort_ascending.png : PNGs need to be 
5038         binary (-kb) to be useable on windoze
5039  
5040 2001-06-21  Alexander Larsson  <alexl@redhat.com>
5041
5042         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description): 
5043         Update to new PangoLanguage changes.
5044         
5045         * gtk/gtkwindow-decorate.c:
5046         * gtk/gtkwindow.[ch]:
5047         Added setting argument to gtk_window_set_has_frame ()
5048         
5049 Thu Jun 21 13:42:01 2001  Owen Taylor  <otaylor@redhat.com>
5050
5051         * gdk/x11/gdkkeys-x11.c (gdk_keymap_get_direction): Handle
5052         the case without XKB properly.
5053
5054         * gtk/gtkrc.c (gtk_rc_set_default_files): Remove
5055         unused gtk_rc_auto_parse variable.
5056
5057         * gtk/gtkrc.[ch] gtk/gtkstyle.c docs/Changes-2.0.txt:
5058         Remove gtk_rc_set_image_loader(), gtk_rc_load_image(), no
5059         longer needed with GdkPixbuf.
5060
5061         * gtk/gtkrc.c (_gtk_rc_init): Make private.
5062
5063 Fri Jun 15 16:26:12 2001  Owen Taylor  <otaylor@redhat.com>
5064
5065         * gtk/gtkentry.h: Mark deprecated functions with
5066         GTK_DISABLE_DEPRECATED.
5067
5068 Mon Jun 11 18:15:16 2001  Owen Taylor  <otaylor@redhat.com>
5069
5070         * gdk/gdk.h: Add missing gdk_rectangle_get_type() prototype.
5071
5072         * gtk/gtk[hv]scale.c: Include math.h, stdlib.h
5073
5074         * gdk/gdkpango.h gtk/gtkclist.c gtk/gtkentry.c gtk/gtkmain.[ch]
5075           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtktextbuffer.c
5076           gtk/gtktextdisplay.c gtk/gtktextiter.[ch]
5077           gtk/gtktextlayout.c gtk/gtktexttag.[ch] gtk/gtkwidget.c: Adapt
5078           to recent changes in Pango.
5079
5080         * tests/testgtk.c: Set language tags with gtk_label_set_markup()
5081           to test whether the basic engine honors them.
5082
5083 Thu Jun 21 02:13:40 2001  Tim Janik  <timj@gtk.org>
5084
5085         * gtk/gtkcontainer.[hc]: added gtk_container_child_set_property() and
5086         gtk_container_child_get_property().
5087
5088 Wed Jun 20 19:19:15 2001  Jonathan Blandford  <jrb@redhat.com>
5089
5090         * gtk/gtktreeview.c (gtk_tree_view_move_cursor_up_down): clean up
5091         (gtk_tree_view_move_cursor_page_up_down): implement.
5092
5093 Wed Jun 20 05:32:05 2001  Tim Janik  <timj@gtk.org>
5094
5095         * gtk/gtkspinbutton.c: make maximum digits compile time configurable
5096         via MAX_DIGITS and up to 20. 5 was just ridiculously small.
5097         don't use automatic fixed size buffer for printf-ing floats, doubles
5098         can expand to really _huge_ strings, use g_strdup_printf() instead.
5099
5100 Wed Jun 20 04:28:24 2001  Tim Janik  <timj@gtk.org>
5101
5102         * gtk/gtkrange.c (gtk_range_class_init): hum, "adjustment" was a
5103         construct property in 1.2 and still needs to be.
5104
5105         * gtk/gtkwidget.c: "composite_child" is not a settable property.
5106
5107 Tue Jun 19 19:13:19 2001  Jonathan Blandford  <jrb@redhat.com>
5108
5109         * gtk/gtkliststore.c (gtk_list_store_clear): 
5110         * gtk/gtktreestore.c (gtk_tree_store_clear): New functions to
5111         clear a model.
5112
5113 Mon Jun 18 02:00:49 2001  Tim Janik  <timj@gtk.org>
5114
5115         * gtk/gtkwidget.c (gtk_widget_get_property): fix PROP_EVENTS.
5116
5117         * gtk/Makefile.am:
5118         * gtk/gtk.h: disabled GtkPacker compilation.
5119
5120         * gtk/gtkarg.[hc], gtk/gtkargcollector.c: got rid of these.
5121
5122         * gtk/gtknotebook.c:
5123         * gtk/gtktable.c:
5124         * gtk/gtkbox.c: ported this over to child properties.
5125
5126         * gtk/gtksettings.c: fetch class properties via
5127         g_object_class_list_properties().
5128
5129         * gtk/gtkcontainer.[hc]: implemented child properties, got rid of the
5130         child arg interface. use gobjectnotifyqueue.c for child property
5131         notification.
5132
5133         * gtk/gtkwidget.[hc]: provide necessary means for container child
5134         properties, i.e. ::child_notify signal,
5135         gtk_widget_freeze_child_notify(),
5136         gtk_widget_child_notify(),
5137         gtk_widget_thaw_child_notify().
5138
5139         * tests/testgtk.c: removed inferior property handling code, for
5140         property editing, a generic module should be used, and GLE
5141         coincidentally fullfills that purpose.
5142
5143         * docs/reference/Makefile.am: disabled gtk docs building, gtk-doc
5144         needs to be adapted to g_object_class_list_properties() before this
5145         builds again.
5146
5147 Mon Jun 18 20:06:10 2001  Jonathan Blandford  <jrb@redhat.com>
5148
5149         * gtk/gtktreeview.c (gtk_tree_view_row_expanded): New function to
5150         test if a node is expanded.
5151
5152 Mon Jun 18 19:41:38 2001  Jonathan Blandford  <jrb@redhat.com>
5153
5154         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): Fix bug
5155         where collapsing a selected row would result in the cursor/anchor
5156         getting screwed up.
5157
5158 Fri Jun 15 18:53:48 2001  Jonathan Blandford  <jrb@redhat.com>
5159
5160         * gtk/gtktreesortable.c (gtk_tree_sortable_set_sort_func): Rename
5161         gtk_tree_sortable_sort_column_id_set_func.  It's much shorter now.
5162         * gtk/gtktreeview.c (gtk_tree_view_sort_iter_changed): WOOO!!!
5163         Now I can really reorder/sort all Store widgets.  treesorttest
5164         seems to just work now.
5165         * gtk/gtklistview.c (gtk_list_store_iter_changed): Whoops.
5166         testtreesort worked through a big coincidence all this time.
5167         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Nasty bug fix in nasty
5168         code.
5169         * tests/testtreecolumns.c: Big 'ol warning at the top letting
5170         people know that this code should never ever ever be copied.
5171
5172 2001-06-15  Jonas Borgström  <jonas@codefactory.se>
5173
5174         * gtk/gtkwindow.h: Fixed a small typo, it should be
5175         GTK_WINDOW_GROUP_GET_CLASS and not GTK_WINDOW_GET_CLASS
5176         on line 134.
5177
5178 2001-06-14  Havoc Pennington  <hp@redhat.com>
5179
5180         Docs fixups, and:
5181         
5182         * gtk/gtkcompat.h: remove GTK_DISABLE_COMPAT_H, replace with
5183         GTK_DISABLE_DEPRECATED
5184
5185 Thu Jun 14 19:21:27 2001  Jonathan Blandford  <jrb@redhat.com>
5186
5187         * gtk/gtktreestore.c (gtk_tree_store_sort_helper): Whoops.  Forgot
5188         this a couple months ago.  Now GtkTreeStore sort of sorts.  I'll
5189         finish it off tonight, though it basically works now when it's a
5190         list.  Also, I have a sinking feeling neither GtkTreeStore or
5191         GtkListStore actually resort when adding a new item.  I'll look
5192         into it.
5193
5194 2001-06-14  Havoc Pennington  <hp@redhat.com>
5195
5196         * demos/gtk-demo/main.c (load_file): fix bug identified by
5197         warnings I just added to gtktextbuffer
5198
5199 2001-06-14  Havoc Pennington  <hp@redhat.com>
5200
5201         * gtk/gtkwindow.c (window_group_cleanup_grabs): fix other typo
5202
5203         * gtk/gtkwidget.c (gtk_widget_propagate_state): fix typo
5204
5205         * gtk/gtktextbtree.c: don't leak node data all over the place.
5206
5207         * demos/gtk-demo/main.c (main): create fontify tags for the right
5208         buffer
5209
5210         * gtk/gtktextbuffer.c, gtk/gtktexttagtable.c: enhance docs
5211         to mention tags in the same table can't have the same name,
5212         suggested by Skip Montanaro
5213
5214 2001-06-11  Havoc Pennington  <hp@redhat.com>
5215
5216         * gtk/gtktexttagtable.c (gtk_text_tag_table_add): improve warning 
5217         for trying to add two tags with same name to the tag table
5218
5219         * demos/gtk-demo/main.c (main): fix colors ;-)
5220
5221 `Fri Jun  8 17:56:52 2001  Owen Taylor  <otaylor@redhat.com>
5222
5223         * gtk/gtkwindow.[ch] gtk/gtkmain.c: Add a GtkWindowGroup struct
5224         that allows grouping together multiple windows so that grabs
5225         within that set of windows only affect those windows.
5226
5227         * gtk/gtkmain.c gtk/gtkwidget.[ch]: Add a "grab_notify"
5228         signal for notification when a widget becomes shadowed
5229         by a grab or is no longer shadowed by a grab.
5230
5231         * gtk/gtkwidget.c (gtk_widget_propagate_state)
5232           gtk/gtkmain.c: (gtk_widget_grab_add): Don't allow
5233         insenstive widgets to maintain a grab.
5234
5235 2001-06-14  Alexander Larsson  <alexl@redhat.com>
5236
5237         * docs/README.linux-fb:
5238         Add some example config files that can be used with the URW fonts.
5239         
5240         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init): 
5241         Set up the color ramps for DirectColor mode.
5242
5243 2001-06-11  Havoc Pennington  <hp@redhat.com>
5244
5245         * Release 1.3.6
5246          
5247 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5248
5249         * gdk/linux-fb/gdkwindow-fb.c:
5250         Unify shaped window code and make it repaint the area that used
5251         to be part of the shape, but isn't anymore.
5252
5253 2001-06-11  Havoc Pennington  <hp@redhat.com>
5254
5255         * NEWS: Updates
5256
5257         * configure.in (GTK_MINOR_VERSION): bump version to 1.3.6
5258
5259         * gtk/Makefile.am: glib_genmarshal already contains top_builddir
5260         
5261 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5262
5263         * gdk/linux-fb/gdkdnd-fb.c (gdk_drag_status):
5264         Don't pass on GDK_ACTION_DEFAULT. The Xdnd code
5265         passes zero instead, so do we.
5266         
5267 2001-06-13  Alexander Larsson  <alla@lysator.liu.se>
5268
5269         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
5270         Deep copy dash_list too.
5271         (_gdk_fb_gc_new): Set default cap_style before
5272         setting values.
5273
5274 2001-06-12  Alexander Larsson  <alla@lysator.liu.se>
5275
5276         * gdk/linux-fb/gdkkeyboard-fb.c (gdk_keymap_get_default,
5277         gdk_keymap_get_direction): New functions.
5278
5279 Tue Jun 12 12:41:27 2001  Jonathan Blandford  <jrb@redhat.com>
5280
5281         * gtk/gtktreemodel.h (GTK_TREE_MODEL_LIST_ONLY): further justify
5282         gtk_tree_model_get_flags by adding a second flag for atk.
5283
5284         * gtk/gtktreemodel.c: make cursor behavior interact better with
5285         mouse presses.
5286
5287 Mon Jun 11 12:43:08 2001  Jonathan Blandford  <jrb@redhat.com>
5288
5289         * gtk/gtktreeview.c (gtk_tree_view_class_init): changed
5290         expand_row/collapse_row to be 2 signals each -- test_expand_row
5291         and row_expanded as well as test_collapse_row and row_collapsed.
5292
5293 2001-06-10  Anders Carlsson  <andersca@codefactory.se>
5294
5295         * demos/gtk-demo/stock_browser.c (do_stock_browser): Update
5296         signal name to be changed instead of selection_changed.
5297
5298 2001-06-08  Havoc Pennington  <hp@redhat.com>
5299
5300         * gtk/gtkentry.c (gtk_entry_class_init): add read-only
5301         "scroll_offset" property for notification when the layout offsets
5302         may have changed
5303         (gtk_entry_adjust_scroll): add notify for scroll_offset
5304         (gtk_entry_layout_index_to_text_index): function to compensate for
5305         preedit string when doing coordinate stuff on the entry's layout
5306         (gtk_entry_text_index_to_layout_index): inverse function
5307         (gtk_entry_get_layout_offsets): hook to get current position of
5308         the layout      
5309         (gtk_entry_get_layout): hook to get the layout itself.
5310
5311         * gtk/gtklabel.c (gtk_label_get_layout): new function
5312
5313 Fri Jun  8 19:49:29 2001  Jonathan Blandford  <jrb@redhat.com>
5314
5315         * gtk/gtktreeview.c (gtk_tree_view_real_select_cursor_row): New
5316         keybinding.
5317         (gtk_tree_view_focus): Fix merge conflict.
5318
5319 Fri Jun  8 18:41:30 2001  Jonathan Blandford  <jrb@redhat.com>
5320
5321         * gtk/gtktreeview.c (gtk_tree_view_set_cursor): new function to
5322         clean up cursor handling.
5323
5324 2001-06-08  Havoc Pennington  <hp@redhat.com>
5325
5326         * gtk/gtktextbuffer.c (gtk_text_buffer_get_start_iter): added this
5327         function
5328
5329         * gtk/gtktextview.c (gtk_text_view_get_default_attributes): added
5330         this function
5331
5332 2001-06-08  Alex Larsson  <alexl@redhat.com>
5333
5334         * gtk/gtkcompat.h.in:
5335         Added compat macros for all old GTK_TYPE_GDK_xxx types.
5336         Fixes bug #52892
5337
5338 2001-06-08  Havoc Pennington  <hp@redhat.com>
5339         
5340         * gtk/gtkhsv.h (struct _GtkHSVClass): had GtkContainerClass as
5341         parent still
5342
5343 2001-06-08  Havoc Pennington  <hp@redhat.com>
5344
5345         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): geez,
5346         don't call g_list funcs on GSList
5347
5348         * gtk/gtkwidget.c (gtk_widget_child_focus): replaces
5349         gtk_container_focus(), since some widgets have focusable locations
5350         which are not other widgets. These widgets should not have to be 
5351         containers just to manage the focus. For example, GtkHSV is
5352         currently a container for no good reason. Also, this cleans
5353         up the "if (is_container && is_sensitive && is_drawable)
5354         container_focus ()" mess in widget implementations.
5355
5356         * gtk/gtkcontainer.c (gtk_container_focus): deprecate this
5357         function, and have it just call gtk_widget_child_focus().
5358
5359         * gtk/gtkhsv.c: derive from widget not container
5360         
5361         Throughout: fix to reflect GtkContainer::focus change
5362         
5363 Fri Jun  8 12:38:49 2001  Jonathan Blandford  <jrb@redhat.com>
5364
5365         * gtk/gtktable.c (gtk_table_resize): warn if row/cols are out of
5366         range.  Fix bug #55921
5367
5368         * gtk/gtkliststore.c (gtk_list_store_new_with_types): fix doc bug
5369         (#55920).
5370
5371 Fri Jun  8 12:03:07 2001  Owen Taylor  <otaylor@redhat.com>
5372
5373         * gdk/gdkkeys.[ch]: Add a direction-changed signal,
5374         and gdk_keymap_get_current_direction().
5375
5376         * gdk/x11/gdkevents-x11.c gdk/x11/gdkkeys-x11.c
5377           gdk/x11/gdkmain-x11.c gdk/x11/gdkprivate-x11.h: Track
5378         the current locked group, use it to set the keymap
5379         direction.
5380
5381         * gtk/gtksettings.c: Add a new gtk-split-cursor setting
5382         to determine whether we draw a split cursor or use
5383         a jumping cursor based on the current direction.
5384
5385         * gtk/gtkentry.c gtk/gtktextview.c gtk/gtktextlayout.[ch]:
5386         Obey the split cursor setting. 
5387
5388 Fri Jun  8 11:57:50 2001  Owen Taylor  <otaylor@redhat.com>
5389
5390         * gtk/gtkimmulticontext.c (activate_cb): Only activate
5391         when toggling on, not when toggling off... (#55906)
5392
5393 Wed Jun  6 10:37:07 2001  Owen Taylor  <otaylor@redhat.com>
5394
5395         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): 
5396         s/gdk_window_begin_paint/gdk_window_begin_paint_region/
5397         in docs. (#55812, Vitaly Tishkov)
5398
5399 2001-06-08  Anders Carlsson  <andersca@codefactory.se>
5400
5401         * demos/gtk-demo/main.c (create_tree): Changed signal name from
5402         selection_changed to changed in signal connection to GtkTreeSelection,
5403         also used g_signal_connectc since GtkTreeSelection is now a GObject.
5404
5405 Thu Jun  7 18:25:42 2001  Jonathan Blandford  <jrb@redhat.com>
5406
5407         * gtk/gtktreeselection.c: Now it's a GObject instead of a
5408         GtkObject.  The GtkTreeSelection::selection_changed signal is now
5409         the GtkTreeSelection::changed signal.
5410
5411         * gtk/gtktreeview.c: Modified to deal with new GtkTreeSelection
5412         object.
5413
5414         * tests/gtktree*.c: Modified to deal with new GtkTreeSelection
5415         object.
5416
5417 2001-06-07  Havoc Pennington  <hp@redhat.com>
5418
5419         * gtk/Makefile.am: fix glib-mkenums and glib-genmarshal again
5420
5421 2001-06-07  Havoc Pennington  <hp@redhat.com>
5422         
5423         * gtk/Makefile.am: fixups for glib-mkenums and glib-genmarshal
5424         (not tested yet because with absolute path to srcdir I can't build
5425         atk, but it was broken anyway so this may help) 
5426
5427 2001-06-07  Havoc Pennington  <hp@redhat.com>
5428
5429         * configure.in: output m4macros/Makefile
5430         
5431 Wed Jun  6 21:59:16 2001  Jonathan Blandford  <jrb@redhat.com>
5432
5433         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): hook up arrow
5434         buttons.  Fixes #55460 reported by matthiasc@poet.de.
5435
5436 Wed Jun  6 21:18:54 2001  Jonathan Blandford  <jrb@redhat.com>
5437
5438         * gtk/gtktreeview.c (gtk_tree_view_real_collapse_row): centralize
5439         expansion/collapsing so it only happens in one place.
5440         (gtk_tree_view_real_expand_row): ditto.
5441
5442 2001-06-07  Havoc Pennington  <hp@redhat.com>
5443
5444         * tests/Makefile.am: add missing -I flag
5445
5446         * gtk/Makefile.am: use @GLIB_MKENUMS@, @GLIB_GENMARSHAL@, etc.
5447
5448         * configure.in: use pkg-config to see if GModule is
5449         supported; fix to properly turn on included loaders 
5450         when GModule isn't supported; don't use AC_CHECK_LIB 
5451         when libs are not installed yet
5452
5453         * autogen.sh: add support for AUTOGEN_SUBDIR_MODE
5454
5455         * Makefile.am (SUBDIRS): add m4macros subdir
5456
5457         * gtk/Makefile.am: $(srcdir)/foo targets must be $(srcdir)/foo in
5458         dependencies also.
5459
5460 Wed Jun  6 19:31:11 2001  Jonathan Blandford  <jrb@redhat.com>
5461
5462         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix silly bug
5463         reported by "Padraig O'Briain" <Padraig.Obriain@Sun.COM>.
5464
5465 Wed Jun  6 20:01:38 2001  Jonathan Blandford  <jrb@redhat.com>
5466
5467         * gtk/gtktreeview.c
5468         (gtk_tree_view_real_expand_collapse_cursor_row): Handle key
5469         bindings to expand and collapse rows.
5470         (gtk_tree_view_real_select_cursor_parent): New key binding.
5471         (gtk_tree_view_real_toggle_cursor_row): New key binding.
5472
5473         * gtk/gtkmarshal.list: new
5474         marshaller. (VOID__BOOLEAN_BOOLEAN_BOOLEAN)
5475
5476 2001-06-06  Havoc Pennington  <hp@redhat.com>
5477
5478         * gtk/gtkrange.c (gtk_range_class_init): add "inverted" property
5479
5480         * gtk/gtkscale.c (gtk_scale_class_init): Change Page Up and Page
5481         Down to move visually rather than logically, since it confuses 
5482         people. Add -/+ and Ctrl--/+ bindings for logical movement.
5483
5484 2001-06-06  Alex Larsson  <alexl@redhat.com>
5485
5486         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
5487         Fix up error messages.
5488
5489 Wed Jun  6 10:34:42 2001  Owen Taylor  <otaylor@redhat.com>
5490
5491         * gtk/gtktooltips.h: Include gtkwidget.h 
5492         (#55798, Karl Nelson)
5493
5494         * gdk/x11/gdkwindow-x11.c (utf8_is_latin1): 0xff is
5495         a valid latin-1 character. (Marc Lehmann, #35467)
5496
5497         * gdk/x11/gdkwindow-x11.c: Fix minor typo in comment. 
5498         (Marc Lehmann, #35467)
5499         
5500 2001-06-05  Alex Larsson  <alexl@redhat.com>
5501
5502         * demos/gtk-demo/appwindow.c (do_appwindow):
5503         Don't swap the order of the args to gtk_widget_destroyed.
5504
5505         * tests/testgtk.c (destroy_properties):
5506         Don't crash when the properties window is destroyed.
5507
5508         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_from_stock):
5509         Use with_mnemonics to handle the case of stock items with
5510         underscores in them.
5511
5512 2001-06-05  Havoc Pennington  <hp@redhat.com>
5513
5514         * gtk/gtktextiter.c (gtk_text_iter_order): rename from 
5515         gtk_text_iter_reorder
5516
5517 2001-06-05  Havoc Pennington  <hp@redhat.com>
5518
5519         * gtk/gtktoolbar.c (gtk_toolbar_remove_space): new function
5520
5521 2001-06-05  Havoc Pennington  <hp@redhat.com>
5522
5523         * gtk/gtkspinbutton.c (gtk_spin_button_set_range): clamp the value 
5524         to the range that was set
5525
5526         * gtk/gtkrange.c: add value_changed signal, primarily 
5527         intended for use with GtkScale
5528         (gtk_range_set_increments): new function
5529         (gtk_range_set_range): new function with weird name
5530         (gtk_range_set_value): new function
5531         (gtk_range_get_value): new function
5532
5533         * gtk/gtkspinbutton.c (gtk_spin_button_get_value): rename 
5534         from gtk_spin_button_get_value_as_float(). Compat #define
5535         added for get_value_as_float.
5536
5537         * gtk/gtkhscale.c (gtk_hscale_new_with_range): new function
5538
5539         * gtk/gtkvscale.c (gtk_vscale_new_with_range): new function
5540
5541 Tue Jun  5 14:57:18 2001  Jonathan Blandford  <jrb@redhat.com>
5542
5543         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_size): Fix bug #55573
5544
5545 Mon Jun  4 12:41:25 2001  Owen Taylor  <otaylor@redhat.com>
5546
5547         * gtk/gtkwidget.h: Deprecate gtk_widget_set().
5548
5549         * tests/testgtk.c (create_tooltips): Remove usage of
5550         gtk_widget_set().
5551
5552 2001-06-05  Havoc Pennington  <hp@redhat.com>
5553
5554         * gtk/gtkcolorsel.c: Use new mnemonic convenience functions
5555
5556         Applying patch from Jeff Franks, with function docs added.
5557         
5558         * gtk/gtkcheckbutton.c (gtk_check_button_new_with_mnemonic):
5559         remove call to set_mnemonic_widget, change docs a bit.  
5560
5561         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_new_with_mnemonic):
5562         new function
5563
5564         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_new_with_mnemonic):
5565         new function
5566
5567         * gtk/gtkmenuitem.c (gtk_menu_item_new_with_mnemonic): new function
5568
5569         * gtk/gtkradiobutton.c (gtk_radio_button_new_with_mnemonic): new
5570         function
5571         (gtk_radio_button_new_with_mnemonic_from_widget): new function
5572
5573         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_new_with_mnemonic):
5574         new function
5575
5576         * gtk/gtktogglebutton.c (gtk_toggle_button_new_with_mnemonic): new
5577         function        
5578
5579         * gtk/gtklabel.c (gtk_label_new_with_mnemonic): Improve docs on 
5580         auto-selection of mnemonic widget.
5581
5582 Mon Jun  4 15:05:24 2001  Jonathan Blandford  <jrb@redhat.com>
5583
5584         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_max_width):
5585         Fix segfault found by Vitaly Tishkov <tvv@sparc.spb.su>.
5586         (gtk_tree_view_column_set_min_width): ditto.
5587
5588 Tue Jun  5 11:04:06 2001  Owen Taylor  <otaylor@redhat.com>
5589
5590         * gdk/gdkpixmap.h (GDK_PIXMAP_GET_CLASS): 
5591         s/GdkPixmapClass/GdkPixmapObjectClass/. (#51890, Jeff Franks)
5592
5593 Mon Jun  4 12:50:11 2001  Owen Taylor  <otaylor@redhat.com>
5594
5595         * gtk/gtkctree.c (gtk_ctree_insert_gnode): Add a missing
5596         gtk_clist_thaw().
5597
5598 2001-06-04  Havoc Pennington  <hp@pobox.com>
5599
5600         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Ignore 
5601 r       eleases for buttons 6, 7
5602
5603 2001-06-04  Havoc Pennington  <hp@redhat.com>
5604
5605         * gtk/gtkseparatormenuitem.h: Fix a search-and-replace screwup
5606         (s/CHECK/SEPARATOR/ gone awry). Patch from Jeff Franks, bug
5607         #55562
5608
5609 2001-06-04  Havoc Pennington  <hp@redhat.com>
5610
5611         * gtk/gtktextview.c (gtk_text_view_size_request): handle case
5612         where text_view->layout == NULL by assuming its size is 0, 
5613         i.e. same as if we haven't done any reflow. Reported by 
5614         Hidetoshi Tajima #55448 
5615
5616 2001-06-04  Havoc Pennington  <hp@redhat.com>
5617
5618         * gdk/x11/gdkevents-x11.c (gdk_event_translate): support button 6
5619         and 7 for scroll left/right, from Thomas Broyer
5620
5621 2001-05-10  Havoc Pennington  <hp@redhat.com>
5622
5623         * gtk/gtksettings.c (gtk_settings_get_property): Handle case where
5624         we need to parse the xsetting as if it were an RC file string.
5625
5626         * gtk/gtkcolorsel.c (gtk_color_selection_class_init): load initial
5627         value of palette from settings, not from static variable
5628
5629         * gdk/x11/gdkevents-x11.c: add color palette, toolbar mode to
5630         xsettings translation table
5631
5632         * gtk/gtktoolbar.c (gtk_toolbar_new): Remove arguments, because 
5633         hardcoding the toolbar style conflicts with new customizable 
5634         toolbar style philosophy
5635         (gtk_toolbar_class_init): add settings for default toolbar style;
5636         these are used unless the app specifically forces a toolbar style
5637
5638         * gtk/gtksettings.c (settings_install_property_parser): only
5639         return at the start if we warn and parser == NULL
5640
5641         * gtk/gtkcolorsel.c (gtk_color_selection_finalize): disconnect the
5642         palette changed handler so we don't notify dead color selections
5643
5644         * gtk/gtkstyle.c (gtk_default_draw_shadow): handle
5645         xthickness/ythickness of 0 or 1 properly 
5646         (gtk_default_draw_resize_grip): clear the background behind the
5647         resize grips, and align to bottom right if we square the 
5648         area to be drawn.
5649
5650         * gtk/gtkstatusbar.c (gtk_statusbar_init): set horizontal usize on 
5651         statusbar label to 1, so it doesn't make toplevels resize oddly
5652         (gtk_statusbar_size_request): add grip size to request
5653         (gtk_statusbar_size_allocate): hack so the hbox still works with 
5654         the grip size in the request
5655
5656         * gtk/gtktoolbar.c (gtk_toolbar_show_all): override to fix 
5657         bug where showing all on a toplevel makes the toolbar 
5658         button text appear despite the toolbar mode
5659
5660         * gtk/gtkmenubar.c: add internal padding style property
5661
5662         * gtk/gtktoolbar.c: Add internal padding style property; add
5663         shadow type style property
5664
5665         * gtk/gtkmenubar.c (gtk_menu_bar_paint): paint box with widget
5666         state; and put Container::border_width outside the frame
5667
5668         * gtk/gtktextview.c: don't draw focus rectangle if we're in
5669         interior focus mode, we just use blinking cursor
5670
5671 2001-06-04  Havoc Pennington  <hp@redhat.com>
5672
5673         * configure.in: Make gdk-pixbuf have same version number as GTK
5674
5675 2001-06-04  Havoc Pennington  <hp@redhat.com>
5676
5677         * gtk/gtkspinbutton.c: Get rid of stupid g_return_if_fail on 
5678         digits greater than 6. If there actually are limits (which there
5679         likely aren't), should clamp to them not warn.
5680         (gtk_spin_button_new_with_range): don't take log of 0
5681         (gtk_spin_button_size_request): use digits to compute size
5682         request, rather than step increment.
5683
5684         * tests/testgtk.c (create_spins): test larger values of digits
5685         
5686         * gtk/gtkfontsel.c (gtk_font_selection_init): scroll to selected
5687         font on map not expose, so we don't get weirdness during scrolling
5688
5689 2001-06-04  Havoc Pennington  <hp@redhat.com>
5690
5691         * gtk/gtkclist.c (vadjustment_value_changed): Apply fix from
5692         Sam Solon, bug #54577, update value even if not drawable.
5693
5694 2001-06-04  Havoc Pennington  <hp@redhat.com>
5695
5696         * gtk/gtkrange.c (gtk_range_scroll_event): change SCROLL_RIGHT to
5697         SCROLL_LEFT, reported by Thomas Broyer.
5698
5699 2001-06-04  Havoc Pennington  <hp@redhat.com>
5700
5701         * gtk/gtkrange.c (gtk_range_adjustment_value_changed): 
5702         Process updates immediately, to prevent funny lag effect
5703         when scrolling, at some mild potential efficiency cost.
5704
5705 2001-06-04  Havoc Pennington  <hp@redhat.com>
5706
5707         * gtk/gtkrange.c (gtk_range_button_press): on middle click, center
5708         slider on the click.
5709
5710 2001-06-03  Havoc Pennington  <hp@pobox.com>
5711
5712         * gtk/gtkstyle.c (gtk_default_draw_slider): make this special-case
5713         hscale/vscale details, so we can use it for scrollbar as well.
5714
5715         * tests/testgtk.c (reformat_value): honor digits from GtkScale
5716
5717         * gtk/gtkenums.h (GtkTroughType): Remove this enum
5718         (GtkScrollType): add START and END from GtkTroughType
5719
5720         * gtk/gtkstyle.c (gtk_default_draw_slider): was not properly using
5721         its x/y arguments
5722
5723         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkscrollbar.h,
5724         gtk/gtkscrollbar.c, gtk/gtkscale.h, gtk/gtkscale.c,
5725         gtk/gtkhscrollbar.h, gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.h,
5726         gtk/gtkvscrollbar.c, gtk/gtkhscale.h, gtk/gtkhscale.c,
5727         gtk/gtkvscale.h, gtk/gtkvscale.c: Rewrite GtkRange and subclasses.
5728
5729         Notable changes in the process:
5730          
5731         - stepper_size style property is the height for vertical 
5732           ranges, width for horizontal; the other dimension matches
5733           the trough size
5734         - add ability to do NeXT-style steppers (and several other styles
5735           that don't make any sense)
5736         - added min_slider_length, fixed_slider_length properties to
5737           GtkScrollbar
5738         - cleaned some private (or at least useless) functions out of
5739           gtkscale.h    
5740         - moved bindings to GtkScale from subclasses, even arrow keys,
5741           since blind users don't know scale orientation.
5742         - change move_slider action signal to use new GtkScrollType,
5743           remove GtkTroughType argument
5744         - digits rounds the values a range will input to the given 
5745           number of decimals, but will not try to force adjustment 
5746           values set by other controllers. That is, we no longer
5747           modify adjustment->value inside a value_changed handler.
5748         - added getters for GtkScale setters
5749         - middle-click begins a slider drag
5750         
5751 Fri Jun  1 18:54:47 2001  Jonathan Blandford  <jrb@redhat.com>
5752
5753         * gtk/gtktreeview.c: (gtk_tree_view_focus): Initial stab at
5754         getting the focus code to work.
5755         (gtk_tree_view_class_init): Add a bunch of keybindings.
5756
5757         * gtk/gtktreeviewcolumn.c
5758         (gtk_tree_view_column_set_cell_data_func):
5759         s/GtkCellDataFunc/GtkTreeCellDataFunc.
5760         (_gtk_tree_view_column_set_tree_view): Use "notify::model" instead
5761         of "properties_changed" to help justify the death of the latter
5762         signal. (-:
5763
5764         * tests/testtreefocus.c (main): Let some columns be focussable to
5765         test focus better.
5766
5767 2001-06-01  Havoc Pennington  <hp@redhat.com>
5768
5769         * gtk/gtkentry.c (gtk_entry_commit_cb): implement overwrite mode
5770         
5771         * gtk/gtktextview.c (gtk_text_view_commit_handler): don't
5772         overwrite in overwrite mode if we already deleted the selection
5773         and replaced it with new text.  
5774
5775         * gtk/gtklabel.c (gtk_label_select_region_index): if you set the
5776         selection to an empty range, clear the clipboard if we owned it.
5777         (gtk_label_set_selectable): give up selection if we become
5778         unselectable.
5779         (gtk_label_state_changed): override state changed to unselect text
5780         when insensitive
5781         (get_text_callback): add paranoia check that indexes aren't
5782         outside of label->text
5783         (gtk_label_select_region): make -1 for start_offset mean "end of
5784         label," for consistency with GtkEditable
5785
5786         * gtk/gtkmessagedialog.c (gtk_message_dialog_new): honor
5787         GTK_DIALOG_NO_SEPARATOR flag
5788
5789 Fri Jun  1 11:47:11 2001  Owen Taylor  <otaylor@redhat.com>
5790
5791         * gtk/gtkcombo.c (gtk_combo_set_use_arrows_always): Fix 
5792         notifications on non-existant "enable_arrow_keys".
5793         (#53753, Skip Montanaro)
5794
5795 Fri Jun  1 11:31:55 2001  Owen Taylor  <otaylor@redhat.com>
5796
5797         * gdk/gdkrectangle.c (gdk_rectangle_get_type): Add 
5798         GDK_TYPE_RECTANGLE.
5799
5800         * gtk/gtkwidget.c (gtk_widget_class_init): Fix type
5801         of allocation argument be GDK_TYPE_RECTANGLE.
5802
5803 Thu May 31 12:43:57 2001  Owen Taylor  <otaylor@redhat.com>
5804
5805         * gtk/gtkoptionmenu.c: Account for the fact that the border
5806         width is _outside_ the window. (Fixes #54585, bug found
5807         by Bastien Nocera.)
5808
5809 Wed May 30 15:56:30 2001  Owen Taylor  <otaylor@redhat.com>
5810
5811         * gtk/gtksettings.c (gtk_settings_get_property): Validate
5812         value from GDK settings against parameter spec.
5813
5814         * gdk/x11/gdkevents-x11.c (gdk_setting_get): Add assignments
5815         to temporary values and use g_value_transform(), since
5816         thinking that GValue was going to be easy or efficient
5817         to use was, of course, a mistake.
5818
5819         * gtk/gtksettings.c: Add cursor blink setting.
5820         
5821         * gdk/x11/gdkevents-x11.c: Add cursor blink X settings.
5822
5823         * gtk/gtkentry.c: Add cursor blinking.
5824
5825         * gtk/gtktextview.c (gtk_text_view_check_cursor_blink): Use
5826         cursor blink global settings.
5827
5828         * gtk/gtkentry.c (gtk_entry_button_press): Add notification
5829         for :text_position in places where it is missing.
5830
5831 Tue May 29 18:17:11 2001  Owen Taylor  <otaylor@redhat.com>
5832
5833         * autogen.sh (have_libtool): Fix GNU sedism (#55430)
5834
5835 Tue May 29 17:40:29 2001  Owen Taylor  <otaylor@redhat.com>
5836
5837         * configure.in (GTK_DEP_CFLAGS): Use $PKG_CONFIG,
5838         not pkg-config. (#51032)
5839
5840         * gdk/gdkproperty.h: Remove inappropriate G_GNUC_CONST
5841         (fixes #51952, James Henstridge)
5842         
5843 2001-05-27  Alexander Larsson  <alla@lysator.liu.se>
5844
5845         * gtk/gtkstock.h (GTK_STOCK_GO_UP):
5846         Rename to the more correct gtk-go-up.
5847
5848         * gtk/stock-icons/stock_menu_sort_ascending.png:
5849         Added new file.
5850         
5851         * gtk/stock-icons/stock_menu_sort_descending.png:
5852         Changed to show descending instead of ascending.
5853
5854         * gtk/gtkiconfactory.c:
5855         Added menu size icon to sort ascending.
5856
5857         * gtk/stock-icons/Makefile.am:
5858         Added stock_menu_sort_ascending.png.
5859         
5860         * gtk/gtkseparatormenuitem.c:
5861         Use correct typenames.
5862
5863 Sun May 20 20:07:35 2001  Tim Janik  <timj@gtk.org>
5864
5865         * gtk/gtksignal.[hc] (gtk_signal_connect_full): make hanlder id a
5866         gulong as in GSignal.
5867
5868 Fri May 25 19:04:17 2001  Jonathan Blandford  <jrb@redhat.com>
5869
5870         * gtk/gtktreeview.c (gtk_tree_view_calc_size): Remove almost all
5871         instances of GtkCellRenderer in code (all but dnd icon code).
5872         Virtualized in GtkTreeViewColumn.  Now I need to move focus in
5873         there, and I can do multiple Cells per column.
5874
5875         * gtk/gtktreeviewcolumn.c: Proxy all cell calls correctly
5876
5877         * gtk/gtktreemodel.c (gtk_tree_row_reference_new_proxy): fix bug
5878         when model was unreffed prior to removing the row reference.
5879
5880 2001-05-25  Havoc Pennington  <hp@redhat.com>
5881
5882         * gtk/gtkiconfactory.c: fix so that default icons are created if 
5883         you call gtk_stock_list_ids()
5884
5885         * demos/gtk-demo/stock_browser.c (create_model): sort stock items
5886         in list
5887
5888 2001-05-25  Havoc Pennington  <hp@redhat.com>
5889
5890         * gtk/gtkiconfactory.c (gtk_icon_set_get_sizes): get sizes an icon
5891         set can render without falling back to missing image icon
5892
5893         * gtk/gtktextview.c (gtk_text_view_size_request): request full
5894         size of text, instead of random values
5895
5896         * gtk/gtktreeview.c (gtk_tree_view_size_request): request full
5897         size of tree view, instead of random values
5898
5899         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): render fallback
5900         image in an appropriate size
5901
5902         * gtk/gtkstock.h: Rename the stock items including _BUTTON_,
5903         etc. not to include that. i.e. s/GTK_STOCK_BUTTON_OK/GTK_STOCK_OK/
5904
5905         Throughout: fix GTK_STOCK_BUTTON_ instances
5906         
5907         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
5908         gtk/gtkiconfactory.c, gtk/stock-icons/Makefile.am:
5909         Add a bunch of new stock items/icons
5910
5911         * gtk/gtktreeview.c (gtk_tree_view_insert_column_with_data_func):
5912         new function, convenience for inserting columns with a data func
5913
5914         * gtk/gtkiconfactory.c: keep a list of all existing icon factories
5915         (_gtk_icon_factory_list_ids): use list of all factories to
5916         generate a list of all known IDs
5917
5918         * gtk/gtkstock.c (gtk_stock_list_ids): replace
5919         gtk_stock_list_items() with a function that returns all IDs known
5920         including those for GtkIconFactory.
5921
5922 2001-05-25  Hans Breuer  <hans@breuer.org>
5923
5924         * gdk/win32/gdkgc-win32.c : made fil mode GDK_STIPPLED actually
5925         work -> check boxes and radio buttons are drawn now, even on win9x.
5926         Improved line settings a bit, still no clue how to get really dotted
5927         lines on win9x, on NT it's PS_ALTERNATE.
5928
5929         * gdk/win32/gdkwindow-win32.c : use SafeAdjustWindowRect for 
5930         GDK_HINT_MIN_SIZE as well
5931
5932         * gdk/win32/makefile.am : added gdkkeys-win32.c to EXTRA_DIST
5933
5934         * gtk/gtk.def : updated
5935
5936         * gtk/gtktreeprivate.h : change column_drop_func to be a function
5937         pointer not a function pointer pointer
5938
5939         * tests/testdnd.c : include <stdlib.h> for putenv prototype
5940
5941         * tests/testsocket.c : made it compile on win32 again
5942
5943         * tests/makefile.msc : one more test-app uses prop-editor.obj
5944
5945 2001-05-22  Havoc Pennington  <hp@pobox.com>
5946
5947         * gtk/gtkbin.c (gtk_bin_get_child): New function
5948
5949 Wed May 23 20:07:53 2001  Owen Taylor  <otaylor@redhat.com>
5950
5951         * gtk/gtkimcontextsimple.c: Add Mode_Switch to list of keys
5952         to ignore when doing compose processing.
5953
5954 2001-05-22  Joe Shaw  <joe@ximian.com>
5955
5956         * gtk/gtktextiter.c (_gtk_text_btree_get_iter_at_last_toggle): 
5957         Simplify as suggested by Havoc. Just get the last iter and work
5958         backward to the tag instead of getting a line and working back from
5959         there. Fixes passing in an invalid offset to
5960         iter_init_from_byte_offset().
5961
5962 Tue May 22 16:25:27 2001  Jonathan Blandford  <jrb@redhat.com>
5963
5964         * gtk/gtktreeview*.h: 
5965         * gtk/gtkcell*.h:
5966         * gtk/gtk*store.h:
5967         Added patch from Jeff Franks <jcf@tpg.com.au> to add GET_CLASS
5968         macros to all objects.
5969
5970 Tue May 22 15:13:52 2001  Jonathan Blandford  <jrb@redhat.com>
5971
5972         * gtk/gtkcellrenderertext.c
5973         (gtk_cell_renderer_text_set_fixed_size): Evil function to deal
5974         with very large (TM) amounts of text.  May be moved to
5975         GtkCellRenderer in the future, though I'm not sure it wants to be
5976         this accessible.
5977
5978         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_update_button):
5979         More sanity brought to this class.  I like it.
5980
5981         * tests/testtreecolumns.c (ViewColumnModel): Amazingly scary test
5982         case.  Kids, don't try this at home.
5983
5984         * gtk/gtktreemodel.c (gtk_tree_model_get_iter_root): new
5985         convenience function.
5986
5987         * gtk/gtkwindow.c (gtk_window_set_geometry_hints): Fix typo in docs.
5988
5989 2001-05-21  Alexander Larsson  <alexl@redhat.com>
5990
5991         * gtk/gtkfontsel.c:
5992         Added properties. Based on patch by Lee Mallabone.
5993
5994         * gtk/gtkruler.c:
5995         * gtk/gtkhruler.c:
5996         * gtk/gtkvruler.c:
5997         * gtk/gtktext.c:
5998         * gtk/gtktextview.c:
5999         Converted GtkArg to GParam. Based on patches by John Margaglione.
6000
6001         * tests/Makefile.am:
6002         * tests/testtext.c:
6003         Add a property editor to testtext.
6004         
6005 Mon May 21 11:29:21 2001  Owen Taylor  <otaylor@redhat.com>
6006
6007         * gtk/gtk{h,v,}paned.c: Only show the separator if 
6008
6009         * configure.in: Fixed reversed conditional causing all image
6010         libraries to be linked in.
6011
6012 2001-05-21  Joe Shaw  <joe@ximian.com>
6013
6014         * gtk/gtklayout.c (gtk_text_layout_get_lines): Remove the assertion
6015         that top_y needs to be >= 0.
6016
6017 2001-05-11  Havoc Pennington  <hp@pobox.com>
6018         
6019         * gdk/x11/gdkmain-x11.c: Improve error messages for X errors and
6020         losing connection to the X server.
6021
6022 Sun May 20 13:59:20 2001  Owen Taylor  <otaylor@redhat.com>
6023
6024         * configure.in: Start checks for X from pangox/pangoxft
6025         CFLAGS to avoid duplicate libraries.
6026
6027         * gdk/Makefile.am (LDFLAGS): Remove extra -lm.
6028
6029         * configure.in (GDK_PIXBUF_PACKAGES): Fix GDK_PIXBUF_PACKAGES
6030         to include gobject.
6031         
6032 2001-05-18  Alexander Larsson  <alexl@redhat.com>
6033
6034         * gtk/gtkspinbutton.c:
6035         Convert GtkArgs to GParams. Based on patch by John Margaglione.
6036         Also do size request reasonable for MAXDOUBLE. Previously it printed
6037         the limits to a buffer and overran it. Instead do it using log10() and
6038         limit the width to 10 digits.
6039         
6040         * gtk/gtkwidget.c (gtk_widget_get_property):
6041         Correctly handle setting the parent property to NULL.
6042
6043 Fri May 18 15:26:26 2001  Owen Taylor  <otaylor@redhat.com>
6044
6045         * gtk/gtktextview.c (gtk_text_view_style_set): Reset 
6046         style attributes even if the widget isn't realized.
6047
6048         * demos/gtk-demo/main.c: Use a slightly smaller font.
6049
6050 Fri May 18 14:25:20 2001  Owen Taylor  <otaylor@redhat.com>
6051
6052         * gtk/gtkcontainer.c: Remove reallocate-redraws property.
6053         This is something that only a widget writer would ever want
6054         to change.
6055
6056         * gtk/gtksignal.c: Handle G_SIGNAL_TYPE_STATIC_SCOPE for
6057         gtk_signal_emit_by_name().
6058
6059         * gtk/gtkviewport.c: Fix some warnings.
6060
6061         * gtk/gtkwidget.c gtk/gtksizegroup.c: Add "size group" facility
6062         allowing the requisitions of multiple widgets to be grouped
6063         together.
6064
6065         * tests/testgtk.c: Add GtkSizeGroup test
6066
6067         * demos/gtk-demo/sizegroup.c: Add GtkSizeGroup demo.
6068
6069         * demos/gtk-demo/main.c demos/gtk-demo/pixbufs.c: Fix some
6070         warnings.
6071
6072         * configure.in: Switch to using AM_GLIB_GNU_GETTEXT.
6073
6074 2001-04-28  Martin Baulig  <baulig@suse.de>
6075
6076         * gtk/gtkimagemenuitem.[ch]: Renamed gtk_image_menu_item_add_icon()
6077         to gtk_image_menu_item_set_icon() and made it work if there's already
6078         an image.
6079         (gtk_image_menu_item_new): This function doesn't take any arguments anymore.
6080         (gtk_image_menu_item_new_with_label): New function.
6081
6082 Thu May 17 16:20:04 2001  Jonathan Blandford  <jrb@redhat.com>
6083
6084         * demos/gtk-demo/main.c (fontify): It's the worlds ugliest
6085         highlighting code!!!!  The result is okay so long as you don't try
6086         to stress it.  It also highlights a bug in the TextView so it's in
6087         an unproportional font right now until it's fixed.
6088
6089         *demos/gtk-demo/*.c: Clean up code a bit to make it
6090         ugly-parser(TM) friendly. (-:
6091
6092 2001-05-17  Joe Shaw  <joe@ximian.com>
6093
6094         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove the assertions
6095         that x_offset and y_offset must be >= 0. Clip the cursor being drawn
6096         if it is only partially onscreen.
6097
6098 Thu May 17 17:10:13 2001  Owen Taylor  <otaylor@redhat.com>
6099
6100         * gtk/gtkentry.c: Make logical motion and deletion by graphemes, 
6101         not by characters.
6102
6103         * gtk/gtkentry.c: Handle "trailing" returns from Pango when they
6104         are not zero or one; that is, when graphemes of multiple characters
6105         are involved.
6106
6107         * gtk/gtktextlayout.c (line_display_index_to_iter): Remove unnecessary
6108         FIXME.
6109
6110 2001-05-17  Alexander Larsson  <alla@lysator.liu.se>
6111         
6112         * gtk/gtkbbox.c:
6113         Add properties, based on patch by Lee Mallabone.
6114
6115         * gtk/gtknotebook.c:
6116         * gtk/gtktoolbar.c:
6117         Convert from GtkArg to GParam, based on patch by John Margaglione.
6118         
6119         * gtk/gtkhscale.c:
6120         * gtk/gtkvscale.c:
6121         * gtk/gtkhscrollbar.c:
6122         * gtk/gtkvscrollbar.c:
6123         * gtk/gtkrange.c:
6124         Move adjustment property to GtkRange.
6125
6126         * gtk/gtklabel.c:
6127         Setup mnemonics on property changes
6128
6129         * gtk/gtkwidget.c (gtk_widget_get_property):
6130         GdkExtensionMode is an enum, not a flag. Set it with
6131         g_value_set_enum ().
6132
6133         * tests/prop-editor.c:
6134         Better propery editor.
6135
6136         * tests/testgtk.c:
6137         Add new property test. Pass zero to the property editor to
6138         get properties from all derived types.
6139         
6140 Sun May 13 12:01:12 2001  Owen Taylor  <otaylor@redhat.com>
6141
6142         * autogen.sh (have_automake): Require libtool-1.4,
6143         automake-1.4p1.
6144
6145         * acinclude.m4: Remove libtool macros.
6146
6147         * gdk-pixbuf/Makefile.am: Add dependencies to loade
6148         modules.
6149
6150         * gdk/Makefile.am: Add dependency on libgdk_pixbuf.la
6151         for libgdk.
6152
6153         * gtk/Makefile.am: Add dependency on libgdk_pixbuf.la
6154         libgdk.la for libgtk.
6155
6156         * modules/input/Makefile.am: Make modules have full
6157         dependencies.
6158
6159 Wed May 16 14:06:01 2001  Jonathan Blandford  <jrb@redhat.com>
6160
6161         * gtk/gtktreemodel.c (gtk_tree_path_new_from_string): fix bug
6162         #54699 where paths weren't being checked for correctness.
6163
6164 Tue May 15 20:13:24 2001  Jonathan Blandford  <jrb@redhat.com>
6165
6166         * gtk/gtktreeviewcolumn.c: You can now set all sorts of properties
6167         in any order you wan, whether or not the column is added to the
6168         tree, or the tree is realized.  Yay!
6169
6170         * gtk/gtktreeviewcolumn.c
6171         (gtk_tree_view_column_setup_sort_column_id_callback): handle
6172         sorting columns a lot saner
6173
6174         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_reorderable):
6175         new function to actually set wether or not a column is
6176         reorderable.
6177
6178         * gtk/gtktreeview.c (gtk_tree_view_unrealize): Only destroy things
6179         if we have 'em.
6180
6181         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_set_tree_view):
6182         Fix nasty bug where we were showing the button just before
6183         realizing it.  As a result, the parent window was
6184         tree_view->window instead of tree_view->priv->header_window.
6185
6186         * gtk/gtktreeview.c (gtk_tree_view_set_reorderable): new property
6187         to let you easily reorder a list or tree.
6188
6189 2001-05-15  Alexander Larsson  <alla@lysator.liu.se>
6190
6191         * gtk/gtkpacker.c: Apply patch from John Margaglione that converts
6192         from args to properties.
6193
6194 Tue May 15 10:11:59 2001  Owen Taylor  <otaylor@redhat.com>
6195
6196         * gtk/gtkpreview.c: Apply patch from John Margaglione converting
6197         from args to properties. (#51957)
6198
6199         * gtk/gtkscale.c (gtk_scale_class_init): Move install property
6200         calls to after ->set_property call.
6201
6202 Mon May 14 14:56:21 2001  Owen Taylor  <otaylor@redhat.com>
6203
6204         * tests/prop-editor.c: Block against redundant changes.
6205
6206         * gtk/gtkpaned.c gtk/gtk[hv]paned.c: Add position, position_set
6207         properties.
6208
6209 Sun May 13 18:40:04 2001  Owen Taylor  <otaylor@redhat.com>
6210
6211         * gdk/gdkpixmap.h: Remove creative formatting.
6212
6213 Thu May 10 19:22:28 2001  Owen Taylor  <otaylor@redhat.com>
6214
6215         * gtk/gtktogglebutton.c:  Patch from John Margaglione converting to
6216         property API. (#51669)
6217
6218         * gtk/gtkscale.c: Patch from John Margaglione converting to
6219         property API. (#51891)
6220
6221         * gtk/gtkaccellabel.c: Applied patch from Lee Mallabone, converting
6222         to property API. (#50985)
6223
6224 Fri May 11 20:13:44 2001  Tim Janik  <timj@gtk.org>
6225
6226         * gtk/gtkmain.c (gtk_main_do_event): remember widget's double
6227         buffering state across expose event, so we still call end_paint().
6228
6229 2001-05-11  Alexander Larsson  <alexl@redhat.com>
6230
6231         * gtk/gtkhsv.c (paint_triangle):
6232         Expose the ring in the triangle at the correct place when
6233         exposing just a part of the triangle.
6234
6235         * gtk/gtkwindow-decorate.c (gtk_decorated_window_focus_change):
6236         Return FALSE, or window focusing will not work.
6237
6238 2001-05-11  Havoc Pennington  <hp@pobox.com>
6239
6240         * gtk/gtkimage.c (gtk_image_new_from_stock): docs, fixes bug
6241         #54144
6242
6243         * gtk/gtkcolorsel.c (gtk_color_selection_new): docs, fixes
6244         bug #54330
6245
6246 Fri May 11 02:53:57 2001  Tim Janik  <timj@gtk.org>
6247
6248         * gtk/gtktogglebutton.c (gtk_toggle_button_expose): don't
6249         propagate exposes to NULL child.
6250
6251         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed): guard
6252         against not having one of the scrollbars.
6253
6254         * gtk/gtklabel.c (gtk_label_setup_mnemonic): clean up after us,
6255         we don't keep a mnemonic window if we have no mnemonic installed.
6256
6257 Fri May 11 01:05:00 2001  Tim Janik  <timj@gtk.org>
6258
6259         * gtk/gtktypeutils.h: grum, gtk_type_class() is not GNUC_CONST
6260         it has the _important_ side effect of initializing a class.
6261
6262 2001-05-10  Alexander Larsson  <alexl@redhat.com>
6263
6264         * gdk/linux-fb/gdkprivate-fb.h:
6265         Make sure you can compile out the implementation/wrapper assert
6266         macros.
6267
6268         * gdk/linux-fb/gdkdrawable-fb2.c:
6269         Check implementation/wrappers, initialize type for pixmap dummys.
6270
6271         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image):
6272         Hide the cursor if reading from the screen.
6273
6274         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
6275         Fix sign bug in tiling code.
6276
6277         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
6278         Handle background pixmaps.
6279
6280 Wed May  9 15:27:22 2001  Jonathan Blandford  <jrb@redhat.com>
6281
6282         * gtk/gtktreeview.c (gtk_tree_view_set_column_drag_function): New
6283         function to let user control where columns are dragged.
6284
6285         * gtk/gtktreeview.c (gtk_tree_view_key_press): Cancel drags if
6286         Escape is pressed.
6287
6288 Wed May  9 09:08:44 2001  Jonathan Blandford  <jrb@redhat.com>
6289
6290         * gtk/gtktreeview.c (gtk_tree_view_class_init): New
6291         "columns_changed" signal.
6292         (gtk_tree_view_motion_draw_column_motion_arrow): Change column
6293         motion code to draw arrows to the side if indicator is outside the
6294         widget.
6295         (gtk_tree_view_map_expanded_rows): Implement.
6296
6297 2001-05-07  Alexander Larsson  <alexl@redhat.com>
6298
6299         * demos/testpixbuf-save.c: 
6300         * demos/testpixbuf-drawable.c:
6301         Include gdkfb.h on linux-fb.
6302
6303 2001-05-07  Alexander Larsson  <alexl@redhat.com>
6304
6305         * gdk/linux-fb/gdkdnd-fb.c (get_toplevel_window_at):
6306         New function for getting toplevel window at position.
6307         (gdk_drag_find_window): Use get_toplevel_window () instead
6308         of gdk_window_get_pointer(). (gdk_drag_status): Use
6309         correct context for getting window.
6310
6311         * gdk/linux-fb/gdkproperty-fb.c (gdk_atom_name):
6312         g_strdup the atom name.
6313
6314         * gdk/linux-fb/gdkwindow-fb.c:
6315         Costmetic fix.
6316
6317         * gtk/gtkdnd.c (gtk_drag_source_handle_event):
6318         Add code for changing cursor on linux-fb backend (same as
6319         win32).
6320
6321 2001-05-07  Federico Mena Quintero  <federico@ximian.com>
6322
6323         * gtk/gtkwindow.c (gtk_window_focus): Test for bin->child being
6324         present before doing anything with it.  Patch from HÃ¥vard KvÃ¥len
6325         <havardk@netcom.no>.  Fixes Ximian bugzilla #2492 (OK, the bug
6326         report was not for the development branch of GTK+, but it applies
6327         anyways).
6328
6329 2001-05-04  Havoc Pennington  <hp@redhat.com>
6330
6331         * configure.in: fix some shell typos
6332
6333         * gtk/gtkcolorsel.c (gtk_color_selection_destroy): warning fix
6334
6335         * gtk/gtkimage.c: handle animations
6336
6337         * gtk/gtkcheckbutton.c (gtk_check_button_size_request): request
6338         border_width * 2, not just border_width
6339
6340         * gtk/gtkscale.c: add "format_value" signal to allow people
6341         to override the way values are drawn.
6342         (gtk_scale_get_value_size): fix width/height mistake,
6343         and compute size from actual displayed text, not 
6344         from made-up text.
6345
6346         * gtk/gtktexttag.c (gtk_text_tag_class_init): fix return type in 
6347         signal registration
6348
6349         * tests/testtext.c: Add "Remove all tags" menu item for testing
6350
6351         * gtk/gtktextbuffer.c (gtk_text_buffer_remove_all_tags): implement
6352
6353         * demos/gtk-demo/main.c (main): add hack so we can find modules
6354         without installing gtk
6355
6356         * demos/gtk-demo/textview.c (insert_text): demo font scaling
6357
6358         * gtk/gtkcellrenderertext.c: Add "scale" property (font scaling
6359         factor)
6360         (gtk_cell_renderer_text_set_property): remove some bogus
6361         g_object_notify
6362
6363         * gtk/gtktexttag.c: add "scale" property which is a font scaling
6364         factor
6365
6366         * gtk/gtktextlayout.c (add_text_attrs): add font scale attribute 
6367         to layout
6368
6369         * gtk/gtktextiter.c (gtk_text_iter_is_start): rename from
6370         gtk_text_iter_is_first
6371
6372 2001-01-06  Hans Breuer  <hans@breuer.org>
6373
6374         * gdk/gdk.def : updated exports
6375
6376         * gdk/win32/makefile.msc : -DGDK_ENABLE_BROKEN otherwise
6377         gdk won't compile anymore
6378  
6379         * gdk/win32/gdkevents-win32.c : initialize ret_val when
6380         processing GDK_FILTER functions, initialize event.key->hardware_keycode.
6381         Improved gdk_flush () to not only do pending drawing operations
6382         but also process all currently pending events. This should make
6383         the behaviour more similar to the X11 version.  
6384
6385         * gdk/win32/gdkgc-win32.c (predraw_set_background) : a background
6386         option needs to be set even if there is no GDK_GC_BACKGROUND.
6387         (gdk_win32_hdc_get) : use predraw_set_background () independent
6388         of value_mask. This allows to draw dashed lines leaving the original
6389         background intact.
6390
6391         * gdk/win32/gdkimage-win32.c (gdk_image_new_bitamp) : free data
6392         after processing, because we can't reuse it as the X11 version does.
6393
6394         * gtk/gtk.def : updated exports
6395
6396         * gtk/makefile.msc.in : added ATK, removed all test apps. (I
6397         would like to get rid of this file again, and use straight
6398         makefile.msc again, as the other Gtk+ subdirs do)
6399
6400         * test/makefile.msc (new file) : build the test apps here
6401
6402 2001-05-05  ERDI Gergo  <cactus@cactus.rulez.org>
6403
6404         * gdk/gdkpango.c (gdk_pango_get_item_properties): Peek
6405         strike-through setting
6406         (gdk_draw_layout_line_with_colors): Render strike-through
6407
6408 Sat May  5 10:06:24 2001  Owen Taylor  <otaylor@redhat.com>
6409
6410         * Release 1.3.5
6411
6412         * configure.in (GTK_MICRO_VERSION): Up to 1.3.5
6413
6414         * NEWS: Updated
6415
6416         * demos/gtk-demo/Makefile.am (EXTRA_DIST): Fix minor
6417         Makefile breakage.
6418
6419 Sat May  5 09:18:30 2001  Owen Taylor  <otaylor@redhat.com>
6420
6421         * demos/gtk-demo/images.c (progressive_timeout): Fix
6422         typo in filename.
6423
6424         * gtk/gtktreeview.c (gtk_tree_view_row_activated): Comment
6425         out FIXME warning; just too annoying.
6426
6427 2001-05-04  Alex Larsson  <alla@lysator.liu.se>
6428
6429         * gdk/linux-fb/gdkcolor-fb.c:
6430         Better error messages.
6431
6432         * gdk/linux-fb/gdkpixmap-fb.c (gdk_pixmap_new):
6433         Initialize abs_x and abs_y.
6434         
6435         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic):
6436         Correct handling of stipple offset.
6437
6438         * gdk/linux-fb/gdkvisual-fb.c (gdk_visual_init):
6439         Treat directcolor framebuffers as truecolor.
6440         
6441 Thu May  3 14:13:49 2001  Owen Taylor  <otaylor@redhat.com>
6442
6443         * INSTALL.in HACKING gtk/gtkaccessible.[ch] gtk/gtk.c: Add
6444         dependency on Atk for accessibility support.
6445
6446         * configure.in **/Makefile.am: Major reworking of substituted
6447         variables for CFLAGS/LIBS to make a lot more sane and 
6448         keep the the compile/link lines a bit shorter.
6449
6450         * gdk/x11/gdkkeys-x11.c: Fix #endif with trailing stuff.
6451
6452 Thu May  3 08:10:54 2001  Owen Taylor  <otaylor@redhat.com>
6453
6454         * gtk/gtktexttag.c (gtk_text_tag_class_init): Fix return
6455         value to be G_TYPE_BOOLEAN, not G_TYPE_INT, also,
6456         use _gtk_boolean_handled_accumulator.
6457
6458 Thu May  3 07:00:09 2001  Owen Taylor  <otaylor@redhat.com>
6459
6460         * gtk/gtktextview.c: Patch from Juan Pablo Mendoza Mendoza
6461         to fix things so clicking inside selection leaves cursor
6462         at point where clicked. (#50324)
6463
6464         * gtk/gtksettings.c (gtk_settings_class_init): Restore
6465         sane value for default double click time.
6466
6467         * tests/testtext.c (test_init): Really path to input modules.
6468
6469 2001-05-03  Sven Neumann  <sven@convergence.de>
6470
6471         * demos/testpixbuf-save.c: include target-specific headers as
6472         done in testpixbuf-drawable.c
6473
6474 Wed May  2 20:36:38 2001  Owen Taylor  <otaylor@redhat.com>
6475
6476         * gtk/gtkentry.c (gtk_entry_real_insert_text): Reduce
6477         new_text_length appropriately when we run into the 
6478         size limit for the entry. (#53445, reported by Jeff Franks)
6479
6480         * tests/testgtk.c (create_entry): Remove most of the
6481         property toggle buttons. Replace with a "Props" button
6482         that brings up a property editor.
6483
6484         * tests/prop-editor.[ch] test/testtreeview.c tests/Makefile.am:
6485         Split the property editor code out for reuse, improve.
6486
6487 Wed May  2 17:26:22 2001  Owen Taylor  <otaylor@redhat.com>
6488
6489         * gdk/x11/gdkevents-x11.c gdk/x11/gdkwindow-x11.c: Always
6490         trap errors around calls to XSetInputFocus since we have
6491         no way of knowing reliably whether we are viewable or
6492         not. (#53947)
6493
6494 Tue May  1 09:21:23 2001  Jonathan Blandford  <jrb@redhat.com>
6495
6496         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
6497         fix bug in dropping columns.  Moving columns now basically works
6498         modula some fine tuning.
6499
6500 Tue May  1 19:09:21 2001  Jonathan Blandford  <jrb@redhat.com>
6501
6502         * gtk/gtktreeview.c (gtk_tree_view_horizontal_autoscroll): Add
6503         autoscroll support.  It mostly works, but could use some fine
6504         tuning.
6505         * gtk/gtktreeview.c (gtk_tree_view_button_release_drag_column):
6506         Actually move the column.
6507
6508 Mon Apr 30 20:29:27 2001  Owen Taylor  <otaylor@redhat.com>
6509
6510         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtkoptionmenu.c 
6511           gtk/gtkspinbutton.c gtk/gtkstyle.c gtk/gtkwidget.c:
6512           New default theme! A slighly improved version of the 2.0 Raleigh
6513           theme, with Windows-esque focus/drawing default. 
6514           (GtkWidget::interior_focus defaults to TRUE.)
6515
6516         * gtk/gtkstyle.[ch]: Add a text_aa color halfway between text and base.
6517
6518 2001-04-30  Havoc Pennington  <hp@pobox.com>
6519
6520         * tests/testtext.c (line_numbers_expose): fix to work with
6521         gtk_paint_layout change
6522
6523 Mon Apr 30 19:18:07 2001  Owen Taylor  <otaylor@redhat.com>
6524
6525         * gtk/gtkstyle.[ch] gtk/gtkaccellabel.c gtk/gtkcellrenderertext.c
6526           gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c gtk/gtkprogressbar.c
6527           gtk/gtkvruler.c gtk/gtkvscale.c: Add an extra parameter
6528           use_text to gtk_paint_label() to deal with style->bg[] vs style->text[].
6529
6530         * gtk/gtkbbox.c gtk/gtkdialog.c: Tweak padding some to deal
6531           with GtkWidget::interior_focus = TRUE better.
6532
6533         * gtk/gtkbutton.c: Switch ::default_spacing to ::default_border,
6534         ::default_outside_border for more flexibility.
6535
6536         * gtk/gtkwidget.c (gtk_widget_style_get_valist): Remove 
6537         G_VALUE_NO_COPY_CONTENTS, to correspond with the recent
6538         change that had to be made with g_object_get.
6539
6540 Sun Apr 29 20:13:40 2001  Jonathan Blandford  <jrb@redhat.com>
6541
6542         * gtk/gtktreeview.c (gtk_tree_view_get_columns): new function.
6543         (gtk_tree_view_move_column_after): Clean up interface. 
6544
6545 Sun Apr 29 03:02:02 2001  Tim Janik  <timj@gtk.org>
6546
6547         * gtk/gtkpacker.h:
6548         * gtk/gtkenums.h: moved GtkAnchorType and GtkSideType from gtkpacker.h
6549          to gtkenum.h.
6550
6551         * gtk/gtkmain.c (gtk_main_do_event): silence compiler (GDK_SETTING not
6552         handled in switch).
6553
6554         * gtk/Makefile.am:
6555         (gtk.defs): generate enum portions with  glib-mkenums.
6556         (gtktypebuiltins_evals.c): generate this with glib-mkenums.
6557         got rid of makeenums.pl and makeenums.awk in distributed tarballs.
6558         
6559         * gtk/gtkaccelgroup.c (gtk_accel_group_add): refined havocs warning
6560         addition.
6561
6562         * docs/Changes-2.0.txt: keep a note on signal handlers now
6563         not getting emitted during the emission they were connected within.
6564
6565 2001-04-28  Havoc Pennington  <hp@pobox.com>
6566
6567         * gtk/gtkcolorsel.c (palette_new): fix bug in tooltip
6568
6569 2001-04-24  Havoc Pennington  <hp@redhat.com>
6570
6571         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_previous_line): 
6572         (gtk_text_layout_move_iter_to_next_line): fix these two for
6573         invisible text, lots of other stuff still hosed.
6574
6575         * gtk/gtkcolorsel.c (gtk_color_selection_set_change_palette_hook):
6576         new function, replaces the get/set palette stuff. This function 
6577         is intended for use by libgnomeui which should set the hook to a
6578         thing which sets the palette in GConf, and we need the
6579         GConf-to-xsettings proxy which will result in the change being
6580         propagated back to the GTK app.
6581
6582         * gtk/gtkaccelgroup.c (gtk_accel_group_add): add note to warning 
6583         about unusable signals that it may be because the signal has 
6584         parameters.
6585
6586         * gtk/gtkwidget.c (gtk_widget_modify_style): always copy the
6587         style, otherwise gtkrc.c won't know to create a new GtkStyle for
6588         it.
6589         (gtk_widget_modify_color_component): call
6590         gtk_widget_modify_style() so the rc style will get copied.
6591         (gtk_widget_modify_font): ditto
6592
6593         * gtk/gtkrc.c: make a couple variables static
6594
6595         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): hide
6596         help button by default, since it does nothing
6597
6598         * gtk/gtkcolorsel.c: add tooltips, work on key navigation, fool
6599         around with UI
6600
6601         * gtk/gtkentry.c (gtk_entry_realize): request enter/leave notify
6602         so we can have tooltips
6603
6604         * gtk/gtkhsv.c (gtk_hsv_realize): request enter/leave notify so we
6605         can have tooltips
6606
6607         * gdk/gdkimage.h: mark gdk_image_new_bitmap with
6608         GDK_ENABLE_BROKEN, because its memory behavior is completely
6609         hosed.
6610
6611         * gtk/gtknotebook.c: remove key press handler, replace with
6612         binding set, add numeric keypad support
6613
6614         * gtk/gtktextview.c (gtk_text_view_class_init): accept KP_Delete
6615
6616         * gtk/gtktext.c (gtk_text_key_press): add a bunch of KP keysyms
6617
6618         * gtk/gtkentry.c (gtk_entry_class_init): accept GDK_KP_Delete in
6619         addition to plain Delete
6620
6621         * gtk/gtktextview.c (gtk_text_view_key_press_event): accept
6622         GDK_KP_Enter in addition to GDK_Return
6623
6624         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): connect to
6625         activate on entry instead of key press
6626         (gtk_font_selection_on_clist_key_press): get
6627         rid of this signal handler, not needed with new font sel.
6628
6629         * gtk/gtkfilesel.c (gtk_file_selection_key_press): remove a
6630         no-longer-needed emit_stop_by_name(), just return TRUE
6631
6632         * gtk/gtkhscrollbar.c, gtk/gtkvscrollbar.c: remove keybindings
6633         cruft, this widget is no longer focusable.
6634
6635         * gtk/gtkrange.h, gtk/gtkrange.c, gtk/gtkvscale.c,
6636         gtk/gtkhscale.c: Get rid of trough_keys virtual function, add
6637         move_slider action signal, add binding set for vscale/hscale, in
6638         the process support numeric keypad
6639
6640         * gtk/gtkentry.c (gtk_entry_class_init): Add keypad bindings; 
6641         make GDK_Return and GDK_KP_Enter activate the entry via 
6642         binding set, instead of hardcoded.
6643
6644 Fri Apr 27 20:27:21 2001  Jonathan Blandford  <jrb@redhat.com>
6645
6646         * gtk/gtktreeview.[hc]: Massive reorder/cleanup of a lot of the
6647         code.  Some documentation added.
6648
6649 2001-04-27  Havoc Pennington  <hp@redhat.com>
6650
6651         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fix warning
6652
6653         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): make messages selectable
6654
6655         * gtk/gtkentry.c (gtk_entry_real_insert_text): don't strip
6656         line/para separators
6657         (gtk_entry_create_layout): set single paragraph mode on the layout
6658
6659         * gtk/gtkbutton.c (gtk_button_new_from_stock): don't put much
6660         spacing between the image and label; instead, inside a button box 
6661         the button will get extra space that will go there, but if people 
6662         configure button box for 0 chubbiness, then there's no spacing.
6663
6664         * gtk/gtkbbox.c (gtk_button_box_class_init): Make child ipadding
6665         and min/max size style properties, so people can tune their
6666         chubbiness.
6667
6668         * tests/testgtk.c (make_toolbar): remove calls to removed toolbar
6669         functions
6670
6671         * gtk/gtktoolbar.c (gtk_toolbar_class_init): Make space_size,
6672         space_style, and button_relief into style properties, remove
6673         functions for setting them
6674         
6675         * gtk/gtkmenu.c (gtk_menu_key_press): handle menu bar accel to pop 
6676         it back down
6677
6678         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): free boxed
6679         types from gtk_widget_style_get
6680
6681         * gtk/gtkmenubar.c (gtk_menu_bar_set_shadow_type): Remove, replace
6682         with a style property.
6683
6684         * gdk/x11/gdkevents-x11.c: namespace the settings
6685
6686         * gtk/gtkmenubar.c: Add F10 accelerator to move between menubars.
6687
6688         * gtk/gtksettings.c (gtk_settings_class_init): remove code with
6689         side effects from inside g_assert(), so that G_DISABLE_ASSERT can
6690         be used. Also, translate doc strings for settings. Also, namespace
6691         the double-click-time property. Also, remove bell properties crap.
6692
6693 2001-04-27  Sven Neumann  <sven@gimp.org>
6694
6695         * Makefile.am: before creating links, check if pkg-config files
6696         exist for the default target. Otherwise link to the pkg-config files
6697         that got installed with this build.
6698
6699 Thu Apr 26 19:11:46 2001  Jonathan Blandford  <jrb@redhat.com>
6700
6701         * gtk/gtktreeview.c (gtk_tree_view_motion): clean up column
6702         dragging code.  Revealed some (potential) GdkWindow bugs.
6703
6704         * gdk/x11/gdkwindow-x11.c (gdk_window_reparent): add
6705         _gdk_window_init_position to the end of reparent to fix the case
6706         of reparenting when new_x != old_x and new_y != old_y.
6707
6708 Thu Apr 26 10:54:50 2001  Owen Taylor  <otaylor@redhat.com>
6709
6710         * gtk/gtkentry.c (strstr_len): Fix optimization that
6711         was correct for the use here, but completely incorrect
6712         in general.
6713
6714 Thu Apr 26 10:40:41 2001  Owen Taylor  <otaylor@redhat.com>
6715
6716         * gtk/gtkwindow.h: Remove deprecation of gtk_window_set_default_size()
6717         until patch adding gtk_window_set_size() is recommitted. 
6718
6719         * **Makefile.am configure.in gdk/x11/gdkim-11.c
6720           gtk/gtkmain.c gtk/gtkimmulticontext.c gtk/gtkmain.c
6721           gtk/gtkrc.c: Remove all traces of -DX_LOCALE support.
6722           (#10784)
6723
6724 Wed Apr 25 12:16:36 2001  Owen Taylor  <otaylor@redhat.com>
6725
6726         * gdk/X11/gdkevents-x11.c (gdk_event_translate): Test for 
6727         window == NULL in a number of cases.
6728
6729         * tests/testdnd.c: Set module path for gdk-pixbuf.
6730
6731 Thu Apr 19 16:11:07 2001  Owen Taylor  <otaylor@redhat.com>
6732
6733         * gtk/Makefile.am xembed.h: File containing #defines
6734         for XEMBED protocol.
6735
6736         * gtk/gtkplug.[ch] gtk/gtksocket.[ch]: 
6737
6738         - Change protocol from old plug/socket specific protocol
6739           to XEMBED draft
6740         - Various fixes to work with GTK+-2.0
6741
6742         Still quite a bit of work to do here to handle initiation
6743         from the socket side (as specified by XEMBED), to handle
6744         the more advanced features of XEMBED, and to figure out
6745         a good way to handle same-app embedding with less overhead
6746         than using full XEMBED.
6747
6748 Wed Apr 18 16:04:28 2001  Owen Taylor  <otaylor@redhat.com>
6749
6750         * gtk/gtkwindow.[ch] (gtk_window_real_set_focus): Keep
6751         track of whether the toplevel has the focus; only send
6752         focus-in events to the focus widget when the window
6753         actually has the focus.
6754
6755 2001-04-25  Havoc Pennington  <hp@pobox.com>
6756
6757         * gtk/gtkwindow.h: set_decorations_hint and set_functions_hint
6758         were still in the header
6759
6760 2001-04-24  Alexander Larsson  <alexl@redhat.com>
6761
6762         * gtk/gtkclist.[ch]:
6763         * gtk/gtkctree.c:
6764         When there is a row highlighted for D'n'D it must alse
6765         be painted hightlighted on exposes. Otherwise exposes from
6766         the icon being dragged will mess up the hightlight.
6767
6768         * gtk/gtkfontsel.c:
6769         Don't recenter selected font when exposing the font family
6770         clist. This means you can now actually scroll the font family
6771         list.
6772
6773         * gtk/gtknotebook.c:
6774         Fix focus movement on scrolling tabs that are placed on the left
6775         and right.
6776
6777 2001-04-21  Havoc Pennington  <hp@pobox.com>
6778
6779         * gtk/gtktextdisplay.c (gtk_text_layout_draw): handle 0-height
6780         empty/invisible lines.
6781
6782         * gtk/gtktextiter.c (gtk_text_iter_set_visible_line_offset)
6783         (gtk_text_iter_set_visible_line_index): new functions to set
6784         indexes excluding invisible text
6785
6786         * gtk/gtktextlayout.c (line_display_iter_to_index): get visible 
6787         index
6788
6789         * gtk/gtktextiter.c (gtk_text_iter_get_visible_line_index)
6790         (gtk_text_iter_get_visible_line_offset): new functions to 
6791         get indexes excluding invisible text
6792
6793         * gtk/gtkmessagedialog.c (gtk_message_dialog_init): strip out a
6794         bunch of extra padding that served no purpose
6795
6796         * gtk/gtkdialog.c: Make all the spacings configurable via style
6797         properties, for chubbiness configuration in themes
6798
6799         * tests/testtext.c: fix path to the immodules.
6800         
6801 Mon Apr 23 18:57:03 2001  Jonathan Blandford  <jrb@redhat.com>
6802
6803         * gtk/gtksocket.c (gtk_socket_filter_func): add missing '}' that
6804         got munched by #endif.
6805
6806         * gtk/Makefile.am (gtk_plug_c_sources): add missing '\'
6807
6808         * gtk/gtktreeview.c: Refactored code to clean up a number of
6809         events.
6810
6811         * gtk/gtktreemodel.c (gtk_tree_path_compare): Switched return
6812         values to make consistent with other functions.  Spotted by Jeff
6813         Franks <jcf@tpg.com.au>.
6814
6815         * gtk/gtktreeview.h (struct _GtkTreeViewClass): Fixes to signal
6816         declaration spotted by Jeff Franks <jcf@tpg.com.au>.
6817
6818 2001-04-23  Sven Neumann  <sven@gimp.org>
6819
6820         * gtk/Makefile.am
6821         * gtk/gtkplug.c
6822         * gtk/gtksocket.c: on request of Owen, reverted my last change 
6823         and exclude gtkplug.c/gtksocket.c from the build for non-X11 targets
6824
6825 2001-04-23  Sven Neumann  <sven@gimp.org>
6826
6827         * gtk/gtkplug.c: put into #ifdef GDK_WINDOWING_X11 to make GTK+
6828         compile for non-X11 targets again
6829
6830 2001-04-20  Alexander Larsson  <alexl@redhat.com>
6831
6832         * gtk/gtkcolorsel.[ch]:
6833         API Change. Take GdkColor arguments instead of gdouble *.
6834         Leave the old gtk_color_selection_set_color for compatibility,
6835         but marked deprecated.
6836         Do correct rounding when converting RGB <-> HSV.
6837         
6838         * gtk/gtkcolorseldialog.c:
6839         * tests/testgtk.c:
6840         Use new GtkColorSelection API.
6841
6842         * gtk/gtkhsv.c:
6843         Fix problem selecting colors in triangle when Hue is 330.
6844         Fix some black dots around the HSB triangle.
6845         
6846         * gtk/gtkfilesel.c:
6847         return FALSE from the focus_in_event handler to fix focus problems.
6848
6849 2001-04-18  Havoc Pennington  <hp@redhat.com>
6850
6851         * gtk/gtkwindow.c (gtk_window_class_init): add signals and binding
6852         set, so keybindings are configurable    
6853         (gtk_window_activate_default): Change to activate the focus widget
6854         instead if there's a focus widget, to be consistent with the
6855         behavior that previously existed in key_press_event
6856
6857 2001-04-18  Havoc Pennington  <hp@redhat.com>
6858
6859         * gdk/gdkkeyuni.c: Handle numeric keypad keysyms; bug #50201
6860
6861 2001-04-18  Havoc Pennington  <hp@redhat.com>
6862
6863         Close bug #50615:
6864         
6865         * gtk/gtkstyle.c (gtk_default_draw_layout): Use text_gc to draw
6866         the layout
6867
6868         * gtk/gtktext.c: Use base/text instead of bg/fg throughout
6869
6870         * gtk/gtkentry.c: Use base/text instead of bg/fg throughout
6871
6872         * gtk/gtktextdisplay.c: Use base/text instead of bg/fg throughout
6873         
6874         * gtk/gtkstyle.c (gtk_style_init): make GTK_STATE_SELECTED default
6875         to blue for base, in addition to bg
6876         
6877 2001-04-18  Havoc Pennington  <hp@redhat.com>
6878
6879         * tests/testgtk.c (create_image): allow shrinking the image window
6880         to test that we clip to allocation.
6881
6882         * gtk/gtkimage.c (gtk_image_expose): clip to allocation,
6883         #9845
6884
6885         * gtk/gtkenums.h: move GtkWrapMode in here, #50472
6886
6887 Wed Apr 18 14:23:14 2001  Owen Taylor  <otaylor@redhat.com>
6888
6889         * gdk/x11/gdkimage-x11.c (gdk_image_new): Try changing
6890         mode on shm segments to 0600. We'll see who complains.
6891
6892         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Call
6893         _gdk_windowing_window_destroy() AFTER recursing through
6894         children.
6895
6896         * tests/Makefile.am (noinst_PROGRAMS): Build testsocket,
6897         testsocket_child on X.
6898
6899         * tests/testsocket[_child].c: Fix uses of
6900         gtk_window_get_default_accel_group().
6901
6902         [ Merge patch from Ramiro Estrugo  <ramiro@eazel.com> from gtk-1-2 ]
6903
6904         * gdk/gdkimage.c: (gdk_image_get):
6905         Deal with the possibility that XGetImage() might return NULL.
6906         Allocate the GdkImagePrivate structure only after XGetImage()
6907         succeeds in order not to dereference a NULL ximage pointer.  This
6908         prevents a core dump when XGetImage() fails - which is unlikely,
6909         but can happen due to race conditions accessing the geometries of
6910         drawables.  An x error will still be triggered, but the gdk image
6911         wrapper at least wont seg fault.
6912         
6913 2001-04-18  Havoc Pennington  <hp@redhat.com>
6914
6915         * gtk/gtkimage.c: fix to properly queue resizes when the image is
6916         set
6917
6918         * gtk/gtktextview.c (gtk_text_view_do_popup): desensitize Paste
6919         if the insertion point isn't editable
6920
6921         * demos/gtk-demo/images.c: Added a GtkImage demo
6922
6923         * demos/gtk-demo/drawingarea.c: drawing area demo
6924         
6925         * demos/gtk-demo/menus.c (create_menu): cleanups
6926
6927 Wed Apr 18 12:15:52 2001  Owen Taylor  <otaylor@redhat.com>
6928
6929         * gdk/x11/gdkwindow-x11.c gdk/x11/gdkwindow-x11.h 
6930           gdk/x11/gdkevents-x11.c: Introduce an extra child
6931         of toplevel windows that serves to hold the focus to
6932         avoid events being delivered to embedded windows.
6933
6934         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Introduce
6935         some extra variables to clean up code and reduce the
6936         number of casts.
6937
6938         * gdk/x11/gdkwindow-x11.h (struct _GdkXPositionInfo): Use
6939         guint for 1 bit bit fields, not gboolean.
6940
6941 Wed Apr 18 10:04:23 2001  Owen Taylor  <otaylor@redhat.com>
6942
6943         * gtk/gtktooltips.c (gtk_tooltips_paint_window): Return FALSE,
6944         not TRUE. (Fixes #52925)
6945
6946 Tue Apr 17 18:05:34 2001  Owen Taylor  <otaylor@redhat.com>
6947
6948         * Released 1.3.4
6949
6950         * NEWS: Updated
6951
6952         * gtk/gtktextview.c (gtk_text_view_class_init): Fix to not
6953         use GTK_TYPE_ENUM.
6954
6955 Tue Apr 17 13:47:12 2001  Owen Taylor  <otaylor@redhat.com>
6956
6957         * configure.in: Don't put -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6958
6959         * gtk/gtktypeutils.h gtk/gtksignals.h: Restore proper parameter
6960         names to compatibility #defines so docs work.
6961
6962         * gtk/gtkenums.h: Remove GtkMenuFactoryType
6963
6964         * gtk/gtkwindow.c gtk/gtkdnd.c: Docs cleanups.
6965
6966         * configure.in: Don't include -lgthread in GLIB_LIBS, GLIB_DEPLIBS
6967
6968         * tests/testgtkrc: No magenta cursors, please.
6969
6970         * README.in INSTALL.in HACKING README.cvs-commits: Updated.
6971
6972         * gtk/gtkenums.h (enum): Remove left over GtkMenuFactoryType.
6973         
6974 Mon Apr 16 14:38:41 2001  Owen Taylor  <otaylor@redhat.com>
6975
6976         * gtk/gtklist.c gtk/gtklistitem.c: Remove explicit pointer
6977         grabs, since they are no longer necessary.
6978
6979         * gtk/gtkcombo.c (gtk_combo_popup_button_press): Fix #52926
6980         by signal_connect() and call gtk_button_pressed() rather
6981         than signal_connect_after().
6982
6983         * tests/testgtk.c: Restore radio menu items to combos 
6984         since they'll look OK with Raleigh, and it is easier
6985         than finishing the process of removing them that was
6986         started earlier.
6987
6988 2001-04-16  Hans Breuer  <hans@breuer.org>
6989
6990         * gdk/gdk.def :
6991         * gtk/gtk.def : added all exports required to link PyGtk 0.7.1
6992
6993         * gdk/gdkfont.h : #define GDK_TYPE gdk_font_get_type ()
6994         we are interested in the functions return value not the function address
6995         * gdk/gdkvisual.h : same for GDK_TYPE_VISUAL
6996
6997         * gtk/makefile.msc.in : reflect movement of GDK_TYPEs from gtk to gdk
6998
6999 2001-04-14  Hans Breuer  <hans@breuer.org>
7000
7001         * gdk/gdk.def :
7002         * gdk/makefile.msc : updated
7003
7004         * gdk/win32/gdkdrawable.win32 (gdk_win32_draw_rectangle) : if modus is 
7005         "fill with tile" do so with new helper function gdk_win32_draw_tiles 
7006         (the testgtk::text backgound pixmap is drawn again)
7007         Changed SetTextAlign before pango_win32_render to TA_BASELINE to reflect 
7008         Win32 Pango change
7009         * gdk/win32/gdkprivate-win32.h : prototype for gdk_win32_draw_tiles
7010
7011         * gdk/win32/gdkproperty-win32.c : first implementation of gdk_setting_get
7012         Not sure if the returned settings have the right unit, because I couldn't
7013         find any docs for the X version ...
7014
7015         * gtk/gtk.def :
7016         * gtk/makefile.msc.in : updated
7017
7018 Thu Apr 12 17:41:17 2001  Owen Taylor  <otaylor@redhat.com>
7019
7020         * gtk-2.0.m4: Fix up to refer to GTK+, not to GLib; fix some
7021         wording problems. (Compared to version from Johannes Stezenbach to
7022         check correctness.)
7023
7024 Thu Apr 12 21:04:26 2001  Tim Janik  <timj@gtk.org>
7025
7026         * gtk/gtktreeview.c (_gtk_tree_view_column_start_drag): get
7027         this to compile.
7028
7029 2001-04-12  Anders Carlsson  <andersca@codefactory.se>
7030
7031         * gtk/gtkcellrenderertextpixbuf.c (gtk_cell_renderer_text_pixbuf_class_init): It's pixbuf_pos,
7032         not pixbufpos.
7033
7034         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render): Fix small typo.
7035
7036         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_property): xpad and ypad
7037         are unsigned insts, therefore use g_value_set_uint.
7038         (gtk_cell_renderer_set_property): Likewise, use g_value_get_uint.
7039
7040 Sun Apr  8 05:36:06 2001  Jonathan Blandford  <jrb@redhat.com>
7041
7042         * gtk/gtktextview.c (gtk_text_view_class_init): fix a fixme.
7043
7044         * gtk/gtkcellrendertoggle.c: change GTK_TYPE_POINTER to
7045         GTK_TYPE_STRING.
7046
7047         * gtk/gtktreeview.c: New functions to allow initial column
7048         dragging work.
7049
7050         * gtk/gtktreeviewcolumn.c: Initial column dragging support.
7051
7052         * tests/testtreefocus.c: give dave some love.
7053
7054         * tests/testtreesort.c: Modify test to check really long samples.
7055
7056 2001-04-11  Alexander Larsson  <alexl@redhat.com>
7057
7058         * gtk-2.0.m4: Pass pkg-config options
7059         before the other args so it works even if
7060         POSIXLY_CORRECT is set.
7061
7062 Mon Apr  9 19:02:07 2001  Tim Janik  <timj@gtk.org>
7063
7064         * configure.in (GTK_MICRO_VERSION): increment version to 1.3.4 (binary
7065         0, interface 0).
7066
7067 2001-04-04  Denis Oliver Kropp  <dok@convergence.de>
7068
7069         * gtk/gtkcalendar.c (gtk_calendar_button_press):
7070         check for action_func != NULL
7071
7072 2001-04-04  Sven Neumann  <sven@gimp.org>
7073
7074         * tests/testgtk.c (test_init): corrected path to gtk.immodules
7075
7076 Wed Apr  4 09:18:18 2001  Tim Janik  <timj@gtk.org>
7077
7078         * Released Gtk+-1.3.3.
7079
7080 Wed Apr  4 07:42:23 2001  Tim Janik  <timj@gtk.org>
7081
7082         * gdk/Makefile.am (EXTRA_DIST): add makeenums.pl to EXTRA_DIST.
7083
7084 Wed Apr  4 04:13:18 2001  Tim Janik  <timj@gtk.org>
7085
7086         * gtk/stock-icons/Makefile.am: stay in builddir and read/write
7087         files to/from source dir. (if we don't stay in builddir, we
7088         can't reach make-inline-pixbuf.
7089
7090         * gdk/Makefile.am (gdkenumtypes.c): add $(srcdir) to mekeenums.pl
7091         deps.
7092
7093         * configure.in (GTK_MICRO_VERSION): up and away (1.3.3 bin/interface
7094         ages 0).
7095
7096 Tue Apr  3 15:04:45 2001  Jonathan Blandford  <jrb@redhat.com>
7097
7098         * gtk/gtktreemodelsort.h:  removed set_sort_column, as it was
7099         moved to the GtkTreeSortable interface.
7100
7101         * gtk/gtktreeselection.c (gtk_tree_selection_selected_foreach):
7102         Make more efficient (fixes #50262).
7103
7104 Tue Apr  3 13:55:37 2001  Owen Taylor  <otaylor@redhat.com>
7105
7106         * NEWS: Updated.
7107
7108         * configure.in: Remove support for uninstalled glib.
7109
7110         * gtk/gtkdnd.c (gtk_drag_highlight_expose): Return FALSE as
7111         so as not to stop emission.
7112
7113         * gtk-config-2.0.in: Exit with an error message that gtk-config-2.0
7114         is no longer supported.
7115
7116         * Makefile.am gtk/Makefile.am tests/*: Moved all tests
7117         into tests, change build order to build modules before
7118         gtk/.
7119
7120         * modules/input/Makefile.am: Move gtk-query-immodules-2.0 invocation
7121         to here.
7122
7123 Tue Apr  3 13:52:57 2001  Tim Janik  <timj@gtk.org>
7124
7125         * gtk/gtkitemfactory.[hc]: changed gtk_item_factory_dump_items()
7126         and gtk_item_factory_dump_rc() GtkPatternSpec argument to
7127         GPatternSpec. this is actually unlikely to cause breakage in
7128         third-party apps since except for gle, pretty much ever caller
7129         passes NULL here.
7130
7131         * gtk/gtkbindings.[hc]: removed gtk_pattern_*() API.
7132
7133         * *.c: use g_pattern_*() API.
7134
7135         * docs/Changes-2.0.txt: GtkPatternSpec->GPatternSpec updates.
7136
7137         * gtk/gtkstyle.c (gtk_default_draw_resize_grip): assert unhandled
7138         directions aren't passed in.
7139
7140         * gtk/gtksettings.[hc] (_gtk_settings_parse_convert): export conversion
7141         functionality to be usable from gtkstyle.c as well, give precedence
7142         for conversion to user-supplied parsers.
7143         s/_gtk_rc_property_parser_for_type/_gtk_rc_property_parser_from_type/;
7144
7145         * gtk/gtkstyle.c (_gtk_style_peek_property_value): use
7146         _gtk_settings_parse_convert() for rcporperty value conversion.
7147
7148 2001-04-03  Alexander Larsson  <alexl@redhat.com>
7149
7150         * gdk/linux-fb/gdkevents-fb.c:
7151         Add empty gdk_setting_get().
7152
7153 Tue Apr  3 05:09:07 2001  Tim Janik  <timj@gtk.org>
7154
7155         * gtk/gtkmain.c (_gtk_boolean_handled_accumulator): use more elaborate
7156         variable names.
7157         
7158         * gtk/makeenums.pl: touch this so enum files get remade.
7159
7160 Mon Apr  2 19:36:57 2001  Jonathan Blandford  <jrb@redhat.com>
7161
7162         * gtk/gtktreestore.c (gtk_tree_store_init):  Bug fix to make trees
7163         work again when not sorted.
7164
7165         * gtk/gtktreeview.c (gtk_tree_view_class_init): Add "collapse_row"
7166         and "expand_row" signal, closing bug 52578.
7167
7168         * gtk/gtktreeview.c (gtk_tree_view_expand_row): Add signal
7169         support.
7170
7171         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): Add signal
7172         support.
7173
7174 Mon Apr  2 18:18:07 2001  Owen Taylor  <otaylor@redhat.com>
7175
7176         * gdk/gdkevents.h: Add GdkEventSetting event for notification
7177         of changes to system settings, gdk_setting_get() to retrieve
7178         a single system setting.
7179
7180         * gdk/x11/gdkevents-x11.c: Bridge gdk_setting_get() and GdkEventSetting
7181         to the draft XSETTINGS mechanism.
7182
7183         * gdk/x11/xsettings-{common,client}.[ch]: Sample-implementation of
7184         XSETTINGS.
7185
7186         * gtk/gtkmain.c gtk/gtksettings.[ch]: Propagate notification
7187         of GDK settings changes to the GtkSettings object.
7188
7189         * gdk/gdkevents.[ch] gdk/gtk/gtksettings.c: Hook up the
7190         double-click-timeout property to GDK.
7191
7192         * gdk/gdkcolor.[ch] gdk/gdkvisual.h gdk/gdkevent.[ch] gdk/gdkfont.[ch]:
7193         Define GDK boxed types here.
7194
7195         * gdk/Makefile.am gdk/makeenums.pl: Generate source files
7196         gdk/gdkenumtypes.[ch] for enum definitions.
7197
7198         * gtk/gtkcompat.h: Add defines for GTK_TYPE_GDK_*
7199         * gtk/gtk-boxed.defs: Comment out GDK types
7200         * gtk/gtktypeutils.h: Remove GDK types
7201         * gtk/Makefile.am: No longer scan GDK headers for enumerataions
7202
7203 Mon Apr  2 16:41:08 2001  Owen Taylor  <otaylor@redhat.com>
7204
7205         * Applied patch from Ron Steinke to add signal accumulators
7206         so that signals with the convention 'TRUE return means
7207         handled' stop emission on a TRUE return.
7208
7209         * gtk/gtkmain.[ch]: Add private accumulator 
7210         _gtk_boolean_handled_accumulator, used throughout GTK+.
7211         
7212         * gtk/gtkspinbutton.c: Add accumulator for ::output.
7213
7214         * gtk/gtktipsquery.c: Add accumulator for ::widget_selected
7215         
7216         * gtk/gtkwidget.c: Add accumulators for event signals,
7217         ::drag_motion, ::drag_drop. Use _gtk_boolean_handled_accumator
7218         for ::mnemonic-activate.
7219
7220         * gtk/gtkwindow.c: Add accumulator for ::frame_event
7221
7222 Mon Apr  2 16:24:21 2001  Owen Taylor  <otaylor@redhat.com>
7223
7224         * gtk/gtkwidget.c: Add missing include.
7225
7226 Mon Apr  2 16:56:15 2001  Jonathan Blandford  <jrb@redhat.com>
7227
7228         * gtk/gtkmarshal.list (VOID:BOXED,BOXED,BOXED,BOXED): new
7229         marshaller.
7230
7231         * gtk/gtktreemodel.c (gtk_tree_model_range_changed): change
7232         "changed" signal to "range_changed".
7233
7234         * gtk/gtktreeview.c (gtk_tree_view_set_model): fix small bug where
7235         removing a tree from one model would remove all trees from that
7236         model.
7237         * gtk/gtktreeview.c (gtk_tree_view_range_changed): use range
7238         changed signal instead.
7239
7240 Mon Apr  2 16:13:58 2001  Owen Taylor  <otaylor@redhat.com>
7241
7242         * gtk/gtkinvisible.c (gtk_invisible_style_set): Avoid
7243         chaining up to parent impl, since we have a INPUT_ONLY
7244         window.
7245
7246         * gtk/gtkentry.[ch]: Add a cursor_color property to set the
7247         foreground color for the cursor.
7248
7249 Mon Apr  2 15:06:13 2001  Owen Taylor  <otaylor@redhat.com>
7250
7251         * gtk/gtkstyle.c (_gtk_style_peek_property_value): Reference 
7252         param spec when caching property values, since we unref it
7253         later when we free the style.
7254
7255         * gtk/gtkoptionmenu.c (gtk_option_menu_get_props): Dont' free
7256         values since they are retrieved with G_VALUE_NO_COPY_CONTENTS.
7257
7258 Mon Apr  2 10:47:57 2001  Owen Taylor  <otaylor@redhat.com>
7259
7260         * gtk/gtkwidget.c (gtk_widget_class_init): Fix 
7261         G_VALUE_NO_COPY_CONTENTS instead of G_SIGNAL_TYPE_STATIC_SCOPE
7262         stupidity.
7263
7264 Mon Apr  2 00:51:11 2001  Owen Taylor  <otaylor@redhat.com>
7265
7266         [ First pass at adding style properties. Still needs some definite
7267         fine-tuning. ]
7268
7269         * gtk/gtkbutton.c: Add ::default_spacing style property.
7270          
7271         * gtk/gtkcheckbutton.[ch] gtkradiobutton.c: Add ::indicator_size,
7272         ::indicator_spacing style properties.
7273
7274         * gtk/gtkoptionmenu.c: Add ::indicator_size, ::indicator_spacing
7275         style properties.
7276
7277         * gtk/gtk{,h,v}paned.[ch]: Make handle_size a style property
7278         rather than a normal property.
7279
7280         * gtk/gtkwidget.c: Add an ::interior_focus style property to
7281         draw focus inside buttons, in the Windows/Java Metal/etc. style.
7282
7283         * gtk/gtkbutton.c gtk/gtkcheckbutton.c gtk/gtktogglenbutton.c:
7284         Honor ::interior_focus.
7285         
7286         * gtk/gtkentry.c: Don't draw focus at all when ::interior_focus is 
7287         TRUE.
7288
7289         * gtk/gtkrange.[ch] gtk/gtk{h,v}scrollbar.c gtk/gtk{h,v}scale.c:
7290         Add ::slider_width, ::trough_border, ::stepper_size,
7291         ::stepper_spacing style properties.
7292
7293         * gtk/gtkscale.[ch] Add ::slider-length style property.
7294
7295 2001-04-02 Alexander Larsson   <alexl@redhat.com>
7296
7297         * gdk/linux-fb/gdkwindow-fb.c:
7298         Add gdk_window_begin_resize_drag and gdk_window_begin_move_drag. Remove some
7299         warnings that were spewed on startup.
7300
7301         * gtk/gtkwindow-decorate.c:
7302         gtk_window_reposition -> _gtk_window_reposition
7303
7304 Sun Apr  1 21:37:22 2001  Owen Taylor  <otaylor@redhat.com>
7305
7306         * gtk/gtkwidget.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
7307         Add boxed type for GtkRequistion. Use it for ::size-request.
7308
7309         * gtk/gtkstyle.[ch] gtk/gtktypeutils.c gtk/gtk-boxed.defs:
7310         Add a new GtkBorder structure useful for geometry properties
7311         for widgets. Add corresponding GTK_TYPE_BORDER.
7312         
7313         * gtk/gtkwidget.c (gtk_widget_class_install_style_property):
7314         Support automatic parser selection like
7315         gtk_settings_install_property_parser().
7316
7317         * gtk/gtksettings.c (_gtk_rc_property_select_parser): Export
7318         functionality for use by gtk_widget_class_install_style_property.
7319         Support GTK_TYPE_BORDER, GTK_TYPE_REQUISITION.
7320
7321 Sun Apr  1 20:48:59 2001  Owen Taylor  <otaylor@redhat.com>
7322
7323         * gtk/gtkentry.c (gtk_entry_class_init): Make invisible-char
7324         g_param_spec_unichar(). 
7325
7326 Sun Apr  1 23:41:37 2001  Tim Janik  <timj@gtk.org>
7327
7328         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): raise window for non
7329         _NET window managers.
7330
7331         * gtk/gtkmenufactory.[hc]: cvs removed those files now.
7332
7333 Sun Apr  1 08:00:13 2001  Tim Janik  <timj@gtk.org>
7334
7335         * gtk/gtkwidget.[hc]: got rid of gtk_widget_popup(), a function that
7336         bad needs to be nuked, not just deprecated.
7337
7338         * gtk/gtktooltips.c (gtk_tooltips_draw_tips): don't use 
7339         gtk_widget_popup().
7340
7341         * gtk/*.[hc]: s/activate_mnemonic/mnemonic_activate/g;
7342         
7343         * gtk/gtkmenufactory.[hc]: removed this long-standingly deprecated
7344         widget.
7345         
7346         * docs/Changes-2.0.txt: updates.
7347         
7348 Sun Apr  1 01:02:54 2001  Jonathan Blandford  <jrb@redhat.com>
7349
7350         * gtk/gtktreestore.c (gtk_tree_store_sort_iter_changed):
7351         for (i = 0; i < 100; i ++)
7352           g_print ("I will confirm it compile before committing\n");
7353
7354 Sun Apr  1 00:52:06 2001  Jonathan Blandford  <jrb@redhat.com>
7355
7356         * gtk/gtktreestore.c: Initial work on implementing the
7357         GtkTreeSortable interface.  Basicaly a big cut'n'paste job.
7358
7359 Sun Apr  1 03:28:14 2001  Tim Janik  <timj@gtk.org>
7360
7361         * gtk/gtkwidget.c: fixed a bunch of notifications, added
7362         reference counts around emissions where the widget is used afterwards.
7363         added freeze/thaws around multiple properties being notified.
7364         (_gtk_widget_get_aux_info): cleanups.
7365         
7366         * gtk/gtksettings.c (gtk_settings_install_property): provide
7367         default parsing functions for gdkcolor, enums and flags.
7368
7369         * gtk/gtkwindow.[hc]: partially reverted patch from havoc,
7370         applied by owen.
7371         backed out gtk_window_get_location(), gtk_window_set_location(),
7372         gtk_window_get_size() and gtk_window_set_size(), these
7373         have to be sorted out wrg x/y/width/height/default_with/default_height
7374         properties.
7375         kept a flag in GtkWindowGeometryInfo to handle user
7376         resetting default sizes.
7377         cleaned up ZVT comments.
7378         bunch of assorted bug fixes, notification fixes.
7379         (_gtk_window_reposition): make this a really internal function.
7380         
7381         * gtk/testgtk.c: fixups.
7382         
7383 2001-03-31  Hans Breuer  <hans@breuer.org>
7384
7385         * config.h.win32.in : disable USE_MMX for msvc build cause
7386         the assembler doesn't fit and is out of my scope. Disable
7387         USE_GMODULE for msvc build as wel. The right way to share
7388         binaries on win32 would be to use libtiff.dll etc. To reduce
7389         installation hassles IMO it's better to include all fileformats
7390         builtin to gdk-pixbuf
7391
7392         * gdk-pixbuf/makefile.msc : new file
7393
7394         * gdk/gdk.def : updated
7395
7396         * gdk/win32/gdkevents-win32.c : don't erase the background if
7397         .no_bg is set. It improves the scrolling (e.g. of testgtk main
7398         buttons
7399         * gdk/win32/gdkgeometry-win32.c : added comment about the above
7400
7401         * gdk/win32/gdkwindow-win32.c : added three new functions like
7402         the X version. Only one is implemented, because the other two
7403         "gdk_window_begin_(resize|move)_drag" got no docs and appear to
7404         be default behaviour on win32 anyway ...
7405
7406         * gtk/gtk.def : updated
7407
7408         * gtk/makefile.msc.in : update for new files, use glib-genmarshal
7409         from where it was built and add an additional rule to automagically
7410         build gtkmarshal.[hc]
7411
7412         * gtk/gtkfilesel.c (open_new_dir) : don't increase n_entries
7413         before array access for the current entry isn't finished
7414
7415         * gtk/gtktreeitem.c (gtk_tree_item_subtree_button_click) :
7416         use g_return_val_if_fail
7417
7418         * gtk/testgtk.c (window_controls) : don't use the *wrong* size
7419         for the static array, but let the compiler calculate it. It
7420         makes me wonder if gcc isn't capable to catch bugs like this ...
7421
7422 2001-03-31  James Henstridge  <james@daa.com.au>
7423
7424         * gtk/gtkwidget.c (gtk_widget_size_adjust): fix use of magic
7425         constant "-1" in the aux info structure.
7426
7427 2001-03-30  Alexander Larsson  <alexl@redhat.com>
7428
7429         * gtk/gtkbutton.c (gtk_button_get_property):
7430         * gtk/gtklabel.c:
7431         Remove leaks.
7432         
7433         * gtk/gtkcontainer.c:
7434         * gtk/gtkhscale.c:
7435         * gtk/gtkhscrollbar.c:
7436         * gtk/gtklayout.c:
7437         * gtk/gtkmisc.c:
7438         * gtk/gtkprogress.c:
7439         * gtk/gtkprogressbar.c:
7440         * gtk/gtkrange.c:
7441         * gtk/gtktable.c:
7442         * gtk/gtkviewport.c:
7443         * gtk/gtkvscale.c:
7444         * gtk/gtkvscrollbar.c:
7445         * gtk/gtkwidget.c:
7446         Property patches, based on patches from John Margaglione and Lee Mallabone.
7447
7448 Thu Mar 29 21:20:38 2001  Mike Kestner  <mkestner@ameritech.net>
7449
7450         * gtk/gtkspinbutton.c : added value_changed signal which proxies for the
7451         adjustment. Cleaned redundant preconditions (spin != NULL). Added
7452         inline API function docs.
7453         (gtk_spin_button_new_with_range): New convenience constructor.
7454         (gtk_spin_button_set_increments): New adjustment helper.
7455         (gtk_spin_button_set_range): New adjustment helper.
7456
7457         * gtk/testgtk.c : added test of the new convenince constructor and
7458         value_changed signals.
7459
7460 Thu Mar 29 20:20:38 2001  Jonathan Blandford  <jrb@redhat.com>
7461
7462         * gtk/gtktreemodel.c (gtk_tree_row_ref_reordered_callback): Now we
7463         listen to the reorder signal.
7464
7465 Wed Mar 28 20:30:26 2001  Owen Taylor  <otaylor@redhat.com>
7466
7467         * gtk/gtkwidget.[ch] (_gtk_widget_get_aux_info): Add private function
7468         to get the aux info structure fo the widget.
7469
7470         * gtk/gtklabel.c gtk/gtkscrolledwindow.c gtk/gtkwindow.c: Use
7471         above function.
7472
7473         [ Patch from  Havoc Pennington  <hp@redhat.com> ]
7474
7475         * gdk/x11/gdkwindow-x11.c (gdk_window_get_frame_extents): function
7476         to get the size of the window manager frame, basically the same
7477         code that gdk_window_get_root_origin() had
7478         (gdk_window_get_root_origin): use gdk_window_get_frame_extents()
7479
7480         * gtk/gtkwindow.c (gtk_window_set_default_size): use
7481         gdk_window_resize() if the window is realized and resizeable
7482
7483         * gdk/x11/gdkwindow-x11.c (gdk_window_set_geometry_hints): fix
7484         typo so that setting gravity works
7485
7486         * gtk/gtkwindow.c (gtk_window_move_resize): don't ever use
7487         allocation if auto_shrink is on, even if the default size
7488         has not changed.
7489
7490         * gtk/gtkwidget.c (gtk_widget_render_icon): remove bogus
7491         g_return_if_fail
7492
7493 Thu Mar 29 16:29:12 2001  Jonathan Blandford  <jrb@redhat.com>
7494
7495         * gtk/gtkliststore.c (gtk_list_store_iter_changed): Massive
7496         reordering/sorting work.  Now pretty much works.
7497
7498         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): Lots of work to make
7499         reorder mostly work.  Still need to get the parity correct.
7500
7501         * gtk/gtktreeviewcolumn.c: Listen for "model" property changed
7502         signal, so I can listen for the sort_column_changed signal so I
7503         can change my "sort_indicator" property.  Cool.
7504
7505 Wed Mar 28 00:03:10 2001  Owen Taylor  <otaylor@redhat.com>
7506
7507         [ Patch from Havoc Pennington, hp@redhat.com ]
7508
7509         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c:
7510         Add functions gdk_window_begin_resize_drag/begin_move_drag
7511         to start resizing or moving a toplevel window. This
7512         is done either using the _NET_WM_MOVERESIZE protocol,
7513         or, if that isn't present, by emulation.
7514
7515         * gtk/gtkwindow.[ch]: Add functions gtk_begin_move/resize_drag
7516         to export the above to GTK+-land.
7517
7518         * gtk/gtkstyle.[ch]: Add ->draw_resize_grip() paint func.
7519         
7520         * gtk/gtkwindow.c gdk/gdkwindow.[ch] (gdk_window_constrain_size):
7521         Move this function into gdkwindow, since we need it
7522         when implementing fallback resizing.
7523
7524         * gdk/x11/gdkwindow-x11.c: gdk_window_set_geometry_hints.
7525         Fix typo when setting gravity.
7526
7527         * gtk/gtkstatusbar.[ch] (gtk_statusbar_set_has_resize_grip):
7528         Add an optional (but on by default) resize grip for resizing 
7529         the parent window.
7530
7531 01-03-29  Alexander Larsson  <alexl@redhat.com>
7532
7533         * gtk/gtktooltips.c (gtk_tooltips_event_handler):
7534         Don't return TRUE from the event handler, that blocks all
7535         event signals on the tooltip widget. Now you can press buttons
7536         in toolbars again.
7537
7538 Wed Mar 28 19:20:43 2001  Owen Taylor  <otaylor@redhat.com>
7539
7540         * gtk/testtext.c (create_buffer): Add missing NULL on
7541         valist.
7542
7543         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_class_init): Fix
7544         c-n-p problem with INCONSISTENT property.
7545
7546         [ Patch from Havoc Pennington  <hp@redhat.com> ]
7547
7548         * gtk/gtkentry.h (struct _GtkEntryClass): add same populate_popup
7549         hook.
7550
7551         * gtk/gtktextview.h (struct _GtkTextViewClass): add populate_popup
7552         signal as a hook for extending the default popup menu
7553
7554         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7555         use radio menu items for the input method menuitems
7556
7557         * gtk/gtkimcontextsimple.c (check_hex): do better validation of 
7558         inserted unicode from Ctrl-Shift-hex input method
7559
7560         * gtk/gtktextbtree.c (_gtk_text_btree_insert): remove utf8
7561         validatation here, already done at GtkTextBuffer level.
7562
7563         * gtk/gtkwidget.c (gtk_widget_class_init): add binding set, add
7564         popup_menu run action signal and Shift+F10 and Menu keybindings.
7565
7566         * gtk/gtkentry.c: implement a default handler for popup_menu
7567
7568         * gtk/gtktextview.c: implement a default handler for popup_menu
7569
7570         * gtk/gtkmenu.c (gtk_menu_popup): select first item if popup is
7571         from a key event
7572         
7573         * gtk/gtklabel.c: remove "trailer" cruft
7574
7575 Wed Mar 28 17:27:12 2001  Jonathan Blandford  <jrb@redhat.com>
7576
7577         * gtk/gtkrbtree.c (_gtk_rbtree_reorder): new function to
7578         handle reordering of trees.  Seems to mostly work w/ the exception
7579         of the parity flag.
7580
7581         * gtk/gtktreeview.c (gtk_tree_view_reordered): handle "reordered"
7582         signal.
7583
7584 Wed Mar 28 21:12:37 2001  Tim Janik  <timj@gtk.org>
7585
7586         * gtk/gtkwidget.h: c++ fixes.
7587
7588 Sun Mar 25 15:51:28 2001  Owen Taylor  <otaylor@redhat.com>
7589
7590         * gtk/gtksettings.c (gtk_settings_init): Fix use of uninitialized
7591         memory.
7592
7593 Tue Mar 27 22:36:07 2001  Owen Taylor  <otaylor@redhat.com>
7594
7595         * gtk/gtkwidget.h gtk/gtkrange.h: Apply patch from 
7596         Nils Barth fixing event return values. (#51041)
7597
7598         * gtk/gtkwidget.c: Fix some return values for default
7599         functions.
7600
7601         * gtk/gtk[vh]scrollbar.c gtk/gtk[vh]range.c: Fix
7602         return values for trough_keys functions.
7603
7604         * gtk/gtkwidget.h (struct _GtkWidgetClass): Fix return
7605         value for add_accelerator (shoudl have been a void
7606         return.)
7607
7608         * gtk/gtkcellrenderer.[ch]: gtkcellrenderertoggle.h:
7609         Fix return type of EVENT.
7610
7611         * gtk/gtkmarshal.list gtk/gtktexttag.c: Make EVENT
7612         signal return a boolean.
7613
7614 Tue Mar 27 22:07:44 2001  Jonathan Blandford  <jrb@redhat.com>
7615
7616         * gtk/gtkliststore.c (gtk_list_store_sort): Fix arguments to
7617         reordered signal.
7618
7619         * tests/testtreesort.c (main): fix spelling.
7620
7621 Tue Mar 27 20:55:29 2001  Jonathan Blandford  <jrb@redhat.com>
7622
7623         * gtk/gtkliststore.c: More work on implementing sortable
7624         interface.
7625
7626 Mon Mar 26 15:48:45 2001  Owen Taylor  <otaylor@redhat.com>
7627
7628         * gtk/gtkwindow.c (gtk_window_list_toplevels): Don't
7629         reference the widgets in the resulting list. (#11821)
7630         This makes this consistent with gtk_container_children.
7631
7632         * gtk/gtkwindow.c gtk/gtkwidget.c: Fix up the two
7633         uses of gtk_window_list_toplevels.
7634
7635 Mon Mar 26 15:26:17 2001  Owen Taylor  <otaylor@redhat.com>
7636
7637         * gtk/gtkimcontext.c (gtk_im_context_set_use_preedit): Add
7638         a virtual function to set whether the IM context should use 
7639         the preedit string. (#51922)
7640         
7641 Mon Mar 26 14:42:59 2001  Owen Taylor  <otaylor@redhat.com>
7642
7643         * gdk/gdkpango.h: Remove stale FIXME comment.
7644
7645 2001-03-26  Alexander Larsson  <alla@lysator.liu.se>
7646
7647         * gtk/gtkfilesel.c (gtk_file_selection_get_filename):
7648         Fixed bug that returned NULL if a filename was selected.
7649
7650 2001-03-24  Havoc Pennington  <hp@pobox.com>
7651
7652         * gtk/gtkthemes.c (gtk_theme_engine_load): improve error message
7653         to contain the word "theme"
7654
7655 2001-03-24  Havoc Pennington  <hp@pobox.com>
7656
7657         * gtk/gtkhsv.c (gtk_hsv_move): make motion around the ring much
7658         slower but finer-grained
7659         (gtk_hsv_focus): get initial focus on the ring or triangle 
7660         according to tab direction
7661
7662         * gtk/testgtk.c (main): get rid of weird sleep(1) on exit
7663
7664 2001-03-23  Havoc Pennington  <hp@pobox.com>
7665
7666         * gtk/gtkhsv.c: make this somewhat key-navigable
7667
7668         * gtk/gtkfontsel.c: mnemonics
7669
7670         * gtk/gtkgamma.c: mnemonics
7671
7672         * gtk/gtkcolorsel.c: add mnemonics to labels
7673
7674 2001-03-22  Havoc Pennington  <hp@pobox.com>
7675
7676         Applied big patch from Seth Lytle to fix event handler return
7677         values, slightly modified.
7678
7679         * gtk/gtkcalendar.c (gtk_calendar_button_press): return TRUE if
7680         handled.
7681         (gtk_calendar_key_press): return TRUE for GDK_space triggers
7682         select_day
7683
7684         * gtk/gtkclist.c (gtk_clist_button_press): return TRUE if handled
7685         (gtk_clist_button_release): return TRUE if handled
7686
7687         * gtk/gtkcolorsel.c (mouse_release):
7688         (palette_activate): 
7689         (palette_press): 
7690         (palette_new): 
7691         (mouse_press): 
7692         (get_screen_color): 
7693         fixed return type (void to gboolean), return TRUE,
7694         added GTK_SIGNAL_FUNC cast
7695
7696         * gtk/gtkcombo.c (gtk_combo_popup_button_press): fixed return type
7697         (void to gboolean), and return TRUE
7698         (gtk_combo_button_release): changed return value to TRUE after
7699         gtk_grab_add on combo->popwin
7700
7701         * gtk/gtkctree.c (gtk_ctree_button_press): return TRUE if triggers a
7702         collapse or expand
7703
7704         * gtk/gtkcurve.c (gtk_curve_graph_events): return TRUE for
7705         button/motion
7706
7707         * gtk/gtkdnd.c (gtk_drag_source_event_cb): return TRUE for button
7708         press/release and motion that trigger act
7709
7710         * gtk/gtkentry.c (gtk_entry_button_release): return TRUE
7711
7712         * gtk/gtkfontsel.c (gtk_font_selection_size_key_press): return TRUE
7713         for GDK_Return
7714         
7715         * gtk/gtklist.c (gtk_list_button_press): return TRUE mostly
7716         (gtk_list_button_release): return TRUE if selection
7717
7718         * gtk/gtklistitem.c (gtk_list_item_button_press): return TRUE on
7719         press
7720
7721         * gtk/gtkmenushell.c (gtk_menu_shell_button_press):
7722         (gtk_menu_shell_button_release): chain parent_menu_shell retval
7723
7724         * gtk/gtknotebook.c (gtk_notebook_button_press): return FALSE if
7725         nothing triggered
7726         (gtk_notebook_button_release): return TRUE if we do anything
7727
7728         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): 
7729         (gtk_spin_button_button_release): return TRUE or chained retval
7730
7731         * gtk/gtktext.c (gtk_text_button_press): 
7732         (gtk_text_button_release): return TRUE
7733         (gtk_text_key_press): remove redundant retval code
7734         
7735         * gtk/gtktreeitem.c (gtk_tree_item_button_press): return TRUE if button
7736         and sensitive
7737         (gtk_tree_item_subtree_button_click): changed type to gint, and return
7738         TRUE if sensitive
7739
7740         * gtk/gtktooltips.c (gtk_tooltips_event_handler): deactivate implies 
7741         return TRUE
7742
7743 2001-03-23  Havoc Pennington  <hp@redhat.com>
7744
7745         * gtk/testgtk.c: fix warnings
7746
7747         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): fix return value
7748
7749         * gtk/gtktextview.c: fix warnings
7750
7751         * gtk/gtktext.c (find_cursor_at_line): fix warning
7752
7753         * gtk/gtkselection.c (gtk_selection_notify): fix warning 
7754
7755         * gtk/gtkitemfactory.c (gtk_item_factory_menu_pos): fix signature
7756         of this function
7757
7758         * gtk/gtkimmulticontext.c (gtk_im_multicontext_append_menuitems):
7759         fix warning
7760
7761         * gtk/gtkhandlebox.c (gtk_handle_box_style_set): fix warning
7762
7763         * gtk/gtkfontsel.c: fix warning
7764
7765         * gtk/gtkcolorsel.c: fix warnings
7766
7767 2001-03-23  Havoc Pennington  <hp@redhat.com>
7768
7769         * gtk/gtkhandlebox.c: Apply property patch from Lee Mallabone
7770
7771         * gtk/gtkbox.c: Apply property patch from Lee Mallabone
7772
7773         * gtk/gtkcheckmenuitem.c: Apply property patch from Lee Mallabone,
7774         and deprecated gtk_check_menu_item_set_show_toggle().
7775         
7776         * gtk/gtkbutton.c: Apply property patch from Lee Mallabone
7777
7778         * gtk/gtkfilesel.c: Apply property patch from Lee Mallabone
7779
7780         * gtk/gtkframe.c: Apply property patch from Lee Mallabone
7781
7782 2001-03-23  Havoc Pennington  <hp@redhat.com>
7783
7784         * gtk/gtktoolbar.c, gtk/gtkimcontext.c, gtk/gtklabel.c: fix up
7785         some docs
7786
7787 Fri Mar 23 16:13:43 2001  Jonathan Blandford  <jrb@redhat.com>
7788
7789         * gtk/gtktreeviewcolumn.h (GtkCellDataFunc): Forgot to namespace
7790         this.
7791
7792         * gtk/gtktreestore.c (gtk_tree_store_set_value): change from
7793         set_cell to set_value
7794
7795         * gtk/gtkliststore.c (gtk_list_store_set_value): change from
7796         set_cell to set_value
7797
7798 Thu Mar 22 19:27:34 2001  Jonathan Blandford  <jrb@redhat.com>
7799
7800         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7801         fix braino.
7802         * gtk/gtktreesortable.[ch]: New interface to add cleanup sortable
7803         support.
7804
7805         * gtk/gtktreeview.c: Addition of initial sortable support.
7806
7807         * gtk/gtktreestore.c: Addition of initial sortable support.
7808
7809         * gtk/gtkliststore.c: Addition of initial sortable support.
7810
7811         * gtk/gtkmarshal.list: yet another marshaller.
7812
7813         * gtk/gtktreedatallist.[ch]: shared code between the store models
7814         for handling sorting headers.
7815
7816 2001-03-22  Havoc Pennington  <hp@redhat.com>
7817
7818         * gtk/gtkcontainer.c (gtk_container_set_focus_chain): 
7819         (gtk_container_unset_focus_chain): Add ability to override the 
7820         focus chain for a container explicitly
7821
7822 Thu Mar 22 13:01:44 2001  Tim Janik  <timj@gtk.org>
7823
7824         * gtk/gtklabel.[hc]: some cleanups, fixed mnemonic_widget handling,
7825         added PROP_MNEMONIC_WIDGET.
7826
7827         * gtk/gtkwindow.c (gtk_window_activate_mnemonic): 
7828         (gtk_window_remove_mnemonic): 
7829         (gtk_window_add_mnemonic): fixed assertions.
7830         (gtk_window_activate_mnemonic): constrain modifier checks to those
7831         permitted by gtk_accelerator_get_default_mod_mask().
7832         got rid of gtk_window_get_default_accel_group().
7833
7834         * gtk/gtkwidget.c (gtk_widget_real_activate_mnemonic): handle non
7835         activatable widgets either by focussing or a warning.
7836         added a signal accumulator to ::activate_mnemonic which stops the
7837         emission once a handler returned TRUE.
7838
7839 2001-03-22  Havoc Pennington  <hp@pobox.com>
7840
7841         * gtk/gtktoolbar.c (gtk_toolbar_insert_stock): handle mnemonics in
7842         the stock item label
7843
7844         * gtk/gtklabel.c: s/@gtk_func/gtk_func()/ in docs
7845
7846         * gtk/gtkstock.c (builtin_items): add mnemonics where missing
7847
7848         * demos/gtk-demo/*.c: Add mnemonics all over the place
7849
7850         * gtk/gtklabel.h: mark parse_uline deprecated
7851
7852 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7853
7854         * gtk/gtkitemfactory.[ch]:
7855         Add support for stock and normal imagemenuitems.
7856         
7857         * gtk/testgtk.c:
7858         Add some tests for mnemonics, stock toolbars, stock
7859         and image menuitems in itemfactory and gdk_window_scroll.
7860
7861 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7862
7863         * gtk/gtkbutton.[ch]:
7864         * gtk/gtkdialog.c:
7865         Renamed gtk_button_new_stock() to gtk_button_new_from_stock() and
7866         removed accel_group argument. Renamed gtk_button_new_accel() to
7867         gtk_button_new_with_mnemonic() and removed accel_group argument.
7868
7869         * gtk/gtkcheckbutton.[ch]:
7870         New function gtk_check_button_new_with_mnemonic().
7871
7872         * gtk/gtkentry.c:
7873         Override activate_mnemonic and just grab focus.
7874
7875         * gtk/gtkitemfactory.c:
7876         Don't add menu uline accel group, instead use mnemonics support.
7877
7878         * gtk/gtklabel.[ch]:
7879         New support for mnemonics.
7880
7881         * gtk/gtkmarshal.list:
7882         Needed BOOLEAN:BOOLEAN for activate_mnemonic.
7883
7884         * gtk/gtkmenu.[c]:
7885         * gtkmenushell.c:
7886         Use mnemonics instead of accel groups for uline
7887         support in menu items.
7888         Removed gtk_menu_get_uline_accel_group() and
7889         gtk_menu_ensure_uline_accel_group().
7890
7891         * gtk/gtkmenuitem.c:
7892         Override activate_mnemonic to handle switching between
7893         menu items if there are collisions.
7894         
7895         * gtk/gtknotebook.c:
7896         Connect to activate_mnemonic on the tab_label, so that
7897         activating it switches to that notebook page.
7898
7899         * gtk/gtkwidget.[ch]:
7900         Add activate_mnemonic signal. New function
7901         gtk_widget_activate_mnemonic() to emit it.
7902         Default implementation does activate/grab_focus.
7903
7904         * gtk/gtkwindow.[ch]:
7905         Add support for mnemonics in windows.
7906         New functions:
7907         gtk_window_add_mnemonic, gtk_window_remove_mnemonic,
7908         gtk_window_activate_mnemonic, gtk_window_set_mnemonic_modifier
7909
7910         * gtk/testgtk.c:
7911         Update to function name changes.
7912         
7913 2001-03-21  Alexander Larsson  <alexl@redhat.com>
7914
7915         * gtk/gtkimagemenuitem.[c]:
7916         Add gtk_image_menu_item_new_from_stock()
7917
7918 Tue Mar 20 15:00:43 2001  Jonathan Blandford  <jrb@redhat.com>
7919
7920         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
7921         Fix buglet in meeting.
7922
7923 2001-03-19  Havoc Pennington  <hp@redhat.com>
7924
7925         * gtk/gtkiconfactory.c: Make GtkIconSource an opaque datatype, and
7926         add a bunch of accessor functions. This is because we have
7927         reasonable expectations of extending what fields it contains in
7928         the future.
7929
7930         * gtk/gtkstyle.c (gtk_default_render_icon): adapt to icon source
7931         changes
7932
7933         * gtk/gtkrc.c (gtk_rc_parse_icon_source): fix to use new
7934         GtkIconSource   
7935
7936 Mon Mar 19 15:53:36 2001  Owen Taylor  <otaylor@redhat.com>
7937
7938         * gtk/gtkitemfactory.c gtk/testgtk.c: Handle quoting of / with \; properly
7939         handle __ in paths, quote " and \n in gtk_item_factory_dump_items().
7940
7941         * gtk/gtkadjustment.[ch] gtk/gtkclist.c gtk/gtkhruler.c gtk/gtklayout.c 
7942           gtk/gtklist.c gtk/gtkprogress.[ch] gtk/gtkprogressbar.[ch] gtk/gtkrange.[ch]
7943           gtk/gtkruler.[ch] gtk/gtkscale.c gtk/gtkscrolledwindow.c gtk/gtkspinbutton.[ch]
7944           gtk/gtktext.c gtk/gtktextview.c gtk/gtkvruler.c gtk/testgtk.c:
7945         Change float to double everywhere with the exception of 0<->1.0 alignment
7946         and GtkCurve.
7947
7948 2001-03-19  Tor Lillqvist  <tml@iki.fi>
7949
7950         * gdk/win32/gdkdrawable-win32.c
7951         * gdk/win32/gdkimage-win32.c: Use correct casts in debugging
7952         output.
7953
7954         * demos/testpixbuf-drawable.c: If GDK_WINDOWING_WIN32, include
7955         gdkwin32.h.
7956
7957 2001-03-18  Tor Lillqvist  <tml@iki.fi>
7958
7959         * gdk/win32/gdkevents-win32.c (print_window_state): New function.
7960         print_event_state, print_event): Use preprocessor macro to make
7961         code more compact. Print also GDK_WINDOW_STATE events.
7962         (synthesize_crossing_events): Remove the old #ifdeffed-out code.
7963         
7964         * gtk/gtk.def
7965         * gtk/makefile.mingw.in: Update.
7966
7967         * gtk/gtkmain.h: Check for G_PLATFORM_WIN32, not only G_OS_WIN32,
7968         to catch also Cygwin.
7969
7970 Sun Mar 18 01:15:30 2001  Tim Janik  <timj@gtk.org>
7971
7972         * gtk/gtkspinbutton.[hc]: added rc-style argument
7973         GtkSpinButton::shadow_type.
7974         removed spin_button->shadow_type, gtk_spin_button_set_shadow_type()
7975         and ARG_SHADOW_TYPE as it doesn' make much sense to try to override
7976         rc-style settings.
7977
7978         * gtk/gtkfixed.c: removed gtk_fixed_paint() (was unused).
7979
7980         * gtk/gtkwidget.c: quark cleanups.
7981
7982         * gtk/gtkrc.[hc]: added gtk_rc_scanner_new() to create an rc-file
7983         scanner with appropriate configuration, renamed GtkRcStyleClass.clone
7984         to create_rc_style() (we don't do cloning in standard OO sense).
7985         added per rc style properties.
7986         
7987         * gtk/gtkstyle.[hc]: added code to retrive pspec conformant rc-style
7988         property values and for caching those. some cleanups.
7989         
7990         * gtk/Makefile.am: -DG_DISABLE_CONST_RETURNS.
7991         
7992         * gtk/gtksettings.[hc]: new file for global rc-file properties
7993         (at least currently, should get extended to support X properties
7994         and other communication mechanisms).
7995         
7996         * gtk/gtkwidget.[hc]: added style property support:
7997         (gtk_widget_class_install_style_property_parser): install style
7998         property pspec with parser function for rc-file values other
7999         than LONG, DOUBLE or STRING.
8000         (gtk_widget_class_install_style_property): same as above without
8001         parser (parsers are going to be needed quite infrequently).
8002         (gtk_widget_style_get_property): retrive style property value.
8003         (gtk_widget_style_get_valist): same as above with varargs support,
8004         has NOCOPY semantics.
8005         (gtk_widget_style_get): wrapper around gtk_widget_style_get_valist().
8006
8007 Fri Mar 16 18:24:53 2001  Jonathan Blandford  <jrb@redhat.com>
8008
8009         * demos/gtk-demo/main.c (row_activated_cb): modified to use
8010         "row_activated" signal.
8011
8012         * gtk/gtktreeview.c (gtk_tree_view_row_activated): oh, the
8013         stupidity.  Lets actually pass in the row with this signal...
8014
8015 Fri Mar 16 18:01:17 2001  Jonathan Blandford  <jrb@redhat.com>
8016
8017         * gtk/gtktreeviewcolumn.[ch]: s/GTK_TREE_COLUMN/GTK_TREE_VIEW_COLUMN
8018
8019         * gtk/gtktreeview.c (gtk_tree_view_row_activated): New signal.
8020
8021         * gtk/gtktreeview.c (gtk_tree_view_destroy): moved pretty much
8022         everything into the ::destroy function, and freed a lot more.
8023
8024 2001-03-16  Havoc Pennington  <hp@redhat.com>
8025
8026         * gtk/gtkwidget.h (struct _GtkWidgetAuxInfo): change to use gint
8027         instead of gint16, to avoid overflow issues, since sizes > 16-bit
8028         are now allowed.
8029
8030 2001-03-16  Havoc Pennington  <hp@redhat.com>
8031
8032         * Applied patch from Nils Barth (bug # 51041) to 
8033         replace "gint" with "gboolean" and 0/1 with TRUE/FALSE
8034         in various places.
8035
8036 2001-03-15  Havoc Pennington  <hp@redhat.com>
8037         
8038         * gtk/gtktextbuffer.c (gtk_text_buffer_create_tag): add varargs 
8039         for properties to set on the tag.
8040
8041         * gtk/testtext.c: fixups to reflect create_tag change
8042         
8043         * gtk/gtktexttag.c (gtk_text_tag_set_property):
8044         background/foreground stipple are objects, not boxed.
8045
8046         * demos/gtk-demo/textview.c: intellihancing
8047
8048 Fri Mar 16 11:38:42 2001  Jonathan Blandford  <jrb@redhat.com>
8049
8050         * gtk/gtktreeview.c (gtk_tree_view_set_model): Fixed some
8051         braindeadness spotted by Jamie Strachan <frostfreek@yahoo.com>.
8052
8053 2001-03-16  Alexander Larsson  <alexl@redhat.com>
8054
8055         * gdk/x11/gdkgeometry-x11.c (_gdk_window_process_expose):
8056         Fix sign error with queued region translations.
8057
8058 2001-03-15  HideToshi Tajima  <tajima@happy>
8059
8060         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_set_cursor_location): 
8061         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_location):
8062         * gtk/gtkentry.c (update_im_cursor_location): 
8063         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_location):
8064         * gtk/gtkimcontext.h (struct _GtkIMContextClass): rename
8065         set_cursor_pos to set_cursor_location in GtkInputContext class
8066
8067 Thu Mar 15 18:22:44 2001  Jonathan Blandford  <jrb@redhat.com>
8068
8069         * gtk/gtkcellrenderer.h: Changed prototype to allow for getting
8070         the location of the cell relative to its area.
8071         * gtk/gtkcell*: modified for above change
8072         * gtk/gtktreeview.c: modified for above change.
8073
8074 Wed Mar 14 13:58:32 2001  Jonathan Blandford  <jrb@redhat.com>
8075
8076         * gtk/gtktreeview.c (gtk_tree_view_set_model): Ref the model.
8077          (gtk_tree_view_finalize): actually unref the model.  Thanks to
8078         Jamie Strachan <frostfreek@yahoo.com> for noticing this error.
8079
8080 2001-03-14  Havoc Pennington  <hp@redhat.com>
8081
8082         * gtk/gtkdata.h, gtk/gtkdata.c: Delete.
8083         
8084         * gtk/gtk.h: remove gtkdata.h
8085
8086         * gtk/Makefile.am: remove gtkdata
8087         
8088         * gtk/gtktext.c (gtk_text_set_adjustments): connect to "destroy"
8089         not "disconnect" on the adjustments.
8090         
8091         * gtk/gtktooltips.h, gtk/gtktooltips.c: derive from GtkObject not
8092         GtkData
8093
8094         * gtk/gtkadjustment.h, gtk/gtkadjustment.c: derive from GtkObject
8095         not GtkData
8096
8097         * configure.in: handle case where X render exists, but Pango lacks
8098         Xft support.
8099
8100 2001-03-15 Alexander Larsson  <alexl@redhat.com>
8101
8102         * gtk/gtktoolbar.[ch]:
8103         New functions gtk_toolbar_set_icon_size and gtk_toolbar_insert_stock
8104         to add stock items to toolbars.
8105
8106         * gtk/Makefile.am:
8107         Remove ../gdk/gdkim.h from gdk_headers.
8108
8109 2001-03-15  Sven Neumann  <sven@gimp.org>
8110
8111         * gdk/gdkim.h: removed
8112         
8113         * gdk/gdkprivate.h
8114         * gdk/x11/gdkim-x11.c: do not include gdkim.h 
8115
8116 2001-03-14  HideToshi Tajima  <tajima@happy.sunsoft.eng.sun.com>
8117
8118         * gtk/gtkimmulticontext.c (gtk_im_multicontext_set_cursor_pos):
8119         * gtk/gtkimcontext.c (gtk_im_context_set_cursor_pos):
8120         * gtk/gtkimcontext.h (struct _GtkIMContextClass): add
8121         set_cursor_pos() virtual method
8122
8123         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_class_init):
8124         (gtk_im_context_xim_set_cursor_pos): add implementation for
8125         set_cursor_pos() method
8126
8127         * gtk/gtkentry.c (recompute_idle_func): set current cursor
8128         position to input methods
8129
8130 Mon Mar 12 21:02:08 2001  Jonathan Blandford  <jrb@redhat.com>
8131
8132         * gtk/gtktreeview.c (gtk_tree_view_header_focus): Fix up focus
8133         code a lot.
8134
8135         * gtk/gtktreedatalist.c (_gtk_tree_data_list_free): use
8136         g_mem_chunk.
8137         (_gtk_tree_data_list_alloc): use g_mem_chunk.
8138         (_gtk_tree_data_list_node_to_value): Fix to switch on
8139         G_TYPE_FUNDAMENTAL.
8140         (_gtk_tree_data_list_value_to_node): Fix to switch on
8141         G_TYPE_FUNDAMENTAL.
8142         (_gtk_tree_data_list_node_copy): Fix to switch on
8143         G_TYPE_FUNDAMENTAL.
8144
8145 2001-03-12  Havoc Pennington  <hp@redhat.com>
8146
8147         * gtk/gtkwindow.c (gtk_window_class_init): Patch from John Margaglione 
8148         to convert to new property API. Also, change default_width and
8149         default_height get_property to return 0 as the flag value for
8150         "unset"; -1 is not a valid value for these fields.
8151
8152 2001-03-12  Havoc Pennington  <hp@redhat.com>
8153
8154         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: Switch to using an
8155         enum with registration for icon sizes, instead of strings.
8156
8157         * gtkimage.h, gtkimage.c, gtkstyle.h, gtkstyle.c, gtkwidget.h, 
8158         gtkwidget.c: Fix to reflect GtkIconSize
8159         
8160 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8161
8162         Make GtkFB compile and link.
8163         
8164         * gdk/linux-fb/gdkdrawable-fb2.c:
8165         window->mapped to GDK_WINDOW_IS_MAPPED(). 
8166         
8167         * gdk/linux-fb/gdkwindow-fb.c:
8168         window->mapped to GDK_WINDOW_IS_MAPPED(). 
8169         Added gdk_window_shape_combine_region.
8170         Added assorted placeholders for unimplemented new GdkWindow API calls.
8171
8172 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8173
8174         * gtk/gtkfilesel.c:
8175         Add more test when converting filenames from/to utf-8.
8176         Don't allow entering text in the filename entry which isn't allowed in
8177         a filename. Just beep instead.
8178
8179 2001-03-12  Alexander Larsson  <alexl@redhat.com>
8180
8181         * gtk/gtkclist.c:
8182         Scroll using gdk_window_scroll(). Don't wait for exposes.
8183         Move the column headers in an order that makes them flash less.
8184
8185 2001-03-10  Hans Breuer  <hans@breuer.org>
8186
8187         * gdk/gdk.def : updated
8188
8189         * gdk/win32/gdkgc-win32.c : pixmaps are visible again, due
8190         to offseting the clip_mask at the right place
8191
8192         * gdk/win32/gdkwindow-win32.c : don't create background brushes
8193         for all the gdkClasses, especially not for the input_only case.
8194         Otherwise flickering wont be avoidable, because we don't get
8195         WM_ERASEBKGND message for these windows.
8196
8197         * gdk/win32/gdkevents-win32.c : initialize event->expose.region
8198         and fixed massive redraw problems apparently triggered by Alexanders 
8199         recent change. Not fully understood the GDK_EXPOSE / WM_PAINT handling
8200         but it seems to work quite well :-)
8201
8202         * gdk/win32/gdkprivate-win32.h : added _gdk_window_process_expose
8203         prototype
8204
8205 Sat Mar 10 12:15:31 2001  Jonathan Blandford  <jrb@redhat.com>
8206
8207         * gtk/gtktreestore.c (gtk_tree_store_set_cell): Fix a stupid typo.
8208         (gtk_list_store_set_cell): Fix a stupid typo.
8209
8210 Fri Mar  9 20:36:21 2001  Jonathan Blandford  <jrb@redhat.com>
8211
8212         * gtk/gtktreeselection.c (gtk_tree_selection_select_all): Make
8213         select_all not work if you're in SINGLE mode (it doesn't make that
8214         much sense, anyway.)
8215
8216         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
8217         handle types more sanely.
8218         (_gtk_tree_data_list_value_to_node): handle types more sanely.
8219         (_gtk_tree_data_list_node_copy): handle types more sanely.
8220
8221         * gtk/gtkliststore.c (gtk_list_store_set_cell): fix to work with
8222         GValue better. Converts the type as well.
8223
8224         * gtk/gtktreestore.c (gtk_tree_store_set_cell): fix to work with
8225         GValue better. Converts the type as well.
8226
8227 Wed Mar  7 20:47:41 2001  Owen Taylor  <otaylor@redhat.com>
8228
8229         * gtk/gtktext.c gtk/gtkoldeditable.[ch] gdk/gdk.[ch]
8230         gdk/Makefile.am gdk/x11/Makefile.am gdk/x11/gdkevents-x11.c 
8231         gdk/x11/gdkglobals-x11.c gdk/x11/gdkprivate-x11.c
8232         gdk/x11/gdkx.h gdk/x11/gdkim-x11.c: Remove old XIM code.
8233
8234         * gdk/win32/gdkim-win32.c gdk/linux-fb/gdkim-fb.c: Remove
8235         gdk_im/gdk_ic.
8236
8237 2001-03-09  Hans Breuer  <hans@breuer.org>
8238
8239         * gdk/gdk.def : updated
8240
8241         * gdk/win32/gdkevents-win32.c : don't ask input_only windows
8242         for their palette
8243
8244         * gdk/win32/gdkgeometry-win32.c : reflect GdkWindowObject::mapped
8245         removing
8246
8247         * gdk/win32/gdkwindow-win32.c : reflect GdkWindowObject::mapped
8248         removing and implemented Havoc's GdkWindow state functions; 
8249         stick/unstick only as no-op, cause I don't know how to emulate 
8250         on win32 ...
8251
8252         * gtk/gtk.def : updated
8253
8254         * gtk/gtkbox.c (gtk_box_get_spacing) : use g_return_val_if_fail ()
8255
8256         * gtk/gtktypeutils.c : #include <string.h>
8257
8258         * gtk/gtkwindow.h : declare gtk_window_set_decorated ()
8259
8260 Fri Mar  9 09:31:55 2001  Tim Janik  <timj@gtk.org>
8261
8262         * gtk/gtkwidget.c (gtk_widget_class_init): fixed signals with
8263         GDK_TYPE_DRAG_CONTEXT, it needs to be marshaled as an object,
8264         not a boxed.
8265
8266 2001-03-09  Alexander Larsson  <alexl@redhat.com>
8267
8268         * docs/Changes-2.0.txt:
8269         Document expose event->region change and that gtk_widget_event
8270         doesn't allow passing expose events.
8271
8272         * gdk/gdkevents.h:
8273         Add region to expose event.
8274         
8275         * gdk/gdkevents.c:
8276         Handle event->region in gdk_event_copy() and gdk_event_free().
8277
8278         * gdk/gdkwindow.c (gdk_window_process_updates_internal):
8279         Generate expose_event->region when creating expose events.
8280
8281         * gdk/x11/gdkevents-x11.c:
8282         Generate expose events with regions when translating X events.
8283
8284         * gtk/gtkcontainer.[ch]:
8285         Default expose handler that propagates expose events to NO_WINDOW
8286         children. New function gtk_container_propagate_expose()
8287
8288         * gtk/gtkwidget.[ch]:
8289         Moved gtk_widget_event implementation to gtk_widget_event_internal.
8290         gtk_widget_event calls gtk_widget_event_internal but doesn't allow
8291         expose events. New function gtk_widget_send_expose() to send expose
8292         events. New function gtk_widget_region_intersect() to calculate
8293         window/region intersections.
8294         
8295         * gtk/gtkmain.c (gtk_main_do_event):
8296         Use gdk_window_begin_paint_region() instead of gdk_window_begin_paint_rect().
8297         Use gtk_widget_send_expose() to send expose events.
8298         
8299         * gtk/gtkbin.c:
8300         * gtk/gtkbox.c:
8301         * gtk/gtkfixed.c:
8302         * gtk/gtkimagemenuitem.c:
8303         * gtk/gtklist.c:
8304         * gtk/gtkpacker.c:
8305         * gtk/gtktable.c:
8306         * gtk/gtktree.c:
8307         Remove expose handler, using the default container implementation
8308         instead.
8309         
8310         * gtk/gtkbutton.c:
8311         * gtk/gtkcheckbutton.c:
8312         * gtk/gtkeventbox.c:
8313         * gtk/gtkfixed.c:
8314         * gtk/gtkhandlebox.c:
8315         * gtk/gtklayout.c:
8316         * gtk/gtklistitem.c:
8317         * gtk/gtkmenu.c:
8318         * gtk/gtkmenubar.c:
8319         * gtk/gtkmenuitem.c:
8320         * gtk/gtknotebook.c:
8321         * gtk/gtkoptionmenu.c:
8322         * gtk/gtkpaned.c:
8323         * gtk/gtkscrolledwindow.c:
8324         * gtk/gtktogglebutton.c:
8325         * gtk/gtktoolbar.c:
8326         * gtk/gtktreeitem.c:
8327         * gtk/gtkviewport.c:
8328         Chain expose handler to parent class handler. Use
8329         gtk_container_propagate_expose() to propagate exposes.
8330
8331         * gtk/gtkclist.c (check_exposures):
8332         * gtk/gtktext.c (process_exposes):
8333         Use gtk_widget_send_expose instead of gtk_widget_event.
8334
8335 Thu Mar  8 19:40:28 2001  Jonathan Blandford  <jrb@redhat.com>
8336
8337         * gtk/gtktreeview.c (gtk_tree_view_destroy): Add destroy function.
8338
8339 Thu Mar  8 19:18:27 2001  Jonathan Blandford  <jrb@redhat.com>
8340
8341         * gtk/gtktreeview.c (gtk_tree_view_unref_tree_helper): Actually
8342         unref the nodes.   Fixes bug #50058.
8343
8344         * gtk/gtktreemodel.c (gtk_tree_model_ref_node): change
8345         "::ref_iter" to "::ref_node".
8346         (gtk_tree_model_unref_node): change "::unref_iter" to
8347         "::unref_node". Fixes bug #50064.
8348
8349 Thu Mar  8 17:40:09 2001  Jonathan Blandford  <jrb@redhat.com>
8350
8351         * gtk/gtktreeview.c (gtk_tree_view_create_row_drag_icon): add
8352         support for invisible cells.
8353          (gtk_tree_view_bin_expose): ditto
8354
8355 Thu Mar  8 16:36:00 2001  Jonathan Blandford  <jrb@redhat.com>
8356
8357         * gtk/gtktreemodel.c (gtk_tree_model_get_type): add prerequesite
8358         on gobjects.
8359
8360         * tests/testtreefocus.c (main): New test file.
8361
8362         * tests/testtreeview.c: update to latest glib changes.
8363
8364         * tests/testtreecolumns.c: update to latest glib changes.
8365
8366 Thu Mar  8 18:13:20 2001  Tim Janik  <timj@gtk.org>
8367
8368         * gtk/testgtk.c: re-enabled event watcher emission hooks.
8369
8370 Thu Mar  8 16:51:21 2001  Tim Janik  <timj@gtk.org>
8371
8372         * *.c: added accumulator data argument to g_signal_newc()
8373         functions.
8374
8375         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_set_model): 
8376         * gtk/gtktreeview.c (gtk_tree_view_setup_model): 
8377         * gtk/treestoretest.c (make_window):
8378         s/g_signal_connect/g_signal_connectc/.
8379
8380         * gtk/gtktextbuffer.c: completed signal arg fixups,
8381         they also needed G_SIGNAL_TYPE_STATIC_SCOPE flag.
8382
8383 Thu Mar  8 00:02:30 2001  Owen Taylor  <otaylor@redhat.com>
8384
8385         * gtk/gtkwidget.[ch] (gtk_widget_get_name): Make
8386         G_CONST_RETURN.
8387
8388         * gtk/gtkwidget.[ch] gtk/gtkprivate.h: Add a 
8389         ::hierarchy-changed signal when a widget changes
8390         from anchored to unanchored or vice versa.
8391         (anchored means 
8392          gtk_widget_get_ancestor (widget, GTK_TYPE_WINDOW) != NULL.)
8393         Use a private flag to keep track of this efficiently.
8394
8395 2001-03-07  Havoc Pennington  <hp@redhat.com>
8396
8397         * gtk/testgtk.c (create_spins): uglify so that size request gets
8398         tested.
8399
8400         * gtk/gtkspinbutton.c (gtk_spin_button_size_request): Base size
8401         request on values for upper/lower, completes #6152
8402
8403 Wed Mar  7 20:07:22 2001  Owen Taylor  <otaylor@redhat.com>
8404
8405         * Makefile.am: Remove gtk-config-2.0 again.
8406         (Grrrr, pkg-config. And stops make loops.)
8407
8408 Thu Mar  8 00:18:29 2001  Tim Janik  <timj@gtk.org>
8409
8410         * gtk/gtksignal.[hc]: removed old emission hook API.
8411         
8412         * docs/Changes-2.0.txt: fixed sections.
8413         
8414         * gtk/gtktextbuffer.c: signal arg fixups.
8415
8416 2001-03-07  Havoc Pennington  <hp@redhat.com>
8417
8418         * gtk/gtktextview.c (invalidated_handler): use PRIORITY_VALIDATE
8419
8420         * gtk/gtktextview.h (GTK_TEXT_VIEW_PRIORITY_VALIDATE): add this
8421         here, bug #50368; changed to be GDK_PRIORITY_REDRAW + 5, instead
8422         of GDK_PRIORITY_REDRAW + 1, so you can insert stuff in between the
8423         validation and the redraw which is higher priority than the
8424         validation.
8425
8426 2001-03-07  Havoc Pennington  <hp@redhat.com>
8427
8428         * gtk/gtkentry.c (gtk_entry_get_property): remove trailer
8429         (gtk_entry_set_property): remove trailer
8430
8431         * gtk/gtkentry.c (gtk_entry_set_width_chars): 
8432         (gtk_entry_get_width_chars): new functions, to set size request to 
8433         a given number of characters
8434
8435         * gtk/testgtk.c (create_dialog): beef up the dialog test slightly
8436
8437         * gtk/gtkdialog.c (gtk_dialog_set_has_separator): new function
8438         (gtk_dialog_get_has_separator): new function
8439         (run_delete_handler): fix to not emit "response" signal
8440         because we already did in the delete event handler installed
8441         at dialog creation time.
8442         
8443         * gtk/gtkdialog.h: add a has_separator property,
8444         add GTK_DIALOG_NO_SEPARATOR flag
8445
8446 2001-03-07  Havoc Pennington  <hp@redhat.com>
8447
8448         * gtk/gtkwindow.c (gtk_window_set_decorated): new function, turns
8449         off decorations for a window.
8450
8451         * demos/gtk-demo/button_box.c (create_bbox): adapt to button box
8452         changes
8453
8454         * gtk/gtklabel.c (gtk_label_get_layout_offsets): new function 
8455         to get location of PangoLayout inside the label, closes #51198
8456
8457         * gtk/testgtk.c (create_bbox): fix up button box usage
8458
8459         * gtk/testcalendar.c (create_calendar): fix up button box usage
8460
8461         * gtk/gtkfilesel.c (gtk_file_selection_init): fixup buttonbox usage
8462
8463         * gtk/gtkdialog.c (gtk_dialog_init): fixup buttonbox usage
8464
8465         * gtk/gtkhbbox.h: deprecations
8466
8467         * gtk/gtkvbbox.h: deprecations
8468
8469         * gtk/gtkbox.c (gtk_box_get_spacing): new function, used to
8470         emulate deprecated gtk_button_box_get_spacing
8471
8472         * gtk/gtkbbox.h: deprecate some useless functions, remove entirely 
8473         the "set global default" functions
8474         (struct _GtkButtonBox): remove "spacing" field, use the one from 
8475         GtkBox base class
8476
8477         * gtk/gtkbbox.c (_gtk_button_box_child_requisition): rename with uscore
8478
8479         * gtk/gtkiconfactory.c (gtk_icon_set_render_icon): If we fail to
8480         render the icon, return the missing image icon.
8481
8482         * gtk/gtkimage.c (gtk_image_set_from_file): fall back to missing
8483         image icon if the load fails.   
8484
8485         * gtk/gtkstock.h (GTK_STOCK_MISSING_IMAGE): Add stock icon for use
8486         when no image is found; should be the Netscape "missing image"
8487         icon eventually but for now is a random image
8488
8489         * gtk/gtkwindow.c (gtk_window_set_role): new function, sets the 
8490         role for the session manager
8491
8492         * gtk/testgtk.c (dnd_drop): remove use of GTK_WINDOW_DIALOG
8493
8494         * gtk/gtkcompat.h (GTK_WINDOW_DIALOG): compat #define
8495         GTK_WINDOW_DIALOG GTK_WINDOW_TOPLEVEL
8496
8497         * gtk/gtkenums.h (enum GtkWindowType): remove GTK_WINDOW_DIALOG
8498
8499 Wed Mar  7 13:24:57 2001  Tim Janik  <timj@gtk.org>
8500
8501         * gtk/*.c: marshaller fixes.
8502         
8503         * gtk/gtkmarshal.list: extreme cleanup.
8504
8505         * gtk/gtktreeview.c (gtk_tree_view_class_init): disable interface
8506         param spec for now.
8507
8508         * gtk/gtktexttag.c (gtk_text_tag_set_property): use g_value_get_boxed()
8509         where appliable.
8510
8511         * gtk/gtktypeutils.[hc]: updates to GLib API changes.
8512         special cased autogenerated boxed types from gtktypebuiltins_ids.c
8513         which are not reference counted:
8514         GtkSelectionData, GdkEvent, GdkColor, GtkTextIter, PangoTabArray,
8515         PangoFontDescription, GtkTreeIter and GtkTreePath.
8516
8517 Thu Mar  1 03:58:56 2001  Tim Janik  <timj@gtk.org>
8518
8519         * gtk/gtktreeselection.h: 
8520         * gtk/gtktreemodel.c:
8521         * gtk/gtktreedatalist.[hc]: fixed includes. no gobject/*
8522         file should be included directly, and gobject/gmarshal.h
8523         as well as gtk/gtkmarshal.h even can't be included directly.
8524
8525         * Makefile.am: grr, install gtk-config-2.0.
8526
8527         * gtk/testgtk.c:
8528         * gtk/simple.c:
8529         * gtk/gtkmenu.c:
8530         * gtk/gtkitemfactory.c: use g_object_connect() instead of
8531         passing "*signal*::*" args to gtk_widget_set().
8532         
8533         * gtk/gtktypeutils.[hc]: got rid of GTK_TYPE_SIGNAL.
8534         
8535         * gtk/*.c: removed trailer arg from property setters and getters.
8536         macro fixups.
8537
8538 2001-03-07  Alexander Larsson  <alexl@redhat.com>
8539
8540         * gtk/gtklabel.c (set_markup): Removed warning
8541
8542 Tue Mar  6 19:59:12 2001  Jonathan Blandford  <jrb@redhat.com>
8543
8544         * gtk/gtkcellrenderer.h (struct _GtkCellRenderer): Add visible
8545         field to allow you to hide cell renderers.
8546
8547         * gtk/gtkcellrenderer.c: Add support for invisible cells.
8548
8549         * gtk/gtktreeview.c: Add support for invisible cells.
8550
8551 Tue Mar  6 17:25:07 2001  Jonathan Blandford  <jrb@redhat.com>
8552
8553         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_button_clicked):
8554         Add "clicked" signal back to columns.
8555
8556         * ChangeLog: remove conflict markers.
8557
8558 Tue Mar  6 10:45:45 2001  Owen Taylor  <otaylor@redhat.com>
8559
8560         * gtk/gtkbutton.c: Add animation of activation by, on 
8561         activate, pressing the button, and adding a timeout that 
8562         releases the button after 250ms or on key release and
8563         emits ::clicked. (#51501)
8564
8565         * gtk/gtkdialog.c: Bit of a hack - for buttons in the
8566         action area, we connect to ::clicked instead of ::activate
8567         so the dialog stays up through the animation.
8568
8569 Mon Mar  5 16:38:15 2001  Owen Taylor  <otaylor@redhat.com>
8570
8571         * gtk/gtkmenushell.c (gtk_menu_shell_enter_notify): Only
8572         check the ignore_enter flag for the menu shell that
8573         the item is actually a child of, not for attached
8574         submenus. (#51536)
8575
8576 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8577
8578         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8579         special key-press grab handling for widgets within
8580         GtkWindows. Otherwise, fall through to normal case.
8581
8582         This prevents key events being sent twice to GtkInvisible
8583         widgets, which can cause all sorts of mischief.
8584
8585 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8586
8587         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8588         widget is in effect, give the grab widget a first
8589         crack at KEY_PRESS/RELEASE events. (#424)
8590
8591 2001-03-06  James Henstridge  <james@daa.com.au>
8592
8593         * gtk/gtkwidget.c (gtk_widget_class_init): set the class closure
8594         offset for the window_state_event to point at window_state_event
8595         rather than no_expose_event.
8596
8597 Mon Mar  5 19:10:15 2001  Jonathan Blandford  <jrb@redhat.com>
8598
8599         * gtk/gtkimmodule.h: fix busted /* comment */
8600
8601 Mon Mar  5 15:07:05 2001  Jonathan Blandford  <jrb@redhat.com>
8602
8603         * gtk/gtktreeview.c: Apply patch from John Margaglione to add
8604         object properties.
8605
8606 Mon Mar  5 14:55:19 2001  Jonathan Blandford  <jrb@redhat.com>
8607
8608         * gtk/gtkcellrenderertoggle.c: Apply patch from Lee Mallabone to
8609         add object properties.
8610
8611         * gtk/gtkcellrenderertextpixbuf.c: Apply patch from Lee Mallabone
8612         to add object properties.
8613
8614         * gtk/gtkcellrenderertext.c: Apply patch from Lee Mallabone to add
8615         object properties.
8616
8617         * gtk/gtkcellrendererpixbuf.c: Apply patch from Lee Mallabone to
8618         add object properties.
8619
8620         * gtk/gtkcellrenderer.c: Apply patch from Lee Mallabone to add
8621         object properties.
8622
8623 Mon Mar  5 14:38:54 2001  Jonathan Blandford  <jrb@redhat.com>
8624
8625         * gtk/gtktreemodel.c: renamed "child_toggled" to
8626         "has_child_toggled".
8627
8628         * gtk/gtktreeview.c: Handle removing columns better.  Updated to
8629         handle new signal name.
8630
8631         * gtk/gtktreestore.c: Updated to handle new signal name.
8632         * gtk/gtklisttore.c: Updated to handle new signal name.
8633         * gtk/gtktreemodelsort.c: Updated to handle new signal name.
8634
8635 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8636
8637         * gtk/gtkmenu.c (gtk_menu_set_tearoff_state):
8638         Set GDK_WINDOW_TYPE_HINT_MENU on tearoff window.
8639
8640 2001-03-05  Michael Natterer  <mitch@gimp.org>
8641
8642         * gtk/gtklabel.c: Made the "parent_class" pointer static. The
8643         pixbuf-engine coincidentially also failed to make one of it's
8644         parent_class pointers static, causing overwriting of GtkLabel's
8645         parent_class pointer in pixbuf_style_class_init().
8646         (Will commit the fix to the pixbuf-engine too).
8647
8648 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8649
8650         * gdk/gdkwindow.h:
8651         Added GdkWindowTypeHint type. Added modal_hint field to GdkWindindow.
8652         New functions gdk_window_set_type_hint, gdk_window_set_modal_hint and
8653         gdk_window_set_icon_list for net wmspec functionality.
8654
8655         * gdk/x11/gdkwindow-x11.c:
8656         Set _NEW_WM_STATE_MODAL from window->modal_hint in set_inital_hints.
8657         Implement gdk_window_set_type_hint, gdk_window_set_modal_hint and
8658         gdk_window_set_icon_list.
8659         Added gdk_wmspec_change_state helper function and used it in the code.
8660         Set _NET_WM_ICON_NAME in gdk_window_set_title and gdk_window_set_icon_name.
8661
8662         * gtk/gtkdialog.c (gtk_dialog_init):
8663         Set GDK_WINDOW_TYPE_HINT_DIALOG.
8664
8665         * gtk/gtkhandlebox.c (gtk_handle_box_realize):
8666         Set GDK_WINDOW_TYPE_HINT_TOOLBAR.
8667
8668         * gtk/gtkwindow.c:
8669         new function gtk_window_set_type_hint.
8670         On realize, set type hint and modal hint.
8671
8672         * gtk/gtkwindow.h:
8673         Added type_hint field and gtk_window_set_type_hint.
8674
8675 2001-03-05  Alexander Larsson  <alexl@redhat.com>
8676
8677         * gtk/gtklabel.[ch]:
8678         Convert from GtkArg to GParam (originally based on patch from Lee Mallabone).
8679         New function gtk_label_get_accel_keyval () to get the underline accelerator
8680         of the label. Setting the label pattern overrides other attributes.
8681
8682 Mon Mar  5 14:51:10 MET 2001  Sven Neumann  <sven@gimp.org>
8683
8684         * gtk/gtkrc.c: fixed compiler warnings by inserting some consts.
8685         Added missing initializers to gtk_rc_style_init().
8686
8687 Sun Mar 04  07:30:03 2001 CET Mikael Hermansson <mikeh@bahnhof.se>
8688
8689         * gtk/gtktextview.c: fixed bug #51097 about setting 
8690         gtk_text_view_set_border_window_size() if the widget is 
8691         already realized.
8692
8693 Sat Mar  3 16:59:16 2001  Owen Taylor  <otaylor@redhat.com>
8694
8695         * gdk/gdkpango.h gdk/x11/gdkwindow-x11.c: Doc fixes
8696
8697         * gdk/win32/gdkinput.c (gdk_device_get_axis): Remove doc
8698         comment. Won't do to have duplicated doc comments between
8699         the platform subdirs.
8700
8701 Sat Mar  3 16:26:33 2001  Owen Taylor  <otaylor@redhat.com>
8702
8703         * gdk/x11/gdkmain-x11.c gdk/x11/gdkkeys-x11.c 
8704           gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.c:
8705
8706         Detectable auto-repeat - make a repeating key generate
8707         press/press/press/release instead of press/release pairs.
8708
8709         If we have Xkb and XkbSetDectableAutoRepeat supports
8710         that, we do it that way. Otherwise, when we get
8711         a release event, we check ahead with XPending to see
8712         if the next key is a KeyPress with the same keycode
8713         and timestamp. (Not 100% reliable, but pretty close.)
8714           
8715 Tue Feb 27 02:16:14 2001  Owen Taylor  <otaylor@redhat.com>
8716         
8717         * gtk/gtkmain.c (gtk_propagate_event): Only do special
8718         special key-press grab handling for widgets within
8719         GtkWindows. Otherwise, fall through to normal case.
8720  
8721         This prevents key events being sent twice to GtkInvisible
8722         widgets, which can cause all sorts of mischief.
8723  
8724 Fri Feb  2 13:20:12 2001  Owen Taylor  <otaylor@redhat.com>
8725  
8726         * gtk/gtkmain.c (gtk_propagate_event): When a grab
8727         widget is in effect, give the grab widget a first
8728         crack at KEY_PRESS/RELEASE events. (#424)
8729  
8730 Sat Mar  3 15:39:49 2001  Owen Taylor  <otaylor@redhat.com>
8731
8732         * gtk/gtkentry.c (gtk_entry_button_press): Add shift-clicking
8733         to extend the selection. (Roughly based on patch
8734         from Jay Cox, #50939)
8735
8736         * gtk/gtkentry.c (gtk_entry_button_press): Fix triple-clicking
8737         to properly handle previous GDK_BUTTON_PRESS. 
8738         (Patch from Jay Cox, #50938)
8739
8740         * gtk/gtkentry.c (gtk_entry_real_delete_text): Move the
8741         '\0' back along with the deleted text. (#51148)
8742
8743 Mon Jan 22 14:31:29 2001  Owen Taylor  <otaylor@redhat.com>
8744
8745         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Unshift
8746         the group when extracting it from the X keyboard event.
8747
8748         * modules/input/Makefile.am modules/input/imipa.c: 
8749         Simple module for entering IPA. (Do we need a 
8750         gtk-stupid-input-tricks CVS module?)
8751
8752 Sat Mar  3 13:32:47 2001  Owen Taylor  <otaylor@redhat.com>
8753
8754         * gtk/gtkimmodule.c (gtk_im_module_init): Remove spurious
8755         const.
8756
8757         * gdk-pixbuf-2.0.pc.in gtk+-2.0.pc.in: Fix include path.
8758
8759         * gtk/gtkdialog.c (gtk_dialog_set_default_response): If there
8760         is no focus widget for the dialog currently, grab the focus as well
8761         as the default.
8762
8763         * gtk/gtkdialog.c (gtk_dialog_set_default_response): Get
8764         the action area's children to iterate through, not the
8765         dialog's children.
8766
8767 Sat Mar  3 13:21:27 2001  Owen Taylor  <otaylor@redhat.com>
8768
8769         * tests/Makefile.am tests/testsocket.c tests/testsocket_child.c:
8770         Add plug-socket tests. (Won't work worth a darn until I commit
8771         the rest of the plug-socket changes, but no reason these
8772         can't go into CVS now.)
8773
8774 2001-03-02  Havoc Pennington  <hp@redhat.com>
8775
8776         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_flush): use
8777         _gdk_region_get_xrectangles()
8778
8779         * gdk/x11/gdkmain-x11.c (_gdk_region_get_xrectangles): new function
8780
8781         * gtk/testgtk.c (create_shapes): add test for shape_combine_region
8782
8783         * gdk/x11/gdkwindow-x11.c (gdk_window_shape_combine_region): new
8784         function, contributed by Ron Steinke    
8785
8786         * gdk/x11/gdkevents-x11.c (gdk_wmspec_supported): rename
8787         gdk_net_wm_supports
8788
8789         * gdk/gdkregion-generic.c (gdk_region_get_rectangles): 
8790         New function, contributed by Ron Steinke
8791
8792         * gtk/gtkentry.c (gtk_entry_get_layout_offsets): New function, 
8793         used to line up the text in the entry when using the entry for
8794         editable sheet cell hacks
8795
8796         * gtk/testgtk.c (create_entry): test the activate_default setting
8797         on GtkEntry
8798
8799         * gtk/gtkentry.c (gtk_entry_set_activates_default): New function to 
8800         cause the entry to activate the default button for a dialog when 
8801         activated
8802         (gtk_entry_get_activates_default): new function
8803
8804 Wed Feb 28 19:10:43 2001  Owen Taylor  <otaylor@redhat.com>
8805
8806         * gtk/gtkclist.c (real_remove_row): Patch from ChiDeok
8807         Hwang to move call to sync_selection() up a few lines
8808         to before the row list is modified, to fix crash when
8809         removing rows in the undo_selection list.
8810
8811         (Test case provided by Daniel Elstner:
8812
8813         http://mail.gnome.org/archives/gtk-list/2001-February/msg00359.html)
8814
8815 Fri Feb 23 15:06:48 2001  Owen Taylor  <otaylor@redhat.com>
8816
8817         * gtk/gtktree.c (gtk_tree_class_init): Do the setting
8818         of tree->root_tree in parent_set rather than _map(), 
8819         fixing #50892 in a bit better manner.
8820
8821 Thu Feb 22 17:07:58 2001  Owen Taylor  <otaylor@redhat.com>
8822
8823         * gtk/gtkmenu.c (gtk_menu_popup): Don't flip cursor. (#50934)
8824
8825 Tue Feb  2 11:22:33 2001  Jody Goldberg <jgoldberg@home.com>
8826
8827         * gtk/gtkstyle.c : Remove duplicate fwd decl for
8828         gtk_default_draw_shadow.
8829
8830 ue Feb 20 11:40:58 2001  Owen Taylor  <otaylor@redhat.com>
8831
8832         * gdk/gdkimage.c (gdk_image_new): Remove excess 
8833         warning, make warnings more verbose, treat a error
8834         in shmat as permanent, and don't try again.
8835         (#51163, Ed Randall.)
8836
8837 Mon Feb 19 20:15:28 2001  Owen Taylor  <otaylor@redhat.com>
8838
8839         * gtk/gtkrange.c (gtk_range_timer_1st_time): Add an initial
8840         delay for the first click before starting to scroll.
8841         (based on #51026, gtk-enf-990512-0.patch, Eric Fisher)
8842
8843         * gtk/gtktext.c: GtkText should have I-beam cursor. 
8844         (based on gtk-enf-990513-1.patch, Eric Fisher.)
8845
8846 Mon Feb 19 16:42:19 2001  Owen Taylor  <otaylor@redhat.com>
8847
8848         * gtk/gtklayout.c (gtk_layout_allocate_child): Tiny
8849         cleanup to remove some references to unused
8850         ->xoffset, ->yoffset.
8851
8852 Mon Feb 19 14:20:36 2001  Owen Taylor  <otaylor@redhat.com>
8853
8854         * gdk/gdkrgb.c (gdk_rgb_convert_555_br): Fix incorrect
8855         mask. (#51039, fix from Martin Maierhofer)
8856
8857 Fri Feb 16 20:09:42 2001  Owen Taylor  <otaylor@redhat.com>
8858
8859         * gtk/gtkctree.c (gtk_ctree_class_init): Add bindings
8860         for unshifted + and shifted = for non-us keyboards.
8861         Make <Control>+ and <Control>- work as well as 
8862         <Control>KP_Plus, <Control>KP_Minus for recursive
8863         open/close.  (#2682, René Seindal)
8864
8865 Fri Feb 16 18:50:59 2001  Owen Taylor  <otaylor@redhat.com>
8866
8867         * gtk/gtkmenushell.c (gtk_real_menu_shell_cancel): Unset
8868         the active menu item before deactivating the menu,
8869         so gtk_menu_popdown doesn't change the history. (#50964)
8870         
8871 Fri Feb 16 15:55:22 2001  Owen Taylor  <otaylor@redhat.com>
8872
8873         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): 
8874         draw lines with text_gc rather than black_gc.
8875         (Patch from Vlad Harchev <hvv hippo ru>, #50926)
8876
8877 Thu Mar  1 19:50:56 2001  Jonathan Blandford  <jrb@redhat.com>
8878
8879         * gtk/gtktreeviewcolumn.c (_gtk_tree_view_column_realize_button):
8880         Move handling of buttons fully in gtktreeviewcolumn.  This code is
8881         less interrelated then it was, but it still requires the
8882         GtkTreeView to map it.
8883
8884         * test/testtreecolumn.c: Now I can add a column to one view,
8885         remove it, add it to the another view, remove it, then re-add it
8886         to the first.  Nifty.
8887
8888 Thu Mar  1 13:14:27 GMT 2001  Tony Gale <gale@gtk.org>
8889
8890         * docs/tutorial/gtk-tut.sgml: Minor corrections
8891
8892 Wed Feb 28 16:36:46 2001  Jonathan Blandford  <jrb@redhat.com>
8893
8894         * gtk/gtktreemodel.c (gtk_tree_row_reference_*): Sanitize
8895         GtkRowReference.
8896
8897 2001-02-28  Havoc Pennington  <hp@redhat.com>
8898
8899         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove draw_focus and
8900         draw_default
8901         (gtk_widget_draw_focus): remove this function; we could instead
8902         make it just gtk_widget_draw(), but in most cases I think the
8903         result would be broken user code, so think it's better to have
8904         that code not compile and get fixed
8905         (gtk_widget_draw_default): ditto
8906
8907         * gtk/gtkwidget.c: Add default handlers for focus_in_event and
8908         focus_out_event that set/unset GTK_HAS_FOCUS and call queue_draw
8909         
8910         * gtk/gtkwindow.c (gtk_window_set_default): just queue a draw when
8911         widgets lose/get the default, instead of calling draw_default
8912         
8913         * docs/Changes-2.0.txt: note about all this
8914
8915         Then fixed every widget in GTK, I won't list all the filenames.
8916
8917 Tue Feb 27 19:32:53 2001  Jonathan Blandford  <jrb@redhat.com>
8918
8919         * gtk/gtktreemodel.c (deleted_callback): Proxy out to
8920         _gtk_tree_row_reference_deleted.
8921         (inserted_callback): Proxy out to
8922         _gtk_tree_row_reference_inserted.
8923         (_gtk_tree_row_reference_new_from_view): Somewhat yukky hack to
8924         get around signal emission ordering problem.
8925
8926         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
8927         fix to work with SINGLE 
8928         (_gtk_tree_selection_internal_select_node): Major sanitization on
8929         selections.  SINGLE now seems to work.
8930
8931         * tests/Makefile.am: add testtreecolumn.c:
8932
8933         * tests/testtreecolumn.c: New test.  Mostly points out selection
8934         bugs currently, but will test columns later.
8935
8936         * gtk/gtkrbtree.c (_gtk_rbtree_remove_node): Fix really nasty
8937         selection bug.  I hate touching this code -- it's scary.
8938
8939 2001-02-26  Havoc Pennington  <hp@redhat.com>
8940
8941         * gtk/testgtk.c: test the window state stuff
8942
8943         * gtk/gtkwindow.c (gtk_window_present): new function, makes a
8944         window come to the user's attention as if it were just created
8945         (gtk_window_iconify): new function
8946         (gtk_window_deiconify): new function
8947         (gtk_window_stick): new function
8948         (gtk_window_unstick): new function
8949         (gtk_window_maximize): new function
8950         (gtk_window_unmaximize): new function
8951
8952         * gtk/gtkwidget.h, gtk/gtkwidget.c: add window_state_event signal
8953
8954         * gtk/gtkmain.c (gtk_main_do_event): handle GDK_WINDOW_STATE
8955
8956         * gdk/x11/gdkevents-x11.c: create window state events when
8957         appropriate
8958         (gdk_wmspec_supported): new function
8959
8960         * gdk/x11/gdkwindow-x11.c (gdk_window_iconify): handle
8961         iconification before showing the window
8962         (gdk_window_deiconify): new function
8963         (gdk_window_stick): new function
8964         (gdk_window_unstick): new function
8965         (gdk_window_maximize): new function
8966         (gdk_window_unmaximize): new function
8967
8968         * gdk/gdkwindow.c: store the window state in the window; 
8969         change to using the GDK_WINDOW_STATE_WITHDRAWN flag instead of
8970         window->mapped.
8971         (gdk_window_get_state): return the current window state
8972
8973         * gdk/gdkevents.c (gdk_event_get_time): handle GDK_WINDOW_STATE
8974         (gdk_event_get_state): handle GDK_WINDOW_STATE
8975         (gdk_synthesize_window_state): function to create the window state
8976         events
8977
8978         * gdk/gdkevents.h (struct _GdkEventWindowState): new type of
8979         event, for changes to "window state" such as maximized, sticky, 
8980         etc.
8981         
8982         * gdk/x11/gdkwindow-x11.c (gdk_window_focus): new function,
8983         focuses a window
8984
8985         * gdk/x11/gdkmain-x11.c (_gdk_wmspec_supported): new function, 
8986         finds out if we support a given WM spec hint
8987
8988 Tue Feb 27 13:37:38 GMT 2001  Tony Gale <gale@gtk.org>
8989
8990         * docs/faq/gtk-faq.sgml: New question re memory leaks.
8991
8992 2001-02-25  Hans Breuer  <hans@breuer.org>
8993
8994         * gdk/gdk.h : changed #ifdef GDK_DISBALE_DEPRECARED to #ifndef
8995         cause we want to loose those prototypes only in the latter case
8996
8997         * gdk/win32/gdkevents-win32.c : can't cast from GdkPixmap to
8998         GdkPixmapImplWin32 because it itsn't derived from it. Use the
8999         impl member variable instead
9000
9001         * gtk/gtk.def : updated
9002
9003         * gtk/gtklist.c : 
9004         * gtk/gtkmenus.c : include <string.h> for memset ()
9005
9006         * gtk/makefile.msc.in : updated and don't define GTK_COMPILATION
9007         for everthing built here, but for gtk-x.x.dll only. This solves
9008         problem of indifferent gtk type definitions
9009
9010 Sat Feb 24 20:11:39 2001  Jonathan Blandford  <jrb@redhat.com>
9011
9012         * gtk/gtkclipboard.h: actually put /* */ around #endif comment.
9013
9014 Fri Feb 23 17:50:13 2001  Jonathan Blandford  <jrb@redhat.com>
9015
9016         * gtk/gtktreeview.c (gtk_tree_view_bin_expose): Only draw the
9017         column that is exposed.
9018
9019         (_gtk_tree_view_update_size): Changed name from set_size, and
9020         changed function to do more work, and not force people calling it
9021         to figure out the size.  Simplifies a lot of code elsewhere.
9022
9023 2001-02-23  Alexander Larsson  <alexl@redhat.com>
9024
9025         * gdk/gdkpixmap.c (gdk_pixmap_colormap_new_from_pixbuf):
9026         return solid masks for xpms that have no transparent color.
9027         This makes the ..._create_from_xpm... API backwards
9028         compatible.
9029
9030 2001-02-23  Tor Lillqvist  <tml@iki.fi>
9031
9032         * README.win32: Update. Mention the gtk-1-3-win32-production
9033         branch.
9034
9035         * gdk/win32/bdfcursor.c: New file. A program that generates
9036         xcursors.h. Thanks to Stefan Ondrejicka.
9037
9038         * gdk/win32/xcursors.h: New file, contains the X cursor font in a
9039         compact format.
9040
9041         * gdk/win32/Makefile.am (EXTRA_DIST): Add new files.
9042
9043         * gdk/win32/gdkcursor-win32.c (_gdk_win32_data_to_wcursor): New
9044         function, uses xcursors.h.
9045         (gdk_cursor_new): Use _gdk_win32_data_to_wcursor to generate
9046         cursor from inline data instead of using LoadCursor() to generate
9047         it from a resource.
9048
9049         * gdk/win32/gdkevents-win32.c (gdk_event_translate): At button up
9050         event, must check the Windows message for mouse button state, as
9051         the GDK event state might not have been built if it is
9052         undelivered. Remove one goto.
9053
9054         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Call
9055         SetCursor() if the current cursor as returned by GetCursor() is
9056         the window's previous cursor. The ChildWindowFromPoint() test
9057         apparently didn't work correctly.
9058
9059         * gdk/win32/rc/*.cur: Remove.
9060
9061         * gdk/win32/rc/gdk.rc.in: Remove cursors.
9062
9063         * gdk/win32/rc/Makefile.am (EXTRA_DIST): Remove from here, too.
9064
9065         * gtk/makefile.{mingw,msc}.in: Updates.
9066
9067 Wed Feb 21 20:56:50 2001  Jonathan Blandford  <jrb@redhat.com>
9068
9069         * gtk/gtktreemodel.h: add functions for signal emission.
9070
9071         * gtk/gtktreestore.c: move to use above functions instead of
9072         g_signal_emit.
9073
9074         * gtk/gtkliststore.c: ditto
9075
9076 Wed Feb 21 15:41:34 2001  Jonathan Blandford  <jrb@redhat.com>
9077
9078         * gtk/gtktreestore.c: removed signals.  Moved to inherit from
9079         GObject instead of GtkObject.
9080
9081         * gtk/gtkliststore.c: ditto.
9082
9083         * gtk/gtktreemodelsort.c: ditto.
9084
9085         * gtk/gtktreemodel.c (gtk_tree_model_base_init): moved signals to
9086         GtkTreeModelIface, instead of in each model.
9087
9088 2001-02-21  Havoc Pennington  <hp@redhat.com>
9089
9090         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_child_anchor):
9091         unbreak this function
9092
9093         * gtk/gtkentry.c: apply patch from Lee Mallabone to add object 
9094         properties
9095
9096         * gtk/gtkcurve.c: apply patch from Lee Mallabone to add object
9097         properties
9098
9099         * gtk/gtkcombo.c: apply patch from Lee Mallabone to add object 
9100         properties
9101
9102         * gtk/gtkentry.c (gtk_entry_set_max_length): have this take -1 to
9103         mean unset the max length
9104
9105 Wed Feb 21 14:23:05 2001  Jonathan Blandford  <jrb@redhat.com>
9106
9107         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data_func):
9108         Changed name to be set_cell_data_func to make it clear what
9109         the functino does.  Close bug #51069.
9110
9111 Tue Feb 20 16:49:00 2001  Jonathan Blandford  <jrb@redhat.com>
9112
9113         * gtk/testgtk.c (main): Remove turning on of profiling malloc,
9114         have memory actually freed.  Keeps box running longer.
9115
9116 2001-02-21  Alexander Larsson  <alexl@redhat.com>
9117         
9118         * gtk/gtkseparatormenuitem.[ch]:
9119         Added new menu separator item. The drawing and size handling
9120         is still done in GtkMenuItem, but the API is a bit more sane.
9121         
9122         * gtk/Makefile.am:
9123         Add gtkseparatormenuitem.[ch].
9124
9125         * gtk/gtk.h:
9126         Add gtkseparatormenuitem.h.
9127         
9128         * gtk/gtkentry.c:
9129         * gtk/gtkmenufactory.c:
9130         * gtk/gtktextview.c:
9131         Use the new API for menu separators.
9132         
9133         * demos/gtk-demo/menus.c (create_menu):
9134         Add some GtkSeparatorMenuItem demo code.
9135
9136 2001-02-20  Havoc Pennington  <hp@redhat.com>
9137
9138         * gtk/gtkaspectframe.c: Convert to new property API, patch from 
9139         Lee Mallabone
9140
9141         * gtk/gtkarrow.c: Convert to new property API, patch from 
9142         Lee Mallabone
9143
9144 Tue Feb 20 14:26:41 2001  Jonathan Blandford  <jrb@redhat.com>
9145
9146         * tests/testtreeview.c (toggled_callback): fix to reflect change
9147         in GtkTreeModelStore.
9148
9149 Tue Feb 20 12:16:12 2001  Jonathan Blandford  <jrb@redhat.com>
9150
9151         * gtk/gtkiconfactory.c (gtk_icon_set_new_from_pixbuf): New
9152         function to create an icon set from a pixbuf.
9153
9154 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9155
9156         * gtk/gtkcellrenderertext.[ch]:
9157         Add a "markup" property.
9158
9159         * gtk/treestoretest.c:
9160         Use the markup property, remove some leftover stuff from
9161         GtkTreeModelMapping.
9162
9163 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9164
9165         * gtk/gtklabel.c (gtk_label_set_selectable):
9166         Queue a redraw if the selectable setting was changed.
9167
9168 2001-02-20  Alexander Larsson  <alexl@redhat.com>
9169
9170         * gdk/linux-fb/gdkgc-fb.c (gdk_gc_copy):
9171         Actually copy the whole gc, not just the public parts.
9172         
9173         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
9174         GDK_WINDOW_TEMP are not toplevel. Fixes selectable
9175         labels.
9176
9177 2001-02-19  Havoc Pennington  <hp@pobox.com>
9178
9179         * gdk/gdkwindow.c: docs
9180
9181         * gdk/gdkrgb.c: docs
9182
9183         * gdk/gdkregion-generic.c: docs
9184
9185         * gdk/gdkgc.c (gdk_gc_set_values): docs
9186
9187         * gdk/gdkdraw.c: docs
9188
9189         * gdk/gdkdrawable.h: deprecate drawable get/set data
9190
9191 Mon Feb 19 20:37:35 2001  Jonathan Blandford  <jrb@redhat.com>
9192
9193         * demos/gtk-demo/dialog.c: Add simple new demo.
9194
9195 2001-02-19  Havoc Pennington  <hp@redhat.com>
9196
9197         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): add
9198         insert_child_anchor signal, bug #50245
9199
9200         * gtk/gtktextbtree.c (_gtk_text_btree_insert_child_anchor): change
9201         from create_child_anchor, so the anchor is passed in
9202
9203         * gtk/gtktextchild.c (gtk_text_child_anchor_new): new function
9204         (_gtk_widget_segment_new): have the child anchor object passed in, 
9205         instead of creating it.
9206
9207         * gtk/gtktextbuffer.c (gtk_text_buffer_modified): rename
9208         to gtk_text_buffer_get_modified
9209
9210 2001-02-19  Havoc Pennington  <hp@redhat.com>
9211
9212         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): hmm, someone
9213         changed GLib without fixing GTK
9214
9215         * gtk/gtkrange.h: Rename all the stupid implementation detail 
9216         functions to have an underscore in front. Most of them should 
9217         probably just go away, but for starters don't export them.
9218         Bug #50482
9219
9220 2001-02-19  Havoc Pennington  <hp@redhat.com>
9221
9222         * gdk/gdkcolor.h: test was backward, so deprecated functions were
9223         excluded by default
9224
9225         * gtk/gtkstyle.c (gtk_default_draw_diamond): draw etched in/out,
9226         clean up the old code a bit
9227
9228         * gtk/gtkradiobutton.c (gtk_radio_button_draw_indicator): draw
9229         inconsistent state
9230
9231         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_draw_indicator):
9232         draw inconsistent state
9233
9234         * gtk/testgtk.c (create_toggle_buttons): add test for inconsistent
9235         (create_menu): add inconsistent test
9236
9237         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_set_inconsistent):
9238         new function
9239         (gtk_check_menu_item_get_inconsistent): new function
9240         (gtk_real_check_menu_item_draw_indicator): draw the inconsistent
9241         state (using etched in for now)
9242
9243         * gtk/gtkcheckbutton.c (gtk_real_check_button_draw_indicator):
9244         draw inconsistent state
9245
9246         * gtk/gtktogglebutton.c (gtk_toggle_button_set_inconsistent): new
9247         function, used when the user has selected a range of stuff in
9248         different states
9249         (gtk_toggle_button_get_inconsistent): accessor for that
9250         (gtk_toggle_button_paint): draw inconsistent state (etched in?
9251         don't know what else to do)
9252
9253 2001-02-19  Hans Breuer <hans@breuer.org>
9254
9255         * gtk/gtk.def : updated exported symbols
9256
9257         * gtk/makefile.msc.in : updated
9258
9259         * gtk/gtkstyle.c (gtk_style_realize) : gets called without
9260         a colormap, when invoked from testgtk::entry. I'm not sure where
9261         the bug is, but g_return_if_fail (GDK_IS_COLORMAP (colormap));
9262         avoids immediate crashing ...
9263
9264         * gtk/gtkmain.c (check_setugid) : totally disabled on win32;
9265         any objections ?
9266
9267         * gtk/gtktreemodel.c : called G_VALUE_LCOPY with an extra
9268         0 parameter. At least msvc doesn't like macros with var args. 
9269         I simply removed the extra 0, was it a feature or a typo ?
9270
9271         * gtk/gtktreeviewcolumn.[hc] (gtk_tree_view_column_set_func) :
9272         removed the extra indirection from the GtkTreeViewColumnFunc parameter,
9273         because the value assignment to the internal struct wasn't working.
9274         I'm not absolutely sure. The problem could have been resolved by
9275         changing the "func" declartion in the struct, but was the pointer
9276         to the function pointer intended ?
9277
9278         * gtk+/gtk/gtktreedatalist.c : include gboxed.h
9279
9280         * gdk/gdk.def : updated exported symbols
9281
9282         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_image) :
9283         only use SetDIBitsToDevice if there is a palette at the drawable
9284         and the image is GDK_VISUAL_PSEUDO_COLOR
9285
9286         * gdk/win32/gdkkeys-win32.c : msvc still has no <unistd.h> ...
9287
9288         * gdk/win32/gdkwindow-win32.c : #include "gdk.h" /* gdk_rectangle_intersect */
9289
9290         * gdk/*/makefile.msc : updated
9291
9292 2001-02-19  Havoc Pennington  <hp@redhat.com>
9293
9294         * demos/gtk-demo/Makefile.am (INCLUDES): GDK_DISABLE_COMPAT_H,
9295         GDK_DISABLE_DEPRECATED (we need to merge those two #defines)
9296
9297         * gdk/x11/gdkmain-x11.c (gdk_key_repeat_disable): nuke
9298         (gdk_key_repeat_restore): nuke
9299
9300         * gdk/gdk.c (gdk_exit_func): #if 0 this for now, don't install it
9301         (gdk_init_check): no atexit func
9302
9303         * gdk/gdkrgb.h: mark some stuff deprecated
9304
9305         * gdk/gdkcolor.h: mark some stuff deprecated
9306         
9307         * gdk/gdk.h: deprecated gdk_exit, gdk_input_*
9308
9309         * gdk/gdkfont.h: bracket in GDK_DISABLE_DEPRECATED
9310
9311 2001-02-16  Havoc Pennington  <hp@redhat.com>
9312
9313         * gtk/gtkvscrollbar.c (gtk_vscrollbar_trough_keys): use the visual
9314         scroll steps.
9315
9316         * gtk/gtkvscale.c (gtk_vscale_trough_keys): use the visual scroll
9317         steps, and add Ctrl-arrow shortcuts for paging visually as with
9318         HScale, since Page Up and Page Down move logically.
9319
9320         * gtk/gtkenums.h (GtkScrollType): add GTK_SCROLL_STEP_UP,
9321         GTK_SCROLL_STEP_DOWN, etc. for visual scroll directions
9322         
9323         * gtk/gtkrange.c (gtk_range_key_press): handle the visual scroll
9324         steps
9325         (gtk_range_scroll): handle the visual steps
9326
9327         * gtk/gtklist.c (gtk_list_scroll_horizontal): handle the up/down
9328         scroll steps
9329
9330         * gtk/gtkhscale.c (gtk_hscale_trough_keys): use the visual scroll
9331         steps, not the logical ones.
9332
9333         * gtk/gtkclist.c (move_focus_row): handle the up/down scroll steps
9334         (scroll_vertical): handle up/down steps
9335
9336 2001-02-19 Alexander Larsson  <alexl@redhat.com>
9337
9338         * gdk/linux-fb/gdkimage-fb.c (gdk_image_new_bitmap):
9339         Copy data and free data with free().
9340
9341         * gdk-pixbuf/gdk-pixbuf.c:
9342         * gdk-pixbuf/io-jpeg.c:
9343         * gdk-pixbuf/io-png.c:
9344         Use g_try_malloc/g_free instead malloc/free.
9345         
9346         * gdk-pixbuf/test-gdk-pixbuf.c:
9347         Must... initialize... gobject...
9348         
9349         * gdk-pixbuf/pixops/timescale.c:
9350         * gtk/gtkcalendar.c:
9351         Use g_malloc instead of malloc.
9352         
9353 2001-02-19 Alexander Larsson  <alla@lysator.liu.se>
9354
9355         * gtk/testgtkrc:
9356         Comment out property assignments, these don't work yet.
9357
9358 2001-02-17  Havoc Pennington  <hp@pobox.com>
9359
9360         * gtk/gtkalignment.c (gtk_alignment_class_init): clean this up a
9361         bit.
9362
9363 2001-02-17  Havoc Pennington  <hp@pobox.com>
9364
9365         * gtk/gtklabel.c (gtk_label_ensure_layout): fix screwup with
9366         shadowed variables that had broken size request in some cases,
9367         leading to bogus tooltips (#50996)
9368
9369 2001-02-06  Jon K Hellan  <hellan@acm.org>
9370
9371         Implement fast browsing of tooltips, bug #50619
9372         
9373         * gtk/gtktooltips.h (struct _GtkTooltips): Add use_sticky_delay
9374         and last_popdown
9375         
9376         * gtk/gtktooltips.c (gtk_tooltips_init): Initialize sticky_delay,
9377         use_sticky_delay and last_popdown.
9378         (gtk_tooltips_draw_tips, gtk_tooltips_set_active_widget): Record
9379         time of popdown.
9380         (gtk_tooltips_set_active_widget): Unset sticky behaviour if widget
9381         is NULL.
9382         (gtk_tooltips_recently_shown): New static function.  Return true
9383         if < sticky_delay has elapsed since last popdown.
9384         (gtk_tooltips_event_handler): Display window after sticky_delay
9385         (presumably < normal delay) if < STICKY_REVERT_DELAY has elapsed
9386         since last popdown.
9387         
9388 2001-02-17  Havoc Pennington  <hp@pobox.com>
9389
9390         * gtk/gtktypeutils.h (GtkSignalFunc): change it to take (void)
9391         instead of (). #6394
9392
9393         * gtk/gtkprogressbar.c (gtk_progress_bar_get_text): Add
9394         G_CONST_RETURN, make it return by reference, #50473
9395         
9396 Sat Feb 17 06:47:27 2001  Tim Janik  <timj@gtk.org>
9397
9398         * gtk/gtkmenu.c (gtk_menu_motion_notify): default initialize the
9399         generated ENTER_NOTIFY event with 0, otherwise not explicitely
9400         setup fields contain garbage (e.g. subwindow, breaking
9401         gdk_drawable_ref() upon event copy).
9402         (gtk_menu_stop_navigating_submenu_cb): same here.
9403
9404         * gtk/gtklist.c (gtk_list_vertical_timeout): 
9405         * gtk/gtklist.c (gtk_list_horizontal_timeout): 
9406         * gtk/gtkclist.c (vertical_timeout): 
9407         * gtk/gtkclist.c (horizontal_timeout): change direct assignment
9408         default-zero-intialization for unions to memset(,0,), as unions are
9409         not fully default-zero-initialized by compilers (GdkEvent x = { 0, };
9410         has to become GdkEvent x; memset (&x, 0, sizeof (x)); )
9411
9412         * gtk/gtktreeview.c (gtk_tree_view_set_rows_drag_source): scratch
9413         g_closure_sink() warning.
9414
9415         * gtk/gtktreemodel.c (gtk_tree_model_get_valist): 
9416         * gtk/gtktreestore.c (gtk_tree_store_set_valist): 
9417         * gtk/gtkliststore.c (gtk_list_store_set_valist): 
9418         fix G_VALUE_COLLECT() and G_VALUE_LCOPY() calls.
9419         
9420 Fri Feb 16 17:49:59 2001  Jonathan Blandford  <jrb@redhat.com>
9421
9422         * gtk/gtktreestore.[hc], gtk/gtkliststore.[ch]: removed
9423         gtk_*_store_get, and moved to GtkTreeModel.
9424
9425         * gtk/gtktreemodel.h (gtk_tree_model_set{v,}): Added
9426
9427         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_finalize): added.
9428
9429         * gtk/Makefile.am: remove gtktreemodelmapping.[ch]
9430
9431         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_func): let you
9432         set the func.
9433
9434         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
9435         freeze/thaw notify between setting all the properties for a cell.
9436
9437         * gtk/gtk.h: remove gtktreemodelsimple.h, and gtktreemodelmapping.h
9438
9439 2001-02-15  Havoc Pennington  <hp@redhat.com>
9440
9441         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): convert
9442         the X coordinates so they're with respect to the line, rather than 
9443         with respect to the layout.
9444
9445         * gtk/gtkalignment.c: Convert to new property API, patch from Lee
9446         Mallabone
9447
9448         * gtk/testgtk.c (create_range_controls): add vscale tests, 
9449         and inverted test
9450
9451         * gtk/gtkrange.c (gtk_range_set_inverted): new function to fix 
9452         #50806
9453
9454         * gtk/gtkentry.c (gtk_entry_get_text): add G_CONST_RETURN
9455
9456         * gtk/gtktextiter.h (gtk_text_iter_is_last): rename 
9457         gtk_text_iter_is_end
9458
9459         * gtk/gtktextbuffer.h (gtk_text_buffer_get_last_iter):
9460         rename gtk_text_buffer_get_end_iter
9461
9462         * gtk/testgtk.c (create_labels): Add test for selectable
9463
9464         * gtk/gtkentry.c (gtk_entry_draw_text): Use new GDK API to draw
9465         the selection stuff. This code is kind of broken since it doesn't 
9466         use the theme engine.
9467
9468         * gdk/gdkpango.c (gdk_pango_layout_line_get_clip_region): 
9469         fix infinite loop and y offset problem
9470         (gdk_draw_layout_line_with_colors): fix foreground color handling
9471
9472         * gtk/gtklabel.h, gtk/gtklabel.c: Implement a "selectable" flag 
9473         that makes the label selectable.
9474         
9475         * gtk/gtklabel.c (gtk_label_style_set): recreate the label's
9476         layout when the style is set, since fonts etc. could have changed.      
9477
9478 Fri Feb 16 14:22:05 2001  Jonathan Blandford  <jrb@redhat.com>
9479
9480         * gtk/Makefile.am: Removed gtktreemodelsimple.[ch]
9481
9482         * gtk/gtktreemodelsimple.[ch]: removed.
9483
9484 2001-02-16  Alexander Larsson  <alexl@redhat.com>
9485
9486         * gtk/gtktreemodelmapping.[ch]:
9487         New files. Implement GtkTreeModelMapping.
9488         
9489         * gtk/Makefile.am:
9490         Add gtktreemodelmapping.[ch].
9491         
9492         * gtk/gtk.h:
9493         Add gtktreemodelmapping.h
9494
9495         * gtk/treestoretest.c:
9496         Test the GtkTreeModelMapping
9497
9498 Tue Feb 13 13:16:09 2001  Jonathan Blandford  <jrb@redhat.com>
9499
9500         * demos/gtk-demo/panes.c (create_pane_options): If we're going to
9501         have a demo, we might as well pass in real values.  Thanks to
9502         clahey for pointing this out.
9503
9504 2001-02-14  Havoc Pennington  <hp@pobox.com>
9505
9506         * gtk/gtkimagemenuitem.c (gtk_image_menu_item_remove): add
9507         "static" to a private function
9508         (gtk_image_menu_item_class_init): remove destroy handler,
9509         add "image" object property
9510
9511 2001-02-13  Alexander Larsson  <alla@lysator.liu.se>
9512
9513         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region):
9514         Add a shortcut if the window and the current clip_region doesn't
9515         overlap. This is needed when there are a lot of windows in a
9516         window. The layout test in testgtk is a good test.
9517
9518         * gdk/linux-fb/gdkwindow-fb.c:
9519         Whitespace fix.
9520
9521 2001-02-13  Sven Neumann  <sven@convergence.de>
9522
9523         * demos/testanimation.c: replaced deprecated gtk_drawing_area_size
9524
9525 2001-02-13  Alexander Larsson  <alexl@redhat.com>
9526
9527         * gdk/linux-fb/gdkcursor-fb.c (gdk_fb_cursor_unhide):
9528         Don't reference last_cursor if it is null. Fixes crash when rotating
9529         the screen before having moved the mouse.
9530
9531         * gdk/linux-fb/gdkcc-fb.c: Zapp!
9532
9533         * gdk/linux-fb/Makefile.am: Don't compile gdkcc-fb.c
9534
9535         * gdk/linux-fb/gdkwindow-fb.c: Fix typo. width->height. Fixes redraw 
9536         when using 90 or 270 degrees rotation.
9537
9538 2001-02-12  Havoc Pennington  <hp@pobox.com>
9539
9540         * gdk/gdkpango.c (gdk_pango_get_gc): fix bug where 
9541         it always set the foreground, even if we were only using
9542         a stipple.
9543         (gdk_draw_layout_line_with_colors): new function, allow
9544         override colors
9545         (gdk_draw_layout_with_colors): new function, allow override
9546         colors
9547         (gdk_pango_layout_line_get_clip_region): function to get the clip
9548         region for a logical text range
9549         (gdk_pango_layout_get_clip_region): get the clip region for a
9550         logical text range
9551
9552         * gdk/x11/gdkcolor-x11.c: forward declare gdk_colormap_sync(),
9553         (gdk_colormap_new): fix call to gdk_colormap_sync() so it has 
9554         the right number of arguments.
9555
9556         * gtk/gtktextbtree.c (gtk_text_btree_node_check_consistency):
9557         enhance the function to check that node data corresponds to a 
9558         view still belonging to the tree.
9559
9560         * gtk/gtktreeview.c (gtk_tree_view_changed): we were leaking the 
9561         GtkTreePath
9562         (gtk_tree_view_inserted): ditto
9563         (gtk_tree_view_child_toggled): ditto
9564
9565         * gtk/gtktreemodel.c (gtk_tree_path_append_index): use realloc to
9566         simplify this code.
9567
9568         * gtk/gtkcellrenderertext.c (get_layout): fix leak of 
9569         a PangoAttrList
9570
9571         * demos/gtk-demo/main.c (load_file): Fix leak of a GString
9572
9573         * gtk/gtkentry.c (gtk_entry_realize): Fix leak of a GdkCursor
9574
9575         * gtk/gtkmenubar.c (gtk_menu_bar_size_request): consider toggle
9576         size in the size request 
9577         (gtk_menu_bar_size_allocate): consider toggle size here
9578
9579         * gtk/gtkimagemenuitem.h, gtkimagemenuitem.c: Menu item
9580         that displays a widget in the toggle slot
9581
9582         * gtk/testgtk.c: test GtkImageMenuItem
9583
9584         * gtk/Makefile.am, gtk/gtk.h: Add GtkImageMenuItem
9585         
9586         * gtk/gtkmenuitem.h: Use "gint" not "guint16" for toggle size
9587         request and allocation
9588
9589         * gtk/gtkmenu.c (gtk_menu_size_request): use gint not guint16
9590
9591         * gtk/gtkcheckmenuitem.c
9592         (gtk_check_menu_item_toggle_size_request): ditto
9593         
9594 Mon Feb 12 23:43:30 2001  Owen Taylor  <otaylor@redhat.com>
9595
9596         * gtk/Makefile.am (gdk_headers): Remove gdkcc.h 
9597         reference.
9598
9599         * configure.in gtk/gtkmain.c: Add checks for setuid/setgid,
9600         and refuse to initialize GTK+ if they fail.
9601
9602 Mon Feb 12 15:02:07 2001  Owen Taylor  <otaylor@redhat.com>
9603
9604         * configure.in: Add check for gtk-doc version.
9605
9606 Thu Feb  8 17:18:26 2001  Owen Taylor  <otaylor@redhat.com>
9607
9608         * gtk/gtklabel.c (gtk_label_size_request): Fix bug
9609         where the xpad/ypad was only being used on one side!
9610
9611 2001-02-11  Tor Lillqvist  <tml@iki.fi>
9612
9613         * gdk/win32/gdkcolor-win32.c (gdk_colormap_query_color): New
9614         function, copied from X11 version.
9615
9616         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): Eliminate
9617         DestroyCursor failures. The reason for the problem (despite the
9618         inconsistent messages from GetLastError()) was that
9619         DestroyCursor() cannot be called while a cursor is set in a
9620         window. Set the new cursor first and then destroy the old one.
9621         Thanks to jpe@archaeopteryx.com.
9622
9623         * gdk/win32/gdkcc-win32.c: Remove.
9624
9625         * gdk/win32/Makefile.am: Remove from here, too.
9626         
9627         * gdk/gdk.def
9628         * gdk/makefile.mingw.in: Update. Godbye GdkColorContext.
9629
9630         * gtk/gtk.def
9631         * gtk/makefile.mingw.in: Updates.
9632
9633 2001-02-08  Havoc Pennington  <hp@redhat.com>
9634
9635         * gtk/gtkbin.c (gtk_bin_add): better error message if you try to
9636         add a widget to a bin that already has a child.
9637
9638         * gdk/gdkcc.h, gdk/gdkcc-x11.c: Remove GdkColorContext, #50512
9639
9640         * docs/Changes-2.0.txt: note that GdkColorContext is gone.
9641         
9642         * gdk/x11/Makefile.am (libgdk_x11_la_SOURCES): remove gdkcc-x11.c
9643
9644         * gdk/gdk.h: remove gdkcc.h
9645
9646         * gdk/Makefile.am (gdk_public_h_sources): remove gdkcc.h
9647
9648         * gtk/gtkpixmap.c (build_insensitive_pixmap): rewrite using
9649         GdkPixbuf, since the previous implementation was GdkColorContext
9650         dependent.
9651
9652         * gtk/testgtk.c (create_pixmap): add test for insensitive GtkPixmap
9653         
9654 Thu Feb  8 19:00:00 2001  Jonathan Blandford  <jrb@redhat.com>
9655
9656         * gtk/gtktreeview.c (TREE_VIEW_VERTICAL_SEPARATOR): moved back to
9657         a sane value!
9658
9659 2001-02-08  Havoc Pennington  <hp@redhat.com>
9660
9661         * gtk/gtkstyle.c (get_darkened_gc): let's darken colors, not
9662         lighten them.
9663
9664 2001-02-08  Havoc Pennington  <hp@redhat.com>
9665
9666         * gtk/gtktextview.c (gtk_text_view_destroy_layout): remove
9667         validation idle
9668
9669         * demos/gtk-demo/main.c (create_tree): adjust to changes in text
9670         cell renderer
9671
9672         * demos/pixbuf-demo.c (timeout): remove deprecated
9673         gtk_widget_draw
9674
9675         * demos/testpixbuf-save.c (main): remove deprecated
9676         gtk_drawing_area_size
9677
9678         * gtk/gtktreeview.c (gtk_tree_view_size_allocate): allocate
9679         buttons even if the model isn't setup. gtk_tree_view_check_dirty()
9680         at the start of the allocation.
9681         (gtk_tree_view_check_dirty): handle column->button == NULL, handle
9682         unsetup or NULL model.
9683
9684         * gtk/gtkstyle.c (gtk_default_draw_flat_box): drawing for the 
9685         even/odd/sorted cells in the tree view.
9686
9687         * gtk/gtktreeselection.c (gtk_tree_selection_real_unselect_all):
9688         bugfixes
9689
9690         * gtk/gtktreeview.c: assorted bugfixy stuff. Draw the row
9691         backgrounds with draw_flat_box using different detail for even/odd
9692         rows.
9693
9694         * gtk/gtkrbtree.c, gtkrbtree.h: Keep track of the parity of each
9695         row, so we can draw the alternating colors thing
9696
9697         * gtk/gtktexttag.c (gtk_text_tag_set_property): if we change a
9698         property from a synonym property, notify for the synonym.
9699         Also, nuke the background_gdk_set and foreground_gdk_set synonyms
9700         (gtk_text_tag_get_property): Always return the font, even if
9701         all its fields aren't set
9702
9703         * gtk/gtkcellrenderertext.h (struct _GtkCellRendererText): don't
9704         store the attr list; it leaves us with no way to change attributes
9705         in _render according to the render flags, and no way to implement
9706         get_property. Instead store all the specific text attributes. 
9707         Separate whether an attribute is enabled from its value. Sync all
9708         properties with GtkTextTag, make them all consistent, etc.
9709
9710         * gtk/gtkcellrenderer.h: Add a flag GTK_CELL_RENDERER_SORTED so
9711         renderers can highlight the sort row/column     
9712
9713         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_get_property): use
9714         accessor functions to get values; this has the side effect of
9715         showing up which accessor functions were missing. Added those.
9716
9717         * gtk/gtktreeviewcolumn.h: Replace set_justification with
9718         set_alignment, to be consistent with GtkLabel, GtkMisc
9719
9720         * gtk/gtktreeviewcolumn.c: Added code to display sort indicator
9721         arrow.
9722
9723         * gtk/Makefile.am (gtk_public_h_sources): add gtktreesortable.h
9724
9725         * gtk/gtktreesortable.h: updates in here
9726
9727 2001-02-07  Sven Neumann  <sven@convergence.de>
9728
9729         * gtk/gtkentry.c (gtk_entry_draw_text): convert area_height to 
9730         pango dimensions after painting the background. We used to draw
9731         gigantic flat boxes here.
9732
9733 Mon Feb  5 22:05:57 2001  Owen Taylor  <otaylor@redhat.com>
9734
9735         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Fix syntax
9736         error introduced with earlier commit) (pointed out by
9737         Ollie Lho)
9738
9739 Mon Feb  5 12:25:06 2001  Owen Taylor  <otaylor@redhat.com>
9740
9741         * gtk/gtkbutton.c: Remove calls to gtk_grab_add/gtk_grab_remove,
9742         which are no longer necessary.
9743
9744 Mon Feb  5 13:22:54 GMT 2001  Tony Gale <gale@gtk.org>
9745
9746         * docs/faq/gtk-faq.sgml: s/MISK/MISC/
9747
9748 2001-02-04  Tor Lillqvist  <tml@iki.fi>
9749
9750         * gdk/gdk.def
9751         * gdk/win32/gdkim-win32.c (gdk_ic_attr_new, gdk_ic_attr_destroy):
9752         Provide dummy implementations.
9753
9754 Sun Feb  4 07:55:17 2001  Tim Janik  <timj@gtk.org>
9755
9756         * gtk/gtksignal.h: removed gtk_signal_init() compat define.
9757
9758         * gtk/gtktypeutils.[hc]: gtk_tpye_init() take an additional argument
9759         GTypeDebugFlags debug_flags and pass it on to g_type_init ();
9760         deprecated this function.
9761
9762         * gdk/gdk.c (gdk_init_check): call g_type_init () with 0 as
9763         argument.
9764
9765 Sun Feb  4 07:45:45 2001  Tim Janik  <timj@gtk.org>
9766
9767         * gtk/gtkdebug.h: nuke GTK_DEBUG_OBJECTS and GTK_DEBUG_SIGNALS.
9768
9769 2001-02-03  Havoc Pennington  <hp@pobox.com>
9770
9771         * gtk/gtktextbtree.c (_gtk_text_btree_tag): Fix bug reported by
9772         Mikael Hermansson with patch from Mikael (if there was a toggle
9773         start one after the first character in the range, this function
9774         was broken). Bug #50380
9775
9776 Sat Feb  3 11:28:03 2001  Owen Taylor  <otaylor@redhat.com>
9777
9778         * configure.in: Remove confusing comment about X11.
9779
9780 Fri Feb  2 19:21:23 2001  Owen Taylor  <otaylor@redhat.com>
9781
9782         * gdk/gdkwindow.c (gdk_propagate_shapes): Surround additional
9783         regions with HAVE_SHAPE_EXT. (#50511, Eric Ding)
9784         
9785 Fri Feb  2 18:31:54 2001  Owen Taylor  <otaylor@redhat.com>
9786
9787         * gdk/x11/gdkimage-x11.c: Remove definition of _XOPEN_SOURCE, since
9788         it breaks things on BSD. If you want to compile GTK+ with
9789         -ansi -pedantic, you should supply CPP_FLAGS=_XOPEN_SOURCE 
9790         when configuring, since GTK+ simply can't be "pure ANSI" 
9791         in the header files it uses. (#8170, Greg Hudson)
9792
9793 2001-02-02  Havoc Pennington  <hp@redhat.com>
9794
9795         * gtk/gtkwindow.c: docs
9796
9797         * gtk/gtkwidget.c: docs
9798         (gtk_widget_set_colormap): add a reference to the colormap
9799         (gtk_widget_get_default_colormap): add a reference to the colormap
9800
9801         * gtk/gtktextbtree.c (gtk_text_mark_set_visible): docs
9802
9803         * gtk/gtktextiter.c: docs
9804
9805         * gtk/gtkmain.c (gtk_propagate_event): docs
9806
9807         * gtk/gtkpaned.c (gtk_paned_get_position): docs
9808         (gtk_paned_set_position): docs
9809
9810         * gtk/gtktreesortable.h (struct _GtkTreeSortableIface): Initial
9811         sort interface, no implementation yet.
9812
9813         * demos/testpixbuf.c (new_testrgb_window): replace
9814         gtk_drawing_area_size() with gtk_widget_set_usize()
9815
9816         * demos/testpixbuf-drawable.c (main): ditto
9817         
9818         * gtk/testgtk.c: remove use of GtkStatusbarMsg
9819
9820         * gtk/gtktextbuffer.c: docs
9821
9822         * gtk/gtkstock.c: docs
9823
9824         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_set_shadow_type): docs
9825
9826         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): docs
9827
9828         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): fix docs
9829         
9830         * gtk/gtkimage.c: add some docs in here
9831         (gtk_image_size_request): change name of
9832         gtk_widget_render_stock_icon
9833         (gtk_image_get_icon_set): don't dup returned string
9834         (gtk_image_get_icon_set): don't dup returned string
9835
9836         * gtk/gtkwidget.c (gtk_widget_render_icon): rename from 
9837         gtk_widget_render_stock_icon(), more consistent with gtkstyle.h
9838         and gtkiconfactory.h functions
9839
9840         * gtk/gtkiconfactory.c: add some docs in here
9841
9842         * gtk/gtkmain.c (gtk_get_default_language): document
9843         (gtk_get_current_event): document
9844         (gtk_get_current_event_state): document
9845         (gtk_get_event_widget): document
9846
9847         * gtk/gtkentry.c (gtk_entry_set_invisible_char): document
9848
9849         * gtk/gtkcontainer.c: Add some documentation
9850         (gtk_container_add): give a more explanatory warning on adding an
9851         already-parented widget, this is kind of a FAQ and also a common
9852         typo that's easier to debug with a nice warning 
9853
9854         * gtk/gtkcellrenderertoggle.c
9855         (gtk_cell_renderer_toggle_get_active): remove, I was on crack
9856         adding this, it's useless
9857         (gtk_cell_renderer_toggle_set_active): remove
9858         (gtk_cell_renderer_toggle_get_radio): add
9859
9860         * gtk/gtkcellrenderer.c (gtk_cell_renderer_get_size): don't allow
9861         the NULL cell renderer, that doesn't make any sense to me. 
9862
9863         * demos/gtk-demo/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED,
9864         demo code should never use deprecated features.
9865
9866         * demos/Makefile.am (INCLUDES): -DGTK_DISABLE_DEPRECATED, demo
9867         code should never use deprecated features.
9868
9869         * gtk/gtkwidget.h: Mark gtk_widget_draw, gtk_widget_queue_clear,
9870         gtk_widget_queue_clear_area deprecated
9871
9872         * gtk/gtklayout.h: mark gtk_layout_freeze/gtk_layout_thaw
9873         deprecated
9874
9875         * gtk/gtklabel.h: mark gtk_label_get() deprecated
9876
9877         * gtk/gtkimage.h: mark the legacy GtkImage functions that took 
9878         a GdkImage deprecated, replaced by new consistently-named
9879         functions       
9880
9881         * gtk/gtkmain.h: Mark gtk_exit() deprecated
9882
9883         * gtk/gtkdrawingarea.h: mark gtk_drawing_area_size deprecated
9884
9885         * gtk/gtkstyle.h: mark gtk_draw_string, gtk_paint_string 
9886         deprecated
9887
9888         * gtk/gtkstatusbar.h: Move GtkStatusbarMsg to the .c file, 
9889         so it won't appear in docs and confuse people.
9890
9891         * gtk/gtkprogressbar.h: Mark all the old methods deprecated
9892
9893         * gtk/gtkprogress.h: Mark all methods deprecated, mark the cast
9894         macros deprecated. (can't mark the type itself deprecated, since
9895         GtkProgressBar is not deprecated and we need the type decl to use
9896         GtkProgressBar)
9897
9898         * gtk/gtkpixmap.h: Mark deprecated
9899
9900         * gtk/gtkoldeditable.h: Mark deprecated
9901
9902         * gtk/gtklist.h: Mark deprecated
9903
9904         * gtk/gtklabel.h: delete "GtkLabelWord" typedef, not used 
9905         for anything anymore.
9906
9907         * gtk/gtkctree.h: Mark deprecated
9908
9909         * gtk/gtkclist.h: Mark deprecated
9910
9911         * gtk/gtkpreview.h: Mark deprecated
9912
9913         * gtk/gtkpacker.h: Mark deprecated
9914
9915         * gtk/gtktipsquery.h: Mark deprecated
9916
9917         * gtk/gtkinputdialog.h: Add comment that it will move out of GTK
9918
9919         * gtk/gtkvruler.h: Add comment that it will move out of GTK
9920
9921         * gtk/gtkhruler.h: Add comment that it will move out of GTK
9922
9923         * gtk/gtkruler.h: Add comment that it will move out of GTK
9924
9925         * gtk/gtkgamma.h: Add comment that it will move out of GTK
9926
9927         * gtk/gtkcurve.h: Add comment that it will move out of GTK
9928
9929 Fri Feb  2 17:16:09 2001  Owen Taylor  <otaylor@redhat.com>
9930
9931         * gdk/x11/gdkcolor-x11.c (gdk_colormap_sync): Make
9932         gdk_colormap_sync private since it was never exported
9933         in a header file.
9934
9935         * gdk/x11/gdkcolor-x11.c (gdk_colormap_new): Fill in
9936         colormap->colors[] for StaticGray, StaticColor colormaps.
9937
9938         * gdk/gdkpixbuf-drawable.c: Fix problems where image->bpp
9939         was being used as if it was image->bits_per_pixel.
9940
9941         * gdk/gdkimage.h, gdk/x11/gdkimage-x11.c: Save the bits-per-pixel
9942         for the image in the GdkImage structure since it isn't
9943         reconstructable, and we need it to handle packed types
9944
9945         * gdk/win32/gdkimage-win32.c: Set image->bits_per_pixel. (I'm making
9946         the assumption that on Win32 image->bits_per_pixel == image->depth,
9947         always.
9948
9949         * gdk/linux-fb/gdkimage-fb.c: Set image->bits_per_pixel.
9950
9951         * gdk/gdkrgb.c (gdk_rgb_select_conv): Exit with an informative
9952         warning message if no converter can be found. 
9953
9954 Fri Feb  2 15:09:51 2001  Owen Taylor  <otaylor@redhat.com>
9955
9956         * gtk/fnmatch.c (FOLD): Fix problem with passing signed
9957         chars to isupper() / tolower(). (#567)
9958
9959         * examples/packer/pack.c: Add GINT_TO_POINTER, GPOINTER_TO_INT
9960         to clear up 64-bit warnings. (#567)
9961
9962 Fri Feb  2 12:26:50 2001  Owen Taylor  <otaylor@redhat.com>
9963
9964         * gtk/gtkrc.c (gtk_rc_add_initial_default_files): Get rid of
9965         a bunch of g_strdup_printf("%s%s") in favor of g_strconcat().
9966
9967         * gtk/gtkrc.c Makefile.am: Use $(libdir), not $(exe_prefix),
9968         since some people set $(libdir) separately. (#1290, David Kaelbling)
9969
9970 Thu Feb  1 18:25:46 2001  Owen Taylor  <otaylor@redhat.com>
9971
9972         * gtk/gtkfilesel.c: If PATH_MAX and MAXPATHLEN are not
9973         defined, define MAXPATHLEN to 2048. (The Hurd doesn't have
9974         MAXPATHLEN, but the code here depends on a fixed value.)
9975         (#4524)
9976
9977 Wed Jan 31 22:01:04 2001  Owen Taylor  <otaylor@redhat.com>
9978
9979         * gtk/gtkhandlebox.c (gtk_handle_box_button_changed): Handle the case
9980         where child == NULL and handle_position == RIGHT or BOTTOM. (#8041g)
9981
9982 Wed Jan 31 21:20:39 2001  Owen Taylor  <otaylor@redhat.com>
9983
9984         * gtk/gtkctree.c (real_tree_move): If the node being moved isn't
9985         viewable there is no way that moving the node will cause the 
9986         focus row to become not viewable, so omit check on the visibility
9987         of new_sibling, which is irrelevant. (Fixes #8002, David Helder)
9988
9989 Wed Jan 31 20:38:17 2001  Owen Taylor  <otaylor@redhat.com>
9990
9991         * gtk/gtkentry.c (gtk_entry_commit_cb): Delete the current
9992         selection before inserting new text.
9993
9994 Wed Jan 31 18:49:33 2001  Owen Taylor  <otaylor@redhat.com>
9995
9996         * gtk/gtkoptionmenu.c (gtk_option_menu_item_state_changed_cb):
9997         Make the sensitivity of the reparented child track that of
9998         the original parent menu item. (#34218, David Hodson)
9999
10000         * gtk/gtkoptionmenu.c (gtk_option_menu_item_destroy_cb): Handle
10001         the case where the current item is destroyed properly.
10002
10003         * gtk/gtkoptionmenu.c: Some additional code cleanups and fix
10004         some edge cases with child-less menuitems.
10005         
10006 Wed Jan 31 17:16:13 2001  Owen Taylor  <otaylor@redhat.com>
10007
10008         * gtk/gtkcombo.c (gtk_combo_window_key_press): Make Return
10009         key pop down window. (#12074, Jon K Hellan)
10010
10011 Wed Jan 31 16:21:42 2001  Owen Taylor  <otaylor@redhat.com>
10012
10013         * gtk/gtklist.c (gtk_list_signal_item_toggle): Don't allow
10014         toggling of rows off in BROWSE or EXTENDED mode. (#12072, Jon K Hellan) 
10015         The solution here isn't perfect - you get an extraneous
10016         emission of "toggle", which could conceivably confuse an app,
10017         but better than the current situation. LXR search seems to
10018         indicate that no apps in GNOME CVS connect to "toggle".
10019
10020 Wed Jan 31 15:46:13 2001  Owen Taylor  <otaylor@redhat.com>
10021
10022         * gtk/Makefile.am (libgtkinclude_HEADERS): Move gtkcompat.h from
10023         gtk_public_h_sources to directly here to avoid warning when
10024         building srcdir != builddir. (#9656)
10025
10026 Tue Jan 30 19:49:02 2001  Owen Taylor  <otaylor@redhat.com>
10027
10028         * gtk/gtkrange.c: Patch from Kipp Hickman to make the event
10029         handlers in gtkrange.c return the proper values (TRUE == handled)
10030         (#10316).
10031
10032         This is just the tip of the iceberg, but gtkrange.c is the
10033         most common place where the propagation is problematical,
10034         and also a place where it is almost certainly safe to change
10035         this in the stable branch.
10036
10037         (You don't want right click popups on a range control or anything...)
10038
10039 Tue Jan 30 18:57:59 2001  Owen Taylor  <otaylor@redhat.com>
10040
10041         * gtk/gtktext.c (clear_focus_area): We need to clear the focus
10042         area on focus out, even if a background pixmap isn't set.
10043         (#13941)
10044         
10045 Tue Jan 30 18:24:10 2001  Owen Taylor  <otaylor@redhat.com>
10046
10047         * gtk/gtknotebook.c (gtk_notebook_set_shape): Fix from Sean Cunningham
10048         to deal with setting the shape properly when scrolling arrows are
10049         turned on, but not visible because there is sufficient space.
10050         (#13432)
10051
10052 Tue Jan 30 16:39:25 2001  Owen Taylor  <otaylor@redhat.com>
10053
10054         * gtk/gtkitemfactory.c (gtk_item_factory_delete_item): For menu
10055         items with submenus, destroy the item along with the submenu.
10056         (#7841, Brian Masney(?)) Also, handle paths of the form '<foo>/abcd...' 
10057         properly.
10058
10059         * gtk/testgtk.c (menu_items): Add a dummy branch that we delete
10060         later.
10061
10062 Tue Jan 30 15:51:25 2001  Owen Taylor  <otaylor@redhat.com>
10063
10064         * gtk/gtkwindow.c (gtk_window_real_set_focus): Fix a problem where
10065         the focus widget sometimes wasn't drawn with the default if there
10066         was no default widget.
10067
10068         * gtk/gtkstyle.c (gtk_style_real_unrealize): free colors,
10069         unreference pixmaps. 
10070
10071         * gtk/gtkstyle.c (gtk_style_realize): Reference colormap
10072         for some extra safety.
10073
10074 Mon Jan 29 19:00:01 2001  Owen Taylor  <otaylor@redhat.com>
10075
10076         * gtk/gtk{ctree.c,clist.c} (set_cell_contents): Handle setting
10077         the text of a cell to the old pointer value better, by
10078         copying the new text before freeing the old text. Some code
10079         cleanup. (#8079, Karl Nelson)
10080
10081 Mon Jan 29 16:50:19 2001  Owen Taylor  <otaylor@redhat.com>
10082
10083         * gtk/gtklabel.[ch] gtk/gtkframe.[ch]: Make gtk_label_get_text()
10084         gtk_frame_get_label() non strdup'ing, and G_CONST_RETURN.
10085
10086 Mon Jan 29 15:22:51 2001  Owen Taylor  <otaylor@redhat.com>
10087
10088         * gtk/gtkmenu.c (gtk_menu_remove): When removing an
10089         item from a menu, check to see if it matches 
10090         menu->old_active_menu_item, and if so, unref and clear
10091         old_active_menu_item (Patch from Pavel Cisler)
10092
10093         * gtk/gtkmenushell.c (gtk_menu_shell_remove): Unset 
10094         menu_shell->active_menu_item, if it is the child being
10095         removed. (Patch based on that of Gene Ragan, #50337)
10096
10097 2001-01-31  Alexander Larsson  <alla@lysator.liu.se>
10098
10099         * gdk/linux-fb/gdkselection-fb.c: 
10100         * gdk/linux-fb/gdkcolor-fb.c: 
10101         * gdk/linux-fb/gdkdrawable-fb2.c: 
10102         * gdk/linux-fb/gdkfont-fb.c: 
10103         * gdk/linux-fb/gdkim-fb.c: 
10104         * gdk/linux-fb/gdkinput.c: 
10105         * gdk/linux-fb/gdkkeyboard-fb.c: 
10106         * gdk/linux-fb/gdkmain-fb.c: 
10107         * gdk/linux-fb/gdkrender-fb.c: 
10108         A bunch of whitespace cleanup.
10109         
10110 2001-01-30  Havoc Pennington  <hp@pobox.com>
10111
10112         * gtk/gtktreeitem.h, gtk/gtktree.h, gtk/gtktext.h: bracket in 
10113         #ifdef GTK_ENABLE_BROKEN.
10114
10115         * gtk/gtktreeitem.c, gtk/gtktree.c, gtk/gtktext.c: #define
10116         GTK_ENABLE_BROKEN just before including the broken headers.
10117         
10118         * gtk/gtktypeutils.c: #define GTK_ENABLE_BROKEN, so we can get the
10119         deprecated types registered.
10120
10121         * gtk/testgtk.c, gtk/testselection.c: #define GTK_ENABLE_BROKEN,
10122         we have to test the broken stuff.
10123
10124         * docs/Changes-2.0.txt: explain GTK_ENABLE_BROKEN
10125         
10126 2001-01-30  Havoc Pennington  <hp@redhat.com>
10127
10128         * gtk/gtkliststore.c (gtk_list_store_insert_before): fix bug in
10129         here where prev pointer was set to the wrong thing
10130
10131         * gtk/gtktreemodel.c (gtk_tree_path_is_ancestor): new function
10132         (gtk_tree_path_is_descendant): new function
10133
10134         * gtk/gtkliststore.c (gtk_list_store_iter_n_children): return
10135         cached length
10136         (gtk_list_store_get_iter): don't modify iter if we can't get the
10137         path.
10138
10139         * gtk/gtkliststore.h (struct _GtkListStore): cache the length
10140         
10141         * gtk/gtktreednd.h: add virtual function row_drop_possible() to
10142         GtkTreeDragDest
10143
10144         * gtk/gtktreestore.c (copy_node_data): fix varargs type error that
10145         was causing segfault
10146
10147         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_copy): set next
10148         pointer to NULL
10149
10150         * gtk/gtktreestore.c (gtk_tree_store_append): fix memleak
10151
10152         * gtk/gtkliststore.c (gtk_list_store_iter_next): don't modify iter
10153         on returning FALSE
10154         (gtk_list_store_iter_children): ditto
10155         (gtk_list_store_iter_nth_child): ditto
10156         (gtk_list_store_iter_nth_child): ditto
10157         (gtk_list_store_iter_parent): ditto
10158
10159         * gtk/gtktreestore.c (gtk_tree_store_get_path): g_return_if_fail
10160         on iter->user_data != NULL instead of silently accepting it.
10161         (gtk_tree_store_iter_next): ditto. Also, don't modify iter unless
10162         we are returning TRUE.
10163         (gtk_tree_store_iter_children): ditto
10164         (gtk_tree_store_iter_nth_child): ditto
10165         (gtk_tree_store_iter_parent): ditto
10166         (gtk_tree_store_insert): remove handling of parent->user_data ==
10167         NULL, replace with parent == NULL       
10168
10169         * gtk/gtktreemodel.c (inserted_callback): put some fixes in here,
10170         and a comment explaining things
10171
10172         * gtk/gtktreestore.c: add GtkTreeDragSource/GtkTreeDragDest
10173         interface support to GtkTreeStore.
10174
10175         * gtk/gtktreemodel.c (gtk_tree_path_prev): didn't properly return
10176         FALSE if no prev, fix
10177
10178         * gtk/gtktreeview.c (set_source_row): use a row reference
10179         (set_dest_row): use a row reference
10180
10181 Sat Jan 27 15:52:02 2001  Jonathan Blandford  <jrb@redhat.com>
10182
10183         * gtk/gtktreeselection.c (gtk_tree_selection_unselect_iter): Fix
10184         stupid typo pointed out by Kristian Rietveld <kristian@planet.nl>.
10185         (gtk_tree_selection_select_iter): The same as above.
10186
10187 2001-01-26  Havoc Pennington  <hp@redhat.com>
10188
10189         * gtk/gtktreemodel.c, gtk/gtktreemodel.h: add GtkTreeRowReference
10190         which holds a handle to a specific row (particular set of values
10191         in the model, i.e. pointer-identity row).
10192
10193         * gtk/gtktreeview.c, gtk/gtktreeprivate.h, gtk/gtktreeselection.c:
10194         use GtkTreeRowReference for anchor, cursor, and drag_dest_row.
10195         Still need to use it for the src/dest row saved on the drag context.
10196
10197 2001-01-26  Havoc Pennington  <hp@redhat.com>
10198
10199         * gtk/gtktextlayout.c (convert_color): adapt to handle PangoColor
10200
10201         * gtk/gtktreeview.c (gtk_tree_view_widget_to_tree_coords): fix to
10202         not offset by TREE_VIEW_HEADER_HEIGHT
10203         (gtk_tree_view_tree_to_widget_coords): fix to not offset by
10204         TREE_VIEW_HEADER_HEIGHT
10205
10206         * configure.in (included_loaders): for me, --with-included-loaders
10207         generates the error "the specified loader yes does not exist",
10208         i.e. the arg defaults to "yes", so change test for value ""
10209         to test for value "yes", and include all loaders in that case.
10210
10211         * gtk/gtkrbtree.c (_gtk_rbtree_get_depth): new function
10212
10213         * gtk/gtktreeview.c (gtk_tree_view_get_cell_rect): fix to properly
10214         handle TREE_VIEW_VERTICAL_SEPARATOR
10215         (gtk_tree_view_bin_expose): fix to consider the row offset as
10216         pointing halfway into vertical separator.       
10217         (gtk_tree_view_draw_node_focus_rect): ditto
10218
10219         * gtk/gtkdebug.h, gtk/gtkmain.c (gtk_init_check): Add
10220         --gtk-debug=updates, which causes gdk_window_set_debug_updates
10221         (TRUE) to be called.
10222
10223         * gdk/gdkwindow.c (gdk_window_set_debug_updates): Allow enabling a
10224         debug mode where the invalid region is colored in on invalidate,
10225         so you can see the flicker and know whether your redraw code is 
10226         doing a good job.
10227
10228         * gtk/gtktreeview.c (gtk_tree_view_queue_draw_node): Work in 
10229         tree window coordinates (clip rect is in tree window coords)
10230
10231         * gtk/Makefile.am: add gtktreednd.[hc]
10232
10233         * gtk/gtkliststore.c: implement gtktreednd interfaces.
10234
10235         * gtk/gtktreednd.c, gtk/gtktreednd.h: New interface to support
10236         drag-and-drop data operations on a model (so we can set up tree
10237         drag-and-drop automatically)
10238
10239         * gtk/testgtk.c: Add a window to change sensitivity in the
10240         GtkLabel test; add a way to change the entry frame in GtkEntry
10241         test
10242
10243         * gtk/gtkentry.c (gtk_entry_set_has_frame): 
10244         (gtk_entry_get_has_frame): new functions to remove the frame
10245         around an entry
10246         (gtk_entry_size_request): shrink requisition if no frame
10247         (gtk_entry_draw_focus): don't draw frame if no frame
10248
10249         * gtk/gtkstyle.c (gtk_default_draw_check): draw custom look for
10250         checks inside a cell renderer
10251         (gtk_default_draw_option): ditto for options
10252
10253         * gtk/gtktreeviewcolumn.c (update_button_contents): add/remove
10254         children from the alignment, not the button
10255         (gtk_tree_view_column_init): ref/sink the column, to emulate
10256         GObject refcounting.
10257
10258         * gtk/gtkcellrenderer.c (gtk_cell_renderer_init): ref/sink
10259         
10260         * gtk/gtkcellrenderertoggle.c (gtk_cell_renderer_toggle_render):
10261         Use theme functions to draw the toggles 
10262
10263         * gdk/gdkpango.c (gdk_pango_get_gc): use GdkRGB to alloc colors
10264
10265         * gdk/gdkpango.h, gdk/gdkpango.c: Add GdkPangoAttrStipple and
10266         GdkPangoAttrEmbossed to use in rendering insensitive text
10267
10268         * gdk/gdkpango.c (gdk_draw_layout_line): render new properties
10269
10270         * gtk/gtkstyle.c (gtk_default_draw_layout): handle sensitivity
10271         using new GDK features
10272         
10273 2001-01-24  Alexander Larsson  <alexl@redhat.com>
10274
10275         * gtk/gtkimage.c:
10276         Splitted gtk_image_clear into gtk_image_clear() and
10277         gtk_image_reset(). Call gtk_image_clear() in ::destroy
10278         to avoid leaks.
10279
10280         * gtk/gtklabel.c (set_markup):
10281         Don't leak text.
10282
10283         * gtk/gtktextlayout.c:
10284         Always free display->shaped_objects.
10285
10286         * gtk/testgtk.c (create_clist):
10287         Don't leak custom style.
10288
10289 2001-01-23  Alexander Larsson  <alexl@redhat.com>
10290
10291         * gtk/gtkcolorsel.c (grab_color_at_mouse):
10292         Don't leak image. Simplify using gdk_colormap_query_color().
10293         (gtk_color_selection_init): Don't leak dropper_pixmap and mask.
10294
10295         * linux-fb/gdkcolor-fb.c:
10296         Implemented gdk_colormap_query_color.
10297
10298 2001-01-23  Alexander Larsson  <alexl@redhat.com>
10299
10300         * linux-fb/gdkcursor-fb.c:
10301         Don't leak built-in cursors.
10302
10303         * linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_polygon):
10304         Don't leak tmp_points.
10305
10306         * linux-fb/gdkfont-fb.c (gdk_font_from_description):
10307         Don't modify desc. Don't leak font if the PangoFont
10308         isn't found.
10309         
10310         * linux-fb/gdkgc-fb.c (gdk_fb_gc_finalize):
10311         Free dash_list.
10312
10313         * linux-fb/gdkkeyboard-fb.c (gdk_fb_handle_key):
10314         Don't leak string.
10315         
10316 2001-01-20  Havoc Pennington  <hp@pobox.com>
10317
10318         * gtk/gtktexttag.h (enum GtkWrapMode): rename member fields
10319         from GTK_WRAPMODE_WORD to GTK_WRAP_WORD, etc., seems nicer to 
10320         me, matches Pango
10321
10322 2001-01-22  Havoc Pennington  <hp@redhat.com>
10323
10324         * demos/testanimation.c: fix to reflect gdk-pixbuf changes
10325
10326         * demos/testpixbuf.c: fix to reflect gdk-pixbuf changes
10327
10328         * gtk/gdk-pixbuf-loader.c, gtk/gdk-pixbuf-loader.h: 
10329         Remove, move back to gdk-pixbuf
10330
10331         * gtk/gtktextiter.c, gtk/gtktextiter.h: add sentence equivalents
10332         to all the word functions
10333
10334         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): return
10335         before doing anything on NULL layout or if we don't have the focus
10336
10337         * gtk/testtext.c (fill_example_buffer): "justification"
10338
10339         * gtk/gtktexttag.h, gtk/gtktexttag.c: change the tag attribute
10340         to be called "justification" not "justify"
10341
10342         * demos/gtk-demo/textview.c (create_tags): "justification"
10343         
10344         * gtk/gtktextlayout.c (set_para_values): Handle char-wise wrapping
10345
10346 2001-01-22  Alexander Larsson  <alexl@redhat.com>
10347
10348         * gdk/gdkwindow.c (gdk_window_invalidate_region):
10349         Don't leak visible_region. Use visible_region instead of region.
10350         
10351         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_new):
10352         Don't do extra gdk_drawable_ref(). This is not X.
10353         (gdk_fb_window_find_focus, gdk_fb_change_focus): make sure
10354         gdk_fb_focused_window is ref:ed.
10355         (gdk_fb_window_send_crossing_events): Watch out for destroyed
10356         windows.
10357
10358 2001-01-22  Alexander Larsson  <alexl@redhat.com>
10359
10360         * gtk/gtkwindow-decorate.c (gtk_decorated_window_realize):
10361         Don't leak the PangoFontDescriptor.
10362
10363 Sun Jan 21 09:58:00 2001  Jonathan Blandford  <jrb@redhat.com>
10364
10365         * gtk/gtktreeview.c (gtk_tree_view_scroll_to_point): Make fail
10366         when not realized.
10367         (gtk_tree_view_scroll_to_cell): Make work when not realized.
10368         (gtk_tree_view_realize): add scroll_to support
10369         (gtk_tree_view_finalize): add a finalize method.  Populate.
10370         (gtk_tree_view_insert_column): ref and sink the column.
10371         (gtk_tree_view_append_column): ref and sink the column.
10372         (gtk_tree_view_queue_draw_node): New function to handle redrawing
10373         individual nodes.  Should make the code much more efficient, if
10374         actually used.
10375
10376 2001-01-19  Havoc Pennington  <hp@redhat.com>
10377
10378         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
10379         byte_offset variable was being used to mean both "offset into
10380         layout" and "offset into buffer line" which was no longer true
10381         with addition of preedit string; fix
10382
10383 2001-01-19  Havoc Pennington  <hp@redhat.com>
10384
10385         * demos/gtk-demo/main.c (button_press_event_cb): sync to tree changes
10386
10387         * gtk/gtkrbtree.c (_gtk_rbtree_node_find_offset): fix this
10388         function
10389
10390         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_widget):
10391         implement
10392
10393         * gtk/gtktreeview.c (gtk_tree_view_move_to): rename
10394         scroll_to_cell, matches TextView scroll functions better
10395         (gtk_tree_view_tree_to_widget_coords): new function
10396         (gtk_tree_view_widget_to_tree_coords): new function
10397         (gtk_tree_view_get_visible_rect): new function
10398         (gtk_tree_view_get_path_at_pos): accept negative coordinates
10399         (gtk_tree_view_draw_node_focus_rect): new function moved from
10400         draw_focus, also, use width of bin_window as width of the focus
10401         rect
10402         (gtk_tree_view_expand_row): fix bug where it didn't recognize
10403         already-expanded rows
10404         (gtk_tree_view_get_cell_rect): new function
10405         (gtk_tree_view_get_path_at_pos): return the click position
10406         relative to the passed-in cell
10407         (gtk_tree_view_set_expander_column): new function
10408
10409         * configure.in: remove gtk-config-2.0 chmod
10410
10411         * gtk/gtktextview.c (gtk_text_view_drag_motion): small cleanups,
10412         and properly handle drags with targets we don't understand
10413         (gtk_text_view_drag_end): don't stop scrolling, the source isn't
10414         scrolling anyway
10415         (gtk_text_view_drag_drop): stop scrolling here though, and set the
10416         mark invisible
10417
10418         * gtk/gtkdnd.c (gtk_drag_dest_find_target): export as a public
10419         function
10420         (gtk_drag_dest_get_target_list): new function
10421         (gtk_drag_dest_set_target_list): new function
10422         
10423         * gtk/gtktreeview.c: Add a bunch of drag-and-drop implementation
10424
10425         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): add fields
10426         related to drag-and-drop
10427
10428 2001-01-19  Alexander Larsson  <alexl@redhat.com>
10429
10430         * gdk/linux-fb/gdkprivate-fb.h:
10431         Define EMULATE_GDKFONT.
10432         Add extra pango_font stuff to GfkFontPrivate.
10433         
10434         * gdk/linux-fb/gdkdrawable-fb2.c:
10435         * gdk/linux-fb/gdkfont-fb.c:
10436         If EMULATE_GDKFONT defined, implement a slow lame GdkFont
10437         emulation using PangoFont.
10438
10439 2001-01-17  Havoc Pennington  <hp@pobox.com>
10440
10441         * gtk/gtkprogressbar.c, gtk/gtkprogressbar.h: Add "getters" for
10442         all the non-deprecated set_foo functions. Added missing object
10443         properties, and added g_object_notify() to setters. 
10444         Wrote docs.
10445         
10446 2001-01-18  Tor Lillqvist  <tml@iki.fi>
10447
10448         * gtk/gtkmain.c
10449         * gtk/gtkrc.c: (Win32) Use the new
10450         g_win32_get_package_installation_(sub)directory() functions.
10451
10452         * config.h.win32.in: New file.
10453         
10454         * config.h.win32: Removed.
10455
10456         * configure.in: Output config.h.win32.
10457
10458         * Makefile.am: Add it to EXTRA_DIST.
10459
10460         * gtk/gtk.def: Update.
10461
10462 Wed Jan 17 16:22:54 2001  Owen Taylor  <otaylor@redhat.com>
10463
10464         * gtk/gtklabel.c (gtk_label_size_request): Set the
10465         attributes onto the PangoLayout even if they are newly
10466         created from label->pattern.
10467
10468 Tue Jan  9 11:20:48 2001  Owen Taylor  <otaylor@redhat.com>
10469
10470         * gdk/x11/gdkdnd-x11.c: Remove unused variable.
10471
10472         * gtk/gtkdnd.c: Encapsulate storing and retrieving info
10473         structures in functions. Fixes bug where gtk_dataset_*
10474         was accidentally still being used in one place, causing
10475         every dest side event to be treated independently.
10476
10477         * gtk/gtkdnd.c: Remove last vestages of handling
10478         ::draw (fixes warning)
10479         
10480         * gtk/gtkentry.[ch]: Add drag and drop support.
10481
10482         * gtk/gtkdnd.[ch] gtk/gtktextview.c gtk/gtkentry.c: Add
10483         new function gtk_check_drag_threshhold() for checking
10484         to check if (dx,dy) has exceeded the threshhold for starting
10485         a drag and use it everywhere.
10486
10487 Mon Jan  8 11:58:05 2001  Owen Taylor  <otaylor@redhat.com>
10488
10489         * gtk+-2.0.pc.in gdk-pixbuf-2.0.pc.in (Cflags): Remove -I${includedir},
10490         add -I{includedir}/gtk-2.0.
10491
10492         * gtk/gtktreeview.[ch] gtktreemodelsort.[ch] gtknotebook.c
10493         gdk/gdk-pixbuf.h: Doc fixups.
10494         
10495         * gtk/gtkobject.h: Remove trailing , from enum
10496
10497 2001-01-17 Alexander Larsson <alexl@redhat.com> 
10498
10499         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_shadow_fb_draw_arc):
10500         Doh! Mixed up x and y.
10501
10502         * gdk/linux-fb/gdkglobals-fb.c:
10503         Removed gdk_fb_pointer_grab_window_events,
10504         added _gdk_fb_pointer_grab_owner_events and
10505         _gdk_fb_keyboard_grab_owner_events.
10506
10507         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab):
10508         Set all button mask if GDK_BUTTON_MOTION_MASK set. Send
10509         crossing events before grabbing. Set _gdk_fb_pointer_grab_owner_events.
10510         (gdk_fb_pointer_ungrab): Unset _gdk_fb_pointer_grab_owner_events
10511         Send crossing events after ungrab finished.
10512         (gdk_keyboard_grab): Set ..._owner_events
10513         (type_masks): Move out of function.
10514         (gdk_fb_other_event_window, gdk_fb_pointer_event_window,
10515         gdk_fb_keyboard_event_window): New functions, return the
10516         window an event should be targeted at. Handles grabs and
10517         event propagation. Can return NULL.
10518         (gdk_event_make): Remove event_mask checking. Now always
10519         returns an event.
10520                 
10521         * gdk/linux-fb/gdkkeyboard-fb.c:
10522         * gdk/linux-fb/gdkproperty-fb.c:
10523         * gdk/linux-fb/gdkselection-fb.c:
10524         Use new event_window/gdk_event_make() behaviour.
10525         
10526         * gdk/linux-fb/gdkmouse-fb.c:
10527         Use new event_window/gdk_event_make() behaviour.
10528         Only send motion events if in the same window.
10529         If grabbed, use cursor from window if sibling of grabbed
10530         window, and cursor from grabbed window otherwise.
10531
10532         * gdk/linux-fb/gdkprivate-fb.h:
10533         Update gdk_fb_window_send_crossing_events, gdk_event_make
10534         and grab varaible declarations. Add gdk_fb_*_event_window().
10535
10536         * gdk/linux-fb/gdkwindow-fb.c:
10537         Use new event_window/gdk_event_make() behaviour.
10538         Keep correct track of focus window.
10539         (gdk_window_set_events): Set all specific button motion masks
10540         if GDK_BUTTON_MOTION_MASK set.
10541
10542         * gtk/gtkdnd.c (gtk_drag_update):
10543         Free info->last_event if gdk_drag_motion returned FALSE.
10544
10545 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10546
10547         * gdk/win32/gdkwindow-win32.c (gdk_window_show, gdk_window_hide):
10548         Eliminate redraws when input-only windows are shown or
10549         hidden. Thanks to jpe@archaeopteryx.com.
10550
10551 Tue Jan 16 13:13:13 GMT 2001  Tony Gale <gale@gtk.org>
10552
10553         * docs/faq/gtk-faq.sgml: FAQ update:
10554           - Update to bugzilla
10555           - Add GTK+ and security/SUID/SGID
10556           - Add DnD question
10557
10558 2001-01-16  Alexander Larsson  <alla@lysator.liu.se>
10559
10560         * gdk/linux-fb/gdkdnd-fb.c:
10561         Some cleanups.
10562         
10563 2001-01-15  Havoc Pennington  <hp@pobox.com>
10564
10565         * tests/testtreeview.c: add test stuff for CellRendererToggle
10566
10567         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_get_model): add this
10568         accessor
10569
10570         * gtk/gtkcellrenderertoggle.c: distinguish different event types,
10571         only toggle on button press (would do release like GtkButton, but
10572         we'd need implicit grab code for treeview cells)
10573
10574 2001-01-16  Tor Lillqvist  <tml@iki.fi>
10575
10576         * gdk/win32/gdkvisual-win32.c: Include <stdlib.h> for getenv().
10577
10578         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Don't use
10579         GDK_COLORMAP_PRIVATE_DATA on a potentially NULL GdkColormap.
10580
10581         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Adapt calls
10582         to g_{locale,filename}_{to,from}_utf8 to match current API.
10583
10584         * gtk/makefile.msc.in (gtk_OBJECTS)
10585         * gtk/makefile.mingw.in (gtk_OBJECTS): Add gtkwindow-decorate.
10586
10587         * gtk/gtk.def: Update.
10588
10589 2001-01-15  Tor Lillqvist  <tml@iki.fi>
10590
10591         * gdk/win32/gdkevents-win32.c (synthesize_crossing_events): New
10592         implementaion that more closely mimics the events that an X server
10593         would generate. Especially, properly generate GDK_NOTIFY_VIRTUAL and
10594         GDK_NOTIFY_NONLINEAR_VIRTUAL crossing events. This makes buttons
10595         with nested preview widgets, for instance, more responsive when
10596         you move the mouse quickly into them.
10597         (find_window_for_pointer_event): Make it actually compile.
10598         (gdk_event_translate): Set send_event to the value of
10599         InSendMessage (). This doesn't really mean the same as X11's
10600         send_event flag, but is close enough, says jpe@archaeopteryx.com
10601
10602 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10603
10604         * gdk/linux-fb/gdkdnd-fb.c:
10605         Implemented drag and drop.
10606         Seems to be mostly working. I sometimes get an assert from gtkdnd.c:2664
10607         when it tries to free and then copy the same event (info->last_event).
10608         I am not sure about why this happens, but will continue looking.
10609
10610 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10611
10612         * gdk/linux-fb/gdkwindow-fb.c:
10613         Use gdk_window_invalidate_rect instead of
10614         gdk_window_invalidate_rect_clear to minimise flashing.
10615         When hiding windows you need to clear the root window though.
10616
10617 2001-01-15  Alexander Larsson  <alexl@redhat.com>
10618
10619         * gdk/linux-fb/gdkdrawable-fb2.c:
10620         For optization, add an full_shapes argument to gdk_fb_clip_region.
10621         If this is false, only the cliprects of the shapes are used.
10622
10623         * gdk/linux-fb/gdkprivate-fb.h:
10624         Export gdk_fb_window_peek_shape.
10625         Add full_shapes to gdk_fb_clip_region.
10626
10627         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
10628         When moving a window, don't clear everything under the it, just the
10629         root window. Makes stuff faster and flash less.
10630         (gdk_window_get_pointer): Correctly handle offseted shapes, due to
10631         USE_CHILD_SHAPE. (gdk_fb_window_peek_shape): Return the correct
10632         offset of the shape.
10633         
10634
10635 2001-01-12  Havoc Pennington  <hp@redhat.com>
10636
10637         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): offset the 
10638         current invalid region, fixes redraw bug while scrolling the 
10639         text widget
10640
10641         * gtk/gtktextview.c, gtk/gtktextview.h:
10642         Rearrange the scrolling/validation/etc. code in a major way, 
10643         so it seems to make sense to me. Probably isn't genuinely that
10644         much better, but...
10645
10646         * gtk/gtktexttag.c (set_fg_color): fix name of property used for
10647         notifies
10648
10649         * gtk/gtktextmark.c (gtk_text_mark_get_left_gravity): new function
10650
10651 2001-01-12  Alexander Larsson  <alla@lysator.liu.se>
10652
10653         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_set_rotation):
10654         Hide mouse pointer while rotation. Show it afterwards.
10655
10656 2001-01-12  Alexander Larsson  <alexl@redhat.com>
10657
10658         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_clip_region): Take shaped
10659         windows in consideration when generating clip region.
10660
10661         * gdk/linux-fb/gdkfb.h:
10662         Huge HACK. Added GDK_FB_USE_CHILD_SHAPE.
10663
10664         * gdk/linux-fb/gdkprivate-fb.h:
10665         Add shape to GdkWindowFBDatat.
10666         exported gdk_fb_window_get_abs_shape().
10667         removed gdk_fb_draw_lines declaration.
10668
10669         * gdk/linux-fb/gdkwindow-fb.c (gdk_window_impl_fb_init):
10670         Init shape to NULL. (gdk_fb_window_send_crossing_events): Don't
10671         send focus changes when there is a grabbed window.
10672         (gdk_window_get_pointer): Handle shaped windows.
10673         (gdk_fb_region_create_from_bitmap): Convert bitmap to region.
10674         (gdk_fb_window_peek_shape): Returns the shape for a window,
10675         handles GDK_FB_USE_CHILD_SHAPE.
10676         (gdk_fb_window_get_abs_shape): Returns the shape of the window,
10677         offseted to absolute positions. Handles GDK_FB_USE_CHILD_SHAPE.
10678         (gdk_window_shape_combine_mask): Implement.
10679
10680         * gtk/gtkwindow-decorate.c:
10681         HACK! Set GDK_FB_USE_CHILD_SHAPE on window->frame to make sure
10682         setting the shape of a window makes the window transparent.
10683
10684 2001-01-11  Havoc Pennington  <hp@redhat.com>
10685
10686         * gtk/gtktreemodelsimple.h: Oops, broke some macros
10687
10688 2001-01-10  Havoc Pennington  <hp@redhat.com>
10689
10690         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clear_attributes):
10691         add this function, bug 40251
10692
10693         * gtk/gtktreemodelsimple.h (GTK_TYPE_TREE_MODEL_SIMPLE): fix name
10694         of type macro   
10695
10696 2001-01-11  Alexander Larsson  <alexl@redhat.com>
10697
10698         * acconfig.h:
10699         Added ENABLE_SHADOW_FB
10700
10701         * configure.in:
10702         Added --disable-shadowfb
10703
10704         * gdk/linux-fb/gdkcursor-fb.c:
10705         Update shadowfb when updating cursor
10706
10707         * gdk/linux-fb/gdkdrawable-fb2.c:
10708         Added wrappers for shadowfb that calls  the normal drawable
10709         methods, but calls gdk_shadow_fb_update(bounding box) when
10710         GdkWindows are drawed to.
10711         Moved gdk_draw_glyphs implementation to _gdk_draw_glyphs
10712         which also returns the bounding box.
10713
10714         * gdk/linux-fb/gdkfb.h:
10715         Added GdkFBAngle type and gdk_fb_set_rotation declaration.
10716
10717         * gdk/linux-fb/gdkgeometry-fb.c:
10718         Update shadowfb when scrolling window.
10719
10720         * gdk/linux-fb/gdkglobals-fb.c:
10721         Add _gdk_fb_screen_angle.
10722         
10723         * gdk/linux-fb/gdkkeyboard-fb.c:
10724         Test code for screen rotation. Shift-F2 in the xlate driver
10725         rotates the screen.
10726
10727         * gdk/linux-fb/gdkmain-fb.c:
10728         Handle shadowfb. Add gdk_fb_set_rotation(). Remove CM and RP.
10729
10730         * gdk/linux-fb/gdkmouse-fb.c:
10731         Use fb_width/height instead of modeinfo.xres/yres.
10732
10733         * gdk/linux-fb/gdkprivate-fb.h:
10734         Added fb_men, fb_width, fb_height & fb_stride. When using
10735         shadow fb these can differ from the framebuffer stuff.
10736         Declarations for gdk_shadow_fb_update, gdk_shadow_fb_init,
10737         gdk_shadow_fb_stop_updates, gdk_fb_recompute_all,
10738         _gdk_fb_screen_angle. Removed CM, RP.
10739
10740         * gdk/linux-fb/gdkrender-fb.c:
10741         Added code for shadowfb handling and screen rotation using
10742         shadowfb.
10743
10744         * gdk/linux-fb/gdkwindow-fb.c:
10745         Use fb_mem, fb_stride, fb_width, fb_height.
10746         Added recompute_rowstride to reset the rowstride of all windows.
10747         Added gdk_fb_recompute_all() which recomputes rootwindow size,
10748         window abs positions and window rowstrides. Usefull when the
10749         rotation has changed.
10750
10751 Thu Jan 11 13:16:50 GMT 2001  Tony Gale <gale@gtk.org>
10752
10753         * docs/faq/gtk-faq.sgml: update to make web site updating easier
10754
10755 2001-01-10  Havoc Pennington  <hp@redhat.com>
10756
10757         * gtk/gtktreestore.c (gtk_tree_store_insert_before): handle case
10758         where sibling == iter
10759         (gtk_tree_store_insert_after): handle sibling == iter
10760         (gtk_tree_store_prepend): remove stamp checks
10761         (gtk_tree_store_insert_before): ditto
10762         (gtk_tree_store_append): ditto
10763         (gtk_tree_store_get_path): ditto
10764         (gtk_tree_store_get_value): ditto
10765         (gtk_tree_store_iter_has_child): ditto
10766         (gtk_tree_store_iter_n_children): ditto
10767         (gtk_tree_store_iter_nth_child): ditto
10768         (gtk_tree_store_insert_after): ditto
10769         (gtk_tree_store_is_ancestor): ditto
10770         (gtk_tree_store_iter_depth): ditto
10771         (gtk_tree_store_insert_before): assert that sibling's parent is
10772         the same as the passed-in parent
10773         (gtk_tree_store_insert_after): assert that sibling's parent is
10774         the same as the passed-in parent
10775
10776         
10777         * gtk/gtktreemodel.c (gtk_tree_model_get_first): new convenience 
10778         function to get the first iterator in a model
10779         
10780         * gtk/gtktreestore.c (gtk_tree_store_get_root_iter): remove,
10781         conventionally the "root" in this sense is just NULL afaict.
10782
10783         * gtk/gtkliststore.c (gtk_list_store_insert_before): handle case
10784         where sibling == iter
10785         (gtk_list_store_insert_after): handle case where sibling == iter
10786
10787         * tests/testtreeview.c (run_automated_tests): fairly lame basic
10788         automated tests for ListStore, TreeStore
10789
10790         * gtk/gtkliststore.c (gtk_list_store_remove): update tail pointer
10791         (gtk_list_store_insert): update tail pointer, and fix it to work
10792         (gtk_list_store_insert_before): update tail pointer, and fix it to work
10793         (gtk_list_store_append): use tail to be faster
10794         (gtk_list_store_prepend): fix it, update tail pointer
10795         (gtk_list_store_insert_after): fix it, update tail pointer
10796
10797         * gtk/gtkliststore.h (struct _GtkListStore): add tail pointer for 
10798         the list
10799
10800 2001-01-09  Havoc Pennington  <hp@redhat.com>
10801
10802         * gtk/gtklabel.c (gtk_label_expose): don't draw if label->layout
10803         is NULL due to a pending resize
10804
10805         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): don't set the
10806         column width to values less than 1
10807
10808         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_width): clamp
10809         width to be between min/max width, and still set the width 
10810         even if autosize is turned on, so the tree view can use this 
10811         function in order to autosize.
10812         (gtk_tree_view_column_init): set initial width to 1 not 0
10813
10814         * gtk/gtktreeview.c (gtk_tree_view_size_request_buttons): use
10815         setter function to modify column width, so we get notification
10816         (gtk_tree_view_insert_iter_height): ditto
10817         (gtk_tree_view_calc_size): ditto
10818         (gtk_tree_view_check_dirty): ditto
10819
10820         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_class_init): Add
10821         properties to change all the interesting attributes of the tree
10822         view column.
10823         (gtk_tree_view_column_set_header_clickable): rename set_clickable
10824         (gtk_tree_view_column_get_clickable): add
10825         (gtk_tree_view_column_set_cell_renderer): don't unset the current
10826         attributes; assume a cell renderer with equivalent object
10827         properties has been swapped in. Do g_object_notify().
10828         (gtk_tree_view_column_set_visible): g_object_notify
10829         (gtk_tree_view_column_get_sizing): rename from get_col_type
10830         (gtk_tree_view_column_set_sizing): g_object_notify
10831         (gtk_tree_view_column_set_width): add g_object_notify
10832         (gtk_tree_view_column_set_min_width): ditto
10833         (gtk_tree_view_column_set_max_width): ditto
10834         (gtk_tree_view_column_set_title): ditto
10835         (gtk_tree_view_column_set_clickable): ditto
10836         (gtk_tree_view_column_set_widget): ditto
10837         (gtk_tree_view_column_set_justification): ditto
10838
10839 2001-01-09  Havoc Pennington  <hp@redhat.com>
10840
10841         * gtk/gtktreeview.c (gtk_tree_view_check_dirty): handle case where
10842         there are no rows in the model
10843
10844         * gtk/gtkliststore.c (gtk_list_store_iter_children): if parent is
10845         NULL, then return the start of the list
10846
10847         * gtk/gtktreeview.c (gtk_tree_view_setup_model): don't build tree
10848         if we can't get any rows from an empty model 
10849
10850         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): remove
10851         extraneous * after function pointer typedef usage
10852
10853         * Makefile.am: don't specify full path to cp and rm
10854
10855         * gtk/gtkcellrenderertextpixbuf.c
10856         (gtk_cell_renderer_text_pixbuf_get_size): check width/height !=
10857         NULL before dereferencing, fixes a segfault that happened from
10858         time to time
10859
10860         * gtk/gtkcellrendererpixbuf.c (gtk_cell_renderer_pixbuf_render):
10861         use gdk_pixbuf_render_to_drawable_alpha() to get alpha channel,
10862         and reindent the function
10863         (gtk_cell_renderer_pixbuf_get_size): indentation
10864
10865         * gtk/gtkdialog.c (gtk_dialog_run): destroy main loop only after
10866         we quit it
10867         (gtk_dialog_add_buttons_valist): add g_return_if_fail
10868         (gtk_dialog_set_default_response): New function, to set default
10869         button
10870         (gtk_dialog_set_response_sensitive): New function, to set 
10871         sensitivity of buttons
10872
10873         * gtk/gtkcellrendererpixbuf.c
10874         (gtk_cell_renderer_pixbuf_get_property): allow getting a NULL pixbuf
10875         (gtk_cell_renderer_pixbuf_set_property): allow setting a NULL pixbuf
10876
10877         * gtk/gtktreedatalist.c (_gtk_tree_data_list_node_to_value):
10878         handle any G_TYPE_OBJECT subclass, not just the base class, and 
10879         also boxed types.
10880         (_gtk_tree_data_list_value_to_node): ditto
10881
10882         * gtk/gtkrbtree.c: Run _gtk_rbtree_test at strategic points if 
10883         --gtk-debug=tree
10884
10885         * gtk/gtkmain.c: add GTK_DEBUG_TREE
10886
10887         * gtk/gtkdebug.h: add GTK_DEBUG_TREE
10888
10889 2001-01-09  Tor Lillqvist  <tml@iki.fi>
10890
10891         * gdk/win32/gdkevents-win32.c: Implement better mouse
10892         capturing. Do use SetCapture(). Thanks to jpe@archaeopteryx.com.
10893         (find_window_for_pointer_event): New function.
10894         (gdk_event_translate): Use it when handling mouse events.
10895
10896 2001-01-09  Alexander Larsson  <alla@lysator.liu.se>
10897
10898         * configure.in:
10899         Added --with-included-loaders option
10900
10901         * gdk-pixbuf/Makefile.am:
10902         * gdk-pixbuf/gdk-pixbuf-io.c:
10903         Add support for including selected gdk-pixbuf loaders only.
10904
10905         * gtk/gtkwindow.c (gtk_window_set_frame_dimensions,
10906         gtk_window_set_has_frame):
10907         Added inline documentation.
10908
10909         * gdk/x11/gdkwindow-x11.c (gdk_window_get_decorations):
10910         * docs/reference/gdk/tmpl/windows.sgml:
10911         Added inline documentation.
10912
10913 Mon Jan  8 14:42:06 2001  Jonathan Blandford  <jrb@redhat.com>
10914
10915         * gtk/gtktreeview.c (gtk_tree_view_realize_buttons): Skip
10916         realizing buttons that have already been realized.
10917
10918 Mon Jan  8 14:06:29 2001  Jonathan Blandford  <jrb@redhat.com>
10919
10920         * tests/testtreeview.c (main): Show menu items before adding to
10921         option menu.
10922
10923         * gtk/gtktreeview.c (gtk_tree_view_set_model): Keep the columns
10924         around if we kill them.
10925
10926         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_cell_data):
10927         Return if we pass in a NULL model.
10928
10929 2001-01-08  Havoc Pennington  <hp@redhat.com>
10930
10931         * tests/testtreeview.c: hack on this some
10932
10933         * gtk/gtktreestore.c (gtk_tree_store_setv): rename
10934         gtk_tree_store_set_valist, v is for arrays, valist for varargs
10935         list
10936         (gtk_tree_store_getv): rename gtk_tree_store_get_valist
10937
10938         * gtk/gtkliststore.h: Add varargs set() and get() convenience
10939         functions
10940
10941 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10942
10943         * gtk/gtkwindow-decorate.[hc]:
10944         * gtk/Makefile.am:
10945         New files. Contains an implementation of a minimal WM for
10946         linux-fb.
10947
10948         * gtk/gtkwindow.h:
10949         Add the possibility for GtkWindows to specify a frame. This
10950         is used for the window decoration code, but could concievably
10951         be used for X programs too (xmms style windows).
10952         GtkWindow->frame is the toplevel window if the window is framed.
10953         The signal frame_event gets all events that are targeted to
10954         GtkWindow->frame.
10955         (_gtk_window_constrain_size): Exported for usage by gtkwindow-decorate.c.
10956         
10957         * gtk/gtkwindow.c:
10958         Implement gtk_window_set_has_frame and gtk_window_set_frame_dimensions.
10959         Call out to gtkwindow-decorate.c for WM support in linx-fb.
10960
10961 2001-01-08  Alexander Larsson  <alexl@redhat.com>
10962
10963         * docs/README.linux-fb:
10964         Correct filename ~/.pangoft2_aliases
10965
10966         * gdk/gdkwindow.h:
10967         Added new function gdk_window_get_decorations.
10968
10969         * gdk/linux-fb/gdkfb.h:
10970         Removed _gdk_window_get_decorations declaration.
10971         Renamed _gdk_window_set_child_handler to
10972         gdk_fb_window_set_child_handler.
10973
10974         * gdk/linux-fb/gdkwindow-fb.c:
10975         Renamed _gdk_window_set_child_handler to
10976         gdk_fb_window_set_child_handler.
10977
10978         * gdk/x11/gdkwindow-x11.c:
10979         New function gdk_window_get_mwm_hints().
10980         Implemented gdk_window_get_decorations.
10981
10982         * docs/reference/gdk/tmpl/windows.sgml:
10983         * docs/reference/gdk/gdk-sections.txt:
10984         Added gdk_window_get_decorations docs.
10985         
10986 2001-01-08  Alexander Larsson  <alla@lysator.liu.se>
10987
10988         * gdk/linux-fb/gdkwindow-fb.c (_gdk_fb_window_find_focus,
10989         gdk_fb_window_find_focus, gdk_fb_send_focus_change,
10990         gdk_fb_window_send_crossing_events):
10991         Possibly send focus events when the mouse moves from one
10992         window to another.
10993
10994 2001-01-07  Tor Lillqvist  <tml@iki.fi>
10995
10996         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title,
10997         gdk_window_new): Adapt calls to g_{locale,filename}_{to,from}_utf8
10998         to match current API.
10999
11000         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): If a secret
11001         environment variable is set, don't call g_error when on a
11002         palettized (PseudoColor) display. Some people want to use GTK+ 
11003         in 256-colour mode even though works only partially.
11004
11005         * gdk/gdk.def
11006         * gtk/gtk.def
11007         * gtk/makefile.mingw.in: Update.
11008
11009 2001-01-05  Havoc Pennington  <hp@redhat.com>
11010
11011         * tests/testtreeview.c: hack on this a bit
11012
11013         * gtk/gtktextlayout.c (gtk_text_layout_class_init):
11014         s/GTK_RUN_LAST/G_SIGNAL_RUN_LAST
11015
11016         * gtk/gtktreemodelsimple.h (GTK_IS_TREE_MODEL_SIMPLE_CLASS): 
11017         was spelled incorrectly
11018         (GTK_IS_TREE_MODEL_SIMPLE): ditto
11019
11020         * gtk/gtktreeview.c (gtk_tree_view_set_headers_clickable): rename
11021         from gtk_tree_view_set_headers_active   
11022
11023         * gtk/gtktexttag.c:
11024         (gtk_text_tag_get_property): handle PROP_DIRECTION
11025         (gtk_text_tag_set_property): g_object_notify when we toggle the _set
11026         properties, bug 40235
11027
11028         * gtk/gtktextiter.c (gtk_text_iter_forward_to_delimiters): rename
11029         forward_to_line_end
11030
11031 Fri Jan  5 16:16:29 2001  Owen Taylor  <otaylor@redhat.com>
11032
11033         * gtk/{gtkcalender.c,gtkfilesel.c,gtkimcontext.c},
11034         modules/input/gtkimcontextxim.c: Adapt to new prototypes
11035         for unicode,locale,filename conversion functions.
11036
11037 2001-01-05  Havoc Pennington  <hp@redhat.com>
11038
11039         * gtk/gtktextiter.c (gtk_text_iter_ends_line): this function was
11040         broken if called on the first position in the buffer.
11041
11042         * gtk/gtktextlayout.c (line_display_index_to_iter): fix
11043         forward_to_delimiters to be called only if we aren't already at
11044         the delimiters.
11045
11046 2001-01-05  Havoc Pennington  <hp@redhat.com>
11047
11048         * demos/gtk-demo/main.c (create_tree): Oops, that didn't link. Fix.
11049
11050 2001-01-05  Alexander Larsson  <alexl@redhat.com>
11051
11052         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_drawable_finalize): free
11053         colormap in here. Sync from X port.
11054         (gdk_fb_set_colormap): allow the colormap to be NULL if you like.
11055         Sync from X port.
11056         (gdk_fb_clip_region): Comment out g_warning about empty clip region.
11057         This happens now and then, and i don't think it is a bug.
11058         (gdk_fb_draw_polygon): Correctly add extra point if startpoint
11059         != endpoint.
11060         (gdk_fb_draw_lines): Don't draw dashed lines if line_style is
11061         GDK_LINE_SOLID.
11062
11063         * gdk/linux-fb/gdkfont-fb.c: Return bogus GdkFont that has
11064         some of the fields filled in at least.
11065
11066         * gdk/linux-fb/miwideline.c: The widths argument to miLineArcI, and
11067         miLineArcD is no more, remove it from the function definition.
11068
11069 2001-01-04  Havoc Pennington  <hp@redhat.com>
11070
11071         * gtk/gtktreeselection.c (gtk_tree_selection_get_tree_view): add
11072         this
11073
11074         * gtk/gtktreemodel.h (struct _GtkTreeIter): rename fields to
11075         user_data instead of tree_node
11076
11077         * gtk/gtktreeprivate.h (TREE_VIEW_COLUMN_WIDTH): rename from
11078         TREE_VIEW_COLUMN_SIZE
11079
11080         * gtk/gtktreeviewcolumn.h (struct _GtkTreeViewColumn): rename
11081         "size" field to "width" finishes bug 40061
11082
11083         * gtk/gtkcellrenderer.h: Use GtkCellRendererState instead of guint
11084         for bitfields, bug 40268
11085
11086 2001-01-04  Havoc Pennington  <hp@redhat.com>
11087
11088         Rename some stuff:
11089         
11090         s/gtk_tree_view_column_set_size/gtk_tree_view_column_set_width/g;
11091
11092         s/GtkModelSimple/GtkTreeModelSimple/g;
11093         s/GTK_MODEL_SIMPLE/GTK_TREE_MODEL_SIMPLE/g;
11094         s/gtk_model_simple/gtk_tree_model_simple/g;
11095         s/gtkmodelsimple/gtktreemodelsimple/g;
11096
11097         s/gtk_tree_view_column_set_header_active/gtk_tree_view_column_set_header_clickable/g;
11098
11099         s/GtkTreeViewColumnType/GtkTreeViewColumnSizing/g;
11100         s/column_set_col_type/column_set_sizing/g;
11101
11102         s/GtkTreeSelectionType/GtkTreeSelectionMode/g;
11103         s/gtk_tree_selection_set_type/gtk_tree_selection_set_mode/g;
11104
11105         s/GtkCellRendererType/GtkCellRendererState/g;
11106         
11107         * gtk/gtkcellrenderertoggle.c: remove _ macro, include gtkintl.h
11108         (gtk_cell_renderer_toggle_class_init): change "state" property to
11109         "active", to match GtkToggleButton
11110         (gtk_cell_renderer_toggle_get_active): new function, bug
11111         40269
11112         (gtk_cell_renderer_toggle_set_active): new function
11113         (gtk_cell_renderer_toggle_set_property): route changes to toggle
11114         state through gtk_cell_renderer_set_active
11115
11116 Thu Jan  4 15:46:18 2001  Jonathan Blandford  <jrb@redhat.com>
11117
11118         * gtk/gtkmodelsimple.c: Changed a bunch of boxed types to pointers
11119         temporarily until they work again.  Brought up to date with
11120         changes in the model.
11121         * gtk/gtkmodelsimple.h: Brought up to date with changes in the
11122         model.
11123
11124 2001-01-04  Havoc Pennington  <hp@redhat.com>
11125
11126         * gtk/gtktextlayout.c (line_display_index_to_iter): if index is
11127         equal to the line length, then position iterator before paragraph 
11128         separators. Fixes crash reported by Mikael Hermansson when
11129         pressing left arrow from the start of a line.   
11130
11131         * gtk/gtktextiter.c (iter_set_from_byte_offset): Add g_error
11132         about byte indexes off the end
11133         (iter_set_from_char_offset): add g_error about char offsets
11134         off the end
11135
11136 2001-01-03  Havoc Pennington  <hp@redhat.com>
11137
11138         * gtk/gtktextbtree.c: Adapt to uscore-ification of gtktextiterprivate
11139
11140         * gtk/gtktextdisplay.c (gtk_text_layout_draw): remove use 
11141         of private functions; remove inclusion of private headers.
11142
11143         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_at_line): Add this 
11144         function, so we don't need private functions in gtktextdisplay.c
11145
11146         * gtk/gtktextiterprivate.h: underscore-ification
11147
11148         * gtk/gtkwidget.c: Clean up a bunch of docs that said "INTERNAL"
11149         to instead say "only useful to implement widgets"
11150
11151         * gtk/gtkenums.h (GtkMovementStep): Rename GTK_MOVEMENT_CHARS,
11152         GTK_MOVEMENT_POSITIONS to GTK_MOVEMENT_LOGICAL_POSITIONS,
11153         GTK_MOVEMENT_VISUAL_POSITIONS. Resolves bug 40249.
11154
11155         * gdk/x11/gdkwindow-x11.c (gdk_window_impl_x11_set_colormap):
11156         This function was completely broken
11157
11158         * gtk/testtext.c (line_numbers_expose): use gtk_paint_layout
11159
11160         * gtk/gtkvscale.c (gtk_vscale_draw_value): use gtk_paint_layout
11161
11162         * gtk/gtkvruler.c (gtk_vruler_draw_ticks): use gtk_paint_layout
11163
11164         * gtk/gtklabel.c (gtk_label_expose): use gtk_paint_layout
11165
11166         * gtk/gtkhscale.c (gtk_hscale_draw_value): use gtk_paint_layout
11167
11168         * gtk/gtkhruler.c (gtk_hruler_draw_ticks): use gtk_paint_layout
11169
11170         * gtk/gtkcellrenderertext.c (gtk_cell_renderer_text_render): use
11171         gtk_paint_layout
11172
11173         * gtk/gtkaccellabel.c (gtk_accel_label_expose_event): use
11174         gtk_paint_layout
11175
11176         * gtk/gtkstyle.h: Add draw/paint expander to draw tree expanders.
11177         Progress on bug 40103. Add draw_layout to draw a PangoLayout.
11178         (struct _GtkStyleClass): Remove draw_cross, draw_oval, draw_ramp,
11179         which were not implemented.     
11180
11181         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): Add
11182         insert_pixbuf signal. Rename delete_text to delete_range since it
11183         also deletes pixbufs and child anchors. This almost closes bug
11184         40245 (still need to deal with child anchors)
11185
11186         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Add
11187         insert_pixbuf, change signal names as appropriate, change types of
11188         signals taking marks/tags to have the specific type, not just
11189         G_TYPE_OBJECT
11190         
11191         * gtk/gtkmain.c (gtk_get_current_event_state): Add this function; 
11192         closes bug 40051
11193
11194         * gtk/gtkoptionmenu.c (gtk_option_menu_set_history): clean up
11195         unnecessary remove_contents() call
11196         (gtk_option_menu_class_init): add a "changed" signal, closes
11197         bug 40039
11198         (gtk_option_menu_update_contents): emit "changed" if the 
11199         active menu item changes
11200
11201         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done): fix bad
11202         cast to GtkObject, reported by Jonas Borgstrom
11203         (gdk_pixbuf_loader_finalize): don't close the loader on finalize;
11204         we can't do stuff with side effects in finalize. Instead, spew a
11205         warning if the loader isn't closed.
11206
11207         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_finalize): free
11208         colormap in here, non-X ports probably need to sync to this change
11209
11210         * gdk/x11/gdkdrawable-x11.c (gdk_x11_set_colormap): remove 
11211         assertion that colormap != NULL, you can set the colormap to NULL
11212         if you like.
11213         
11214         * Makefile.am: remove gtk-config-2.0
11215
11216         * configure.in: Use pkg-config to locate GLib. Remove
11217         separated-out GMODULE_LIBS, GMODULE_CFLAGS; these were not used,
11218         and the gmodule libs/cflags were in GLIB_LIBS GLIB_CFLAGS anyhow.
11219         Use pkg-config to locate Pango. Output correct Pango libs to
11220         gdk-2.0.pc.in. Fix test for FREETYPE_CONFIG (typo fix).
11221
11222         * Makefile.am (pkgconfig_DATA): install only target-specific pc
11223         files
11224         (install-data-local): symlink gtk+-2.0.pc and gdk-2.0.pc to the
11225         X11 pc files
11226
11227         * gtk+-2.0.pc.in (Requires): require the GDK for the current target
11228         unref from here
11229
11230 2001-01-03  Alexander Larsson  <alla@lysator.liu.se>
11231
11232         * configure.in:
11233         Change GTK_NO_CHECK_CASTS to G_DISABLE_CAST_CHECKS.
11234
11235 Tue Jan  2 16:23:05 2001  Owen Taylor  <otaylor@redhat.com>
11236
11237         * gtk/gtktextlayout.c
11238         (gtk_text_layout_move_iter_to_previous_line): Fix unitialized
11239         variable when moving back onto a single line.
11240
11241 2001-01-01  Havoc Pennington  <hp@redhat.com>
11242
11243         * gtk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
11244
11245         * gdk/Makefile.am (LDFLAGS): add @LIBTOOL_EXPORT_OPTIONS@
11246
11247         * configure.in (LIBTOOL_EXPORT_OPTIONS): define
11248         LIBTOOL_EXPORT_OPTIONS with options to control symbol export
11249
11250 2001-01-01  Havoc Pennington  <hp@redhat.com>
11251
11252         * gtk/gtktexttagprivate.h: uscore-prepend all the stuff in here.
11253
11254         * gtk/gtk-boxed.defs (GtkTextAttributes): Add boxed type for 
11255         GtkTextAttributes
11256
11257         * gtk/gtktexttag.c: Fix up GtkTextAttributes copying to close bug 
11258         #40246
11259         (gtk_text_attributes_copy_values): rename from 
11260         gtk_text_attributes_copy
11261         (gtk_text_attributes_copy): a more standard GTK copy function, 
11262         which returns a new object
11263
11264 2001-01-01  Havoc Pennington  <hp@redhat.com>
11265
11266         * gtk/gtktreeview.c: Adapt to GtkTreeSelection changes
11267         
11268         * gtk/gtktreeselection.c (_gtk_tree_selection_set_tree_view):
11269         don't fill in tree_view->priv->selection, kind of an unexpected
11270         side effect
11271
11272         * gtk/gtkcellrenderertext.c: Remove definition of _ and include
11273         gtkintl.h
11274         
11275         * gtk/gtkcellrenderer.c: Remove definition of _ and include
11276         gtkintl.h
11277         (gtk_cell_renderer_get_property): remove calls to g_value_init
11278
11279         * gtk/gtkcellrendererpixbuf.c: Remove definition of _ and include
11280         gtkintl.h
11281
11282         * gtk/gtkcellrenderertextpixbuf.c: Remove definition of _ macro
11283         and include gtkintl.h
11284         (gtk_cell_renderer_text_pixbuf_class_init): remove spaces from
11285         property names
11286
11287         * gtk/gtktreeselection.c (_gtk_tree_selection_new): rename, return
11288         GtkTreeSelection
11289         (_gtk_tree_selection_new_from_with_view): rename, return
11290         GtkTreeSelection
11291         (_gtk_tree_selection_set_tree_view): rename with uscore
11292         (gtk_tree_selection_get_selected): fill in the "model" out param
11293         first, so it gets filled in even if we return at the top of the 
11294         function
11295         (gtk_tree_selection_real_select_all): add a comment and an else{}
11296         to clarify this a bit
11297         (gtk_tree_selection_real_unselect_all): add the same else{}
11298
11299         * gtk/gtktreeselection.h: Rename new, new_with_tree_view, and
11300         set_tree_view to have underscore prefixes, move them to the
11301         private header, fix return type of new_with_tree_view
11302         (struct _GtkTreeSelection): mark struct
11303         fields private  
11304
11305         * gtk/gtktreemodel.c (gtk_tree_model_get_flags): return
11306         GtkTreeModelFlags, not a guint
11307         (gtk_tree_path_prev): return gboolean not gint
11308         (gtk_tree_path_up): return gboolean not gint
11309
11310         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): make get_flags
11311         return GtkTreeModelFlags, not a guint
11312
11313         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_finalize): check
11314         that child model is non-null before unrefing it
11315         (g_value_int_compare_func): make this a qsort compare func, not 
11316         a boolean predicate
11317
11318         * gtk/gtktreemodelsort.h: rename gtk_tree_model_set_sort_column,
11319         (add -umn to the end), and mark it unimplemented
11320         (gtk_tree_model_sort_resort): remove, this wasn't implemented, and 
11321         I don't see what it's for - doesn't the model always sort itself?
11322         (gtk_tree_model_sort_set_compare): this had the wrong signature
11323
11324         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_set_attributes):
11325         Fix the docs to say that it destructively replaces existing
11326         attributes (previously said that it added attributes).
11327         (gtk_tree_view_column_set_visible): canonicalize bool before
11328         equality testing. Also, check for realization before
11329         hiding/showing the tree_column->window; if this window could exist
11330         before realization, then it's busted and needs fixing, we can't 
11331         create GDK resources pre-realization. Also, remove
11332         superfluous queue_resize(), since set_size() does that for us.
11333         (gtk_tree_view_column_set_col_type): check realization before 
11334         using tree_column->window
11335
11336         * gtk/gtktreedatalist.c: fix filename in copyright notice
11337
11338 2000-12-31  Havoc Pennington  <hp@pobox.com>
11339
11340         * gtk/gtktextview.c: Rearrange all the
11341         scroll-while-dragging-or-selecting code to be different, not
11342         necessarily better. ;-)
11343         (gtk_text_view_scroll_to_mark): Change this
11344         function to take within_margin as a fraction instead of a pixel
11345         value, and to take alignment arguments (indicating where to align 
11346         the mark inside the visible area)
11347         
11348         * gtk/testtextbuffer.c (fill_buffer): fix bad cast of GtkTextTag
11349         to GtkObject
11350
11351         * gtk/gtktextiter.c (gtk_text_iter_set_line_offset): change
11352         behavior so that offsets past the end of the line are not 
11353         allowed, and an offset equal to the line length moves the iterator
11354         to the next line
11355         (gtk_text_iter_set_line_index): make parallel change
11356         (gtk_text_iter_get_bytes_in_line): add this function
11357         
11358         * gtk/gtktextbtree.c (_gtk_text_line_byte_locate): change handling
11359         of byte indexes off the end of the line; byte index at the end of
11360         the line now returns FALSE and doesn't fill in the requested
11361         values, byte index past the end of the line is an error.  Also,
11362         don't allow -1 offset anymore, since its meaning is unclear.
11363
11364         This change exposes some bug in visual cursor motion, where we
11365         end up with a huge invalid byte index; needs fixing. Symptom of 
11366         bug is a crash when you hit up arrow.
11367         
11368         (_gtk_text_line_char_locate): match the change to byte_locate
11369
11370         * gtk/gtktextiter.c (find_by_log_attrs): Handle iteration backward
11371         from start of line properly. fixes bug reported by Mikael
11372         Hermansson where backspace would delete all text before the
11373         cursor.
11374
11375 2000-12-30  Tor Lillqvist  <tml@iki.fi>
11376
11377         * gdk/win32/gdkwindow-win32.c
11378         (gdk_window_impl_win32_get_visible_region): New function, as in
11379         the X11 backend.
11380         (gdk_window_new, gdk_window_set_title): Use g_locale_from_utf8()
11381         instead of duplicating the same code here.
11382
11383         * gdk/win32/gdkwin32.h (GDK_COLORMAP_PRIVATE_DATA): Use
11384         GDK_COLORMAP macro.
11385
11386         * gdk/win32/gdkevents-win32.c (gdk_event_funcs): Use NULL as
11387         destroy function.
11388         (gdk_event_translate): Use GDK_COLORMAP_PRIVATE_DATA to correctly
11389         access that.
11390
11391         * gtk/gtk.def: Update.
11392
11393         * gtk/makefile.mingw.in: Use glib-genmarshal from $(GLIB)/gobject.
11394
11395 2000-12-30  Havoc Pennington  <hp@pobox.com>
11396
11397         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Set the system
11398         colormap on input only windows, to avoid special cases all over
11399         the code for these windows.
11400
11401 2000-12-26  Tor Lillqvist  <tml@iki.fi>
11402
11403         * gdk/win32/gdkvisual-win32.c (gdk_visual_init): Call g_error if
11404         we are on a palettized display ("PseudoColor" in X11), as the code
11405         for that doesn't work anyway, and never has.
11406
11407 2000-12-22  Alexander Larsson  <alexl@redhat.com>
11408
11409         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_io):
11410         Don't use isprint() for chars > 255.
11411
11412 2000-12-21  Havoc Pennington  <hp@redhat.com>
11413
11414         * tests/testtreeview.c: more work
11415
11416 2000-12-21  Alexander Larsson  <alexl@redhat.com>
11417
11418         * docs/README.linux-fb:
11419         Update the docs to the new pangoft2 way.
11420
11421 2000-12-21  Alexander Larsson  <alexl@redhat.com>
11422
11423         * configure.in:
11424         For linux-fb get the pangoft2 cflags and libs. This needs a recent
11425         pango version.
11426         Remove modules/linux-fb/Makefile.
11427
11428         * gdk/linux-fb/gdkdrawable-fb2.c:
11429         Render glyphs using freetype.
11430
11431         * gdk/linux-fb/gdkfb.h:
11432         Add new fb-specific functions needed for managing windows.
11433
11434         * gdk/linux-fb/gdkmain-fb.c:
11435         Remove gdk_font_init/fini() calls.
11436
11437         * gdk/linux-fb/gdkpango-fb.c:
11438         Remove old implementation. Use pangoft2 instead.
11439
11440         * gdk/linux-fb/gdkprivate-fb.h:
11441         Remove PangoFBFont and related stuff.
11442
11443         * gdk/linux-fb/gdkwindow-fb.c:
11444         Implement drawable->get_visible_region.
11445         Implement support for _gdk_window_set_child_handler () and
11446         _gdk_window_get_decorations().
11447
11448         * modules/Makefile.am:
11449         Remove linux-fb subdir.
11450
11451         * modules/linux-fb/*:
11452         Removed all.
11453         
11454 2000-12-20  Jonathan Blandford  <jrb@redhat.com>
11455
11456         * gtk/gtkcellrenderer*.c (::get_property): remove g_value_init
11457         calls, as they are no longer needed.
11458
11459         * gtk/gtktreemodelsort.c: Fix up the comparison code.
11460         
11461         * gtk/gtktreemodel.h: Start work on ::reordered signal.  Need to
11462         figure out how to emit a signal on an interface.
11463
11464 2000-12-20  Havoc Pennington  <hp@redhat.com>
11465
11466         * tests: new directory to contain tests, gtk/test* should move
11467         here sometime (with appropriate on-cvs-server hackery)
11468
11469         * tests/testtreeview.c, tests/Makefile.am: a test
11470         
11471         * configure.in (AC_OUTPUT): add tests/Makefile
11472
11473         * gtk/gtktexttag.c (gtk_text_tag_get_property): Add "invisible"
11474         and "invisible_set" which were missing
11475
11476         * gtk/gtkrbtree.h: some cheesy indentation fix
11477         
11478 2000-12-20  Alexander Larsson  <alexl@redhat.com>
11479
11480         * gtk/gtkinvisible.c (gtk_invisible_realize):
11481         Attach the style to the window so that the style it is not
11482         leaked when unrealizing the window.
11483
11484 2000-12-18  Havoc Pennington  <hp@redhat.com>
11485
11486         * gtk/gtktextview.c (gtk_text_view_delete_from_cursor): do
11487         begin/end user action where appropriate
11488         (gtk_text_view_commit_handler): add begin/end user action
11489
11490         * gtk/gtktextbuffer.c: add begin/end user action signals, and
11491         bracket interactive operations with begin/end user action pair.
11492         
11493         * gtk/gtktextbuffer.h (struct _GtkTextBufferClass): remove
11494         "interactive" arg from insert_text and delete_text signals.
11495         Add begin_user_action, end_user_action signals
11496         (gtk_text_buffer_begin_user_action): 
11497         (gtk_text_buffer_end_user_action): New functions to delimit 
11498         a user-visible action
11499
11500         * gtk/gtkmarshal.list: update to reflect changes to gtktextbuffer
11501         signals.
11502         
11503 2000-12-18  Havoc Pennington  <hp@redhat.com>
11504
11505         * gdk/gdkevents.c (gdk_event_get_state): wow, that implementation
11506         was pretty non-working.
11507
11508         * gtk/testtext.c (fill_file_buffer): make this a bit more robust
11509         by passing the length to g_utf8_validate().
11510
11511 2000-12-16  Havoc Pennington  <hp@pobox.com>
11512
11513         * gtk/gdk-pixbuf-loader.h, gtk/gdk-pixbuf-loader.c: 
11514         Port to GObject, can go back in gdk-pixbuf after setting up 
11515         a gdk-pixbuf-marshal.h header over there.
11516
11517         * gtk/gtktreeview.c: s/SEPERATOR/SEPARATOR/g;
11518         (gtk_tree_view_class_init): specify GTK_TYPE_ADJUSTMENT for signal
11519         args
11520         (gtk_tree_view_init): don't unset GTK_NO_WINDOW, it shouldn't be
11521         set
11522         (gtk_tree_view_realize_buttons): don't gtk_widget_show() buttons
11523         here, do it when we create the buttons later
11524         (gtk_tree_view_realize_buttons): add some g_return_if_fail 
11525         (gtk_tree_view_map): paranoia checks that column->button is shown 
11526         and unmapped
11527         (gtk_tree_view_size_request): only request visible children.
11528         Move header size calculation in here, for cleanliness, and 
11529         to maintain invariants for child widgets if we eventually 
11530         let users set different children inside the buttons
11531         (gtk_tree_view_map_buttons): factor out code to map buttons,
11532         since it was being called several times
11533         (gtk_tree_view_size_allocate_buttons): move_resize the drag
11534         windows instead of just moving them; their height may change 
11535         if we allow random widgets in there, or the theme changes.
11536         (gtk_tree_view_size_allocate): move button size allocation 
11537         above emitting the scroll signals, to ensure a sane state when we
11538         hit user code
11539         (gtk_tree_view_button_release): remove queue_resize after
11540         tree_view_set_size(), set_size() will handle any resize queuing
11541         that's needed
11542         (gtk_tree_view_focus_in): just queue a draw, don't fool with
11543         draw_focus goo
11544         (gtk_tree_view_focus): use gtk_get_current_event() and
11545         gdk_event_get_state()
11546         (gtk_tree_view_deleted): don't queue_resize() after calling set_size()
11547         (gtk_tree_view_build_tree): fix a "if (foo); {}" bug - i.e. remove
11548         semicolon
11549         (gtk_tree_view_create_button): show the button here
11550         (gtk_tree_view_button_clicked): actually emit the clicked signal
11551         on the column
11552         (_gtk_tree_view_set_size): return right away if the size is
11553         unchanged, as a cheesy optimization
11554         (gtk_tree_view_setup_model): rename set_model_realized to 
11555         setup_model to match the flag that indicates whether we've 
11556         called it
11557         (gtk_tree_view_get_hadjustment): create adjustment if it doesn't
11558         exist, because set_scroll_adjustment does that and it shouldn't
11559         matter what order you call these in
11560         (gtk_tree_view_get_vadjustment): ditto
11561         (gtk_tree_view_set_headers_visible): canonicalize the bool, 
11562         for paranoia
11563         (gtk_tree_view_set_headers_visible): call
11564         gtk_tree_view_map_buttons() instead of using cut-and-paste code
11565         (gtk_tree_view_append_column): clarify whether the return value
11566         is the count of columns before or after, and do the increment 
11567         separately from the return statement so you can tell from the code.
11568         (gtk_tree_view_remove_column): ditto
11569         (gtk_tree_view_insert_column): ditto
11570         (gtk_tree_view_get_column): remove g_return_if_fail for columns
11571         outside the existing range, the docs say that outside-range
11572         columns are allowed, so we handle them as documented. (Presumably
11573         this allows a nice loop with column != NULL as test.)
11574         (gtk_tree_view_move_to): document what 0.0, 0.5, 1.0 alignments 
11575         mean (left/right/center etc.).
11576         (gtk_tree_view_collapse_all): only queue a draw if we're mapped
11577         (gtk_tree_view_expand_row): add docs
11578         (gtk_tree_view_collapse_row): add docs
11579
11580         * gtk/gtktreeviewcolumn.c (gtk_tree_view_column_clicked): new
11581         function to emit the clicked signal on a column
11582         
11583         * gdk/gdkevents.c (gdk_event_get_state): new function, to get the
11584         state of an event
11585         (gdk_event_get_time): don't treat GDK_SCROLL 
11586         as a button event, remove default case from switch so gcc 
11587         will whine if we don't explicitly handle all event types
11588
11589         * gtk/gtktreeselection.h: added some FIXME 
11590         
11591         * gtk/gtktreeprivate.h (struct _GtkTreeViewPrivate): rename
11592         "columns" to "n_columns" and "column" to "columns" for clarity
11593
11594 2000-12-16  Havoc Pennington  <hp@pobox.com>
11595         
11596         * gtk/gtktextiter.c: General cleanup of the log attr iteration
11597         stuff. This should make e.g. the delete key work again in the
11598         text widget...
11599         (gtk_text_iter_forward_cursor_positions): handle negative count
11600         (gtk_text_iter_backward_cursor_positions): handle negative count
11601         (gtk_text_iter_forward_word_ends): handle negative count
11602         (gtk_text_iter_backward_word_starts): handle negative count
11603
11604         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktexttag.h,
11605         gtk/gtktexttag.c, gtk/gtktexttagtable.h, gtk/gtktexttagtable.c, 
11606         gtk/gtktextbuffer.h, gtk/gtktextbuffer.c: Convert everything to 
11607         GObject. No doubt will cause breakage.
11608
11609         * demos/gtk-demo/textview.c: remove hacks around
11610         non-GObject-ification of the text objects
11611
11612         * demos/gtk-demo/main.c (main): use g_object_set() to manipulate 
11613         the text tag
11614         
11615 2000-12-14  Havoc Pennington  <hp@pobox.com>
11616
11617         * configure.in: only AC_DEFINE(HAVE_XFT) if we actually determined
11618         that we have Xrender
11619
11620 Thu Dec 14 20:22:31 2000  Owen Taylor  <otaylor@redhat.com>
11621
11622         * gdk/{gdkdrawable.[ch],gdkpixmap.c,gdkwindow.c,x11/gdkwindow.c}:
11623         Add two virtualized functions gdk_drawable_get_clip_region - to
11624         get the clip region when drawing.
11625         
11626         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Rewrite to simple
11627         use invalidate_region.
11628
11629         * gdk/gdkwindow.c (gdk_window_invalidate_region): Clip to visible
11630         region.
11631
11632         * acconfig.h configure.in: Check for Xft. For now, assume
11633         that if Xft is found, Pango was compiled with Xft support
11634         as well.
11635
11636         * gdk/gdkcolor.h gdk/x11/gdkcolor-x11.c: Add 
11637         gdk_colormap_query_color().
11638         
11639         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_glyphs): Draw
11640         with Xft if appropriate.
11641
11642         * gdk/x11/gdkpango-x11.c (gdk_pango_context_get): Create
11643         a pangoxft context if we have XFT and the environment
11644         variable GD_USE_XFT is set.
11645         
11646         * gdk/x11/gdkx.h (struct _GdkGCX11): Cache the fg_pixel
11647         and also possibly an XftDraw structure.
11648
11649         * gtk/gtkfontsel.c: Handle the case where the font from the
11650         style doesn't match any of the fonts a bit better.
11651         
11652         * gtk/testgtk.c: Add tabs between directional segments for
11653         hebrew/arabic test. (Not really necessary, just a little
11654         prettier.)
11655
11656 2000-12-14  Havoc Pennington  <hp@redhat.com>
11657
11658         * gtk/testtext.c (fill_file_buffer): fix unicode validation when
11659         reading a file
11660
11661 2000-12-14  Havoc Pennington  <hp@redhat.com>
11662
11663         * gtk/gtktextbtree.c (_gtk_text_btree_validate_line): remove
11664         unused call to get_last_line()
11665
11666         * gtk/gtkobject.c (gtk_object_add_arg_type): add G_TYPE_POINTER
11667         here until boxed is working (and maybe after that - we should
11668         really not gratuitously break old code)
11669
11670         * gtk/gtktexttag.c (gtk_text_tag_class_init): add commented-out
11671         specific types for font_desc and tabs args, move them to
11672         GTK_TYPE_POINTER for now, waiting on g_param_spec_boxed() to get 
11673         fixed. Move GdkColor args to GTK_TYPE_POINTER also.
11674
11675         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): temporarily
11676         use GTK_TYPE_POINTER for signal signatures as a hack-around
11677
11678         * gtk/gtk-boxed.defs: Add boxed types for PangoFontDescription and
11679         PangoTabArray
11680
11681         * gtk/gtktextlayout.c (line_display_iter_to_index): 
11682         make static
11683         (line_display_index_to_iter): make static
11684
11685         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
11686         to marshal a string not a boxed
11687
11688         * gtk/gtkmarshal.list: add marshaller for GtkTextBuffer:insert_text
11689
11690         * gtk/testtext.c (fill_file_buffer): don't use g_utf8_next_char
11691         since the UTF-8 isn't validated yet
11692
11693         * gtk/gtktextsegment.c (char_segment_check_func): don't require
11694         lines to end in '\n'
11695         
11696         * gtk/gtktextview.c (gtk_text_view_move_cursor): update to use
11697         forward_to_delimiters, and grapheme boundaries
11698         (gtk_text_view_delete_from_cursor): properly handle non-newline
11699         delimiters, and grapheme boundaries
11700
11701         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): rename
11702         to gtk_text_iter_forward_to_delimiters, and make it work properly
11703         if empty lines end with a character other than '\n'
11704
11705         * gtk/gtktextiter.h, gtk/gtktextiter.c: Add movement by cursor
11706         position
11707
11708 2000-12-15  Tor Lillqvist  <tml@iki.fi>
11709
11710         * gdk/makefile.{mingw.in,msc} (gdk_OBJECTS): Add gdkkeys.
11711
11712         * gtk/gtk.def
11713         * gdk/gdk.def: Update.
11714
11715         * gdk/win32/gdkmain-win32.c
11716         * gdk/win32/gdkkeys-win32.c: New file. Move some functions from
11717         gdkmain-win32.c here.
11718
11719         * gdk/win32/makefile.mingw.in (all): No need to make
11720         gdk-win32res.o here, the makefile one step up will call us to make
11721         it.
11722
11723         * gdk/win32/makefile.{mingw.in,msc} (gdk_win32_OBJECTS): Add
11724         gdkkeys-win32.
11725
11726         * gdk/win32/gdkcolor-win32.c: Silence gcc -Wall.
11727
11728         * gdk/win32/gdkevents-win32.c (gdk_events_init): Remove leftover
11729         call to g_source_add().
11730
11731         * gdk/win32/gdkgc-win32.c (BitmapToRegion): Plug memory
11732         leak. Thanks to Andreas Kemnade.
11733
11734 2000-12-13  Havoc Pennington  <hp@pobox.com>
11735
11736         * gtk/gtktextbtree.h: Remove double _ in front of some functions
11737
11738         * gtk/gtktext*.[hc]: update accordingly
11739         
11740 2000-12-13  Havoc Pennington  <hp@pobox.com>
11741
11742         * gtk/gtktextbtree.h: Put _ in front of every function in this 
11743         header file
11744
11745         * gtk/gtktext*.[hc]: update to reflect renamed btree functions
11746
11747 2000-12-13  Alex Larsson  <alexl@redhat.com>
11748
11749         * gdk/linux-fb/gdkmouse-fb.c (mouse_devs):
11750         Add support for ps2 intellimouse.
11751
11752         * gdkkeyboard-fb.c:
11753         Move shift-F1 repaint handling to xlate handler only.
11754         
11755         * docs/README.linux-fb:
11756         Add imps2 to docs.
11757         Document the new refresh keys.
11758         
11759 Tue Dec 12 23:46:44 2000  Tim Janik  <timj@gtk.org>
11760
11761         * gtk/stock-icons/Makefile.am: doh, this was broken beyond believe.
11762
11763         * gtk/gtkbox.c: change property types from (u)long to (u)int for
11764         ::position and ::padding.
11765
11766         * gtk/gtkcontainer.c: make ::border_width an INT property.
11767
11768         * gtk/gtkpacker.c: make ::position an INT property.
11769
11770         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_adjustment_changed):
11771         guard against NULL h/v scrollbars, since this is used at construction
11772         time.
11773
11774         * gtk/gtkclist.[hc]: nuked gtk_clist_construct(), implemented
11775         internal gtk_clist_constructor().
11776
11777         * gtk/gtkctree.[hc]: nuked gtk_ctree_construct(), implemented
11778         gtk_ctree_constructor().
11779
11780         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): property
11781         ::pulse_step should use ARG_PULSE_STEP, not ARG_FRACTION.
11782
11783         * docs/reference/Makefile.am: fun stuff, disabled docs generation
11784         again, gtk-scan.c needs to introspec paramspecs, not GtkAgs.
11785
11786         * gtk/gtkwidget.[hc]:
11787         removed gtk_widget_setv(), gtk_widget_getv(), gtk_widget_newv()
11788         and gtk_widget_get().
11789         (gtk_widget_new): use g_object_new_valist().
11790         (gtk_widget_set): use g_object_set_valist().
11791
11792         * gtk/gtkobject.[hc]:
11793         removed gtk_object_arg_get_info(), gtk_object_getv(),
11794         gtk_object_query_args(), gtk_object_newv(),
11795         gtk_object_class_add_signals(),
11796         gtk_object_class_user_signal_new(),
11797         gtk_object_class_user_signal_newv(),
11798         gtk_object_arg_set(), gtk_object_arg_get(),
11799         gtk_object_args_collect(),
11800         gtk_object_default_construct(),
11801         gtk_object_constructed(),
11802         GTK_CONSTRUCTED and GTK_OBJECT_CONSTRUCTED().
11803         removed nsignals, signals and n_args members from GtkObjectClass.
11804         (gtk_object_new): use g_object_new_valist().
11805         (gtk_object_set): use g_object_set_valist().
11806         (gtk_object_get): use g_object_get_valist().
11807         
11808         * gtk/gtkcompat.h: define gtk_object_default_construct().
11809         
11810         * gtk/gtktypeutils.c (gtk_type_new): create constructed objects via
11811         g_object_new().
11812
11813         * gtk/*.c: removed gtk_object_class_add_signals() from class_init()
11814         fucntions, cleaned up method assignments (make sure your structures
11815         are setup properly before calling out). removed all GTK_CONSTRUCTED
11816         hacks ;)
11817
11818 Tue Dec 12 11:52:16 2000  Owen Taylor  <otaylor@redhat.com>
11819
11820         * gtk/gtkclist.c (gtk_clist_optimal_column_width): Fix 
11821         off-by-one error in checks. (Dave Lambert)
11822
11823 2000-12-12  Alexander Larsson  <alexl@redhat.com>
11824
11825         * gdk/linux-fb/gdkkeyboard-fb.c (xlate_close, raw_close):
11826         Don't free gdk_fb_keyboard twice.
11827
11828 Tue Dec 12 08:24:42 2000  Tim Janik  <timj@gtk.org>
11829
11830         * gtk/testgtk.c:
11831         (create_tooltips): 
11832         (create_statusbar): get rid of object_signal:: GtkObject argument uses,
11833         use GObject swapped_signal:: properties instead.
11834
11835         * gtk/gtkcellrenderertoggle.c: 
11836         * gtk/gtkcellrenderertextpixbuf.c: 
11837         * gtk/gtkcellrenderertext.c: 
11838         * gtk/gtkcellrendererpixbuf.c: 
11839         * gtk/gtkcellrenderer.c:
11840         * gtk/gtktreeviewcolumn.c: s/[sg]et_param/[sg]et_property/, fixed
11841         missing warnings for invalid property ids, install properties
11842         with g_object_class_install_property() now.
11843         
11844         * gtk/gtksignal.c:
11845         (gtk_signal_emit): let g_signal_emit_valist() collect the values for us.
11846         
11847 Wed Oct 25 14:17:43 2000  Owen Taylor  <otaylor@redhat.com>
11848         
11849         * gtk/gtkwidget.[ch] (gtk_widget_is_focus): Add a function
11850         to determine if a window is the focus widget within
11851         its toplevel.
11852
11853         * gtk/gtkcontainer.[ch]: Fix the return type of ::focus
11854         to be boolean.
11855
11856         * gtk/gtkcontainer.c (gtk_container_real_focus): Move handling 
11857         of the case where the container CAN_FOCUS to here instead
11858         of having it in each individual move-the-focus place.
11859
11860         * gtk/gtkcontainer.c: Rewrite handling of left-right and up-down
11861         focusing to be geometric in a much more obvious sense. Arrowing
11862         around is still non-intuitive because it isn't perfect and
11863         because entries, etc, grab the arrow keys, but it at least
11864         usually will do what you expect now.
11865         
11866         * gtk/gtknotebook.[ch]: Many cleanups. Moved docs inline in this
11867         file.
11868
11869         * gtk/gtknotebook.c: Change tabs to be a single item in
11870         the focus chain. Make movement of focus on tabs with arrow
11871         keys wrap around.
11872         
11873         * gtk/gtknotebook.c (gtk_notebook_find_child): Add
11874         CHECK_FIND_CHILD macro to give informative error messages
11875         instead of silent returns.
11876
11877         * gtk/gtknotebook.c (gtk_notebook_init): Set the RECEIVES_DEFAULT 
11878         flag since we handle GdkReturn on the tabs.
11879
11880         * gtk/gtknotebook.c (gtk_notebook_expose_tabs): Invalidate
11881         windows rather than sending expose events directly.
11882
11883         * gtk/gtknotebook.[ch] docs/Changes-2.0.txt: Move structure 
11884         definition for GtkNotebookPage into .c file, since it is private.
11885
11886         * gtk/testgtk.c (create_notebook): Add option for 
11887         testing borderless notebook.
11888
11889         * gtk/testgtk.c (page_switch): Removed egregious poking
11890         around in GTK+ internals.
11891
11892         * docs/widget-system.txt: Remove references to GTK_REDRAW_PENDING.
11893
11894         * gtk/gtkclist.[ch]: Remove key press handler, handle focusing
11895         properly through gtk_clist_focus. Make the title headers a
11896         single item in the tab-focus chain, and make left-right wrap
11897         around.
11898
11899         * gtk/gtkwindow.c (gtk_window_focus): Add a custom
11900         focus method so that wrapping around works properly.
11901
11902         * gtk/gtktreeview.c: Remove calls to gtk_container_set_focus_child() - 
11903         that is handled for the widget now. 
11904
11905 Mon Dec 11 11:41:12 2000  Owen Taylor  <otaylor@redhat.com>
11906
11907         * gtk/gtkinvisible.c (gtk_invisible_init): Flag invisible
11908         widgets as TOPLEVEL.
11909
11910         * gtk/gtkwidget.c (gtk_widget_queue_resize): Don't assume
11911         TOPLEVEL widgets are containers.
11912
11913         * gtk/gtkinvisible.h: Remove useless include.
11914
11915 2000-12-11  Havoc Pennington  <hp@redhat.com>
11916
11917         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): 
11918         Handle chopping off \r\n and 0x2029 in addition to \n before
11919         passing to PangoLayout
11920
11921         * gtk/gtkimcontextsimple.c
11922         (gtk_im_context_simple_get_preedit_string): 
11923         return an empty string if no match is pending
11924
11925         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): add
11926         assertion that the returned preedit string was sane
11927
11928         * gtk/gtktext*.[hc], gtk/testtext.c, gtk/testtextbuffer.c:
11929         s/gtk_text_iter_next_char/gtk_text_iter_forward_char/g;
11930         s/gtk_text_iter_prev_char/gtk_text_iter_backward_char/g;
11931
11932 Mon Dec 11 10:02:26 2000  Owen Taylor  <otaylor@redhat.com>
11933
11934         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_finalize): 
11935         Fix up finalizer to chain to its parent.
11936
11937 2000-12-11  Alexander Larsson  <alexl@redhat.com>
11938
11939         * docs/README.linux-fb (GDK_KEYBOARD_TYPE):
11940         Clearified the difference between the keyboard types. Wrote a note
11941         about the magic sysrq key to get out of raw mode.
11942
11943 2000-12-09  James Henstridge  <james@daa.com.au>
11944
11945         * gdk/linux-fb/gdkmouse-fb.c (GdkFBMouseDevice): add prot struct
11946         member to hold masks for detecting the start of a protocol packet.
11947         (mouse_devs): add packet start masks for ps2 and ms device types.
11948         Left the mask for fidmour blank, as I have no idea what it should
11949         be.
11950         (handle_mouse_io): skip bytes until we get to the start of a
11951         packet.  My Logitech mouse seems to be passing an extra NULL pad
11952         byte, and GPM does a similar thing here.
11953         (gdk_fb_mouse_ms_open): changed error message to not say psaux, as
11954         this is the ms mouse driver.
11955         (gdk_fb_mouse_ms_packet): fix up button handling, which was
11956         completely broken except for button1.  It was checking the wrong
11957         bit in the packet for the status of the right mouse button, and
11958         wrongly assuming right == button2 rather than 3.  I fixed that and
11959         also added support for middle button (button2).
11960
11961 2000-12-08  Havoc Pennington  <hp@redhat.com>
11962
11963         * gtk/gtktextbtree.c (gtk_text_btree_insert): fix breakage here
11964         that cause a segfault on text insertion
11965
11966         * gtk/gtktextchild.c (gtk_text_child_anchor_queue_resize): fix 
11967         warning
11968
11969         * gtk/gtktextiter.c (test_log_attrs): use
11970         _gtk_text_buffer_get_line_log_attrs to speed things up a bit
11971
11972         * gtk/gtktextbuffer.c (_gtk_text_buffer_get_line_log_attrs): 
11973         Get log attrs for a line, using a cache stored on the buffer
11974         
11975         * gtk/gtkcolorsel.h (GTK_COLOR_SELECTION_GET_CLASS): fix typo,
11976         reported by Jeff Franks
11977
11978 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11979
11980         * gdk/linux-fb/gdkmouse-fb.c (gdk_fb_mouse_ms_open):
11981         /dev/ttyS0 -> /dev/mouse
11982
11983 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
11984
11985         * gdk/linux-fb/gdkfont-fb.c (gdk_fontset_load):
11986         Added dummy gdk_fontset_load.
11987
11988 2000-12-08  Alexander Larsson  <alexl@redhat.com>
11989
11990         * docs/README.linux-fb:
11991         * docs/Makefile.am:
11992         Initial GtkFB docs.
11993         
11994         * gdk/linux-fb/Makefile.am:
11995         Define GDK_DATA_PREFIX.
11996
11997         * gdk/linux-fb/gdkmain-fb.c:
11998         Fix typo.
11999         Change default display to /dev/fb0.
12000
12001         * gdk/linux-fb/gdkpango-fb.c:
12002         Add $(prefix)/share/fonts/ to font path.
12003         
12004 2000-12-08  Alexander Larsson  <alla@lysator.liu.se>
12005
12006         * gdk/linux-fb/gdkkeyboard-fb.c:
12007         New file containing the abstracted keyboard driver. Most code
12008         taken from gdkinput-ps2.c
12009
12010         * gdk/linux-fb/gdkinput-ps2.c:
12011         Removed file.
12012         
12013         * gdk/linux-fb/Makefile.am:
12014         Added gdkkeyboard-fb.c, removed gdkinput-ps2.c.
12015
12016         * gdk/linux-fb/gdkcolor-fb.c:
12017         display->fb was renamed to display->fb_fd.
12018
12019         * gdk/linux-fb/gdkcursor-fb.c:
12020         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12021
12022         * gdk/linux-fb/gdkinput.c:
12023         Moved gdk_input_init here from gdkinput-ps2.c
12024
12025         * gdk/linux-fb/gdkmain-fb.c:
12026         display->fb was renamed to display->fb_fd.
12027         Now the tty and the console is opened here instead
12028         of in the keyboard driver. Also check GDK_VT to see what
12029         tty to open.
12030         Move gdk_beep () here from gdkinput-ps2.c
12031         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12032
12033         * gdk/linux-fb/gdkmouse-fb.c:
12034         Add header.
12035         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12036         Return correct keyboard modifiers.
12037         GDK_MOUSETYPE -> GDK_MOUSE_TYPE for consistancy
12038
12039         * gdk/linux-fb/gdkprivate-fb.h:
12040         Add tty and vt info to display.
12041         Add orignal modeinfo storage to display
12042         Update global functions
12043
12044         * gdk/linux-fb/gdkwindow-fb.c:
12045         Added gdk_fb_window_find_focus().
12046         gdk_mouse_get_info -> gdk_fb_mouse_get_info
12047
12048 2000-12-07  Havoc Pennington  <hp@pobox.com>
12049
12050         * gdk/x11/gdkkeys-x11.c (gdk_keymap_lookup_key): fix name of 
12051         function, noticed by Alex
12052
12053 2000-12-06  Elliot Lee  <sopwith@redhat.com>
12054
12055         * configure.in: Detect freetype properly
12056
12057         * modules/basic/Makefile.am, gdk/linux-fb/Makefile.am: Make use of
12058         above.
12059
12060 2000-12-06  Alexander Larsson  <alexl@redhat.com>
12061
12062         * gdk/linux-fb/Makefile.am:
12063         Add gdkmouse-fb.c
12064         
12065         * gdk/linux-fb/gdkmouse-fb.c:
12066         New file. Abstracted the mouse drivers a bit.
12067
12068         * gdk/linux-fb/gdkcursor-fb.c:
12069         The cursor hide/show functions was moved here from gdkinput-ps2.c.
12070
12071         * gdk/linux-fb/gdkinput-ps2.c:
12072         Removed old mouse handling code. Moved cursor handling code
12073         to gdkcursor-fb.c, moved gdk_fb_window_send_crossing_events() to
12074         gdkwindow-fb.c. gdk_input_get_mouseinfo was renamed to
12075         gdk_mouse_get_info.
12076
12077         * gdk/linux-fb/gdkmain-fb.c:
12078         Pass NULL pointers for x,y in gdk_mouse_get_info call.
12079
12080         * gdk/linux-fb/gdkprivate-fb.h:
12081         Removed public gdk_fb_find_common_ancestor, added and renamed
12082         functions for the new mouse handling code.
12083
12084         * gdk/linux-fb/gdkwindow-fb.c:
12085         Moved gdk_fb_window_send_crossing_events here. added global
12086         variable gdk_fb_window_containing_pointer. made
12087         gdk_fb_find_common_ancestor static. gdk_input_get_mouseinfo was
12088         renamed to gdk_mouse_get_info.
12089
12090 2000-12-06  Alexander Larsson  <alexl@redhat.com>
12091
12092         * gdk/linux-fb/gdkevents-fb.c:
12093         Update to match latest gmain/gsource changes.
12094
12095         * gdk/linux-fb/gdkinput-ps2.c:
12096         Bogus gdk_keymap_get_entries_for_keycode implementation so that
12097         it links. Will be implemented later.
12098
12099 2000-12-03  Havoc Pennington  <hp@pobox.com>
12100
12101         * gdk/Makefile.am: add gdkkeys.[hc]
12102
12103         * gdk/gdkkeys.h, gdk/gdkkeys.c: Move all the keyval stuff to these
12104         files from gdk.h, gdk.c; add GdkKeymap type and operations on it.
12105
12106         * acconfig.h, configure.in: add checks and command line options
12107         for XKB
12108
12109         * gdk/x11/gdkkeys-x11.c: Implement the above functions
12110         
12111         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Put the keycode
12112         and group in the key event
12113
12114         * gdk/gdkevents.h (struct _GdkEventKey): Add a hardware_keycode
12115         field with the low-level hardware key code, and a group
12116         field with the keyboard group
12117
12118         * gdk/x11/gdkprivate-x11.h: include config.h for HAVE_XKB,
12119         and declare a couple globals used for keymap handling
12120         
12121         * gtk/gtkimcontextsimple.c: Implement ISO 14755 input method,
12122         hold down Shift-Control and type a hex number to get a Unicode 
12123         character corresponding to the hex number
12124         (gtk_im_context_simple_get_preedit_string): Fix cursor position
12125         (return bytes not chars)
12126
12127 2000-12-05  Elliot Lee  <sopwith@redhat.com>
12128
12129         * gdk/gdkcolor.h: Make GdkColor specify element sizes
12130         to avoid waste on 64-bit platforms.
12131
12132 Tue Dec  5 15:49:31 2000  Owen Taylor  <otaylor@redhat.com>
12133
12134         * INSTALL: Fix link to PNG home, remove reference
12135         to fribidi.
12136
12137         * gdk/x11/gdkevents-x11.c: Fix up for new GMain API.
12138         
12139         * gdk/win32/gdkevents-win32.c: Fix up for new GMain API. (Not
12140         tested.)
12141
12142         * gtk/gtkcheckmenuitem.c: Permanently turn on
12143         always_show_toggle.
12144
12145         * gtk/gtkclist.c (gtk_clist_get_pixtext): Allow mask to 
12146         be NULL. (Vladimir Klebanov, #26545)
12147
12148         * gtk/gtkspinbutton.c (gtk_spin_button_insert_text): Fix 
12149         some signed/unsigned comparison problems. (#6510,
12150         David Kaelbling)
12151
12152         * gtk/gtkwidget.[ch] (gtk_widget_is_ancestor): Change
12153         return type to boolean (Oskar Liljeblad, #18648)
12154
12155 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12156
12157         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_display_new):
12158         Remove bogus colormap setting.
12159
12160 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12161
12162         * gdk/linux-fb/gdkcolor-fb.c:
12163         More complete colormap handling. Now GdkRGB work in 8 bpp modes.
12164
12165         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_image):
12166         Must set colormap.
12167         
12168 Tue Dec  5 13:17:53 GMT 2000  Tony Gale <gale@gtk.org>
12169
12170         * docs/tutorial/gtk-tut.sgml: DND updates
12171
12172 2000-12-05  Alexander Larsson  <alla@lysator.liu.se>
12173
12174         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12175         Remove old debug g_warning().
12176         (gdk_fb_draw_drawable): The src argument can be either a wrapper
12177         or an implementation, just pass the implementation to draw_drawable_2.
12178         
12179         * gdk/linux-fb/gdkprivate-fb.h:
12180         Added GDK_IS_DRAWABLE_IMPL_FBDATA()
12181
12182         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12183         clear and invalidate area when window is destroyed.
12184         (send_map_events): Remove old commented out code.
12185
12186 2000-12-05  Alexander Larsson  <alexl@redhat.com>
12187
12188         * gdk/linux-fb/gdkpango-fb.c:
12189         Use italic instead of oblique in font aliases.
12190         
12191         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_fill_span_generic,
12192         _gdk_fb_gc_calc_state): Support GDK_XOR, add g_warning for
12193         other unsupported functions.
12194
12195 2000-12-04  Havoc Pennington  <hp@redhat.com>
12196
12197         * gtk/gtkpaned.c (gtk_paned_expose): fix this to be sane
12198
12199         * gtk/gtkvpaned.c (gtk_vpaned_expose): Add an expose handler
12200
12201         * gtk/gtkhpaned.c (gtk_hpaned_expose): Add an expose handler
12202
12203         * gtk/gtknotebook.c (gtk_notebook_draw_tab): put in a temporary 
12204         hack to avoid infinite loops (synthetic expose event) - 
12205         Owen has more appropriate fixes in a branch he'll check in later.
12206
12207         * gtk/gtktextiter.c (gtk_text_iter_ends_line): handle paragraph
12208         separator, CR, and CRLF as line ends
12209
12210         * gtk/gtktextbtree.c (gtk_text_btree_insert): on insertion, break
12211         into lines using pango_find_paragraph_boundary(); other bits of
12212         the widget are still going to be broken if the boundary isn't '\n'
12213         though
12214
12215 2000-12-04  Alexander Larsson  <alexl@redhat.com>
12216
12217         * gdk/linux-fb/gdkfont-fb.c (gdk_text_width): Divide size by 2, not
12218         multiply.
12219
12220         * gdk/linux-fb/gdkpango-fb.c:
12221         Copied some 26.6 scaling macros from pango to clean up the rounding.
12222         (pango_fb_font_get_glyph_info): Correct sign on x value.
12223
12224         * gdk/linux-fb/gdkprivate-fb.h:
12225         Removed unreferenced external functions.
12226
12227         * modules/linux-fb/Makefile.am: Use ` instead of '.
12228
12229         * modules/linux-fb/basic.c:
12230         Remove dead code. In particular the dummy lang engine which broke all
12231         pango layouts in GtkFB. Don't include tables-big.i anymore.
12232
12233         * modules/linux-fb/tables-big.i:
12234         Upgrade to latest version from pango. Left for reference, basic_ranges
12235         moved to basic.c.
12236         
12237 2000-12-04  Havoc Pennington  <hp@redhat.com>
12238
12239         Fix bugs Alex found:
12240         
12241         * gtk/gtktooltips.c (gtk_tooltips_force_window): nuke connection
12242         to "draw"
12243
12244         * gtk/gtkdnd.c (gtk_drag_highlight): nuke connection to "draw"
12245
12246         * gtk/gtkcolorsel.c (palette_new): nuke connection to "draw"
12247
12248         * gtk/gtklistitem.c (gtk_list_item_expose): Put the old _draw() 
12249         implementation in here, apparently the expose() implementation was
12250         dead code.
12251
12252 2000-12-04  Alexander Larsson  <alexl@redhat.com>
12253
12254         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12255         Return positive descent.
12256
12257 2000-12-02  Havoc Pennington  <hp@pobox.com>
12258
12259         * gtk/gtkwidget.h (struct _GtkWidgetClass): Remove "draw" virtual
12260         method and signal
12261         
12262         * gtk/gtkwidget.c (gtk_widget_draw): Now just queues a draw then
12263         calls gdk_window_process_updates() to push the exposes through
12264         (gtk_widget_class_init): No more draw signal, no
12265         gtk_widget_real_draw()  
12266         
12267         * gtk/gtkbin.c (gtk_bin_draw): remove
12268
12269         * gtk/gtkbox.c (gtk_box_draw): remove
12270
12271         * gtk/gtkbutton.c (gtk_button_draw): remove
12272
12273         * gtk/gtkcalendar.c (gtk_calendar_draw): remove
12274
12275         * gtk/gtkcheckbutton.c (gtk_check_button_draw): remove
12276
12277         * gtk/gtkcheckmenuitem.c (gtk_check_menu_item_draw): remove
12278
12279         * gtk/gtkclist.c (gtk_clist_draw): remove
12280
12281         * gtk/gtkentry.c (gtk_entry_draw): remove
12282
12283         * gtk/gtkeventbox.c (gtk_event_box_draw): remove
12284
12285         * gtk/gtkfixed.c (gtk_fixed_draw): remove
12286
12287         * gtk/gtkframe.c (gtk_frame_draw): remove
12288
12289         * gtk/gtkhandlebox.c (gtk_handle_box_draw): remove
12290
12291         * gtk/gtkhpaned.c (gtk_hpaned_draw): remove
12292
12293         * gtk/gtklayout.c (gtk_layout_draw): remove
12294
12295         * gtk/gtklist.c (gtk_list_draw): remove
12296
12297         * gtk/gtklistitem.c (gtk_list_item_draw): remove
12298
12299         * gtk/gtkmenu.c (gtk_menu_draw): remove
12300
12301         * gtk/gtkmenubar.c (gtk_menu_bar_draw): remove
12302
12303         * gtk/gtkmenuitem.c (gtk_menu_item_draw): remove
12304
12305         * gtk/gtknotebook.c (gtk_notebook_draw): remove
12306
12307         * gtk/gtkoptionmenu.c (gtk_option_menu_draw): remove
12308
12309         * gtk/gtkpacker.c (gtk_packer_draw): remove
12310
12311         * gtk/gtkrange.c (gtk_range_draw): remove
12312
12313         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_draw): remove
12314
12315         * gtk/gtkspinbutton.c (gtk_spin_button_draw): remove
12316
12317         * gtk/gtktable.c (gtk_table_draw): remove
12318
12319         * gtk/gtktearoffmenuitem.c (gtk_tearoff_menu_item_draw): remove
12320
12321         * gtk/gtktext.c (gtk_text_draw): remove
12322
12323         * gtk/gtktextview.c (gtk_text_view_draw): remove
12324
12325         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): remove
12326
12327         * gtk/gtktoolbar.c (gtk_toolbar_draw): remove
12328
12329         * gtk/gtktree.c (gtk_tree_draw): remove
12330
12331         * gtk/gtktreeitem.c (gtk_tree_item_draw): remove
12332
12333         * gtk/gtktreeview.c (gtk_tree_view_draw): remove
12334
12335         * gtk/gtkviewport.c (gtk_viewport_draw): remove
12336
12337         * gtk/gtkvpaned.c (gtk_vpaned_draw): remove
12338
12339         * gtk/gtkvscale.c (gtk_vscale_draw): remove
12340
12341         * gtk/gtkwindow.c (gtk_window_draw): remove
12342
12343 2000-20-01  Anders Carlsson  <andersca@gnu.org>
12344
12345         * gtk/gtktogglebutton.c (gtk_toggle_button_draw): Fix bug when
12346         a GtkToggleButton is both insensitive and active, it was being
12347         drawn by the GtkButton draw handler which doesn't check the
12348         state. Now it's calling gtk_toggle_button_paint instead.
12349         
12350 2000-12-01  Havoc Pennington  <hp@redhat.com>
12351
12352         * gtk/gtktextdisplay.c (gtk_text_layout_draw): don't create
12353         dangling pointers to the appearance attributes from the 
12354         line display
12355
12356         * gdk/gdkdraw.c (gdk_drawable_get_image): allow negative
12357         width/height to mean "full width/height of drawable"
12358
12359         * gtk/gtktextview.h, gtk/gtktextview.c: Implement double/triple
12360         click to select word/line
12361         
12362         * gtk/gtktextiter.c (test_log_attrs): include paragraph delimiters 
12363         when getting log attrs. Get a slice, so that pixmaps and stuff
12364         are properly handled.
12365
12366         * gtk/gtktextbuffer.c (paste): Fix pasting to work properly if you
12367         paste into the selection (replaces selection now, previously
12368         crashed or added to selection). Reveals longstanding btree bug -
12369         select multiple lines, middle-click on the selection, boom. This
12370         isn't related to my changes though.
12371
12372         * gtk/gtkentry.c (gtk_entry_move_forward_word): Update to reflect
12373         PangoLogAttrs changes
12374         (gtk_entry_move_backward_word): ditto
12375
12376         * gtk/gtktextlayout.h, gtk/gtktextlayout.c: Make the iter motion
12377         functions return bool whether the iter moved onto a
12378         dereferenceable position.
12379  
12380         * gtk/gtktextview.h, gtk/gtktextview.c: Add a bunch of public
12381         functions for motion in terms of display lines.
12382
12383         * gtk/gtktextmark.c (gtk_text_mark_get_buffer): Add function to
12384         get the buffer a mark is inside
12385         
12386 2000-12-01  Alexander Larsson  <alexl@redhat.com>
12387
12388         * gdk/linux-fb/Makefile.am:
12389         * modules/linux-fb/Makefile.am:
12390         Freetype 2 final uses freetype-config
12391
12392         * gdk/linux-fb/gdkpango-fb.c:
12393         Upgrade to use Freetype 2 final.
12394         More flexible support for font aliases, this also fixes a bug with
12395         GtkFontSelector, as the aliases must be visible in the font/family list,
12396         or GtkFontSelector reads uninitialized memory.
12397
12398 2000-11-30 Hidetoshi Tajima  <tajima@eng.sun.com>
12399
12400         * modules/input/gtkimcontextxim.c (setup_im): Add NULL argument to
12401         XGetIMValues to properly terminate variable argument list, and do
12402         NULL return check for ic_values and xim_styles.
12403
12404         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset):
12405         Restore preedit state after XmbResetIC().
12406         
12407         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_get_ic):
12408         XvaCreateNestedList() should take XvaNestedList, but not
12409         XvaNestedList*.
12410
12411         * modules/input/gtkimcontextxim.c (gtk_im_context_xim_reset,
12412         preedit_draw_callback, preedit_caret_callback): Match
12413         "preedit-changed" signal name to "preedit_changed" to be
12414         consistent to the spec.
12415
12416         * gtk/gtkimcontextsimple.c (check_table):
12417         Match "preedit-changed" to "preedit_changed" to be consistent
12418         to the spec.
12419
12420 Thu Nov 30 23:03:04 2000  Owen Taylor  <otaylor@redhat.com>
12421
12422         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Properly handle
12423         gc->clip_region == NULL>
12424
12425 2000-11-30  Tor Lillqvist  <tml@iki.fi>
12426
12427         Changes by Hans Breuer:
12428         
12429         * gdk/win32/gdkwindow-win32.c (gdk_window_set_geometry_hints):
12430         Dont't use negative width and height as max_hints. This fixes
12431         Owen's recent testgtk changes for win32.
12432
12433         * gdk/win32/gdkgc-win32.c (gdk_win32_hdc_get,
12434         gdk_win32_hdc_release): These are exported and may be called with
12435         other drawable types than our GdkDrawableImplWin32 (?).
12436
12437         * gdk/gdkwindow.c: Backing store appears to work on Windows now,
12438         so always #define USE_BACKING_STORE.
12439
12440         * gtk/gtktextdisplay.c (render_layout_line): Use g_print instead
12441         of printf for debugging output.
12442
12443         * gtk/gtktextlayout.c (allocate_child_widgets): Ditto.
12444         
12445         * gtk/gtktextview.c (gtk_text_view_child_allocated): Ditto.
12446
12447         * gtk/gtkmain.h (GTKMAIN_C_VAR): Win32 fix for dllimport
12448         declaration.
12449
12450         * gtk/gtktexttypes.h: Ditto.
12451
12452         * gtk/gtklabel.c (gtk_label_set_markup_with_accel): Return a value
12453         (GDK_VoidSymbol) also if in case of arg check failure.
12454
12455         * gtk/gtkimcontextsimple.c
12456         (gtk_im_context_simple_get_preedit_string): Don't assign cursor
12457         position to the pointer, but to the variable it points to.
12458
12459         * gtk/makefile.msc.in (DEFINES): Define GTK_VERSION.
12460
12461         * gtk/gtk.def: Updates.
12462
12463 2000-11-29  Elliot Lee  <sopwith@redhat.com>
12464
12465         * gtk/gtkmodelsimple.c: Inherits from GTK_TYPE_OBJECT, not
12466         GTK_TYPE_TREE_MODEL.
12467
12468 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12469
12470         * gdk/linux-fb/gdkfont-fb.c (gdk_font_from_description):
12471         Set the size of the font from the description.
12472         (gdk_text_width): Gross hack that calculates the width
12473         of text by text_length * size/2. This is necessary because
12474         GtkLabel does some ugly gtk_string_width call to calculate
12475         an good size.
12476         (linux-fb/gdkprivate-fb.h): Removed unused field FT_Face.
12477
12478 Wed Nov 29 13:39:19 GMT 2000  Tony Gale <gale@gtk.org>
12479
12480         * docs/tutorial/gtk-tut.sgml: DND updates
12481
12482 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12483
12484         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_clear_area):
12485         If you pass width or height == 0 to gdk_window_clear_area they
12486         should be calculated from the window size.
12487
12488 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12489
12490         * gdk/linux-fb/gdkinput-ps2.c (move_pointer): If there is
12491         a grab, but no grab-cursor, use the cursor from the grabbed
12492         window. (gdk_fb_window_send_crossing_events): Send normal
12493         enter/leave notifications if grab and owner_events == TRUE.
12494
12495 2000-11-29  Alexander Larsson  <alexl@redhat.com>
12496
12497         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12498         Do implicit button grabs, even if the window doesn't
12499         want the event.
12500         (gdk_fb_window_send_crossing_events): If there is a
12501         grab, only the grabbed window gets normal enter/leave
12502         notifications. On ungrab go from grabbed window to current.
12503         Don't send any notification to b when propagating from c -> b.
12504         If setting a grab on window, don't set prev_window.
12505         (handle_mouse_input): Send enter/leave events to the window the
12506         mouse is over, not the grabbed one.
12507         
12508 2000-11-28  Elliot Lee  <sopwith@redhat.com>
12509
12510         * gdk/gdkregion-generic.c: Zap warning.
12511         * modules/input/Makefile.am: Only build im-xim if USE_X11 is enabled
12512         * gtk/gtkrc.c: s/strcpy/memcpy/ to save a few nanoseconds.
12513
12514 2000-11-28  Alexander Larsson  <alla@lysator.liu.se>
12515
12516         * gdk/linux-fb/gdkwindow-fb.c (gdk_fb_window_move_resize):
12517         The cursor should be hidden if it is part of either the
12518         source or destination region. Not only if it is in both.
12519         (gdk_window_set_transient_for): Silence warnings.
12520
12521 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12522
12523         * gdk/linux-fb/mifillarc.c (miFillArcSliceSetup):
12524         The default mode in X is Pie Arcs, therefore that is
12525         what Gtk+ uses.
12526
12527 2000-11-28  Alexander Larsson  <alexl@redhat.com>
12528
12529         * gdk/linux-fb/gdkinput-ps2.c:
12530         Implement correct EnterNotify/LeaveNotify:
12531         (gdk_fb_window_send_crossing_events): New function that sends
12532         all GdkCrossingEvents from the last mouse-window to the specified
12533         destination.
12534         (gdk_fb_window_visibility_crossing): Removed function.
12535         (handle_mouse_input): Use gdk_fb_window_send_crossing_events()
12536         (send_button_event, gdk_fb_cursor_reset): Use gdk_window_at_pointer
12537         instead of gdk_window_get_pointer() for better readability.
12538
12539         * gdk/linux-fb/gdkmain-fb.c (gdk_fb_pointer_grab,
12540         gdk_fb_pointer_ungrab): Use gdk_fb_window_send_crossing_events.
12541
12542         * gdk/linux-fb/gdkprivate-fb.h:
12543         removed gdk_fb_window_visibility_crossing, added
12544         gdk_fb_window_send_crossing_events and gdk_fb_find_common_ancestor.
12545
12546         gdk/linux-fb/gdkwindow-fb.c (gdk_fb_find_common_ancestor):
12547         New function that finds the least common ancestor of two windows.
12548         (gdk_window_show, gdk_window_hide):
12549         Use gdk_fb_window_send_crossing_events.
12550         (gdk_fb_window_move_resize): Send configure events to toplevel
12551         windows. Use gdk_fb_window_send_crossing_events.
12552
12553 2000-11-27  Havoc Pennington  <hp@redhat.com>
12554
12555         * gtk/gtkprivate.h (enum): Remove a trailing comma
12556
12557 2000-11-27  Federico Mena Quintero  <federico@helixcode.com>
12558
12559         * gtk/gtkspinbutton.c (gtk_spin_button_set_adjustment): Connect to
12560         the "changed" callback of the adjustment.  We need to redraw the
12561         spin button's arrows when the adjustment's range changes.
12562         (adjustment_changed_cb): Draw the arrows.
12563         (gtk_spin_button_value_changed): Draw the arrows.
12564
12565 2000-11-23  Alexander Larsson  <alexl@redhat.com>
12566
12567         * gdk/linux-fb/gdkselection-fb.c:
12568         Initial selection implementation.
12569
12570         * gtk/gtkselection.c:
12571         if GDK_WINDOWING_FB defined, include linux-fb/gdkfb.h and look up
12572         requestor in gtk_selection_request.
12573         
12574         * gdk/linux-fb/gdkfb.h, gdk/linux-fb/gdkglobals-fb.c:
12575         Added gdk_selection_property atom.
12576
12577         * gdk/linux-fb/gdkprivate-fb.h:
12578         Export _gdk_selection_window_destroyed.
12579         Removed mask_off_x/y from GdkCursorPrivateFB.
12580         Removed hbearing, added top, left to PangoFBGlyphInfo.
12581
12582         * gdk/linux-fb/gdkwindow-fb.c (_gdk_windowing_window_destroy):
12583         Call _gdk_selection_window_destroyed
12584         (_gdk_windowing_window_init): Don't call gdk_cursor_new() before
12585         the root window has been created.
12586         (static_dx_hack, static_dy_hack, compare_draw_rects,
12587         gdk_fb_window_move_resize): Remove unnecessary sort of rectangles
12588         in region. They are already sorted. Instead just traverse them in
12589         reverse if draw_direction < 0.
12590         
12591         * gdk/linux-fb/gdkinput-ps2.c (send_button_event):
12592         Double-clicks must be sent after the normal button_press.
12593         (gdk_fb_cursor_unhide): Remove usage of mask_off_x/y. Clean up.
12594         
12595         * gdk/linux-fb/gdkgeometry-fb.c (gdk_window_scroll):
12596         Pass _gdk_fb_screen_gc instead of NULL.
12597
12598         * gdk/linux-fb/gdkmain-fb.c (_gdk_windowing_init_check):
12599         Initialize gdk_selection_property.
12600         (gdk_event_make): Remove unused code.
12601
12602         * gdk/linux-fb/gdkcursor-fb.c:
12603         Make the pixmap for the cursor the same size as the mask. Also remove
12604         the mask_off_x/y fields in GdkCursorPrivateFB and combine
12605         _gdk_cursor_new_from_pixmap() and gdk_cursor_new_from_pixmap()
12606         Now the whole cursor is visible.
12607
12608         * gdk/linux-fb/gdkdrawable-fb2.c (gdk_fb_draw_drawable_3):
12609         Fix bug where xdest+height instead of ydest+height was used
12610         to calculate if the source and dest overlapped. This fixes the
12611         redraw bug when the main window in testgtk was scrolled when
12612         partially covered by a tall window.
12613         Copy rectangles in region in order depending on draw_direction.
12614         Also moved the draw_direction flipping of start_y and end_y into
12615         the gc functions, as this might not be what all of them want.
12616         (gdk_fb_draw_lines): Support dashed lines.
12617         (gdk_fb_draw_glyphs): Clean up glyph placement. Also fix positioning
12618         so that the text is positioned correctly (was 1 pixel high).
12619
12620         gdk/linux-fb/gdkgc-fb.c:
12621         Initialize cap_style to GTK_CAP_BUTT. This fixes a problem where
12622         all lines were drawn a pixel to short. Also checked the default of
12623         the rest of the values, and they're the same as X now.
12624
12625         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_glyph_info):
12626         Clean up pixel positioning of the glyphs. Just use bgy->top and
12627         bgy->left. Also used PANGO_PIXEL where appropriate and added 0.5
12628         to all divisions to get correct rounding behaviour.
12629
12630         * gdk/linux-fb/gdkrender-fb.c (gdk_fb_draw_drawable_generic,
12631         gdk_fb_draw_drawable_memmove, gdk_fb_draw_drawable_aa_24):
12632         Moved start_y/end_y flip into draw_drawable implementations.
12633         Flip also x rendering when draw_direction < 0.
12634         Remove unneccesary multiply with draw_direction.
12635
12636 Wed Nov 22 14:11:19 GMT 2000  Tony Gale <gale@gtk.org>
12637
12638         * docs/tutorial/gtk-tut.sgml:
12639           - get rid of gtk_toggle_button_toggled FUD
12640           - start DND section - needs work - based on:
12641                 http://wolfpack.twu.net/docs/gtkdnd/
12642
12643 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12644
12645         * gdk/linux-fb/gdkpango-fb.c (pango_fb_font_get_metrics):
12646         Correct calculation of font metrics. Now GtkEntrys have sane
12647         size.
12648
12649 2000-11-22  Alexander Larsson  <alexl@redhat.com>
12650
12651         * gdk/gdktypes.h:
12652         Add new type GdkSpan
12653         
12654         * docs/reference/gdk/gdk-sections.txt,
12655         docs/reference/gdk/tmpl/regions.sgml, gdk/gdkregion-generic.c,
12656         gdk/gdkregion.h:
12657         Implement and document gdk_region_spans_intersect_foreach.
12658
12659         * gdk/linux-fb/Makefile.am, gdk/linux-fb/gdkrender-fb.c:
12660         Add new file gdkrender-fb.c which contains all core
12661         rendering code.
12662         Add gdk_fb_fill_rectangle_generic (old rectangle code) and
12663         gdk_fb_fill_rectangle_simple_16, gdk_fb_fill_rectangle_simple_32
12664         (optimized rectangle fillers).
12665
12666         * gdk/linux-fb/gdkdrawable-fb2.c:
12667         Move all rendering code to gdkrender-fb.c.
12668         Change from using GdkRectangles and GdkSegments for spans to GdkSpan.
12669         Use the new span intersection functions in gdk_fb_fill_spans.
12670         gdk_fb_draw_rectangle() clips filled rectangles and calls
12671         gc->fill_rectangle with the result.
12672         gdk_fb_fill_spans() gets extra argument "sorted".
12673
12674         * gdk/linux-fb/gdkevents-fb.c:
12675         Remove unused includes and defines.
12676         New function gdk_fb_get_time() to get correct time for events.
12677
12678         * gdk/linux-fb/gdkinput-ps2.c:
12679         Use gdk method of generating multiple-clicks (gdk_event_button_generate)
12680         Make sure to set the time of all events.
12681
12682         * gdk/linux-fb/gdkmain-fb.c:
12683         Use gdk_fb_get_time ().
12684
12685         * gdk/linux-fb/gdkprivate-fb.h:
12686         New virtual GC calls: fill_span & fill_rectangle.
12687         Export gdk_fb_get_time().
12688         gdk_fb_fill_spans() gets extra argument "sorted".
12689
12690         * gdk/linux-fb/mi*.c:
12691         Use GdkSpan instead of GdkRectangle.
12692         Pass correct sorted to gdk_fb_fill_spans. (sorted value taken
12693         from XFree 4 source)
12694         
12695 2000-11-22    <jrb@redhat.com>
12696
12697         * gtk/gtktreeview.c (gtk_tree_view_calc_size): It's amazing what
12698         reversing the order in an if statement will do.  Doing so managed
12699         to make the treemodelsort half work.  Other half will follow after
12700         I get the insert function fully fixed.
12701
12702 2000-11-21  Elliot Lee  <sopwith@redhat.com>
12703         * gtk/gtkmenushell.h: GdkEventButton->button can occupy significantly
12704         more than 2 bits. Besides, I need to implement an evil hack. :)
12705
12706 Tue Nov 21 14:17:51 GMT 2000  Tony Gale <gale@gtk.org>
12707
12708         * docs/tutorial/gtk-tut.sgml: minor corrections
12709
12710 2000-11-20  Jonathan Blandford <jrb@redhat.com>
12711         * gtk/gtktreemodelsort.h: Add convertion functions to let you
12712           convert to and from relative path's and iters.
12713
12714         * gtk/treestoretest.c: move to having a sorted/unsorted view.  Start
12715           testing sorting functions a bit better.  Currently broken -- will
12716           fix in morning.
12717
12718 2000-11-20  Havoc Pennington  <hp@redhat.com>
12719
12720         * gtk/gtkwidget.c: Documented a bunch of functions in here
12721         (gtk_widget_realize): Warn if you try to realize
12722         a widget with no parent that isn't a toplevel
12723         (gtk_widget_intersect): return a gboolean
12724
12725 2000-11-20  Havoc Pennington  <hp@redhat.com>
12726
12727         * gtk/gtktextview.c, gtk/gtktextlayout.c, gtk/gtktextchild.c,
12728         gtk/testtext.c: Semi-finish widget embedding. Need guffaw
12729         scrolling to be implemented in GDK to finish. Also, right now
12730         we just size_allocate all children on every layout change,
12731         which is pretty lame. Test commented out of testtext.c, 
12732         until it works better.
12733
12734 2000-11-20  Alexander Larsson  <alla@lysator.liu.se>
12735
12736         * gdk/linux-fb/gdkdrawable-fb2.c:
12737         Removed unused arguments from gdk_fb_drawable_get_pixel().
12738
12739         * gdk/linux-fb/gdkinput-ps2.c (handle_input_ps2):
12740         Renamed fidur specific mouse packet data in MouseDevice to
12741         generic. Used it in ps2 mouse handling code to avoid blocking
12742         reads.
12743
12744 Sat Nov 18 18:00:17 2000  Jonathan Blandford  <jrb@redhat.com>
12745
12746         * demos/gtk-demo/main.c: Changed to have the list become
12747         non-italic when the demo window is destroyed through an external
12748         event (like a close button).  Doing so found three bugs in the
12749         widget.
12750
12751         * demos/gtk-demo/*.c (do_*): Changed to return the toplevel window.
12752
12753         * gtk/gtkliststore.c (gtk_list_store_set_cell): emit "change" when
12754         we actually set the cell.
12755
12756         * gtk/gtktreestore.c (gtk_tree_store_set_cell): ditto
12757
12758         * gtk/gtktreeselection.c (gtk_tree_selection_real_select_node):
12759         free a leaked path.  Thanks memprof.
12760
12761 Sat Nov 18 11:58:17 2000  Owen Taylor  <otaylor@redhat.com>
12762
12763         * gdk/gdkrgb.c (gdk_rgb_allocate_images): Fix 
12764         off-by-one error when destroying allocated segments
12765         on failure. (Elliot)
12766
12767 Sat Nov 18 11:45:09 2000  Owen Taylor  <otaylor@redhat.com>
12768
12769         * gtk/gtkcalendar.c: Patch from ChiDeok Hwang to fix
12770         memleaks found by Evan Martin.
12771
12772 Fri Nov 17 20:14:20 2000  Owen Taylor  <otaylor@redhat.com>
12773
12774         * Released 1.3.2
12775         
12776         * NEWS: Updates for 1.3.2
12777
12778 2000-11-17  Tor Lillqvist  <tml@iki.fi>
12779
12780         * gdk/gdkevents.h: Add comment that GdkXEvent isn't only for XEvent,
12781         but in general for window system specific events.
12782
12783         * gtk/gtk.def
12784         * gtk/makefile.mingw.in
12785         * gtk/makefile.msc.in: Update.
12786         
12787         * gtk/gtktexttypes.h: Mark variables for export/import from DLL.
12788
12789 Thu Nov 16 16:11:39 2000  Owen Taylor  <otaylor@redhat.com>
12790
12791         * gtk/Makefile.am (EXTRA_DIST): Do not, in any circumstances,
12792         distribute gtk.immodules.
12793
12794         * gtk/Makefile.am (install-data-local): Don't install the
12795         gtk.immodules file created for the uninstalled modules;
12796         instead run gtk-query-immodules after install
12797
12798 Wed Nov 15 21:51:31 2000  Owen Taylor  <otaylor@redhat.com>
12799
12800         * modules/input/Makefile.am (im_xim_la_LDFLAGS): Point
12801         -rpath to the right install location.
12802
12803         * modules/input/Makefile.am (im_inuktitut_la_LDFLAGS): Remove
12804         -export-dynamic.
12805
12806         * gtk/gtkthemes.c (gtk_theme_engine_get): Set engine->name
12807         properly.
12808
12809 2000-11-15  Havoc Pennington  <hp@pobox.com>
12810
12811         * gtk/gtktextview.c (gtk_text_view_start_cursor_blink): Apply
12812         patch from Mikael Hermansson to temporarily stop blinking while
12813         the user is using the keyboard to type or navigate. 
12814
12815         Also, when blinking, stay on for longer than we stay off. Also,
12816         return from start_cursor_blink if !cursor_visible, to save
12817         checking that flag all over the place before we call
12818         start_cursor_blink.
12819
12820 Thu Nov 16 01:25:51 2000  Robert Brady  <robert@suse.co.uk>
12821
12822         * gtk/gtkrc.*: Remove the locale-specific gtkrc's, as they
12823         only contain a "fontset" line, which is now ignored.
12824
12825         * gtk/gtkentry.c (gtk_entry_button_release): Make 
12826         double-click-to-select-word work.
12827         
12828 Wed Nov 15 20:16:54 2000  Owen Taylor  <otaylor@redhat.com>
12829
12830         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): 
12831         Don't move back one char when we are actually at the end of the 
12832         paragraph.
12833
12834 2000-11-15  Robert Brady  <robert@suse.co.uk>
12835
12836         * modules/input/iminuktitut.c (inuktitut_compose_seqs): 
12837         'o' < 'p'.
12838         
12839         * gtk/gtkmain.c: s/CODSET/CODESET/, include <libintl.h> for
12840         bind_textdomain_codeset.
12841
12842         (gtk_init_check): Make the warning about translating default:LTR
12843         sterner.
12844         
12845 Wed Nov 15 18:39:40 2000  Owen Taylor  <otaylor@redhat.com>
12846
12847         * **/Makefile.am : remove unecessary rules for win32-specific
12848         config-substituted targets. If you want these rules, use
12849         --enable-maintainer-mode (called automatically by autogen.sh).
12850         Stops a lot of unneccessary make-time warnings.
12851
12852         * gtk/gtktext{layout,display}.c: Factor in total width as
12853         well as screen when figuring alignment for word-wrap as well as
12854         no wrap; this is necessary to handle lines that cannot be wrapped
12855         at all.
12856
12857 2000-11-15  Havoc Pennington  <hp@redhat.com>
12858
12859         * gtk/testtext.c: Implement essential color cycling feature
12860
12861 2000-11-15  Havoc Pennington  <hp@redhat.com>
12862
12863         * gtk/gtktextview.c (changed_handler): Invalidate the side windows
12864         when we invalidate the main window.
12865
12866         * gtk/testtext.c (create_view): Get rid of text_changed_callback,
12867         GtkTextView will now invalidate the side windows for us when text
12868         changes.
12869
12870 Wed Nov 15 16:02:20 2000  Owen Taylor  <otaylor@redhat.com>
12871
12872         * gtk/gtktextview.c (changed_handler): Call scroll_calc_now()
12873         unconditionally, since we may need to update the horizontal
12874         scrollbars even if the height didn't change.
12875
12876         * gtk/gtktextlayout.c (add_preedit_attrs): Always get
12877         the extra attrs, since some of them affect size.
12878
12879         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Factor in
12880         x_offset correctly.
12881
12882 2000-11-15  Havoc Pennington  <hp@redhat.com>
12883
12884         * gtk/gtktextlayout.c (set_para_values): If indent is negative,
12885         don't move the first line out into the margin, instead move the
12886         whole paragraph in order to make space for the first line within 
12887         the margin
12888
12889 2000-11-15  Havoc Pennington  <hp@redhat.com>
12890
12891         * gtk/gtktextview.c (changed_handler): offset redraw rect by
12892         xoffset in addition to yoffset, so horizontal scrolling doesn't
12893         break redraws
12894
12895 2000-11-15  Havoc Pennington  <hp@redhat.com>
12896
12897         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Remove extra pixel
12898         from the cursor
12899         (render_layout_line): fix reversed test that caused weird
12900         underlines to get drawn
12901
12902 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12903
12904         * gdk/linux-fb/gdkprivate-fb.h:
12905         Fix debug macros.
12906         
12907 2000-11-15  Alexander Larsson  <alla@lysator.liu.se>
12908
12909         * gdk/linux-fb/gdkprivate-fb.h:
12910         Added virtual functions set_pixel, get_color,
12911         fill_span and draw_drawable to the GC.
12912         Added global _gdk_fb_screen_gc to use instead of
12913         NULL when drawing to the screen.
12914         Added _gdk_fb_gc_calc_state() prototype.
12915
12916         * gdk/linux-fb/gdkgc-fb.c:
12917         Call _gdk_fb_gc_calc_state() on any gc state change.
12918
12919         * gdk/linux-fb/gdkglobals-fb.c:
12920         Add _gdk_fb_screen_gc
12921                 
12922         * gdk/linux-fb/gdkdrawable-fb2.c:
12923         _gdk_fb_gc_calc_state() calculates best functions
12924         for the GC state and depth.
12925         Moved bpp specialized code to separate functions.
12926         Added optimized 24 bpp AA draw_drawable.
12927
12928         * gdk/linux-fb/gdkevents-fb.c:
12929         Silence gcc warning.
12930
12931         * gdk/linux-fb/gdkimage-fb.c:
12932         Use _gdk_fb_screen_gc
12933
12934         * gdk/linux-fb/gdkwindow-fb.c:
12935         Init and use _gdk_fb_screen_gc
12936
12937         * gdk/linux-fb/mitypes.h:
12938         Remove unused types.
12939
12940 2000-11-14  Havoc Pennington  <hp@pobox.com>
12941
12942         * gtk/gtktextlayout.c (add_cursor): use PANGO_PIXELS() to convert
12943         to pixels
12944
12945 2000-11-14  Havoc Pennington  <hp@pobox.com>
12946
12947         * gtk/testtextbuffer.c (fill_buffer): change "offset" to "rise"
12948
12949         * gtk/gtktexttypes.h (GTK_TEXT_UNKNOWN_CHAR): Add macro for
12950         unknown char, no real reason we were using a variable. 
12951         Remove gtk_text_unknown_char variable. Fix all the text widget
12952         files accordingly.
12953
12954         * gtk/gtktexttypes.c: Change "unknown character" to 0xFFFC, 
12955         since the Unicode spec seems to prefer that character for our
12956         purposes.
12957
12958 Wed Nov 15 02:18:01 2000  Robert Brady  <robert@suse.co.uk>
12959
12960         * gtk/gtkrc.c (gtk_rc_get_im_module_file): The return 
12961         value of g_getenv() isn't freeable, so g_strdup it.
12962
12963         * modules/input/inuktitut.c: Inuktitut input method.
12964
12965         * modules/input/Makefile.am: Build this.
12966         
12967 2000-11-14  Elliot Lee  <sopwith@redhat.com>
12968
12969         * gtk/Makefile.am: Install gtk.immodules, needed for operation
12970         of gtk programs.
12971
12972 Tue Nov 14 20:13:06 2000  Owen Taylor  <otaylor@redhat.com>
12973
12974         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): Fix
12975         reversed > that was causing Home to go to end of previous line.
12976
12977         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_filter_keypress): Ignore
12978         modified-keypresses (leave for bindings.)
12979
12980         * modules/input/Makefile.am: Remove useless -export-dynamic
12981         from module LDFLAGS.
12982
12983 2000-11-14  Havoc Pennington  <hp@redhat.com>
12984
12985         * gdk/gdkpango.c (gdk_draw_layout_line): Draw underlines one pixel
12986         higher.
12987
12988         * gtk/gtktextdisplay.c (render_layout_line): Take rise into
12989         account. Also, render rise, underline, background, etc. for
12990         pixbufs as well as text. Also, draw underlines one pixel higher.
12991
12992         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display): Add a
12993         PangoAttribute for the rise, so it gets drawn properly. Also,
12994         add the GtkTextAppearance attribute for pixbuf/widget segments
12995         as well; we should go ahead and have rise, underline, background,
12996         stipple work for those
12997
12998         * gtk/gtktexttag.c: Rename "offset" property to "rise" to match
12999         Pango
13000
13001 2000-11-15  Tor Lillqvist  <tml@iki.fi>
13002
13003         * gtk/makefile.{mingw,msc}.in (gtk_OBJECTS): Add new objects.
13004
13005         * gtk/gtk.def: Update.
13006
13007         * gtk/gtkrc.c: Can't check for G_OS_WIN32 until glib.h has been
13008         included.
13009         (gtk_rc_get_im_module_file): Use run-time installation directory
13010         on Win32.
13011
13012         * gdk/win32/rc/gdk.rc: Remove.
13013         * gdk/win32/rc/gdk.rc.in: New file.
13014         * gdk/win32/rc/Makefile.am: New file
13015         * gdk/win32/Makefile.am: Corresponding changes.
13016
13017         * gtk/gtk.rc: Remove.
13018         * gtk/gtk-win32.rc.in: New file.
13019         * gtk/Makefile.am: Corresponding changes.
13020
13021         * configure.in: Corresponding changes.
13022
13023         * gtk/gtkcompat.h.win32: Remove, useless. A distribution already
13024         has a built gtkcompat.h. Developers using CVS code on Win32 can
13025         hand-edit it from gtkcompat.h.in.
13026
13027         * gtk/makefile.{mingw,msc}.in: Correspondingly don't try to make
13028         gtkcompat.h from gtkcompat.h.win32.
13029
13030 2000-11-14  Havoc Pennington  <hp@redhat.com>
13031
13032         * gtk/gtktextview.c (gtk_text_view_drag_motion): Fix drag-and-drop
13033         to default to GDK_ACTION_MOVE if the drag is within a single
13034         widget. Defaults to GDK_ACTION_COPY between widgets.
13035
13036 Mon Nov 13 14:43:48 2000  Owen Taylor  <otaylor@redhat.com>
13037
13038         * demos/Makefile.am (test-inline-pixbufs.h): Fix srcdir != builddir
13039
13040         * gtk/Makefile.am (INCLUDES): Add -I$(builddir)/gtk
13041
13042         * gtk/stock-icons/Makefile.am (gtkstockpixbufs.h): Handles
13043         srcdir != builddir
13044
13045         * modules/input/Makefile.am (INCLUDES): add $(top_srcdir)/gdk
13046
13047         * configure.in (GTK_VERSION): Up to 1.3.2
13048
13049         * modules/input/Makefile.am (im_xim_la_SOURCES): Add 
13050         gtkimcontextxim.h
13051
13052         * gtk/gtkimcontext.c (gtk_im_context_get_preedit_string): Add
13053         missing doc comment.
13054
13055 2000-11-14  Alexander Larsson  <alexl@redhat.com>
13056
13057         * modules/linux-fb/basic.c:
13058         Use the glib iconv wrappers.
13059
13060 2000-11-13  Havoc Pennington  <hp@pobox.com>
13061
13062         * demos/gtk-demo/textview.c: spiff up the demo a bit; reveals
13063         still more bugs.
13064
13065         * gtk/gtktextview.c (gtk_text_view_value_changed): don't try to
13066         scroll the GdkWindows before realization.
13067
13068 2000-11-13  Havoc Pennington  <hp@redhat.com>
13069
13070         * gtk/gtktextdisplay.c (gtk_text_render_state_update): fix bug 
13071         where GC didn't always get updated properly
13072
13073         * demos/gtk-demo/textview.c (create_tags): Use subattributes
13074         of fonts instead of setting the entire font
13075
13076         * gtk/testtext.c (fill_example_buffer): Use "size" instead of
13077         setting entire font
13078
13079         * gtk/gtkdialog.c (gtk_dialog_add_button): Fix some warnings
13080
13081         * gtk/gtktexttag.h, gtk/gtktexttag.c: Explode font_desc into 
13082         a bunch of individually-settable font attributes. You can still 
13083         use the "font" and "font_desc" args, they just set all the font
13084         attributes at once.
13085
13086 2000-11-13 Elliot Lee <sopwith@redhat.com>
13087
13088         * gdk/gdk.h: Add a couple of missing G_GNUC_CONST's.
13089
13090 Mon Nov 13 14:29:32 2000  Jonathan Blandford  <jrb@redhat.com>
13091
13092         * gtk/gtktreemodel.c (gtk_tree_path_copy): confirm path != NULL
13093         * gtk/gtktreemodel.c (gtk_tree_path_free): ditto
13094
13095         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): make
13096         work better.
13097
13098 2000-11-13  Havoc Pennington  <hp@redhat.com>
13099
13100         * gtk/gtkimmodule.c (gtk_im_module_init): Free the filename of 
13101         the module file.
13102
13103         * gtk/gtktexttag.c (gtk_text_attributes_copy): fix memory leak of
13104         dest->language
13105
13106         * gtk/testtext.c: Test pixels above/below/inside paragraphs
13107         settings
13108
13109         * gtk/gtktextview.c: Implement object args and setters/getters for
13110         all the aspects of the GtkTextAttributes that are not set from
13111         GtkWidget attributes. This is spacing, justification, margins,
13112         etc.
13113
13114         (gtk_text_view_set_arg)
13115         (gtk_text_view_get_arg): implement get/set for editable, wrap mode
13116         args
13117         (gtk_text_view_class_init): Add args for justify, left_margin,
13118         right_margin, indent, and tabs
13119         
13120
13121         * gtk/gtktextlayout.c (set_para_values): fix to display indent
13122         attribute properly
13123
13124         * gtk/gtktexttag.c: Remove left_wrapped_line_margin attribute, 
13125         replace with indent attribute
13126
13127         * gtk/gtktextlayout.c (set_para_values): multiply indent by
13128         PANGO_SCALE
13129
13130         * gtk/gtktextdisplay.c (render_para): Use PangoLayoutIter,
13131         rearranging code to do that
13132         (gtk_text_layout_draw): Pass in the y for the whole LineDisplay,
13133         i.e. don't subtract the top_margin first, just to keep
13134         all margin-futzing in one place.
13135
13136         * gdk/gdkpango.c (gdk_draw_layout): Use PangoLayoutIter
13137
13138         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Remove
13139         special case of last line, Pango now handles this itself.
13140         (gtk_text_layout_get_iter_at_pixel): Fix incorrect clamp of the 
13141         Y coordinate
13142         (gtk_text_layout_move_iter_to_x): port to use PangoLayoutIter
13143         (find_display_line_above): wasn't moving the byte index as it
13144         iterated over lines, so always returned byte 0. Also, port to use
13145         PangoLayoutIter.
13146         (find_display_line_below): same problem as
13147         find_display_line_above. Also, port to use PangoLayoutIter.
13148
13149 2000-11-13  Alexander Larsson  <alexl@redhat.com>
13150
13151         * gdk/linux-fb/*.[ch]:
13152         Massive reindent to gtk+ standard. My hands hurt.
13153
13154         * gdk/linux-fb/gdkcolor-fb.c:
13155         Move GdkColorPrivateFB from inherited to windowing_data
13156
13157         * gdk/linux-fb/gdkcursor-fb.c:
13158         _gdk_cursor_new_from_pixmap made static
13159
13160         * gdk/linux-fb/gdkdnd-fb.c:
13161         GdkDragContextPrivate moved to windowing_data
13162
13163         * gdk/linux-fb/gdkdrawable-fb2.c:
13164         Removed endian.h, use glib endianness macros instead
13165         Some cleanups in the usage of GDK_DRAWABLE_FBDATA
13166         and GDK_DRAWABLE_IMPL_FBDATA
13167
13168         * gdk/linux-fb/gdkfont-fb.c:
13169         Add empty gdk_font_load(). Needed for linking of Gtk+.
13170
13171         * gdk/linux-fb/gdkimage-fb.c:
13172         Removed endian.h, use glib endianness macros instead
13173         Moved GdkImagePrivateFB to windowing_data
13174         gdk_image_new_bitmap didn't always allocate enough
13175         memory.
13176
13177         * gdk/linux-fb/gdkinput-ps2.c:
13178         Added semi-working support for MS serial mice.
13179
13180         * gdk/linux-fb/gdkprivate-fb.h:
13181         s/GdkWindowPrivate/GdkWindowObject/
13182         Removed GdkWindowPrivate typedef
13183         s/GDK_DRAWABLE_P/GDK_DRAWABLE_FBDATA/
13184         Removed GDK_DRAWABLE_P
13185         Move GdkColorPrivateFB from inherited to windowing_data
13186         Moved GdkImagePrivateFB to windowing_data
13187
13188         * gdk/linux-fb/gdkvisual-fb.c:
13189         Removed some unused debug code.
13190
13191         * gdk/linux-fb/gdkwindow-fb.c:
13192         Use stock cursors instead of including X headers.
13193         s/GdkWindowPrivate/GdkWindowObject/
13194
13195         * gdk/linux-fb/mitypes.h:
13196         Removed unused types.
13197
13198         * modules/linux-fb/basic.c:
13199         Use the pango fribidi wrappers.
13200
13201 2000-11-13  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
13202
13203         * gdk/linux-fb/gdkcolor-fb.c, gdk/nanox/gdkmain-nanox.c,
13204         gdk/win32/gdkcolor-win32.c, gdk/win32/gdkwin32id.c,
13205         gdk/x11/gdkcolor-x11.c, gdk/x11/gdkvisual-x11.c, gdk/x11/gdkxid.c,
13206         gtk/gtkgc.c, gtk/gtkrc.c, gtk/gtktext.c: GCompareFunc ->
13207         GEqualFunc where applicable.
13208         
13209         * gdk/linux-fb/gdkpango-fb.c: pango_font_description_compare ->
13210         pango_font_description_equal as changed in pango.
13211         
13212         * gdk/nanox/gdkmain-nanox.c: gdk_xid_compare -> gdk_xid_equal.
13213
13214         * gdk/win32/gdkcolor-win32.c: gdk_colormap_cmp -> gdk_colormap_equal.
13215
13216         * gdk/win32/gdkwin32id.c: gdk_handle_compare -> gdk_handle_equal.
13217
13218         * gdk/x11/gdkcolor-x11.c: gdk_colormap_cmp -> gdk_colormap_equal.
13219
13220         * gdk/x11/gdkvisual-x11.c: gdk_visual_compare -> gdk_visual_equal.
13221
13222         * gdk/x11/gdkxid.c: gdk_xid_compare -> gdk_xid_equal.
13223
13224         * gtk/gtkgc.c: gtk_gc_key_compare -> gtk_gc_key_equal and
13225         gtk_gc_drawable_compare -> gtk_gc_drawable_equal.
13226
13227         * gtk/gtkrc.c: gtk_rc_style_compare -> gtk_rc_style_equal and
13228         gtk_rc_styles_compare -> gtk_rc_styles_equal.
13229
13230 2000-11-12  Havoc Pennington  <hp@pobox.com>
13231
13232         * demos/gtk-demo/Makefile.am (democodedir): change demo install
13233         dir to datadir/gtk+-2.0/demo
13234
13235         * demos/gtk-demo/textview.c: Text widget demo; reveals all 
13236         sorts of text widget and Pango font bugs. Urgh.
13237
13238         * demos/gtk-demo/Makefile.am (demos): Add textview.c
13239
13240         * demos/gtk-demo/main.c (create_tree): Add instructions at top of
13241         tree that you should double click to see the demo. Fix 
13242         types of variables to reflect changed return values from 
13243         GtkTreeStore and GtkTreeViewColumn constructors.
13244
13245         * gtk/gtktextbuffer.c (gtk_text_buffer_new): ref/sink the
13246         newly-created buffer to prepare for GObject semantics
13247
13248         * gtk/testtext.c: don't leak the buffer with GObject semantics
13249
13250         * gtk/testtextbuffer.c: ditto
13251         
13252 2000-11-12  Havoc Pennington  <hp@pobox.com>
13253
13254         Rename this testgtk to gtk-demo to avoid confusion, and 
13255         install it so people can use it as a supplement to 
13256         the documentation.
13257         
13258         * demos/gtk-demo: Moved from demos/testgtk
13259
13260         * demos/testgtk: Removed
13261
13262         * configure.in: make Makefile in gtk-demo
13263         
13264         * demos/gtk-demo/Makefile.am: Install sample source to 
13265         datadir/gtk-demo (maybe there's a better place?), and 
13266         rename the binary to gtk-demo
13267         
13268         * demos/gtk-demo/main.c (load_file): Load installed sample
13269         source if source isn't found in pwd.
13270
13271 2000-11-09  Havoc Pennington  <hp@pobox.com>
13272
13273         * gtk/gtkentry.c (gtk_entry_class_init): Add an "invisible_char" 
13274         argument to set the char displayed when visibility == FALSE
13275         (gtk_entry_create_layout): If !entry->visible, replace 
13276         all chars with the "invisible char"
13277
13278         * gtk/testgtk.c: Test the invisible_char deal
13279         
13280 Mon Nov 13 02:16:33 2000  Robert Brady  <robert@suse.co.uk>
13281
13282         * gtk/gtkstyle.c (gtk_style_init): Fall back to "fixed" if we
13283         can't get a native font in the right encoding.
13284
13285 Mon Nov 13 00:09:29 2000  Robert Brady  <robert@suse.co.uk>
13286
13287         * configure.in: Chinese .pos have been renamed to zh_CN and zh_TW
13288         respectively.
13289
13290 Sun Nov 12 19:11:42 2000  Owen Taylor  <otaylor@redhat.com>
13291
13292         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_next_line):
13293         Fix warning when moving between paragraphs.
13294
13295         * gtk/gtkentry.[ch]: Change move => move_cursor, 
13296         delete => delete_from_cursor, insert => insert_at_cursor
13297
13298 Sun Nov 12 22:52:51 2000  Robert Brady  <robert@suse.co.uk>
13299
13300         * modules/input/imviqr.c: A vietnamese VIQR-based input method.
13301
13302         * modules/input/imthai-broken.c: A Thai input method for use if
13303         Thai keys are really generating Latin1 keysyms.
13304
13305         * modules/input/Makefile.am: Build these.
13306
13307 Sun Nov 12 22:15:35 2000  Robert Brady  <robert@suse.co.uk>
13308
13309         * gtk/gtkfileselection.c, gdk/win32/gdkfont-win32.c: 
13310         g_filename_{to,from}_utf8 now takes an extra parameter.
13311
13312         * gtk/gtkcalendar.c (gtk_calendar_init): Convert output of
13313         strftime into UTF-8.
13314
13315         (column_from_x, gtk_calendar_paint_day_names): Support RTL
13316         calendars.
13317
13318         (gtk_calendar_paint_day_names): Draw day names in the right 
13319         place.
13320         
13321 Sun Nov 12 14:10:09 2000  Owen Taylor  <otaylor@redhat.com>
13322
13323         * gdk/x11/gdkselection-x11.c (gdk_utf8_to_compound_text): Fix
13324         problem with using result of g_get_charset() backwards -
13325         pointed out by Mikael Hermansson <mikeh@bahnhof.se>.
13326
13327         * gtk/gtkwindow.c (gtk_window_compute_hints): Support
13328         negative min_width/height and max_width/height to
13329         mean "requisition"; this allows setting a window
13330         to be user-resizable in only one direction easily.
13331
13332         * gtk/testgtk.c (create_main_window): Remove hard-coded
13333         usize - set a default size in the vertical direction.
13334
13335 Sun Nov 12 13:33:01 2000  Owen Taylor  <otaylor@redhat.com>
13336
13337         * gtk/gtkrange.c: Add some missing casts. Support 
13338         2 and 3 button clicks on the arrows to mean 
13339         "move by pages" and "jump to end". (Like gtkspinbutton)
13340
13341 2000-11-12 Hans Breuer <Hans@Breuer.Org>
13342
13343         * gdk/win32/makefile.msc : reflect build module changes
13344
13345         * gdk/win32/gdkcursor-win32.c : can't cast to impl type directly
13346         from GdkPixmap*, cast implementation member instead.
13347
13348         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_drawable) : The
13349         passed in drawable is of type GdkDrawableImplWin32, the GdkPixmap *src 
13350         maybe either GdkDrawable or GdkDrawableImpl. Corrected all casts, add
13351         more Gdi functions return value checking. 
13352         (gdk_win32_draw_image) : use IMAGE_PRIVATE_DATA to get on the
13353         GdkImagePrivateWin32 *.
13354
13355         * gdk/win32/gdkevents-win32.c : Disable the SetCapture call to make
13356         menus useable again. Add #pragma message to keep reminded on this issue.
13357         (gdk_event_translate) : don't generate GDK_EXPOSE events for InputOnly
13358         windows. This allows to enable backing store on Win32!
13359
13360         * gdk/win32/gdkimage-win32.c (_gdk_win32_get_image) : the passed
13361         in drawable is of impl type. Correct specific type checks appropriate.
13362  
13363         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_create_from_data) : check 
13364         GDK_WINDOW_DESTROYED before allocating new resources.
13365
13366         * gdk/win32/gdkselection-win32.c : Handle GDK_WINDOW_DESTROYED case
13367
13368         * gdk/win32/gdkwindow-win32.c : more Gdi return value checking,
13369         (gdk_window_foreign_new) initialize parent handle.
13370         (gdk_window_destroy_notify) add GDK_IS_WINDOW check
13371
13372         * gdk/win32/gdkgeometry-win32.c (_gdk_window_move_resize_child) :
13373         Let the GDI invalidate the window on MoveWindow call to fix scrolling
13374         problems (e.g. main buttons in testgtk). 
13375
13376 Sat Nov 11 23:07:30 2000  Owen Taylor  <otaylor@redhat.com>
13377
13378         * gtk/gtkentry.c (gtk_entry_key_press): Call 
13379         gtk_widget_activate for GDK_Return.
13380
13381         * gtk/gtkentry.c (gtk_entry_preedit_changed_cb): Fix handling
13382         of preedit cursor position.
13383
13384 Sun Nov  5 04:24:53 2000  Owen Taylor  <otaylor@redhat.com>
13385
13386         * gtk/gtkcellrenderertextpixbuf.c: Make parent_class
13387         static.
13388
13389 Tue Sep 19 10:54:22 2000  Owen Taylor  <otaylor@redhat.com>
13390
13391         * modules/input/{gtkimcontextxim.[ch],imxim.c}: Rip
13392         out support for multiple locales; that simple doesn't
13393         work reliably with current Xlib
13394
13395         * gtk/gtkimcontext*.[ch] gtk/gtkimmulticontext.[ch]
13396         gtk/gtktextlayout.[ch] gtk/gtktextview.c gtk/gtkentry.c: 
13397         Add support for positioning the cursor within the preedit string.
13398
13399 Mon Sep 18 23:56:32 2000  Owen Taylor  <otaylor@redhat.com>
13400
13401         * modules/input/{imxim.c,gtkimcontextxim.[ch]}: Start
13402         at XIM input method module.
13403
13404         * gtk/gtktextview.c: Check for bindings after passing
13405         events to im context filter.
13406
13407 Mon Sep 18 11:50:51 2000  Owen Taylor  <otaylor@redhat.com>
13408
13409         * gtk/gtktextlayout.c (add_preedit_attrs): Handle
13410         empty attribute lists properly.
13411
13412 Sun Sep 17 10:08:16 2000  Owen Taylor  <otaylor@redhat.com>
13413
13414         * gtk/queryimmodules.c (main): Return non-zero exit
13415         status if errors were encountered querying any
13416         modules.
13417
13418         * modules/input/Makefile.am (moduledir): remove
13419         leftover bin program target.
13420
13421         * docs/make-todo: Fix typo in error message.
13422
13423 Sat Sep 16 14:04:30 2000  Owen Taylor  <otaylor@redhat.com>
13424
13425         * configure.in: Add modules/input/Makefile
13426
13427 Sat Sep 16 14:01:52 2000  Owen Taylor  <otaylor@redhat.com>
13428
13429         * gtk/gtk.h: include gtkmodule.h gtkoldeditable.h,
13430         don't include gtkthemes.h.
13431
13432         * gtk/testgtk.c gtk/testtext.c: Set environment variables
13433         to point
13434
13435         * gtk/Makefile.am: Add new .c and .h files, build 
13436         gtk-query-immodules and use it to create a gtk.immodules
13437         file for use of test programs.
13438
13439         * gtk/gtkpreview.c: remove extra blank line.
13440
13441 Sat Sep 16 13:21:04 2000  Owen Taylor  <otaylor@redhat.com>
13442
13443         * gtk/gtkimcontextsimple.c (gtk_im_context_simple_add_table): 
13444         Add the ability to add extra tables beyond the default
13445         one, and also the ability to have compose sequences 
13446         that are prefixes of other compose sequences. 
13447
13448         * gtk/gtkimcontextsimple.c: Export a preedit string which
13449         consists of possible candidates for keystrokes that have
13450         been entered but not yet committed.
13451
13452         * gtk/gtkimcontext.[ch] gtk/immulticontext.[ch]
13453         gtk/gtkimcontextsimple.[ch]: add gtk_im_context_reset()
13454
13455         * gtk/gtkmulticontext.[ch] (gtk_im_multicontext_append_menuitems): 
13456         Add a function to add input-method switching menu items
13457         to a menu.
13458
13459         * gtk/gtkimmulticontext.[ch]: Properly handly set_client_window
13460         when switching input methods.
13461
13462         * gtk/gtkimcontextsimple.[ch]: Change the format of
13463         the compose table to allow compose tables of different
13464         lengths / sequence.
13465
13466 Sat Sep 16 13:05:48 2000  Owen Taylor  <otaylor@redhat.com>
13467
13468         * gtk/gtkimmodule.[ch]: Support routines for loading
13469         GtkIMContext implementations dynamically at runtime.
13470
13471         * modules/input/imcyrillic-translit.c: A sample input
13472         method (based on GtkIMContextSimple with an extra table),
13473         which demonstrates preedit strings and the module
13474         system for input modules
13475
13476         * gtk/queryimmodules.c: Program to query the available
13477         input modules and write the results into a file.
13478          
13479         * gtk/gtkrc.[ch] (gtk_rc_get_im_module_file): Add
13480         extra config options "im_module_file" (cache file for
13481         input method modules), and "im_module_path" - path
13482         to look for modules when generating cache file.
13483
13484         This doesn't scale.
13485
13486 Sat Sep 16 13:09:06 2000  Owen Taylor  <otaylor@redhat.com>
13487
13488         * gtk/gtkthemes.[ch] gtk/gtkmodule.[ch]: Move most of the 
13489         generic code from gtkthemes into a new abstraction
13490         GtkModule which has the logic for implementing
13491         a loadable module which implements a number of 
13492         GObject types.
13493
13494 Sat Sep 16 13:07:13 2000  Owen Taylor  <otaylor@redhat.com>
13495
13496         * gtk/gtkeditable.[ch]: Convert GtkEditable from
13497         a class into an interface  
13498         
13499         * gtk/gtkoldeditable.[ch]: Move the old editable
13500         implementation into here, so legacy widgets can
13501         still rely on the implemenation. GtkOldEditable
13502         exports GtkEditable. Make selection handling
13503         code use new text conversion functions (and
13504         handle UTF-8 as a side-effect). Use GtkClipboard
13505         for CLIPBOARD.
13506
13507         * gtk/gtktext.[ch] gtk/gtkcombo.c gtk/gtkspinbutton.c:
13508         Adopt to match above changes.
13509
13510         * gtk/gtkentry.[ch]: Implement GtkEditable directly,
13511         avoid GtkOldEditable implementation. Restructure
13512         to reduce number of places that modify state directly.
13513         Move to GtkBindingSet. Display the preedit string.
13514         Queue recomputation of PangoLayout and scroll position
13515         to improve effiency of doing complex changes naively.
13516         Add a menu with cut/copy/paste and input method selection.
13517
13518 Thu Sep 14 22:11:05 2000  Owen Taylor  <otaylor@redhat.com>
13519
13520         * gtk/gtktextlayout.[ch]: Add gtk_text_layout_set_preedit_string()
13521         to set preedit string and attributes; display preedit string by
13522         inserting string and attributes at cursor when creating the
13523         GtkTextLineDisplay.
13524
13525         * gtk/gtktextlayout.c: Move all conversions between byte
13526         positions in PangoLayout and GtkTextIter into new functions
13527         line_display_iter_to_index/index_to_iter that properly
13528         handle the preedit string.
13529
13530         * gtk/gtktextmark.[ch]: Restore gtk_text_mark_get_name, modify
13531         it to return const char * (eventually will end up
13532         as GCONST char *, most likely.)
13533
13534         * gtk/gtktextview.[ch]: Handle the preedit string, call
13535         gtk_im_context_reset() as necessary, add a menu to switch
13536         input methods.
13537         
13538         * gtk/gtktextlayout.[ch]: Remove useless
13539         gtk_text_layout_get_log_attrs() function.
13540
13541 2000-11-11  Tor Lillqvist  <tml@iki.fi>
13542
13543         * gdk/gdk.def
13544         * gtk/gtk.def: Update.
13545
13546         * gdk/win32/*.c: Add last argument to g_type_register_static()
13547         calls.
13548
13549         * gdk/win32/gdkwindow-win32.c: Silence gcc -Wall.
13550
13551         * gdk/win32/gdkevents-win32.c: Handle MSH_MOUSEWHEEL messages
13552         generated by older wheel mouse drivers. Get the correct y
13553         coordinate from WM_MOUSEWHEEL messages.
13554
13555         * gdk/win32/gdkgc-win32.c (gdk_win32_cap_style_to_string,
13556         gdk_win32_fill_style_to_string, gdk_win32_function_to_string,
13557         gdk_win32_join_style_to_string, gdk_win32_line_style_to_string):
13558         Debugging functions.
13559
13560         * gdk/win32/gdkprivate-win32.h: Declare them.
13561
13562         * gdk/win32/gdkinput-win32.h: Add declaration for
13563         gdk_input_window_destroy().
13564
13565         * gtk/makefile.mingw.in: Pass -DGTK_VERSION. Add gtktreemodel.o.
13566
13567 Fri Nov 10 19:06:41 2000  Jonathan Blandford  <jrb@redhat.com>
13568
13569         * gtk/gtktreemodelsort.c (gtk_tree_model_sort_insert_value): New
13570         function to help handle keeping things in sync.
13571
13572 Fri Nov 10 12:10:34 2000  Jonathan Blandford  <jrb@redhat.com>
13573
13574         * gtk/gtkliststore.c (gtk_model_simple_class_init): use the new
13575         BOXED marshallers.
13576
13577         * gtk/gtkliststore.c (gtk_list_store_get_column_type): Add this.
13578         (gtk_list_store_class_init): use the new BOXED marshallers.
13579
13580         * gtk/gtktreestore.c (gtk_tree_store_new_with_types): change
13581         new_with_values to new_with_types.
13582         (gtk_tree_store_get_column_type): add this.
13583         (gtk_tree_store_class_init): use the new BOXED marshallers.
13584
13585         * gtk/gtkmarshal.list: Added a number of BOXED marshallers to
13586         mirror some POINTER marshallers.
13587
13588 Thu Nov  9 11:23:22 2000  Jonathan Blandford  <jrb@redhat.com>
13589
13590         * gtk/gtktreemodel.h (struct _GtkTreeIter): added more fields to
13591         allow more interesting iterators.  Also, made the lifecycle of
13592         iterators more explicit.
13593
13594         * gtk/gtktreemodelsort.[ch]: New model for sorting.
13595
13596         * gtk/gtk-boxed.defs (GtkTreeIter, GtkTreePath): Added two boxed
13597         types.
13598
13599 2000-11-09  Alexander Larsson  <alexl@redhat.com>
13600
13601         * demos/testgtk/menus.c:
13602         Changes to make the new testgtk compile after
13603         gtk_menu_append was removed.
13604
13605         * gdk/linux-fb/gdkdrawable-fb2.c
13606         (gdk_fb_get_depth, gdk_fb_get_visual,
13607         gdk_drawable_impl_fb_class_init): Implement
13608         these drawable functions. Now GtkImages work again.
13609
13610         * gdk/linux-fb/gdkimage-fb.c (_gdk_fb_get_image): Change prototype.
13611
13612         * gdk/linux-fb/gdkprivate-fb.h (_gdk_fb_get_image): Change prototype.
13613         
13614         * gdk/linux-fb/gdkmain-fb.c (fb_modes_parse_mode,
13615         gdk_fb_setup_mode_from_name, gdk_fb_set_mode, gdk_fb_display_new);
13616         Parse /etc/fb.modes, use the environment variables GDK_DISPLAY_MODE,
13617         GDK_DISPLAY_DEPTH, GDK_DISPLAY_WIDTH, GDK_DISPLAY_HEIGHT.
13618
13619 2000-11-08  Havoc Pennington  <hp@pobox.com>
13620
13621         * gtk/gtktexttag.c (gtk_text_tag_class_init): Add visible and
13622         visible_set args, don't know where these had gone, I thought they
13623         used to be there
13624
13625         * gtk/testtext.c: Add a menu item to apply invisibility tag;
13626         now we can test the feature and see that it's totally broken.
13627
13628 2000-11-08  Havoc Pennington  <hp@pobox.com>
13629
13630         Make DND copy pixbufs and tags when source and target share a 
13631         tag table.
13632         
13633         * gtk/gtktextview.c (gtk_text_view_drag_data_get): provide the
13634         in-process GTK_TEXT_BUFFER_CONTENTS target
13635         (gtk_text_view_drag_data_received): Paste from
13636         GTK_TEXT_BUFFER_CONTENTS if we receive it.
13637
13638 2000-11-08  Alexander Larsson  <alexl@redhat.com>
13639
13640         * docs/Changes-2.0.txt: Add note about GtkMenuPositionFunc
13641         API changes.
13642
13643         * gtk/gtkmenu.c: Add support for scrolling menus.
13644         Remove gtk_menu_append/prepend/insert, these have been moved to
13645         gtkcompat.h as #defines.
13646
13647         * gtk/gtkcompat.h.in:
13648         Add compatibility #defines for gtk_menu_append/prepend/insert
13649
13650         * gtk/gtkmenu.h: Add data needed for scrolling menus.
13651         GtkMenuPositionFunc gets an extra argument push_in.
13652         gtk_menu_append/prepend/insert removed.
13653         
13654         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu): Change menu
13655         positioning behaviour to fit to scrolling menus.
13656
13657         * gtk/gtkmenuitem.c (gtk_menu_item_forall): Don't recurse
13658         into menuitem->submeny. That is wrong, and broke torn
13659         off submenus of torn off menus, since they were unrealized
13660         when the first menu was unrealized.
13661
13662         * gtk/gtkmenushell.[ch]: Virtualize gtk_menu_shell_insert() and
13663         gtk_menu_shell_select_item() since these need to be overridden in
13664         GtkMenu.
13665
13666         * gtk/gtkoptionmenu.c (gtk_opttion_menu_position): Change menu
13667         positioning behaviour to fit to scrolling menus.
13668         (gtk_option_menu_key_press, gtk_option_menu_button_press): Select
13669         the current item so that it is prelighted when the menu pops up.
13670         This is a workaround to the fact that the menu doesn't get the
13671         initial enter event (due to grabs).
13672
13673         * gtk/gtkfilesel.c, gtk/gtkinputdialog.c, gtk/testgtk.c:
13674         s/gtk_menu_append/gtk_menu_shell_append/
13675
13676         * gtk/gtknotebook.c:
13677         s/gtk_menu_insert/gtk_menu_shell_insert/
13678
13679         * gtk/testgtk.c (create_menu, create_menus):
13680         Create the first menu with 50 items so that menu scrolling
13681         can be tested.
13682         
13683         
13684         Patch from Jonathan Blandford  <jrb@redhat.com>
13685
13686         * gtk/gtkmenuitem.[ch] (gtk_menu_item_toggle_size_request): new
13687         system to handle size requests.  First, we ask what the size of
13688         the toggle is.  Then, when allocating the size, we allocate the
13689         toggle_size first.  This way we can have multiple menu-item
13690         classes w/o needing a seperate class for each.
13691
13692         * gtk/gtkmenu.c (gtk_menu_size_request): Actually use the new system.
13693         * gtk/gtkmenu.c (gtk_menu_size_allocate): Use the new system.
13694
13695         * gtk/gtkcheckmenuitem.c
13696         (gtk_check_menu_item_toggle_size_request): New function to handle
13697         the toggle size-request.
13698
13699 2000-11-07  Havoc Pennington  <hp@redhat.com>
13700
13701         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location):
13702         Half-ass somewhat fix this function, so that scrolling to the
13703         insertion point works. Pango hacking is in the future to really
13704         fix it.
13705
13706         * gtk/gtktextview.c (gtk_text_view_drag_data_get): Don't calculate
13707         length of data, no longer used.
13708
13709         * gtk/gtktextbuffer.c (gtk_text_buffer_finalize): move destroy
13710         method contents in here, get rid of destroy method
13711         (gtk_text_buffer_insert_range): Fix some g_return_if_fail checks
13712         that were backward. Remove debug spew.
13713         (cut_or_copy): Make the clipboard work with insert_range to
13714         preserve tags and pixbufs, not just the primary selection.
13715
13716 2000-11-07  Havoc Pennington  <hp@redhat.com>
13717
13718         * gtk/gtktextmark.c (gtk_text_mark_is_visible): rename 
13719         to gtk_text_mark_get_visible
13720
13721         * gtk/gtktextlayout.c (gtk_text_layout_move_iter_to_line_end): fix
13722         bug that was generating an invalid iterator
13723
13724         * gtk/gtktextiter.c (gtk_text_iter_get_offset): move call to
13725         ensure_char_offsets() in front of code placing the iter in an
13726         invalid state.
13727
13728         * gtk/gtktextbuffer.c (gtk_text_buffer_paste_primary):
13729         make override_location arg const
13730         (paste): Replace the selection if we paste into the 
13731         current selection
13732
13733         * gtk/gtkselection.h: Remove "GtkSelectioData"
13734         (struct _GtkSelectionData): move the definition here.
13735
13736         * gtk/gtktextbuffer.c (gtk_text_buffer_update_primary_selection):
13737         Export the GTK_TEXT_BUFFER_CONTENTS target for in-process copies
13738
13739         * gtk/gtktextiter.c (gtk_text_iter_get_tags): New function
13740
13741         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_range): implement
13742         (gtk_text_buffer_insert_range_interactive): implement
13743         (gtk_text_buffer_get_tags): Remove, replaced by
13744         gtk_text_iter_get_tags()
13745
13746         * gtk/gtktextiter.c (gtk_text_iter_forward_search): Add a search
13747         limit parameter, to avoid infinite linear scan.
13748         (gtk_text_iter_backward_search): Add search limit
13749         (gtk_text_iter_forward_find_char): Add search limit
13750         (gtk_text_iter_backward_find_char): Add search limit
13751
13752 2000-11-07  Alexander Larsson  <alla@lysator.liu.se>
13753
13754         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13755         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkimage-fb.c,
13756         gdk/linux-fb/gdkpango-fb.c, gdk/linux-fb/gdkpixmap-fb.c,
13757         gdk/linux-fb/gdkwindow-fb.c:
13758         use g_object_new() instead of g_type_create_instance() which
13759         is a private function for fundamental type implementations.
13760
13761         * gdk/linux-fb/gdkinput-ps2.c:
13762         Use MEDIUMRAW instead of RAW keycodes. Remove keyboard state-table
13763         instead just store the current modifier state. Add a (somewhat broken)
13764         keyboard input parser for XLATE mode too, if we couldn't use MEDIUMRAW.
13765         Rename exported function gdk_input_ps2_get_mouseinfo to
13766         gdk_input_get_mouseinfo.
13767
13768         * gdk/linux-fb/gdkmain-fb.c, gdk/linux-fb/gdkprivate-fb.h,
13769         gdk/linux-fb/gdkwindow-fb.c:
13770         gdk_input_ps2_get_mouseinfo was renamed to gdk_input_get_mouseinfo.
13771         
13772
13773 2000-11-02  Havoc Pennington  <hp@redhat.com>
13774
13775         * gtk/gtkfilesel.h, gtk/gtkfilesel.c: Derive from GtkDialog, and
13776         use stock buttons. Should be 100% source compatible, appropriate
13777         filesel fields now point to dialog->vbox and dialog->action_area.
13778         On the bizarre side, dialog->action_area and filesel->action_area
13779         are not the same widget.
13780         (gtk_file_selection_init): Put some padding around the selection
13781         entry, so it isn't touching the GtkDialog separator.    
13782
13783         * gtk/gtkfontsel.h, gtk/gtkfontsel.c: Derive from GtkDialog, 
13784         use stock buttons, etc. Should also be source compatible.
13785         Set the dialog default title in _init not _new().
13786         
13787         * gtk/gtkcolorseldialog.c (gtk_color_selection_dialog_init): 
13788         Use stock buttons; don't put a button box inside the existing
13789         dialog button box. Don't bother with push/pop colormap anymore.
13790
13791         * gtk/gtkdialog.h (GtkResponseType): Add a bunch of more 
13792         specific GTK_RESPONSE_* values. This is clearer than ACCEPT/REJECT
13793         for message dialog, and necessary for the font selection and color
13794         selection with help and apply buttons.
13795         
13796         * gtk/gtkdialog.c (gtk_dialog_add_button): Return a pointer 
13797         to the created button widget. Set GTK_CAN_DEFAULT on the button.
13798         (gtk_dialog_init): Default to GTK_BUTTONBOX_END, put less spacing
13799         between buttons, put less padding around the action area.
13800         (gtk_dialog_run): Exit on unmap rather than on destroy. 
13801         This will also exit the loop if the widget is hidden.
13802         (gtk_dialog_delete_event_handler): Use GTK_RESPONSE_DELETE_EVENT
13803         instead of GTK_RESPONSE_NONE; since we're already adding a bunch
13804         of GTK_RESPONSE_* stuff, this seems cleaner, and lets you 
13805         special-case delete event.
13806
13807         * gtk/gtktexttagtable.c, gtk/gtktextview.c: Fix doc comment
13808         formatting
13809         
13810 Sun Nov  5 05:32:39 2000  Tim Janik  <timj@gtk.org>
13811
13812         * gtk/testgtk.c (uposition_stop_configure): provide a toggle
13813         button to temporarily disable position recording in the
13814         "saved position" test.
13815
13816 Sat Nov  4 05:37:17 2000  Tim Janik  <timj@gtk.org>
13817
13818         * gtk/gtkthemes.c: added compat code that temporarily implements
13819         GtkThemeEnginePlugin as a GObject exporting GTypePlugin. this is
13820         going to be revamped by owen's upcoming GtkModule patches, but
13821         untill then people want gtk to build, right? ;)
13822
13823 2000-11-04  Havoc Pennington  <hp@pobox.com>
13824
13825         * gtk/gtkenums.h: remove trailing comma from GtkDeleteType member
13826         list
13827
13828         * docs/Changes-2.0.txt: Add note about
13829         gtk_container_get_toplevels()
13830
13831         * gtk/gtktextview.h: formatting
13832         
13833         * gtk/gtktextview.c: don't start descriptions with "Returns",
13834         confuses gtk-doc
13835
13836 Sat Nov  4 10:12:27 2000  Owen Taylor  <otaylor@redhat.com>
13837
13838         * autogen.sh: When doing sanity checking on ACLOCAL_FLAGS,
13839         look for glib-2.0.m4 not glib.m4. (Ali Abdin)
13840
13841 2000-11-03  Havoc Pennington  <hp@redhat.com>
13842
13843         * gtk/gtktexttagtable.c: Docs
13844         (gtk_text_tag_table_size): return a signed int
13845
13846         * gtk/gtktexttag.c: s/tkxt/text/g; write documentation
13847         (gtk_text_tag_event): make the event_object a GObject
13848
13849         * gtk/gtktextview.c: Write API docs for all functions.
13850
13851         * gtk/gtktextview.h: add GTK_TEXT_WINDOW_PRIVATE as return value
13852         for gtk_text_view_get_window_type() called on one of the private
13853         windows.
13854
13855         * gtk/gtktextview.c: Instead of accessing text_view->buffer
13856         directly, call get_buffer() which demand-creates a default
13857         buffer. So gtk_text_view_new() can be used to create a view with a
13858         default buffer in it, if you just want an empty text box users can
13859         put data in. Useful for GUI builders also.
13860
13861 2000-11-03  Pablo Saratxaga <pablo@mandrakesoft.com>
13862
13863         * gtk/gtkrc.zh_TW.*: moved gtkrc.zh_TW.Big5 to gtkrc.zh_TW.big5;
13864         the charset encodign portion MUST be in lowercase.
13865         * gtk/gtkrc.az: added file for Azeri language
13866
13867 2000-11-03  Havoc Pennington  <hp@redhat.com>
13868
13869         Get widgets working on the btree/buffer side. Display of them 
13870         still doesn't work.
13871         
13872         * gtk/gtktextview.c: start implementing child widget stuff
13873
13874         * gtk/gtktextiter.c (gtk_text_iter_get_child_anchor): new function
13875
13876         * gtk/gtktextlayout.c: handle embedded widgets
13877
13878         * gtk/gtktextdisplay.c: handle embedded widgets
13879
13880         * gtk/gtktextchild.c: Implement all the child anchor goo
13881
13882         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor): New
13883         function
13884
13885         * gtk/gtktextbtree.c: Add child anchor table to the btree struct
13886         (insert_pixbuf_or_widget_segment): abstract out common portions of 
13887         creating a child anchor or a pixbuf segment.
13888         (gtk_text_btree_create_child_anchor): new function
13889         (gtk_text_btree_unregister_child_anchor): new function
13890
13891         * gtk/gtkmarshal.list: added VOID:OBJECT,INT,INT for the
13892         allocate_child signal on GtkTextLayout
13893
13894         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): fix bogus return
13895         values
13896         (gtk_text_iter_get_child_anchor): new function
13897
13898         * gtk/gtktextbuffer.c (gtk_text_buffer_real_changed): Add a
13899         default handler for the changed signal, which calls
13900         gtk_text_buffer_set_modified(), instead of just always emitting
13901         changed then calling set_modified() manually. I guess this is
13902         maybe more flexible. It seems logical.
13903
13904 Fri Nov  3 08:58:38 2000  Tim Janik  <timj@gtk.org>
13905
13906         * gtk/gtkobject.c: _g_signal_handlers_destroy() is prefixed with '_'
13907         now.
13908
13909         * gtk/gtksignal.c: use g_signal_connect_closure_by_id() now.
13910
13911 Thu Nov  2 14:10:51 2000  Owen Taylor  <otaylor@redhat.com>
13912
13913         * gdk/x11/gdkdnd-x11.c: Fix a bunch of functions that should have
13914         been marked static.
13915
13916 2000-11-02  Havoc Pennington  <hp@redhat.com>
13917
13918         * gtk/testgtk.c (create_labels): had a test backward
13919
13920         * gdk/x11/gdkgc-x11.c (gdk_gc_copy): Copy the client-side GC
13921         fields, so the dest GC ends up with the correct clip origin, 
13922         etc. Fixes a bug where colored labels didn't redraw 
13923         properly.
13924
13925 2000-11-02  Alexander Larsson  <alexl@redhat.com>
13926
13927         * gdk/linux-fb/gdkcolor-fb.c, gdk/linux-fb/gdkdnd-fb.c,
13928         gdk/linux-fb/gdkgc-fb.c, gdk/linux-fb/gdkpango-fb.c,
13929         gdk/linux-fb/gdkpixmap-fb.c, gdk/linux-fb/gdkwindow-fb.c:
13930         Add last argument to t_type_register_static call.
13931         
13932         * gdk/linux-fb/gdkdrawable-fb2.c:
13933         Add last argument to t_type_register_static call.
13934         export the get_image drawable virtual function.
13935
13936         * gdk/linux-fb/gdkimage-fb.c:
13937         Add last argument to t_type_register_static call.
13938         rename gtk_image_get to _gdk_fb_get_image and
13939         export it for use by gdkdrawable-fb2.
13940
13941         * gdk/linux-fb/gdkprivate-fb.h:
13942         export _gdk_fb_get_image.
13943
13944         * gdk/linux-fb/gdkselection-fb.c:
13945         Add new api call stubs.
13946
13947         * gtk/Makefile.am:
13948         Missing ( in linux-fb part.
13949
13950         * modules/linux-fb/Makefile.am:
13951         Must link with gdk_pixbuf or get unresolved symbol.
13952
13953 2000-11-01  Havoc Pennington  <hp@pobox.com>
13954
13955         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): Use 
13956         GTK_TYPE_TEXT_ITER and BOXED marshallers
13957
13958         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): ditto
13959
13960         * gtk/gtktexttag.c (gtk_text_tag_class_init): ditto
13961         
13962         * gtk/gtk-boxed.defs: add GtkTextIter
13963
13964         * gtk/gtkmarshal.list: Add marshallers for text widget that 
13965         properly use OBJECT and BOXED
13966
13967 2000-11-01  Havoc Pennington  <hp@redhat.com>
13968
13969         * gtk/testgtk.c (create_labels): Test set_markup_with_accel()
13970
13971         * gtk/gtklabel.c (set_markup): Convert the unichar to a GDK keyval
13972         before returning it. 
13973         
13974 2000-11-01  Havoc Pennington  <hp@redhat.com>
13975
13976         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
13977         Clip the rectangle to be rendered to the drawable, since
13978         get_from_drawable() requires a region within the drawable
13979
13980 2000-11-01  Havoc Pennington  <hp@redhat.com>
13981
13982         * gtk/gtkimage.c (gtk_image_expose): Um, don't randomly subtract 4
13983         from coordinates.
13984
13985 Wed Oct 25 20:10:57 2000  Owen Taylor  <otaylor@redhat.com>
13986
13987         * gdk/gdkevents.c (gdk_event_copy): Only ref the window if
13988         it isn't NULL.
13989
13990 2000-11-01  Havoc Pennington  <hp@pobox.com>
13991
13992         * gtk/gtklabel.c (gtk_label_set_attributes): Set a PangoAttrList
13993         on a label
13994         (gtk_label_finalize): unref the attr list if any.
13995
13996         * gtk/testgtk.c (create_get_image): close test on second click
13997         (make_message_dialog): close dialog if it exists
13998
13999         * gdk/gdkpango.c (gdk_draw_layout): Handle rise attribute
14000
14001         * gdk-2.0.pc.in (Requires): Make it require gdk-pixbuf-2.0 not
14002         gdk-pixbuf
14003
14004         * gtk/gtklabel.c (gtk_label_set_markup): new function to set label
14005         from Pango markup format
14006         (gtk_label_set_markup_with_accel): ditto but with accelerator
14007         parsing
14008
14009         * gtk/gtkimage.c (gtk_image_expose): reformatting.
14010
14011         * gdk/gdkpixbuf-drawable.c (gdk_pixbuf_get_from_drawable): Hack to
14012         reflect current state of GDK - use gdk_drawable_get_colormap, etc.
14013         Check GDK_IS_WINDOW() not !GDK_IS_PIXMAP() to decide whether to 
14014         call gdk_window_get_origin().
14015
14016         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable_alpha):
14017         implement GDK_PIXBUF_ALPHA_FULL
14018         
14019 Wed Nov  1 03:43:42 2000  Tim Janik  <timj@gtk.org>
14020
14021         * gtk/gtksignal.c (gtk_signal_compat_matched): make use of
14022         g_signal_handlers_block_matched, g_signal_handlers_unblock_matched and
14023         g_signal_handlers_disconnect_matched to block/unblock and disconnect
14024         multiple handlers respectively, instead of only treating the
14025         first handler found (bug reported by owen).
14026
14027 Mon Oct 30 19:23:50 2000  Jonathan Blandford  <jrb@redhat.com>
14028
14029         * gtk/gtktreeview.c (gtk_tree_view_expand_row): New function.
14030
14031         * gtk/gtktreeview.c (gtk_tree_view_collapse_row): New function.
14032
14033         * gtk/gtktreeview.c, gtk/gtktreemodel.c, gtk/gtktreeselection.c
14034         gtk/gtktreestore.h, gtk/gtktreeview.h, gtk/gtktreeviewcolumn.c,
14035         gtk/gtktreeviewcolumn.h: Fixed inline docs.
14036
14037         * docs/reference/gtk/tree_widget.sgml: Proto intro to the tree
14038         widget.  Needs writing someday.
14039
14040         * docs/reference/gtk/tmpl/gtktree*sgml: Added the tree widget to
14041         the docs.
14042
14043 2000-10-30  Havoc Pennington  <hp@redhat.com>
14044
14045         * gtk/gtktextview.h, gtk/gtktextview.c:
14046         Rename delete_at_cursor delete_from_cursor, and 
14047         move to move_cursor.
14048
14049 2000-10-30  Havoc Pennington  <hp@redhat.com>
14050
14051         * gtktextbtree.c, gtktextbtree.h, gtktextbuffer.c,
14052         gtktextbuffer.h, gtktextchild.c, gtktextchild.h,
14053         gtktextchildprivate.h, gtktextdisplay.c, gtktextdisplay.h,
14054         gtktextiter.c, gtktextiter.h, gtktextiterprivate.h,
14055         gtktextlayout.c, gtktextlayout.h, gtktextmark.c, gtktextmark.h,
14056         gtktextmarkprivate.h, gtktextsegment.c, gtktextsegment.h,
14057         gtktexttag.c, gtktexttag.h, gtktexttagprivate.h,
14058         gtktexttagtable.c, gtktexttagtable.h, gtktexttypes.c,
14059         gtktexttypes.h, gtktextview.c, gtktextview.h:
14060
14061         Massive reindentation and reformatting. Arg alignment and comments
14062         still need fixing in various places.
14063
14064 2000-10-30  Havoc Pennington  <hp@redhat.com>
14065
14066         * gtk/gtktextview.h, gtk/gtktextview.c: Change run action signals
14067         to be named insert_at_cursor and delete_at_cursor so C++ can
14068         handle them.
14069
14070 2000-10-28  Tor Lillqvist  <tml@iki.fi>
14071
14072         * gtk/gtkrc.c (gtk_rc_append_default_module_path): Make sure not
14073         to get a double directory separator in case the home directory
14074         ends with one. This would cause trouble especially on Windows,
14075         where the path will be confused with the syntax for an an UNC
14076         (network share) path \\server\share\path.
14077         (gtk_rc_add_initial_default_files): Ditto.
14078
14079 Sat Oct 28 02:33:09 2000  Robert Brady  <robert@suse.co.uk>
14080
14081         * gtk/gtkmarshal.list: add new marshallers for GtkTextView.
14082
14083         * gtk/gtktextview.c: Use correct marshallers.
14084
14085 Fri Oct 27 17:56:26 2000  Jonathan Blandford  <jrb@redhat.com>
14086
14087         * gtk/gtkliststore.c: Not sure how this ever worked.  Fixed it to
14088         use new iter stuff, and added all the appropriate signals et al.
14089
14090         * gtk/gtktreedatalist.h: s/gtk/_gtk to further reinforce that this
14091         code is internal to gtk only.
14092
14093 2000-10-28  Tor Lillqvist  <tml@iki.fi>
14094
14095         * gtk/gtk.def
14096         * gtk/makefile.{mingw,msc}.in: Adjust to Tim's changes. Use
14097         glib-genmarshal etc.
14098
14099 Fri Oct 27 20:15:00 2000  Tim Janik  <timj@gtk.org>
14100
14101         * gtk/Makefile.am: added dependancies for testtextbuffer which broke
14102         parallel builds.
14103
14104 Fri Oct 27 18:51:44 2000  Tim Janik  <timj@gtk.org>
14105
14106         * gtk/gtksignal.[hc]: adapt to GSignal signature changes.
14107
14108 2000-10-27  Robert Brady  <robert@suse.co.uk>
14109
14110         * configure.in (ALL_LINGUAS): Add en@IPA (English, phonetic), 
14111         en_GB (British), ia (Interlingua).
14112
14113 2000-10-26  Havoc Pennington  <hp@redhat.com>
14114
14115         * gtk/gtktextiter.c (my_strrstr): fix constness warning
14116
14117         Fixed output of:
14118         nm -g -l .libs/libgtk-x11-1.3.so | grep ' T ' | grep -v gtk_ | grep -v GTK_
14119         
14120         * gtk/gtktextsegment.c (char_segment_new): rename
14121         (_char_segment_new_from_two_strings): rename
14122         (_toggle_segment_new): rename
14123         
14124         * gtk/gtkclipboard.c (ensure_clipboard_widget): make this static
14125         (make_clipboard_widget): make it static
14126         (text_get_func): static
14127         (text_clear_func): static
14128
14129         * gtk/gtkcolorsel.c (adjustment_changed): make this function
14130         static
14131         (hex_changed): make it static
14132         (hsv_changed): make it static
14133         (opacity_entry_changed): make it static
14134
14135         * gtk/gtktextbtree.c (change_node_toggle_count): rename with _gtk
14136         (toggle_segment_check_func): rename with _gtk
14137
14138         * gtk/gtktextchild.c (_pixbuf_segment_new): rename with _gtk
14139         (_widget_segment_new): rename
14140         (_widget_segment_add): rename
14141         (_widget_segment_remove): rename
14142         (_widget_segment_ref): rename
14143         (_widget_segment_unref): rename
14144
14145         * gtk/gtktextmark.c (_mark_segment_new): Rename
14146         _gtk_mark_segment_new   
14147
14148 2000-10-26  Havoc Pennington  <hp@redhat.com>
14149
14150         * gtk/gtkmarshal.list: add new marshallers used by the text widget
14151         * gtk/gtktextbuffer.c (gtk_text_buffer_class_init): fix marshaller
14152         types
14153
14154         * gtk/gtktexttagtable.c (gtk_text_tag_table_class_init): fix
14155         marshaller types
14156
14157         * gtk/gtktextlayout.h, gtk/gtktextlayout.c, gtk/gtktextdisplay.h,
14158         gtk/gtktextdisplay.c: We need to preserve Tk copyrights and
14159         license on these files.
14160
14161         * gtk/gtktextiter.c (gtk_text_iter_backward_search): Make this
14162         work.
14163
14164         * gtk/gtktextbtree.c (gtk_text_btree_new): init stamps to 
14165         runtime random number different for each tree, instead of 
14166         a constant I made up.
14167
14168 Thu Oct 26 07:36:16 2000  Tim Janik  <timj@gtk.org>
14169
14170         * gtk/Makefile.am: buncha cleanups, kludged build sources
14171         dependencies with a Makefile: oldest-source-stamp dependancy
14172         for the moment. automake is really fighting us here, with
14173         intentionally not allowing user-defined rules or dependancies
14174         prior to it's -include $(DEP_FILES) statement. sucks rocks!
14175
14176         * gtk/Makefile.am: added gtktextlayout.h and gtktextdisplay.h
14177         to public headers. tehy have a comment stating that they are
14178         "semi-public" aren't included by gtk.h and if enums popup there,
14179         they can be /*< skip >*/-ed.
14180
14181         * gtk/gtktextlayout.h: 
14182         * gtk/gtktextdisplay.h: indentation fixes, comment fixes,
14183         added LGPL... <SIGH>
14184
14185 Wed Oct 25 20:40:25 2000  Jonathan Blandford  <jrb@redhat.com>
14186
14187         * gtk/gtktreemodel.h: Got rid of GtkTreeNode, and changed it to
14188         GtkTreeIter.  Added iterators everywhere.
14189
14190         * gtk/gtktreeviewcolumn.c: Changed to use the iterators.
14191
14192         * gtk/gtktreeviewselection.c: Changed to use the iterators.
14193
14194         * gtk/gtktreestore.c: Changed to use the iterators.
14195
14196         * gtk/gtkliststore.c: Commented out the code.  Will convert to
14197         iterators tomorrow.
14198
14199         * gtk/gtkmodelsimple.c: Commented out the code.  Will convert to
14200         iterators tomorrow.
14201
14202         * gtk/treestoretest.c: Changed to use iterators.
14203
14204         * demos/testgtk/main.c: Moved to use the new iterator system.
14205
14206 Thu Oct 26 02:10:32 2000  Tim Janik  <timj@gtk.org>
14207
14208         * gtk/Makefile.am: invoke maketypes.awk with LC_ALL=C to avoid
14209         localization misbehaviour.
14210
14211         * gtk/gtk-boxed.defs: nuked "boxed" type GtkCTreeNode, since it's
14212         a useless type without copy/free.
14213
14214         * gtk/gtkctree.c (gtk_ctree_class_init): use GTK_TYPE_POINTER instead
14215         of GTK_TYPE_CTREE_NODE.
14216
14217 Thu Oct 26 00:51:52 2000  Tim Janik  <timj@gtk.org>
14218
14219         * gtk/gtksignal.c:
14220         (gtk_signal_emitv): use g_value_set_static_{string|boxed} where
14221         applicable.
14222
14223         * gtk/gtk-boxed.defs (GtkSelectionData): specify
14224         gtk_selection_data_copy and gtk_selection_data_free
14225         do GtkSelectionData work as params in signals.
14226
14227 Wed Oct 25 20:47:41 2000  Tim Janik  <timj@gtk.org>
14228
14229         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init): urg, removed
14230         implementation of gtk_marshal_VOID__INT_INT_INT_INT. if people do that,
14231         couldn't they at least give it a non-standard name?
14232         
14233         * gtk/gtktextlayout.c: arg! yet another implementation of
14234         gtk_marshal_VOID__INT_INT_INT_INT(), is this a conspiracy?
14235
14236         * gtk/gtktextbuffer.c: gotcha! captured a vagabonding
14237         gtk_marshal_VOID__INT_POINTER_INT() implementation, braught it back
14238         home. now i know this _is_ a conspiracy.
14239
14240         * gtk/gtkwidget.c (gtk_widget_class_init): marshaller fixups for
14241         ::state-changed.
14242
14243         * gtk/gtkaccelgroup.c (gtk_accel_group_create_remove): 
14244         (gtk_accel_group_create_add): marshaller signature fixups.
14245
14246         * gtk/gtklistitem.c (gtk_list_item_class_init): signal creation fixups,
14247         pass in GTK_TYPE_SCROLL_TYPE instead of GTK_TYPE_ENUM.
14248
14249         * gtk/gtkobject.[hc]: removed GTK_CONNECTED flag, it's not valid
14250         anymore.
14251
14252 Tue Oct 24 23:59:21 2000  Tim Janik  <timj@gtk.org>
14253
14254         * docs/reference/Makefile.am: disabled SUBDIRS for the moment, since
14255         due to the signal system changes, it wouldn't build currently. to
14256         be fixed soon.
14257
14258         * docs/Changes-2.0.txt: GtkSignal/GSignal updates.
14259
14260         * gtk/gtkwidget.c: ::direction_changed takes an enum as argument,
14261         so it needs gtk_marshal_VOID__ENUM() instead of
14262         gtk_marshal_NONE__UINT().
14263
14264         * gdk/gdk*.c: adapted type registration functions.
14265
14266         * gtk/gtkbindings.c:
14267         * gtk/gtkaccelgroup.c: operate on GSignalQuery, GtkSignalQuery is
14268         gone.
14269
14270         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType.
14271
14272         * gtk/gtkobject.c:
14273         (gtk_object_destroy):
14274         (gtk_object_shutdown): fixed recursion guards. basically we have to
14275         catch the case where any of GObject.shutdown() or gtk_object_destroy()
14276         is called during ::destroy, and avoid recursion there.
14277
14278         * gtk/gtktypeutils.c:
14279         * gtk/maketypes.awk: awk-script hackup to provide gtk_type_init() with
14280         boxed_copy/boxed_free. this needs a more general solution based on a
14281         publically installed code-generator utility.
14282
14283         * gtk/gtktypeutils.[hc]: compat aliased GTK_TYPE_BOXED to G_TYPE_BOXED,
14284         glib's gobject has support for that now.
14285         define GtkSignalMarshaller in terms of GSignalCMarshaller.
14286
14287 Mon Oct 23 09:36:42 2000  Tim Janik  <timj@gtk.org>
14288
14289         * gtk/gtksignal.[hc]:
14290         * gtk/gtkmarshal.[hc]:
14291         * gtk/Makefile.am: generate marshallers with glib-genmarshal and don't
14292         compile gtkmarshal.c on its own anymore, just include it in gtksignal.c.
14293         removed #include <gtkmarshal.h>s all over the place, gtksignal.h takes
14294         care of that.
14295
14296         * *.c: marshaller name fixups.
14297
14298         * gtk/gtkmarshal.list: added a comment briefing the format.
14299
14300 Sun Oct 22 23:14:39 2000  Tim Janik  <timj@gtk.org>
14301
14302         * gtk/gtksignal.[hc]: nuked old implementation. we mostly have
14303         compatibility macros here now. more specifically, most of
14304         the API is preserved (yes, _most_, nonwithstanding the
14305         following exceptions listed, the API is stil lHUGE ;)
14306         things that got removed completely:
14307         GtkSignalQuery, gtk_signal_query(), gtk_signal_n_emissions(),
14308         gtk_signal_n_emissions_by_name(), gtk_signal_handlers_destroy(),
14309         gtk_signal_set_funcs(), gtk_signal_handler_pending_by_id(),
14310         gtk_signal_add_emission_hook(), gtk_signal_add_emission_hook_full(),
14311         gtk_signal_remove_emission_hook().
14312         non-functional functions variants:
14313         gtk_signal_add_emission_hook(), gtk_signal_remove_emission_hook().
14314         the GtkCallbackMarshal argument to gtk_signal_connect_full() is
14315         not supported anymore.
14316         (gtk_signal_compat_matched): new internal function to aid
14317         implementation of the compatibility macros, it  provides
14318         functionality to block/unblock/disconnect handlers based
14319         on func/data.
14320
14321         * gtk/gtkenums.h: define GtkSignalRunType in terms of GSignalType,
14322
14323         * *.c: adaptions to new type registration API signatures.
14324
14325 Fri Oct 20 15:26:33 2000  Tim Janik  <timj@gtk.org>
14326
14327         * gtk/gtktypeutils.[hc]: removed G_TYPE_GTK_POINTER cludge.
14328
14329 2000-10-25  Robert Brady  <robert@suse.co.uk>
14330
14331         * gdk/x11/gdkproperty-x11.c (gdk_property_get, gdk_property_change,
14332         gdk_property_delete): If window == NULL, assume the root window.
14333         (restoring the behaviour that was in 1.2).
14334         
14335         * gtk/testtext.c (save_buffer): Allow creation of new files when
14336         saving.
14337
14338         (fill_file_buffer): Don't die if a UTF-8 sequence is split across
14339         calls to read().
14340
14341 2000-10-25  Tor Lillqvist  <tml@iki.fi>
14342
14343         * gdk/gdkwindow.c: Include x11/gdkx.h only when building for X11.
14344
14345         * gdk/win32/gdkdrawable-win32.c
14346         * gdk/win32/gdkimage-win32.c
14347         * gdk/win32/gdkprivate-win32.h: Corresponding changes as in the
14348         X11 backend.
14349
14350         * gdk/win32/gdkcc-win32.c
14351         * gdk/win32/gdkcolor-win32.c
14352         * gdk/win32/gdkfont-win32.c
14353         * gdk/win32/gdkinput-win32.c
14354         * gdk/win32/gdkmain-win32.c
14355         * gdk/win32/gdkproperty-win32.c: Silence gcc -Wall.
14356
14357 2000-10-24  Havoc Pennington  <hp@redhat.com>
14358
14359         * gtk/gtktextview.c (gtk_text_view_scroll_to_mark_adjusted): make
14360         it a static function
14361
14362         * gtk/gtktextbtree.c (gtk_text_btree_tag): Gee, maybe we should
14363         redraw text when a tag is applied to it.
14364
14365         * gtk/gtktexttag.c (gtk_text_tag_affects_size)
14366         (gtk_text_tag_affects_nonsize_appearance): private functions to
14367         see if a tag requires various kinds of redraw/layout to be queued
14368         up.
14369
14370         * gtk/gtktexttag.h (struct _GtkTextTag): Remove relief crackrock
14371
14372         * gtk/testtext.c (fill_example_buffer): Put the cursor 
14373         at the start of the buffer, so search works by default
14374
14375         * gtk/gtktextiter.c (lines_match): init match_start always
14376
14377         * gtk/gtktextbuffer.c (gtk_text_buffer_get_iter_at_line_index): New
14378         function, get iter at a line + a byte index
14379
14380         * gtk/gtktextiter.c (gtk_text_iter_set_line_index): New function,
14381         to set byte position within a line
14382         (gtk_text_iter_check): remove leftover G_BREAKPOINT thing
14383
14384 2000-10-23  Havoc Pennington  <hp@redhat.com>
14385
14386         * gtk/testtext.c: Re-enable the "find" dialog
14387
14388         * gtk/testgtk.c: Add test for gdk_drawable_get_image
14389         
14390         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix bug where
14391         the arguments to gdk_draw_drawable were in the wrong order
14392         (gdk_window_paint_init_bg): This function was ignoring the
14393         init_region, instead of clipping to it, so the entire backing
14394         pixmap was cleared on every begin_paint()
14395         (gdk_window_begin_paint_region): Hmm, the same list-walking bug
14396         was in here again, the loop kept using the same GtkWindowPaint
14397         over and over.
14398         (gdk_window_begin_paint_region): Fix a bug where we had two
14399         x_offset instead of x_offset and y_offset
14400
14401         * gdk/gdkdraw.c (gdk_drawable_get_image): get composite drawable
14402         before we get the image.
14403         (gdk_draw_drawable): get the composite before we draw the drawable.
14404         (gdk_drawable_real_get_composite_drawable): default
14405         get_composite_drawable implementation that returns the drawable 
14406         itself
14407
14408         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Add
14409         get_composite_drawable virtual function
14410
14411         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Fix a cheesy
14412         list-walking bug
14413
14414         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable): Add a hack to
14415         make this work if the source drawable is a GdkDrawableImplX11
14416         instead of a public drawable type. This is really broken; the
14417         problem is that GdkDrawable needs a virtual method get_xid(), but
14418         of course that doesn't work in practice. Enter RTTI.
14419
14420         Also, improve mismatched depth message.
14421
14422         * gdk/gdkpixmap.c (gdk_pixmap_get_image): Implement get_image for
14423         GdkPixmap
14424
14425         * gdk/x11/gdkdrawable-x11.c (gdk_drawable_impl_x11_class_init):
14426         install _gdk_x11_get_image as our implementation of get_image
14427         
14428         * gdk/x11/gdkimage-x11.c (gdk_image_get): Rename to
14429         _gdk_x11_get_image and export for use in gdkdrawable-x11.c
14430
14431         * gdk/gdkimage.c (gdk_image_get): Make this just a wrapper around
14432         gdk_drawable_get_image
14433
14434         * gdk/gdkdraw.c (gdk_drawable_get_image): call virtual get_image
14435
14436         * gdk/gdkdrawable.h (struct _GdkDrawableClass ): Virtualize
14437         get_image
14438
14439         * gtk/gtktreestore.c (gtk_tree_store_get_node): remove weird
14440         trailing semicolon after for loop
14441
14442 Mon Oct 23 12:07:57 2000  Owen Taylor  <otaylor@redhat.com>
14443
14444         * gtk/gtkwidget.c (gtk_widget_set_style_internal): Fix problem
14445         where font_desc for widget's context lagged widget's font_desc by
14446         one step.
14447
14448 2000-10-22  Tor Lillqvist  <tml@iki.fi>
14449
14450         * gdk/win32/gdkgc-win32.c
14451         * gdk/win32/gdkimage-win32.c: Remove gcc -Wall warnings.
14452
14453         * gtk/makefile.mingw.in
14454         * gtk/gtk.def: Updates.
14455
14456         * gtk/testgtk.c: sleep() is called _sleep in MS's C
14457         library.
14458
14459         * gtk/gtkimcontextsimple.c: Include <stdlib.h> for bsearch().
14460
14461         * gtk/makefile.msc: Remove
14462
14463         * gtk/makefile.msc.in: New file, like makefile.mingw.in.
14464
14465         * gtk/Makefile.am: Add it.
14466
14467         * configure.in: Generate it.
14468
14469         * gtk/gtktextbuffer.c (gtk_text_buffer_create_child_anchor)
14470         * gtk/gtktextbtree.c (gtk_text_line_char_to_byte): Return
14471         something even if not implemented, to satisfy picky MSVC.
14472
14473         Patches by Hans Breuer:
14474         
14475         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_glyphs): Call
14476         SetBkMode() and SetTextAlign() before calling
14477         pango_win32_render().
14478
14479         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_values_to_win32values):
14480         Set hcliprgn to NULL after destroying it.
14481         (gdk_gc_set_clip_rectangle): Delete hcliprgn and set to NULL.
14482
14483         * gdk/win32/gdkgeometry-win32.c
14484         (_gdk_windowing_window_queue_antiexpose): More effective
14485         implementation.
14486
14487         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_new): Use drawable's
14488         depth as default, not the visual's.
14489
14490         * gdk/win32/gdkwindow-win32.c (gdk_window_set_title): Guard
14491         against empty title.
14492
14493         * gdk/win32/gdkprivate-win32.h: Define a helper macro,
14494         IMAGE_PRIVATE_DATA.
14495
14496         * gdk/win32/gdkimage-win32.c: Use it.
14497
14498 2000-10-22  Robert Brady  <robert@suse.co.uk>
14499
14500         * configure.in: Check for bind_textdomain_codeset
14501
14502         * gtk/gtkmain.c (gtk_init_check): If bind_textdomain_codeset 
14503         present, make use of it.
14504
14505         Add a translatable string "default:LTR" which, if translated
14506         to "default:RTL", will cause the default direction to be
14507         Right-to-Left.
14508
14509         * gtk/gtkrange.h, gtk/gtkrange.c: Take into account the widget 
14510         direction if marked as flippable.
14511
14512         * gtk/gtkhscale.c: Mark widget as flippable.
14513         
14514 2000-10-04  Havoc Pennington  <hp@redhat.com>
14515
14516         * gtk/testgtk.c (create_buttons): create some stock buttons
14517         with the default accel group
14518         (create_image): test some new GtkImage features
14519         (make_message_dialog): test GtkMessageDialog
14520         (create_modal_window): fix someone's bizzarro indentation
14521
14522         * gtk/gtkwindow.h, gtk/gtkwindow.c: Implement 
14523         GTK_WIN_POS_CENTER_ON_PARENT. 
14524         Add "destroy with parent" setting, which means the window goes
14525         away with its transient parent.
14526         (gtk_window_get_default_accel_group): get the default accel group
14527         for the window.
14528         (gtk_window_set_destroy_with_parent): set/unset destroy with
14529         parent flag
14530         (gtk_window_read_rcfiles): invalidate icon set caches
14531         after reloading rcfiles 
14532
14533         * gtk/gtkenums.h (GtkWindowPosition): add
14534         GTK_WIN_POS_CENTER_ON_PARENT, which centers a dialog 
14535         on its parent window when the dialog is mapped for the first time.
14536
14537         * gtk/gtkmessagedialog.h, gtk/gtkmessagedialog.c: Add 
14538         a simple message dialog class
14539         
14540         * gtk/gtkdialog.c (gtk_dialog_init): Connect delete event 
14541         handler to emit response signal, and maybe later it would
14542         honor a hide_on_delete flag - though that isn't there yet.
14543         Set border width on the vbox to 2, so we get some padding.      
14544         Use a button box for the action area.
14545         (gtk_dialog_key_press): synthesize a delete event if Esc
14546         is pressed and the GtkWidget key press handler didn't 
14547         handle the escape key.
14548         (gtk_dialog_new_with_buttons): new function creates a dialog
14549         with some default buttons in it.
14550         (gtk_dialog_add_action_widget): add an activatable widget
14551         as a button in the dialog - you can also add a non-activatable
14552         widget by accessing the action area directly.
14553         (gtk_dialog_add_button): add a simple button - stock ID or 
14554         label - to the action area
14555         (gtk_dialog_response): emit response signal
14556         (gtk_dialog_run): block waiting for the dialog, return 
14557         the response. Override normal delete_event behavior, so that 
14558         delete_event does nothing inside gtk_dialog_run().
14559
14560         * gtk/gtkdialog.h, gtk/gtkdialog.c: Add "response" signal
14561         emitted when an action widget is clicked or the dialog gets
14562         delete_event
14563
14564         * gtk/gtk.h: add gtkmessagedialog.h
14565
14566         * gtk/Makefile.am: add gtkmessagedialog.[hc]
14567
14568 2000-10-18  Havoc Pennington  <hp@redhat.com>
14569
14570         * gtk/gtktextiter.c (gtk_text_iter_forward_to_newline): Fix a bug 
14571         where any number of empty lines would get skipped
14572
14573         * gtk/gtktextiter.h: Remove padding from GtkTextIter; live on the
14574         edge.
14575
14576         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): enhance the
14577         warning about invalid iterators (explain more thoroughly)
14578         (gtk_text_iter_in_region): rename gtk_text_iter_in_range
14579
14580         * gtk/gtktextview.c (FOCUS_EDGE_WIDTH): Make focus rectangle less
14581         big
14582
14583         * demos/*.c: Add error handling
14584
14585         * gtk/gtktextbuffer.c: don't modify const iterators
14586
14587         * gtk/gdk-pixbuf-loader.c: Add full error handling here
14588
14589         * gtk/gtkimage.c (gtk_image_set_from_file): ignore errors
14590         on file load
14591
14592         * gtk/gtkiconfactory.c: Update to reflect addition of error
14593         handling to gdk-pixbuf loaders
14594
14595 Wed Oct 18 11:14:05 2000  Owen Taylor  <otaylor@redhat.com>     
14596
14597         * configure.in demos/Makefile.am demos/testgtk/*: Start of work to
14598         move to new modularized testgtk.
14599
14600 2000-10-17  Jonathan Blandford  <jrb@redhat.com>
14601
14602         * gtk/gtktreeview.c: Draw the arrows correctly.
14603
14604         * gtk/gtktreemodel.c: Added user docs.
14605
14606         * gtk/gtk.h: remove gtktreedatalist.h.
14607
14608         * gtk/gtktreestore.c (gtk_tree_store_get_type): Get the correct
14609         parent when generating my type.
14610
14611         * gtk/gtkmarshal.list: Added four more marshallers: INT:NONE,
14612         POINTER:NONE, POINTER:POINTER, and POINTER:POINTER,INT.
14613
14614 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14615
14616         * gtk/gtktreemodel.h (struct _GtkTreeModelIface): Move
14617         GtkTreeModel from object to interface.
14618
14619 2000-10-16  Havoc Pennington  <hp@redhat.com>
14620
14621         * gtk/gtktreeviewcolumn.c: #include gtklabel.h, fixing 
14622         compilation
14623
14624 2000-10-16  Jonathan Blandford  <jrb@redhat.com>
14625
14626         * gtk/gtktreeselection.c: Add API documentation to all public
14627         functions.
14628
14629         * gtk/gtktreeviewcolumn.c: Added API documentation to all public
14630         functions.
14631
14632 2000-10-15  Jonathan Blandford  <jrb@redhat.com>
14633
14634         * gtk/gtktreeview.c (gtk_tree_view_insert_column): New function
14635         proposed by Guy Harris <gharris@flashcom.net>.  Also, added API
14636         docs to all public functions.
14637
14638         * gtk/gtktreeview.c, gtk/gtktreeview.h, gtk/gtktreestore.h,
14639         gtk/gtktreestore.c, gtk/gtkliststore.h, gtk/gtkliststore.c,
14640         gtk/gtkmodelsimple.c, gtk/gtkmodelsimple.h, gtk/gtktreedatalist.c,
14641         gtk/gtktreemodel.h, gtk/gtktreeselection.c,
14642         gtk/gtktreeselection.h: Fix GtkTreeNode *node ->GtkTreeNode node
14643         issue.
14644
14645 2000-10-14  Robert Brady  <robert@suse.co.uk>
14646
14647         * configure.in: Added "fa" (Persian) to ALL_LINGUAS.
14648
14649 2000-10-12  Jonathan Blandford  <jrb@redhat.com>
14650
14651         * gtk/gtktreedatalist.[ch] (gtk_tree_data_list_value_to_node): Added
14652         values other then G_TYPE_STRING.
14653         * gtk/gtktreeselection.c: Minor commenting updates.
14654         * gtk/gtktreeview.c: Format updates.
14655
14656 2000-10-09  Tor Lillqvist  <tml@iki.fi>
14657
14658         * README.win32: Update.
14659
14660         * gdk/win32/gdkgeometry-win32.c (gdk_window_clip_changed): Add two
14661         lines that had been deleted by mistake (?).
14662
14663         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Handle
14664         also the case fg==white and bg==black (but still not randomly
14665         coloured cursors). Thanks to Wolfgang Sourdeau.
14666
14667         * gdk/win32/*.c: Silence gcc -Wall.
14668
14669         * gtk/gtk.def: Add missing entry points.
14670
14671         Fixes by Hans Breuer:
14672
14673         * gdk/makefile.msc
14674         * gdk/win32/makefile.msc: Update.
14675
14676         * gdk/testgdk.c: If compiling with debugging (with _DEBUG defined,
14677         some MSVC thing, presumably), cause breakpoint on failures. Add
14678         GDK_NOR case. Call g_log_set_always_fatal.
14679
14680         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_insert): Handle
14681         should be pased by reference.
14682         
14683         * gdk/win32/gdkprivate-win32.h: Correct declaration accordingly.
14684         
14685         * gdk/win32/*.c: Correct calls to gdk_win32_handle_table_insert.
14686
14687         * gdk/win32/gdkevents-win32.c
14688         * gdk/win32/gdkwindow-win32.c: Handle WM_CREATE.
14689
14690         * gdk/win32/gdkgc-win32.c: Fix mixups of drawable and
14691         implementation object.
14692
14693         * gdk/win32/gdkimage-win32.c (gdk_image_get): Handle drawables,
14694         not just windows.
14695         
14696         * gdk/win32/gdkpixmap-win32.c (gdk_pixmap_impl_win32_finalize):
14697         Use the wrapper object.
14698         
14699 2000-10-06  Havoc Pennington  <hp@redhat.com>
14700
14701         * Makefile.am (SRC_SUBDIRS): contrib subdir
14702
14703         * gdk/gdkpixbuf.h: Move GdkPixbufAlphaMode to gdk-pixbuf library,
14704         so it can be used in Xlib version
14705
14706         * demos/testpixbuf.c (update_timeout): error checking from 1.0
14707         tree
14708
14709         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_get_pixbuf): Sync
14710         change from 1.0 tree that returns first frame of animation
14711         if the loaded file is an animation.
14712
14713         * contrib: add new directory to hold stuff that comes with GTK+
14714         but isn't really part of GTK+ (for now, gdk-pixbuf-xlib)
14715         
14716         * configure.in: add contrib/*
14717
14718 2000-10-05  Havoc Pennington  <hp@redhat.com>
14719
14720         * demos/testpixbuf-save.c: add pixbuf save test
14721
14722         * demos/Makefile.am: add testpixbuf-save.c
14723
14724 2000-10-05  Jonathan Blandford  <jrb@redhat.com>
14725
14726         * gtk/gtktree.h (GTK_TREE_SELECTION): Replaced with
14727         GTK_TREE_SELECTION_OLD to prevent conflict with gtktreeselection.c
14728         * gtk/testgtk.c: s/GTK_TREE_SELECTION/GTK_TREE_SELECTION_OLD/
14729         * gtk/gtktreeselection.[ch]: Replaced
14730         "node_selected"/"node_unselected" signal with "selection_changed"
14731         signal.
14732
14733 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14734
14735         * gtk/gtk{tree,cell}?*.[ch]: Checked in initial draft of the new
14736         tree widget.
14737
14738 2000-10-04  Jonathan Blandford  <jrb@redhat.com>
14739
14740         * gdk/gdkwindow.c (gdk_window_draw_arc): Fix obvious bug in circle
14741         drawing.
14742
14743 Wed Oct  4 15:52:15 2000 Owen Taylor  <otaylor@redhat.com>
14744
14745         * gdk/x11/gdkselection-x11.c (_gdk_selection_window_destroyed):
14746         Move list pointer forwards before removing item from
14747         list. (Crash reported by Salmaso Raffaele)
14748
14749         * gdk/gdkwindow.h: Remove spurious trailing ,
14750
14751         * gdk/Makefile.am (LDFLAGS): You can't do interlibrary
14752         dependencies on uninstalled libraries, sorry folks.
14753
14754 2000-10-04  Havoc Pennington  <hp@redhat.com>
14755
14756         * gtk/gtkstock.h, gtk/gtkstock.c, gtk/gtkiconfactory.h,
14757         gtk/gtkiconfactory.c: Fix copyrights    
14758
14759         * demos/testpixbuf.c: add inline pixbuf test
14760         
14761 Mon Sep 25 15:05:17 2000  Owen Taylor  <otaylor@redhat.com>
14762
14763         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c (gdk_window_iconify):
14764         Add gdk_window_iconify.
14765
14766         * gdk/gdkwindow.h gdk/x11/gdkwindow-x11.c
14767         (gdk_window_set_geometry_hints): Add win_gravity
14768         to geometry structure.
14769
14770         * gdk/x11/gdkevents-x11.c (gdk_wm_protocols_filter):
14771         Implement _NET_WM_PING.
14772
14773         * gdk/x11/gdkmain-x11.c (_gdk_windowing_init_check):
14774         Set _NET_WM_PID on the client leader.
14775
14776         * gdk/x11/gdkwindow-x11.c (gdk_window_set_icon_name):
14777         Handle UTF-8 better.
14778
14779         * gdk/x11/gdkwindow-x11.c (gdk_window_set_title): Handle
14780         UTF-8 better, set _NET_WM_NAME as well. Only set
14781         icon name if it hasn't previously been explicitely 
14782         set.
14783
14784 2000-10-03  Havoc Pennington  <hp@redhat.com>
14785
14786         * gtk/testtextbuffer.c: clean up trailing whitespace,
14787         add extensive tests for tag toggle iteration.
14788         
14789         * gtk/gtktextiter.c (MAX_LINEAR_SCAN): decrease linear scan 
14790         distance
14791
14792         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
14793         optimize case where the tag root is on level 1
14794         (gtk_text_line_previous_could_contain_tag): attempt to implement
14795         (gtk_text_line_next_could_contain_tag): Abstract out node_compare
14796         functionality
14797
14798         * gtk/gtktextiter.c (gtk_text_iter_backward_to_tag_toggle):
14799         Implement this, though not very efficiently.
14800
14801         * gtk/gtktextiterprivate.h: reformat
14802
14803         * gtk/gtktextiter.c (gtk_text_iter_get_char): return 0 on the end
14804         iterator
14805
14806         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_interactive): Fix
14807         this to properly revalidate the iterators.
14808
14809         * gtk/gtktextview.c (gtk_text_view_delete): fix control-K to work
14810         properly at the end of the line (and therefore on empty lines)
14811
14812         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Gee,
14813         maybe we should return a value...
14814
14815 2000-10-03  Tor Lillqvist  <tml@iki.fi>
14816
14817         * config.h.win32: Guard definition of alloca(). glib.h now handles
14818         that.
14819
14820         * gdk/gdk.def
14821         * gtk/gtk.def: Add new entry points.
14822
14823         Changes just to make GTK+ build without errors on Win32. No hope
14824         of it working in its current state, though...:
14825         
14826         * gdk/win32/gdkselection-win32.c: Remove gcc -Wall warnings.  Add
14827         some functions from the X11 backend, just to make GTK+ build.
14828
14829         * gdk/makefile.mingw.in
14830         * gtk/makefile.mingw.in: Use correct gdk_pixbuf version
14831         number. Add new object files.
14832
14833         * gtk/gtkclipboard.c: Include gdkwin32.h on Win32. Use
14834         GetMessageTime to get timestamp (where on X11 uses
14835         gdk_x11_get_server_time()).
14836
14837 2000-10-02  Havoc Pennington  <hp@pobox.com>
14838
14839         * gtk/gtktextview.c: text_window_* weren't static and should have
14840         been.
14841         Start work on child widgets; not yet complete, syncing to 
14842         office computer.
14843
14844         * gtk/gtktextchild.h: change this to contain a public interface,
14845         starting work on child interfaces.
14846         * gtk/gtktextchildprivate.h: move private interfaces here
14847
14848         * gtk/Makefile.am: update to reflect gtktextchildprivate.h
14849
14850         * gtk/gtktextview.h, gtk/gtktextview.c, gtk/gtktextbuffer.h,
14851         gtk/gtktextbuffer.c, gtk/gtktextiter.h, gtk/gtk/textiter.c, 
14852         gtk/gtktextmark.c: copyright notices
14853
14854         * gtk/gtktextmarkprivate.h: reformat, and put _ in front of
14855         internal functions      
14856
14857         * gtk/gtktextchild.c (_pixbuf_segment_new): put _ in front of
14858         internal function
14859
14860         * gtk/gtktextlayout.c (gtk_text_layout_get_line_display):
14861         Reformatting    
14862
14863 2000-09-30  Havoc Pennington  <hp@pobox.com>
14864
14865         * gtk/gtktextbtree.c (gtk_text_btree_get_selection_bounds): Handle
14866         NULL start/end pointers
14867
14868         * gtk/gtktextbuffer.c: Write some docs
14869         (gtk_text_buffer_get_selection_bounds): Allow start/end to be
14870         NULL, so you can just check whether there's a selection.        
14871
14872         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): No need to 
14873         cleanup_line or segments_changed ourselves, it gets done 
14874         in unlink_segment
14875
14876         * gtk/gtktextmark.h:
14877         s/gtk_text_mark_deleted/gtk_text_mark_get_deleted/
14878         
14879         * gtk/gtktextsegment.h: Clean up some indentation and naming mess
14880
14881         * gtk/gtktextmark.c: delete some more old Tk cruft
14882
14883         * gtk/gtktextbuffer.c (gtk_text_buffer_delete_mark): add ref to
14884         mark before removing it, so we can emit MARK_DELETED with a valid
14885         pointer.
14886         (gtk_text_buffer_mark_set): hold ref across signal emission
14887
14888         * gtk/gtktextbtree.c (gtk_text_btree_remove_mark): improve
14889         whining about attempts to delete special marks
14890
14891         * gtk/gtktextbuffer.c (_gtk_text_buffer_spew): Prepend with
14892         underscore, since it's internal.
14893
14894         * gtk/gtktextbuffer.h: Remove find_string prototype, this is 
14895         now implemented in terms of iterators in gtktextiter.h
14896
14897         * gtk/gtktextbuffer.c (gtk_text_buffer_set_text): 
14898         New function, destructively sets contents of buffer. Also 
14899         a convenient way to clear the buffer by setting text to ""
14900
14901         * gtk/gtktextiter.c (gtk_text_iter_make_surreal): reformat
14902         multiline string literal
14903
14904         * gtk/testtext.c (text_changed_callback): Redraw line numbers if
14905         text changes.
14906
14907         * gtk/gtktextiter.c (forward_char): Return FALSE if new location 
14908         is not dereferenceable
14909         (gtk_text_iter_forward_lines): fix return value
14910
14911 2000-09-29  Havoc Pennington  <hp@redhat.com>
14912
14913         * gtk/gtktexttag.c (gtk_text_tag_set_priority): fix indentation
14914
14915         * gtk/gtktextview.c: Implement drag thresholding; change functions 
14916         that set border window size to have nicer name
14917         (gtk_text_view_mark_set_handler):  Fix this to have the 
14918         right signature.
14919
14920         * gtk/testtextbuffer.c (fill_buffer): Update with pixbuf changes
14921
14922         * gtk/testtext.c: Update with API changes, put line numbers on 
14923         both sides.
14924         
14925         * gtk/gtktextiter.c (gtk_text_iter_get_pixbuf): Replace get_pixmap
14926         with this
14927
14928         * gtk/gtktextchild.h, gtk/gtktextchild.c: replace all pixmap with
14929         pixbuf; delete a big block of #if 0 Tk code
14930
14931         * gtk/gtktextbuffer.c (gtk_text_buffer_insert_pixbuf): Replace 
14932         insert_pixmap with insert_pixbuf
14933
14934 2000-09-29  Martin Baulig  <baulig@suse.de>
14935
14936         * gdk-pixbuf.pc.in: Renamed to gdb-pixbuf-2.0.pc.in to avoid
14937         confusion with the GdkPixbuf of the GNOME 1.x platform.
14938
14939 2000-09-29  Havoc Pennington  <hp@pobox.com>
14940
14941         * gtk/gtktextview.c: Implement the side windows.
14942
14943         * gtk/testtext.c: Implement simple line numbering in the 
14944         left side window; seems to make scrolling sloooow. Oops.
14945         Also, cursor blink is for some reason causing redraws
14946         of the line numbers. Should investigate...
14947
14948 2000-09-28  Havoc Pennington  <hp@redhat.com>
14949
14950         * gtk/gtktextview.c: Set up infrastructure to deal with lots of 
14951         scrolling child windows, and draw focus rectangle properly.
14952         
14953         (gtk_text_view_buffer_to_window_coords):
14954         Coordinate transformation to deal with all these freaking windows
14955         and offsets
14956         (gtk_text_view_window_to_buffer_coords): transform the other way
14957
14958         * gtk/testtext.c (create_buffer): Update to match Pango API change
14959
14960         * gtk/gtktexttagtable.c (gtk_text_tag_table_foreach): Go over the
14961         anonymous tags
14962         (foreach_unref): don't emit remove signal from finalize, just
14963         set tag's parent to NULL
14964
14965 2000-09-26  Havoc Pennington  <hp@redhat.com>
14966
14967         * gtk/gtkiconfactory.c (gtk_icon_set_clear): remove
14968         Fix some warnings       
14969
14970 2000-09-26  Havoc Pennington  <hp@redhat.com>
14971
14972         * gtk/Makefile.am (gtk_private_h_sources): Move more text widget
14973         headers into the private header list
14974
14975         * Makefile.am (pkgconfig_DATA): install pkg-config files
14976
14977         * configure.in: add pkg-config files
14978
14979         * gdk-2.0.pc.in, gdk-pixbuf.pc.in, gtk+-2.0.pc.in: pkg-config files
14980
14981         * gtk/gtkwindow.c (gtk_window_read_rcfiles): Invalidate
14982         outstanding icon caches on theme change.
14983
14984         * gtk/gtkiconfactory.h, gtk/gtkiconfactory.c: New icon system. Three 
14985         important types:
14986
14987         (GtkIconSource): Specification for creating a pixbuf 
14988         appropriate for a direction/state/size triplet from 
14989         a source pixbuf or filename
14990
14991         (GtkIconSet): List of GtkIconSource objects that are used to
14992         create the "same" icon (e.g. an OK button icon), and cache for
14993         rendered icons
14994
14995         (GtkIconFactory): Hash from stock ID to GtkIconSet; used to look
14996         up the icon set for a given stock ID.  GTK maintains a stack of
14997         GtkIconFactory to search, and applications or libraries can add
14998         additional icon factories on top of the stack
14999         
15000         * gtk/gtkrc.h, gtk/gtkrc.c: When loading an RcStyle, parse 
15001         the set of GtkIconSource specified for a given stock ID into 
15002         a GtkIconSet, and put the GtkIconSet into a GtkIconFactory for the 
15003         RcStyle, under the specified stock ID.
15004
15005         * gtk/gtkstyle.h, gtk/gtkstyle.c: Add a virtual function
15006         render_icon used to derive a GdkPixbuf from a GtkIconSource.
15007         This allows people to theme how prelight, insensitive, etc. are
15008         done.
15009
15010         (gtk_style_lookup_icon_set): Look up a stock ID in the list of
15011         icon factories for a style, and return the resulting 
15012         icon set if any.
15013
15014         (gtk_style_render_icon): Render an icon using the render_icon 
15015         method in the GtkStyleClass.
15016
15017         * gtk/gtkwidget.h, gtk/gtkwidget.c (gtk_widget_render_icon): 
15018         Use the style for a given widget to look up a stock ID, get the
15019         icon set, and render an icon using the render_icon method 
15020         of the style
15021
15022         * gtk/gtkstock.h, gtk/gtkstock.c: Header with the GtkStockItem type
15023         (contains information about a stock item), the built-in stock item
15024         IDs, and functions to add/lookup stock items.
15025
15026         * gtk/stock-icons/*: Stock icons that come with GTK
15027
15028         * gtk/gtkbutton.h, gtk/gtkbutton.c (gtk_button_new_stock): Returns
15029         a button based on a GtkStockItem
15030         (gtk_button_new_accel): Takes a uline string and accel group, and
15031         installs the accelerator.
15032
15033         * gtk/gtkimage.h, gtk/gtkimage.c: Make this into a generic
15034         image-display widget.
15035
15036 2000-09-25  Havoc Pennington  <hp@redhat.com>
15037
15038         * gtk/gtktexttypes.c: Remove Latin1 conversion stuff
15039
15040         * gtk/gtktextbtree.c (gtk_text_btree_node_remove_data): 
15041         Fix a bug when removing node data, we didn't properly 
15042         re-splice the linked list after removing the data.
15043
15044         * gtk/gtktextview.c (gtk_text_view_key_press_event): Pass through 
15045         GDK_Tab as literal tab, Ctrl-Tab to tab to focus widget
15046
15047         * gtk/gtktextbuffer.c (selection_received): fix g_convert usage
15048
15049         * gtk/gtktextlayout.c (set_para_values): Set tab array 
15050         for the layout from the GtkTextTag.
15051
15052         * gtk/gtktexttypes.h: delete tab and search cruft, 
15053         remove g_convert() in favor of GLib version
15054
15055         * gtk/gtktexttypes.c: remove tab implementation from here,
15056         move to Pango
15057
15058         * gtk/gtktexttag.h, gtk/gtktexttag.c: Implement 
15059         tab stuff using new PangoTabArray from Pango
15060
15061         * gtk/gtktexttag.c (gtk_text_attributes_fill_from_tags): Remove
15062         unused border_width stuff
15063
15064 Thu Sep 14 12:21:12 2000  Owen Taylor  <otaylor@redhat.com>
15065
15066         * gtk/gtktexttypes.[ch]: Remove g_convert (moved to
15067         glib) and now useless utf_to_latin1() latin1_to_utf()
15068
15069         * gtk/gtktextview.[ch]: Change ::move_insert and
15070         ::delete_text action signals to ::move and ::delete;
15071         create the signals with the right enumeration type,
15072         not GTK_TYPE_ENUM so that bindings work. Add C-d, M-d,
15073         C-v bindings, change Home, End to move to beginning/end
15074         of line, Add C-Home C-End to move to beginning/end
15075         of buffer. Change ::cut_text to ::cut_clipboard, etc;
15076         combine ::scroll_text into ::move; use new GtkSelectionData
15077         functions to simplify DND text handling.
15078         
15079         * gtk/gtkenums.h gtk/gtktextview.h: Move movement,
15080         deletion enumerations here, rename enumeration values to 
15081         be consistently plural.
15082
15083         * gtk/gtktextbuffer.c: Use new clipboard interfaces
15084         for cut/copy/paste and primary selection.
15085
15086         * gtk/gtktextbuffer.[ch]: Remove excess time and
15087         'interactive' arguments from cut/copy/paste;
15088         rename cut to cut_clipboard, etc; remove
15089         gtk_text_buffer_get_clipboard_contents().
15090
15091         * gtk/gtktextlayout.[ch]: Add 
15092         gtk_text_layout_move_iter_to_line_end() to move the iter to 
15093         line ends.
15094
15095         * gtk/gtkselection.[ch] (gtk_selection_data_set/get_text):
15096         Functions to set or get a UTF-8 string on the selection
15097         data.
15098
15099         * gtk/gtkclipboard.[ch]: New, simplified selection handling
15100         interfaces.
15101
15102         * gtk/gtkinvisible.c (gtk_invisible_new): Realize newly
15103         created widgets - one of these is useless if we don't.
15104
15105         * gtk/gtkselection.[ch] (gtk_selection_clear_targets): Export
15106         a public function clear all targets registered for the
15107         widget.
15108
15109         * gtk/gtkselection.c (gtk_selection_owner_set) docs/Changes-2.0.txt:
15110         Never call gtk_widget_realize() - that was just asking
15111         for bizarre side-effects.
15112
15113         * gtk/gtkselection.c (gtk_selection_owner_set): Call
15114         gdk_selection_owner_set even if the widget is the
15115         same so that we reliably update the timestamp on
15116         the server.
15117
15118         * gdk/x11/gdkevents-x11.c gdk/x11/gdkx.h: Add a 
15119         gdk_x11_get_server_time() function.
15120         
15121         * gdk/x11/gdkevents-x11.c gdk/x11/gdkprivate-x11.h
15122         gdk/x11/gdkselection-x11.c gdk/x11/gdkwindow-x11.h:
15123         Add some tricky filtering on serial numbers for
15124         selection clear events to fix up long-standard
15125         race condition FIXME's in gtkselection.c.
15126
15127         * gdk/gdkproperty.h gdk/x11/gdkselection-x11.h: Add
15128         routines to convert from utf8 to compound text or
15129         STRING and from a text property to UTF-8.
15130
15131         * gtk/gtkmain.[ch] (gtk_get_current_event_time): Add 
15132         a convenience function gdk_get_current_event_time().
15133
15134         * gtk/gtkselection.c (gtk_selection_data_copy/free): Copy
15135         and free selection_data->data properly
15136
15137 Sat Sep  9 10:23:53 2000  Owen Taylor  <otaylor@redhat.com>
15138
15139         * gtk/gtkthemes.c: Remove some unecessary includes.
15140
15141 2000-09-08  Jonathan Blandford  <jrb@redhat.com>
15142
15143         * gtk/gtktextdisplay.c
15144         * gtk/gtktextlayout.c
15145         * gtk/gtktexttag.c
15146         * gtk/gtktexttag.h
15147         * gtk/testtext.c: Change the overstrike property to strikethrough,
15148         to closer match pango.
15149
15150 Fri Sep  8 14:28:00 2000  Owen Taylor  <otaylor@redhat.com>
15151
15152         * gtk/gtktextview.c: Fix up visibility so that focus,
15153         cursor_visible and blink interact properly.  Reenable cursor blink
15154         which had been roughly disabled. Make blink and focus
15155         properly per-view.
15156
15157         * gtk/gtktextlayout.[ch] (gtk_text_layout_set_cursor_visible):
15158         Add a flag for whether to display insertion cursor and
15159         a function to set the flag.
15160
15161         * gtk/gtktextlayout.c (gtk_text_layout_get_line_yrange): Change
15162         get_line_y() to get_line_yrange(), to be a bit more generally
15163         useful.
15164
15165 Thu Sep 07 20:54:33 2000  George Lebl <jirka@5z.com>
15166
15167         * gtk/gtkmenu.c:  in gtk_menu_set_submenu_navigation_region
15168           do stop_navigating_submenu, to clear last timeout properly.
15169           Also in gtk_menu_motion_notify move ignore_enter above
15170           the conditional to make it always happen as suggested by Owen
15171
15172 2000-09-07  Tor Lillqvist  <tml@iki.fi>
15173
15174         * gdk/win32/makefile.mingw.in: Use -Wall. Add gdkpango-win32.o
15175
15176         * gdk/win32/gdkwin32.h: Add more definitions missing from the free
15177         w32api headers.
15178
15179         * gdk/win32/gdkprivate-win32.h: Add a couple of missing
15180         declarations.
15181
15182         * gdk/win32/gdkdrawable-win32.c: Remove gcc -Wall warnings.
15183         (gdk_win32_get_colormap): A line had been deleted by mistake.
15184
15185         * gdk/win32/gdkevents-win32.c: Remove lint (gcc -Wall) here, too.
15186         (gdk_event_translate): Handle more virtual keycodes to be able to
15187         generate GDK events for Control-comma, Control-period, etc.
15188
15189         * gtk/gtk.def: Add some missing entry points.
15190
15191 Thu Sep  7 11:47:02 2000  Owen Taylor  <otaylor@redhat.com>
15192
15193         * gtk/gtktextbuffer.c gtk/gtkimcontext.c gtk/gtkwidget.c:
15194         Doc comment fixing. (Mostly non-matching parameter names.)
15195
15196         * gtk/gtkcalendar.c gtk/gtklist.c gtk/gtknotebook.c: Modify
15197         comments a little to avoid looking like a doc comment.
15198
15199         * gtk/gtkspinbutton.h (GTK_INPUT_ERROR): Change INPUT_ERROR to
15200         GTK_INPUT_ERROR. (Should the mechanism for erros in spin button
15201         conversions be changed to GError?)
15202
15203         * gtk/gtkcolorsel.c (GTK_CUSTOM_PALETTE_WIDTH/HEIGHT): 
15204         Move private #defines into .c file.
15205
15206         * gtk/gtktexttag.c (gtk_text_tag_class_init): Alphabetize
15207         order of argument addition, remove duplicates.
15208
15209         * gtk/gtkaspectframe.h (struct _GtkAspectFrameClass):
15210         parent class is FrameClass, not BinClass.
15211
15212         * gtk/gtk.h: Add gtkinvisible, which was missing.
15213         (It's occasionalyl useful for client apps, if seldom.)
15214
15215         * gdk/gdktypes.h: Remove obsolete GDK_CORE_POINTER
15216         #define.
15217
15218 Wed Sep  6 09:53:15 2000  Owen Taylor  <otaylor@redhat.com>
15219
15220         * gdk/x11/gdkwindow-x11.c (gdk_window_new): Use X-space
15221         coordinates when creating window, instead of GDK-space
15222         coordinates. (Avoid BadValue on too large windows.)
15223
15224 2000-09-05  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15225
15226         * configure.in (use_mmx_asm): Remove conftest* after use along the
15227         lines of AC_TRY_COMPILE.        
15228         
15229         * gtk/gtkrc.c (gtk_rc_parse_file): Use g_path_get_dirname instead
15230         of g_dirname, which is deprecated.
15231         (gtk_rc_parse_any): Removed calls to
15232         g_scanner_{freeze,thaw}_symbol_table, which are deprecated.
15233
15234         * gtk/gtkbindings.c (binding_entry_new, binding_entry_destroy):
15235         Removed calls to g_hash_table_{freeze,thaw}, as they are
15236         deprecated now.
15237
15238         * gtk/testtext.c (buffer_pretty_name): Use g_path_get_basename
15239         instead of g_basename.
15240         
15241 2000-09-04 Elliot Lee <sopwith@redhat.com>
15242         
15243         * gdk/gdkpixbuf.h: Put text after #endif inside a comment to avoid
15244         ANSI warning.
15245
15246 Sun Sep 03 00:47:08 2000  George Lebl <jirka@5z.com>
15247
15248         * gtk/gtkwidget.h:  Add some documenting comments about 
15249           GTK_CAN_DEFAULT, GTK_HAS_DEFAULT and GTK_RECEIVES_DEFAULT
15250           just as owen said on irc.
15251
15252         * gtk/gtkwindow.c (gtk_window_set_default):  Don't blindly
15253           set HAS_DEFAULT.  Only set it if there isn't another window
15254           holding it (a focus window which RECEIVES_DEFAULT) and only unset
15255           it if the widget is not the focused window with RECEIVES_DEFAULT.
15256           This fixes weird double default bugs in dialogs which has things
15257           call gtk_window_set_default at times.
15258
15259 Fri Sep  1 22:39:07 2000  Owen Taylor  <otaylor@redhat.com>
15260
15261         * gtk/gtkmenu.[ch] TODO.xml: Apply patch from
15262         Nils Barth and David Santiago to improve submenu
15263         navigation. The patch does this by creating a triangular
15264         region from the point where the pointer leaves the
15265         menu to the submenu.  While the pointer is in
15266         that region and a timeout has not expired, events 
15267         that would cause the active submenu to change are
15268         ignored.
15269
15270 Fri Sep  1 15:34:46 2000  Owen Taylor  <otaylor@redhat.com>
15271
15272         * gdk/x11/gdkwindow-x11.c (gdk_window_move): Fix bug where
15273         moving a toplevel window immediately after sizing it would
15274         result in it being sized back to the old size since 
15275         impl->width, impl->height aren't updated until we hear
15276         back from the server. There is still a (longstanding) bug
15277         here that gdk_window_get_size() will give the wrong size
15278         until we do hear back.
15279
15280 2000-08-31  Havoc Pennington  <hp@redhat.com>
15281
15282         * gtk/gtktextiter.h, gtk/gtktextiter.c, gtk/gtktextlayout.h, 
15283         gtk/gtktextlayout.c, gtk/gtktexttag.h, gtk/gtktexttag.c, 
15284         gtk/gtktexttagprivate.h, gtk/gtktextview.c:
15285         Rename GtkTextStyleValues to GtkTextAttributes
15286
15287 2000-08-31  Havoc Pennington  <hp@pobox.com>
15288
15289         * gtk/gtktextbtree.c (GtkTextBTree): cache end line, 
15290         for rapid testing whether an iterator is the end iterator
15291         (gtk_text_btree_new): init end line cache
15292         (gtk_text_line_is_last): use fast cached line to 
15293         see if we're the last line.
15294         (get_last_line): use cached line here too, should 
15295         speed up some random unrelated code.
15296         
15297 2000-08-30  Havoc Pennington  <hp@pobox.com>
15298
15299         * gtk/gtkmarshal.list: Add marshallers for changed GtkTextBuffer
15300         signals.
15301
15302         * gtk/gtktextbuffer.h: Add "interactive" arg to insert_text and
15303         delete_text signals. This allows the signals to be used for
15304         implementing undo.
15305
15306         * gtk/gtktextbuffer.c: Change signal handler signatures; 
15307         provide "interactive" argument when emitting insert_text or
15308         delete_text signal.
15309         
15310 2000-08-30  Havoc Pennington  <hp@pobox.com>
15311
15312         * gtk/gtktextbuffer.c: Docs
15313
15314 Fri Aug 25 12:16:15 2000  Owen Taylor  <otaylor@redhat.com>
15315
15316         * gdk/x11/gdkimage-x11.c: remove GDK_IMAGE_SHARED_PIXMAP
15317         from switch statements, since Tor removed the enumeration
15318         value.
15319         
15320         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
15321         s/GDK_IS_WINDOW/GDK_IS_DRAWABLE/.
15322
15323 2000-08-29 Elliot Lee <sopwith@redhat.com>
15324         * */*.h: Use G_GNUC_CONST.
15325
15326 2000-08-27  Havoc Pennington  <hp@pobox.com>
15327
15328         * gtk/gtktextiter.c, gtk/gtktextiter.h: wrote lots of API docs,
15329         minor indentation fixes, inserted some FIXME about stuff I
15330         realized was broken while documenting it.
15331         (gtk_text_iter_get_pixmap): allow out params to be NULL, following
15332         GTK convention  
15333
15334 Tue Aug 22 12:33:24 2000  Owen Taylor  <otaylor@redhat.com>
15335
15336         * gtk/testgtk.c (create_styles): Fix double free of
15337         font desc.
15338
15339 Mon Aug 21 22:39:18 2000  Owen Taylor  <otaylor@redhat.com>
15340
15341         * gtk/gtkwidget.[ch]: Add gtk_widget_modify_{fg,bg,text,base,font}.
15342         
15343         * gtk/testgtk.c (create_styles): Add a test for modifying
15344         the style through gtk_widget_modify_*.
15345
15346         * gtk/gtkwidget.c (gtk_widget_get_modifier_style): Add
15347         a function to get the current modifier style.
15348
15349         * gtk/gtkwidget.c (gtk_widget_modify_style): Make a copy
15350         of the passed in GtkRcStyle instead of ref'ing it.
15351
15352         * gtk/gtkrc.[ch]: Add gtk_rc_style_copy().
15353
15354 2000-08-20  Tor Lillqvist  <tml@iki.fi>
15355
15356         * gdk/gdkimage.h
15357         * gdk/win32/gdkimage-win32.c: No need any longer on Win32 for the
15358         shared memory image+pixmap GdkImage type, or
15359         gdk_image_bitmap_new(). They were used in the gdk_imlib port, but
15360         I am dropping that.
15361
15362         * gtk/gtkmain.h: On Win32, use a #define to map gtk_init() to
15363         actually call gtk_init_abi_check(), passing also
15364         sizeof(GtkWindow). Ditto for gtk_init_check(). 
15365
15366         * gtk/gtk.def
15367         * gtk/gtkmain.c: (gtk_init_abi_check, gtk_init_check_abi_check):
15368         New functions, used to check that the GTK+-using code has been
15369         compiled using the correct compiler and switches. In particular,
15370         with gcc one has to use the -fnative-struct switch as GTK+ is
15371         compiled with that.
15372
15373 Fri Aug 18 17:27:46 2000  Owen Taylor  <otaylor@redhat.com>
15374
15375         * gtk/gtkclist.c (gtk_clist_merge): Don't leave dangling
15376         ->prev fields when merging lists. (Found simultaneously
15377         by Pawel Salek and Jakub Jelinek)
15378
15379 2000-08-12  Tor Lillqvist  <tml@iki.fi>
15380
15381         * gdk/gdk.def
15382         * gtk/gtk.def: Add missing entries.
15383
15384         * gdk/win32/gdkfont-win32.c (gdk_font_load_internal): Use
15385         OUT_TT_ONLY_PRECIS, try to get a TrueType font.
15386
15387         * gdk/win32/gdkinput-win32.c (gdk_device_get_state): New
15388         function. Dummy implementation at this point.
15389
15390         * gtk/makefile.mingw.in: Fix typo. Add testtext and testtextbuffer
15391         rules. Undefine GTK_COMPILATION when compiling the test programs.
15392         
15393         * gtk/gtkdebug.h: Mark gtk_debug_flags for export/import.
15394
15395 2000-08-11  Tor Lillqvist  <tml@iki.fi>
15396
15397         * gtk/gtkfilesel.c: Add more calls to g_filename_{to,from}_utf8()
15398         to convert back and forth from UTF-8 and the "system" (or "current
15399         locale") charset when necessary. Indentation/spacing cleanup.
15400
15401 2000-08-10  Havoc Pennington  <hp@redhat.com>
15402
15403         * Makefile.am (snapshot): Change the format of the snapshot
15404         version to match glib
15405
15406         * gdk/win32/Makefile.am (EXTRA_DIST): remove gdkinputprivate.h
15407         from EXTRA_DIST since it doesn't seem to exist
15408
15409 2000-08-10  Tor Lillqvist  <tml@iki.fi>
15410
15411         * gtk/gtkfilesel.c (open_new_dir): Use the "system codepage"
15412         version of the directory name (not the UTF-8 one) when building
15413         the path name to stat().
15414
15415 2000-08-03  Elliot Lee  <sopwith@redhat.com>
15416
15417         * gdk/gdkpango.c (gdk_draw_layout_line): Don't shape runs with a
15418         PANGO_ATTR_SHAPE set.
15419
15420 Thu Aug  3 09:17:06 2000  Owen Taylor  <otaylor@redhat.com>
15421
15422         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Applied patch from
15423         Peter Osterlund to simplify the code while keeping the
15424         functionality the same.
15425
15426 Wed Aug  2 14:57:38 2000  Owen Taylor  <otaylor@redhat.com>
15427
15428         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Move
15429         is_viewable() test further inside the function, since removing the 
15430         window from the redraw list without clearing ->update_area
15431         was also very broken.
15432
15433 2000-08-02  Tor Lillqvist  <tml@iki.fi>
15434
15435         * configure.in: Check for <unistd.h>.
15436
15437 2000-08-01  Martin Baulig  <baulig@suse.de>
15438
15439         * gtk/gtkmain.c (gtk_init_check): Use g_message() and not g_warning()
15440         to display the message that this is a development version of GTK+.
15441
15442 Mon Jul 31 18:37:36 2000  Owen Taylor  <otaylor@redhat.com>
15443
15444         * gtk/gtkentry.c (entry_adjust_scroll): Fix problem where computation
15445         was depending on widget->allocation instead of the width of text_area,
15446         which was incorrect for subclasses like GtkSpinButton.
15447
15448         * gdk/gdkpango.c (gdk_draw_layout): Fix a couple of typos
15449         with width == 1 tests that should be width == -1.
15450
15451 Mon Jul 31 16:45:48 2000  Owen Taylor  <otaylor@redhat.com>
15452
15453         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Replace broken, 
15454         (broken, Elliot, every single window blank on X) custom code with call
15455         to gdk_window_is_viewable() which a) prevents code duplicate and
15456         b) works. 
15457
15458 2000-07-31  Elliot Lee  <sopwith@redhat.com>
15459
15460         * gtk/gtkcolorsel.c: We really do need to include gdkfb.h in order
15461         to get the GDK_PARENT_ROOT() macro to work.
15462         * gtk/gtkmarshal.list: Add NONE:STRING,POINTER
15463         * gdk/gdkwindow.c: Don't send expose events, or invalidate pieces
15464         of, windows that aren't shown.
15465         * gdk/linux-fb: Redraw-when-menu-hidden solved, plus a bunch of
15466         pointer grab stuff.
15467
15468 Mon Jul 31 13:53:16 BST 2000  Tony Gale <gale@gtk.org>
15469
15470         * docs/gtkfaq.sgml docs/gtk-faq.sgml:
15471           s/gtk_main_iteration/g_main_iteration/
15472
15473           Did this already in change:
15474                 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
15475           don't know how it got reverted.
15476
15477 2000-07-31  Stanislav Brabec  <utx@penguin.cz>
15478
15479         * gdk/gdk.c: #ifdef G_ENABLE_DEBUG around gdk_arg_debug_cb and
15480         gdk_arg_no_debug_cb to fix compilation problem with --disable-debug.
15481
15482         * gdk/Makefile.am: Link gdk against actually compiled gdk_pixbuf-1.3,
15483         not gdk_pixbuf.
15484
15485 2000-07-30  Pablo Saratxaga <pablo@mandrakesoft.com>
15486
15487         * configure.in,po/{sp,sr}.po: Added Serbian files
15488
15489 2000-07-30  Tor Lillqvist  <tml@iki.fi>
15490
15491         * gdk/Makefile.am: Add makefile.mingw.in to EXTRA_DIST.
15492
15493         * gdk/win32/gdkevents-win32.c (gdk_events_init, gdk_events_queue):
15494         Remove the g_pipe_readable_msg stuff. Not needed with new GLib
15495         GIOChannel implementation.
15496
15497         * gdk/win32/gdkinput.c
15498         * gdk/win32/gdkpango-win32.c: Update license name here, too.
15499
15500         * gdk/win32/gdkwin32id.c (gdk_win32_handle_table_lookup): Fix
15501         definition to match prototype.
15502
15503         * gtk/makefile.mingw.in: Add libiconv CFLAGS and LIBS.
15504
15505 2000-07-27  Elliot Lee  <sopwith@redhat.com>
15506
15507         * gtk/gdk-pixbuf-loader.[ch]: Add gdk_pixbuf_loader_new_with_type
15508         function, to allow handling image formats that cannot be detected
15509         by looking at content alone.
15510
15511 Thu Jul 27 13:13:21 BST 2000  Tony Gale <gale@gtk.org>
15512
15513         * docs/tutorial/*.gif *.jpg *.eps
15514           Update these to the same look-n-feel.
15515           Why does including images in DocBook suck so badly?
15516
15517 Thu Jul 27 05:06:29 2000  Tim Janik  <timj@gtk.org>
15518
15519         * gtk/gtktable.c: applied patch from Phil Thompson
15520         <phil@river-bank.demon.co.uk> that enables space settings for
15521         the last row/columns as well.
15522
15523 Wed Jul 26 12:59:31 2000  Tim Janik  <timj@gtk.org>
15524
15525         * *.[hc]: applied patch from Andreas Persenius <ndap@swipnet.se> that
15526         updates the license headers to the GNU Lesser General Public License,
15527         as well as updating the copyright year to 2000.
15528
15529 2000-07-26  Robert Brady  <rwb197@zepler.org>
15530
15531         * configure.in: Cause GETTEXT_PACKAGE to be consistent in config.h
15532           and po/Makefile, was installing and looking for them under gtk20
15533           and gtk2 respectively.
15534
15535 2000-07-25  Havoc Pennington  <hp@redhat.com>
15536
15537         * gtk/testtext.c: Comment out some stuff that depends on the rest
15538         of my patches.
15539
15540 2000-07-25  Havoc Pennington  <hp@redhat.com>
15541
15542         * gtk/gtkmarshal.list: Add NONE:POINTER,POINTER,INT for the text
15543         buffer
15544
15545 2000-07-25  Havoc Pennington  <hp@redhat.com>
15546
15547         * gtk/testtext.c, gtk/testtextbuffer.c: update to reflect text
15548         widget changes.
15549
15550         * gtk/gtktextview.h: To be consistent with usage of "line"
15551         throughout the API to mean "newline-terminated thingy", change
15552         MOVEMENT_LINE to be MOVEMENT_WRAPPED_LINE, and MOVEMENT_PARAGRAPH
15553         to MOVEMENT_LINE.
15554
15555         (GtkTextView): Add flags for default editability, and whether to
15556         show the cursor. Add functions to get/set that. Add 
15557
15558         (gtk_text_view_get_iter_location): new function
15559
15560         * gtk/gtktexttypes.h: Move GtkTextLine typedef from here to
15561         gtktextlayout.h
15562         (g_convert): Add g_convert temporarily, will go in glib in a bit
15563         
15564         * gtk/gtktexttagtable.h: include gtktexttag.h, and define
15565         GtkTextTagTableForeach instead of brokenly using GHFunc.
15566         Change gtk_text_tag_table_foreach() so it doesn't use GHFunc.
15567
15568         * gtk/gtktexttagprivate.h: Remove GtkTextStyleValues from here,
15569         moved to public header.
15570
15571         * gtk/gtktexttag.h: Rename the "elide" attribute of tags to
15572         "invisible", since "elide" was a bad name.
15573         (gtk_text_tag_get_priority): Added
15574
15575         (GtkTextStyleValues): put this in public header, along with
15576         functions to use it.
15577
15578         * gtk/gtktextmarkprivate.h: Include more headers, since we no
15579         longer include gtktextbtree.h.
15580
15581         * gtk/gtktextmark.h: Add gtk_text_mark_ref, gtk_text_mark_unref,
15582         gtk_text_mark_deleted
15583
15584         * gtk/gtktextlayout.h: Don't include the "really private" headers,
15585         only buffer/iter. Forward declare GtkTextLIne and GtkTextLineData
15586         to make this possible. Now we only need to install
15587         gtktextlayout.h, not gtktextbtree.h and gtktext*private.h.
15588         (However the Makefile.am isn't changed yet because of the
15589         logistics of merging gtk-hp-patches piecemeal)
15590
15591         * gtk/gtktextiterprivate.h: include btree header, so it compiles;
15592         rename gtk_text_iter_get_line to gtk_text_iter_get_text_line since
15593         gtk_text_iter_get_line is now used in the public API for a
15594         different purpose.
15595
15596         * gtk/gtktextiter.h: Clean up function names to be more
15597         consistent. Always call char offset "offset" and byte index
15598         "index". A "line" is always a line number. 
15599
15600         (gtk_text_iter_is_last): new function, more efficient than 
15601         the existing way to check
15602         (gtk_text_iter_is_first): new function, also more efficient
15603
15604         (gtk_text_iter_up_lines, gtk_text_iter_down_lines): Remove these
15605
15606         (gtk_text_iter_next_char, gtk_text_iter_prev_char): Renamed from 
15607         gtk_text_iter_forward_char, etc.
15608
15609         (gtk_text_iter_forward_to_tag_toggle): Renamed from
15610         forward_find_tag_toggle, since this isn't a linear search
15611
15612         (GtkTextCharPredicate): rename from GtkTextViewCharPredicate
15613
15614         (gtk_text_iter_forward_search, gtk_text_iter_backward_search): 
15615         New functions, search for a buffer substring.
15616
15617         * gtk/gtktextbuffer.h: Add fields to store whether a paste is
15618         interactive and default editable (since we need to store that info
15619         until we receive the selection data).
15620
15621         Remove all the _at_char and at_line etc. versions of functions;
15622         only have iterator versions.
15623
15624         Add _interactive() versions of functions, that consider the
15625         editability of text. (FIXME add interactive flag to the 
15626         insert/delete signals per Darin's suggestion)
15627
15628         (gtk_text_buffer_get_tag_table): new function, demand-creates the
15629         tag table if necessary
15630
15631         Remove declaration of gtk_text_buffer_get_iter_from_string
15632
15633         (_gtk_text_buffer_get_btree): private/internal function, added.
15634         
15635
15636         * gtk/gtktextbtree.h: Remove forward decl of GtkTextLineData.
15637         (gtk_text_line_is_last): new function
15638
15639 2000-07-25  Havoc Pennington  <hp@redhat.com>
15640
15641         * gtk/gtkprogressbar.h: Implement new sane, 5-function API for
15642         using GtkProgressBar. See Changes-2.0.txt for details.
15643
15644         * gtk/gtkprogressbar.c: Add object arguments "fraction" and
15645         "pulse_step" which are the equivalent of
15646         gtk_progress_bar_set_pulse_step and gtk_progress_bar_set_fraction.
15647         Implement new API.
15648         
15649         * gtk/gtkprogress.h (struct _GtkProgress): Add a field
15650         (use_text_format) to mark whether text set on the progress bar is
15651         a format string. Deprecate entire GtkProgress interface.
15652
15653         * gtk/gtkprogress.c (gtk_progress_init): init use_text_format to TRUE
15654         (gtk_progress_build_string): make this a no-op if use_text_format
15655         is FALSE
15656
15657         * docs/Changes-2.0.txt: Describe progress bar changes.
15658
15659 2000-07-25  Tor Lillqvist  <tml@iki.fi>
15660
15661         * Makefile.am: Include the build directory.
15662
15663         * configure.in: Generate build/Makefile, build/win32/Makefile,
15664         gdk/, gdk/win32/, and gtk/makefile.mingw.
15665
15666         * config.h.win32: Add USE_GMODULE and USE_MMX for gdk-pixbuf.
15667         Add GETTEXT_PACKAGE.
15668         
15669         * gdk/gdk.def
15670         * gtk/gtk.def: Updates.
15671
15672         * gdk/gdkfont.h
15673         * gdk/gdkpixmap.h: Remove temporary Win32-only functions, we don't
15674         need them any longer.
15675
15676         * gdk/gdkinput.h: Mark gdk_core_pointer for export/import.
15677
15678         * gdk/makefile.mingw.in: Define GDK_COMPILATION. Link with
15679         PANGOWIN32_LIBS and gdk_pixbuf.
15680
15681         * gdk/win32: Compiles, but no doubt doesn't work at all.
15682
15683         * gdk/win32/makefile.mingw.in: Define GDK_COMPILATION. 
15684
15685         * gdk/win32/gdkinput.c: New file, temporarily.
15686         
15687         * gdk/win32/gdkinput-win32.h: New file
15688
15689         * gdk/win32/gdkinputprivate.h: Remove.
15690
15691         * gdk/win32/gdkpango-win32.c: New file.
15692
15693         * gtk/makefile.mingw.in: New file
15694
15695         * gtk/makefile.cygwin: Removed
15696         
15697         * gtk/Makefile.am: Update accordingly.
15698
15699         * gtk/gtkrc.[ch] (gtk_win32_get_installation_directory): Renamed and
15700         made externally visible.
15701
15702         * gtk/gtkmain.c: Use it.
15703         
15704         * gtk/gtktextdisplay.c: No need to include pangox.h, pango.h
15705         is enough.
15706
15707         * gtk/gtktypeutils.c: Mark glib_debug_objects for import.
15708
15709 2000-07-24 Elliot Lee <sopwith@redhat.com>
15710         * gdk/gdkprivate.h: Remove gdk_*_lookup() defines, since they are defined by the
15711         individual backends already.
15712         * gdk/gdkregion-generic.h, gdk/gdktypes.h: Put gdkregionbox & gdksegment back together
15713         again. Yes, there really is a good reason for this, if you are using the gdkregion
15714         internals, and if you're not, why do you care?
15715         * gdk/gdkwindow.c: Fix inverted condition
15716         * gdk/linux-fb: Compiles (for me - it will not work elsewhere most likely).
15717         * gtk/gtkcolorsel.c, gtk/gtkwindow.c: Add include for linux-fb
15718         * gtk/gtkrange.c: Redraw trough when moving.
15719         * gtk/gtktypeutils.c: Fix warning by adding const cast.
15720         * modules/linux-fb/basic.c: Fix unknown glyph retrieval.
15721
15722 2000-07-23  Tor Lillqvist  <tml@iki.fi>
15723
15724         * configure.in: Check for mkstemp and sigsetjmp. Output
15725         gdk-pixbuf/makefile.mingw and gdk-pixbuf/pixops/makefile.mingw.
15726
15727         More work on GDK for Win32. Still in an intermediate state.
15728
15729         * gdk/makefile.cygwin
15730         * gdk/win32/makefile.cygwin: Removed.
15731         
15732         * gdk/makefile.mingw.in
15733         * gdk/win32/makefile.mingw.in: New files.
15734
15735         * gdk/Makefile.am
15736         * gdk/win32/Makefile.am: Generate and distribute them.
15737
15738         * gdk/win32/gdkwindow-win32.h
15739         * gdk/win32/gdkdrawable-win32.h
15740         * gdk/win32/gdkpixmap-win32.h: New files.
15741
15742         * gdk/win32/gdkcolor-win32.c
15743         * gdk/win32/gdkcursor-win32.c
15744         * gdk/win32/gdkdrawable-win32.c
15745         * gdk/win32/gdkgc-win32.c
15746         * gdk/win32/gdkimage-win32.c
15747         * gdk/win32/gdkprivate-win32.h
15748         * gdk/win32/gdkwin32.h: Update data structures. Cosmetics:
15749         Rename fields and variables called xcursor, xid, etc (these names
15750         were leftovers from the X11 backend) to hcursor, hwnd, hbitmap etc.
15751
15752 Sat Jul 22 17:41:26 2000  Owen Taylor  <otaylor@redhat.com>
15753
15754         * gtk/gtkentry.[ch]: Fix some problems with vertical
15755         alignment.
15756
15757         * gtk/gtkentry.c (gtk_entry_find_position): Fix 
15758         char/byte confusion.
15759
15760 Sat Jul 22 11:16:05 2000  Owen Taylor  <otaylor@redhat.com>
15761
15762         * gtk/gtktextview.c (changed_handler): Fix bug where
15763         redraw wasn't being done properly when height of
15764         dirty region changed.
15765
15766         * demos/Makefile.am: Remove various references to
15767         -lgmodule
15768
15769 Fri Jul 21 15:28:13 2000  Owen Taylor  <otaylor@redhat.com>
15770
15771         * gtk/gtktextlayout.[ch], gtk/gtktextdisplay.c: Use new
15772         PangoAttrShape to reserve space for pixmaps, add 
15773         GSList *pixmaps to GtkTextLineDisplay, draw the pixmaps
15774         in the display functions.
15775         
15776         * gtk/testgtk.c (create_layout): Set some more exotic
15777         scrolled window options
15778
15779         * gtk/gtkscrolledwindow.[ch] (gtk_scrolled_window_set_shadow_type):
15780         Add function to set the shadow type of a window, to allow
15781         putting a shadow around widgets such as GtkLayout or GnomeCanvas
15782         which don't draw their own frame.
15783
15784 Fri Jul 21 16:34:42 BST 2000  Tony Gale <gale@gtk.org>
15785
15786         * docs/tutorial/package-db-tutorial.sh: New file for
15787           packaging DocBook format tutorial
15788
15789 Fri Jul 21 14:23:51 BST 2000  Tony Gale <gale@gtk.org>
15790
15791         * docs/tutorial/gtk-tut.sgml: Minor updates
15792
15793         * docs/tutorial/*.jpg *.eps: Screenshots for tutorial
15794
15795 2000-07-19  Tor Lillqvist  <tml@iki.fi>
15796
15797         * gtk/gtksignal.c: Fix C++ comment.
15798
15799         * gtk/gtkimmulticontext.c
15800         * gtk/gtktextbtree.c: Remove gccisms: Don't use __FUNCTION__,
15801         don't return value from void functions.
15802
15803         * gtk/gtk.def: Add gtk_rc_style_unref.
15804
15805 2000-07-19  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>
15806
15807         * gdk-pixbuf/gdk-pixbuf.h, gtk/gtkhsv.h, gtk/gtktextbtree.h,
15808         gtk/gtktextbuffer.h, gtk/gtktextchild.h, gtk/gtktextdisplay.h,
15809         gtk/gtktextiter.h, gtk/gtktextiterprivate.h, gtk/gtktextlayout.h,
15810         gtk/gtktextmarkprivate.h, gtk/gtktextsegment.h, gtk/gtktexttag.h,
15811         gtk/gtktexttagtable.h, gtk/gtktexttypes.h, gtk/gtktextview.h,
15812         gtk/gtktypeutils.h: Include files outside of the extern "C"
15813         block. Makes some C++ compiler happy. Reported by Denis Vakatov
15814         <vakatov@peony.nlm.nih.gov>.
15815
15816 Wed Jul 19 14:07:57 BST 2000  Tony Gale <gale@gtk.org>
15817
15818         * docs/tutorial/gtk-tut.sgml: Yet more clean ups.
15819           Completes first pass. Hurrah!
15820
15821 Tue Jul 18 17:17:55 BST 2000  Tony Gale <gale@gtk.org>
15822
15823         * docs/tutorial/gtk-tut.sgml: More clean ups.
15824
15825 Mon Jul 17 18:52:38 2000  Owen Taylor  <otaylor@redhat.com>
15826
15827         * gtk/gtkentry.c (gtk_entry_draw_text): Restore code to
15828         paint the background of the text area which was accidentally
15829         removed at some point.
15830
15831         * gtk/gtkrc.[ch] gtk/gtkstyle.[ch] gtk/gtkthemes.[ch]: 
15832           
15833          - Move most of the functionality from the theme vtable
15834            into GtkRcStyleClass and GtkStyleClass. The moved
15835            vtable functions were changed a bit in the move to
15836            work better in their new home.
15837
15838          - Get rid of the engine and engine_data fields from
15839            GtkRcStyle and GtkStyle; instead the theme
15840            engine derives theme-specific subclasses of GtkRcStyle
15841            and GtkStyle
15842
15843          - Add extra dlsym() found entry point to themes,
15844            theme_create_rc_style().
15845
15846         * gtk/gtkstyle.c: Copy xthickness, ythickness fields
15847         in gtk_style_real_copy.
15848
15849         * gtk/themes.[ch]: add a function gtk_theme_engine_register_type()
15850         to register a type associated with an engine. (The engine
15851         won't be unloaded as there is an instance of the type.)
15852
15853
15854 Mon Jul 17 18:19:06 BST 2000  Tony Gale <gale@gtk.org>
15855
15856         * docs/tutorial/gtk-tut.sgml: Clean ups.
15857
15858 Mon Jul 17 13:59:29 BST 2000  Tony Gale <gale@gtk.org>
15859
15860         * docs/tutorial/gtk-tut.sgml: Initial DocBook version. Lots
15861           of cleaning up to do.
15862
15863 2000-07-15  Tor Lillqvist  <tml@iki.fi>
15864
15865         * gdk/testgdk.c: New file, quick hack to test backends for
15866         pixel-by-pixel correctness of the most simple graphic operations.
15867
15868 Fri Jul 14 20:30:25 2000  Owen Taylor  <otaylor@redhat.com>
15869
15870         * Really release 1.3.1
15871         
15872         * gtk-config-2.0.in gtk-2.0.m4: Fix up to correspond to new
15873         include structure.
15874
15875 Fri Jul 14 18:40:39 2000  Owen Taylor  <otaylor@redhat.com>
15876
15877         * Released 1.3.1
15878
15879 Fri Jul 14 16:21:26 2000  Owen Taylor  <otaylor@redhat.com>
15880
15881         * gtk/gtktextlayout.c: use FALSE for size_only most
15882         of the time when calling gtk_text_layout_get_line_display()
15883         to avoid causing double reshapes when a redraw follows
15884         immediately after.
15885
15886 Tue Jul 11 11:13:40 2000  Owen Taylor  <otaylor@redhat.com>
15887
15888         * gtk/gtkrange.c (gtk_range_default_[hv]slider_update): Invalidate
15889         appropriate region and gdk_window_process_updates() so trough
15890         updating doesn't lag behind the window being scrolled.
15891
15892         * gdk/gdkgc.c: Make parent_class pointer static.
15893          
15894 Sun Jul  9 21:31:23 2000  Owen Taylor  <otaylor@redhat.com>
15895
15896         * gdk/gdk-pixbuf.c gtk/gdk-pixbuf-loader.c gtk/gtktextview.c:
15897         include <string.h>.
15898          
15899         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Fix
15900         cut-and-paste error in computing memory offset for 4 channels.
15901
15902 Fri Jul 14 14:05:02 2000  Owen Taylor  <otaylor@redhat.com>
15903
15904         * gtk/gtkrc.c (gtk_rc_parse_pixmap_path_string): Remove
15905         gtk_rc_append_default_pixmap_path(), since it wasn't
15906         adding an interesting path and we don't have a meaningful
15907         default for this value.
15908
15909 Fri Jul 14 12:22:49 2000  Owen Taylor  <otaylor@redhat.com>
15910
15911         * configure.in Makefile.am gtk-config.m4 gtk.m4: Move
15912         gtk-config to gtk-config-2.0 move gtk_.m4 to
15913         gtk-2.0.m4
15914
15915         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15916         gdk/Makefile.am demos/Makefile.am: Change 
15917         library names to libgtk-1.3.la, etc, so that we
15918         can distinguish gtk-1.2 and gtk-2.0 on the linkline.
15919
15920         * Makefile.am gtk/Makefile.am gdk-pixbuf/Makefile.am
15921         gdk/Makefile.am gdk/x11/Makfile.am
15922         Move include files into /usr/include/gtk-2.0, 
15923         /usr/lib/gtk-2.0/include/
15924          
15925         * autogen.sh acconfig.h configure.in gtk/gtkmain.c
15926         gtk/gtkintl.h: Change package for gettext from 
15927         gtk+ to gtk20. Put hack in autogen.sh to modify
15928         po/Makefile.in.in after gettextize to make this
15929         possible.
15930
15931         * gtk+.spec: Some updates, not tested.
15932
15933         * gdk-pixbuf/Makefile.am: Move loaders into
15934         $(libdir)/gtk-2.0/$(GTK_VERSION)/loaders.
15935
15936         * gtk/Makefile.am gtk/gtkrc.c: Move RC file locations
15937         $(sysconfdir)/gtk-2.0 ~/.gtkrc-2.0; theme subdir
15938         to THEMENAME/gtk-2.0/. Move engine directory  to
15939         $(libdir)/gtk-2.0/$(GTK_VERSION)/engines.
15940         
15941 2000-07-12  Tor Lillqvist  <tml@iki.fi>
15942
15943         Win32 changes, still doesn't build though.
15944
15945         * gdk/makefile.cygwin
15946         * gdk/win32/makefile.cygwin
15947         * gtk/makefile.cygwin: Updates.
15948
15949         * gdk/win32/gdkgc-win32.c (_gdk_win32_gc_new): Use the same
15950         default values for fg and bg pixel as X11 does (0 and 1), not
15951         black and white. Use PS_ENDCAP_FLAT and PS_JOIN_MITER by default.
15952         Use 0 for pen width by default (treated as 1 anyway later, but for
15953         apps that might check the value in the GdkGC).
15954         (gdk_win32_hdc_get, gdk_win32_hdc_release): New functions, public
15955         interface to gdk_gc_predraw and _postdraw.
15956
15957         * gdk/win32/gdkwin32.h
15958         * gdk/gdk.def: Add gdk_win32_hdc_{get,release}.
15959
15960         * gdk/win32/gdkcolor-win32.c (gdk_colormap_alloc1): Remove
15961         extraneous semicolon.
15962
15963         * gdk/win32/gdkdrawable-win32.c: Check also for pen_width == 0.
15964
15965         * gdk/win32/gdkimage-win32.c (gdk_image_new): Use the visual's depth,
15966         not the Win32 bitspixel value.
15967
15968         * gdk/win32/gdkcc-win32.c:
15969         * gdk/win32/gdkcolor-win32.c 
15970         * gdk/win32/gdkprivate-win32.h
15971         * gdk/win32/gdkwin32.h: Changes to make compilable, with new
15972         GDK object structure.
15973
15974 Tue Jul 11 20:59:35 2000  Tim Janik  <timj@gtk.org>
15975
15976         * docs/tutorial/gtk_tut_12.es.sgml (name): 
15977         * docs/tutorial/gtk_tut_it.sgml (name): 
15978         * docs/tutorial/gtk_tut_fr.sgml (name): 
15979         * docs/tutorial/gtk_tut.sgml (name): scratched notion of completely
15980         outdated email adress: s/timj@psynet.net/timj@gtk.org/.
15981
15982 Tue Jul 11 13:10:57 BST 2000  Tony Gale <gale@gtk.org>
15983
15984         * docs/faq/gtk-faq.sgml: Cleanup indenting and various
15985           small changes.
15986
15987 Tue Jul 11 08:04:58 2000  Tim Janik  <timj@gtk.org>
15988
15989         * gtk/gtktree.c (gtk_real_tree_select_child): eek, i've never seen
15990         a bug here, never been here and never fixed anything ;(
15991         (don't segfault if tree->root_tree is NULL, which happens prior
15992         to widget realization, but puke instead).
15993
15994 Tue Jul 11 06:38:42 2000  Tim Janik  <timj@gtk.org>
15995
15996         * gtk/gtkrc.h: add xthickness and ythickness to GtkRcStyle and
15997         add the necessary tokens.
15998
15999         * gtk/gtkrc.c (gtk_rc_style_init): properly initiality the rc style.
16000         (gtk_rc_style_to_style): copy thicknesses.
16001         (gtk_rc_init_style): apply thicknesses.
16002         (gtk_rc_parse_style): parse xthickness and ythickness.
16003
16004         * gdk/x11/gdkdnd-x11.c: silence compiler in switch() statements.
16005
16006         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): 
16007         (gdk_window_new): 
16008         (_gdk_windowing_window_init): 
16009         * gdk/x11/gdkpixmap-x11.c (gdk_pixmap_foreign_new): 
16010         (gdk_pixmap_create_from_data): 
16011         (gdk_bitmap_create_from_data): 
16012         (gdk_pixmap_new): 
16013         * gdk/x11/gdkimage-x11.c (gdk_image_get): 
16014         (gdk_image_new): 
16015         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): 
16016         * gdk/x11/gdkdnd-x11.c (gdk_drag_context_new): 
16017         * gdk/x11/gdkcolor-x11.c (gdkx_colormap_get):
16018         (gdk_colormap_get_system): 
16019         (gdk_colormap_new): 
16020         * gdk/gdkwindow.c (gdk_window_init): 
16021         * gtk/gtkstyle.c (gtk_style_new):
16022         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_frame_done):
16023         * gdk/gdkpixmap.c (gdk_pixmap_init): 
16024         * gtk/gtkrc.c (gtk_rc_style_new):
16025         use g_object_new() instead of g_type_create_instance() which
16026         is a private function for fundamental type implementations.
16027
16028 Thu Jul  6 16:12:14 2000  Owen Taylor  <otaylor@redhat.com>
16029
16030         * configure.in: Add check for db2html
16031
16032 Thu Jul  6 14:53:05 2000  Owen Taylor  <otaylor@redhat.com>
16033
16034         * gtk/gtktypeutils.c (gtk_type_init): Add a temporary 
16035         hack to set glib_debug_objects based on gtk_debug_flags.
16036
16037 Thu Jul  6 14:12:13 2000  Owen Taylor  <otaylor@redhat.com>
16038
16039         * INSTALL.in: Update the Prerequisites section.
16040
16041         * Makefile.am demos/Makefile.am docs/Makefile.am
16042         docs/tutorial/Makefile.am gdk/x11/Makefile.am
16043         gdk/linux-fb/Makefile.am: Dist fixes
16044
16045 Thu Jul  6 12:26:03 2000  Owen Taylor  <otaylor@redhat.com>
16046
16047         * NEWS: 10,000 foot view of 1.3.1 changes.
16048
16049 Thu Jul  6 11:54:03 2000  Owen Taylor  <otaylor@redhat.com>
16050
16051         * gdk/gdk.h gdk/gdktypes.h gdk/linux-fb/gdkmain-fb.c
16052         gdk/nanox/gdkmain-nanox.c gdk/win32/gdkevents-win32.c
16053         gdk/win32/gdkinput-win32.c gdk/win32/gdkwin32.h
16054         gdk/x11/gdkmain-x11.c: 
16055
16056         Patch from George Lebl to add a GdkGrabStatus enumeration to use
16057         as a return value of gdk_*_grab(). Previously, we just
16058         returned the X11 values directly.
16059
16060 Thu Jul  6 11:27:44 2000  Owen Taylor  <otaylor@redhat.com>
16061
16062         * gdk/x11/Makefile.am: Patch from George Lebl to 
16063         install all the headers in the right place.
16064
16065 Tue Jul  4 13:13:01 BST 2000  Tony Gale <gale@gtk.org>
16066
16067         * docs/faq/gtk-faq.sgml: Add remaining sections. Completes
16068           initial conversion to DocBook.
16069
16070 2000-07-04  Tor Lillqvist  <tml@iki.fi>
16071
16072         * README.win32: Improve a bit.
16073
16074         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Handle also
16075         WM_SYSCHAR, and other changes to get handling of Alt+nnn or
16076         Alt+0nnn on the numpad (used to enter characters by numeric code
16077         from current DOS or ANSI codepage) working correctly, as in other
16078         Windows apps.
16079
16080         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new_from_pixmap): Use
16081         same argument validity tests as in X11 version.
16082         (_gdk_cursor_destroy): Use DestroyCursor, not DestroyIcon.
16083
16084         * gdk/win32/gdkwin32.h: Add also WM_MOUSEWHEEL and CopyCursor
16085         definitions in case missing from headers.
16086
16087         * gdk/win32/gdkwindow-win32.c (gdk_win32_window_destroy): Also
16088         destroy the window-specific cursor.
16089         (RegisterGdkClass): Use the global gdk_ProgInstance instead of
16090         calling GetModuleHandle(NULL).
16091         (gdk_window_set_cursor): Reworked to always copy the passed cursor
16092         with CopyCursor before setting it as the window-specific
16093         cursor. It is OK for the caller to destroy the GdkCursor (and thus
16094         also its Windows cursor) after calling this function. Destroy any
16095         previous window-specific cursor.
16096
16097 Mon Jul  3 17:54:49 2000  Owen Taylor  <otaylor@redhat.com>
16098
16099         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): 
16100         font charset is iso8859-1, not iso-8859-1.
16101
16102 Mon Jul  3 17:08:14 2000  Owen Taylor  <otaylor@redhat.com>
16103
16104         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale):
16105         Use g_get_charset() instead of g_get_codeset().
16106
16107         * gtk/gtkframe.[ch] gtkframe.h gtk/gtktextmark.h: 
16108         Comment out some strdup'ing functions to keep timj
16109         happy until we finish fighting this out.
16110
16111 Mon Jul  3 14:24:16 2000  Owen Taylor  <otaylor@redhat.com>
16112
16113         * gtk/gtkwidget.c (gtk_widget_draw): Ignore calls with
16114         <= width or height.
16115
16116         * gtk/gtktable.c (gtk_table_attach): Fix missed merge
16117         from 1.2 for parent/child states.
16118
16119         * gdk/gdkgc.c (gdk_gc_set_rgb_fg/bg_color): Fix a couple
16120         of typos.
16121
16122         * gdk/gdkevents.[ch]: Remove press/xtilt/ytilt fields of
16123         event structures, replace with a generic axes field. Replace 
16124         deviceid/sourec with GdkDevice *device.
16125
16126         * gdk/gdkevents.[ch] (gdk_event_get_axis): Add function
16127         to extract particular axis use value from event. (Also
16128         can be used for normal X/Y.)
16129
16130         * gdk/gdkinput.h gdk/x11/gdkinput*: Major revision;
16131         allow for arbitrary number of axes, namespace everything
16132         as gdk_device_*. Replace guint32 deviceid with GdkDevice *
16133         everywhere.
16134
16135         * gdk/x11/{gdkmain-x11.c,gdkevent-x11.c,gdkinput*}: 
16136         Get rid of the gdk_input_vtable setup if favor of simply
16137         defining the functions in gdkinput-none/gxi/xfree.c in
16138         a similar fashion to the way that the port structure is 
16139         done.
16140
16141         * gtk/gtkdnd.c: Fix fields of synthesized button press event
16142         for new event structures. 
16143
16144         * gtk/gtkinputdialog.c gtk/testinput.c: Revise to match
16145         new device interfaces.
16146
16147 Sun Jul  2 18:19:50 2000  Owen Taylor  <otaylor@redhat.com>
16148
16149         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_layout): Add a 'text' argument to
16150         set the initial text.
16151
16152         * gtk/gtkaccellabel.c gtk/gtkcalendar.c gtk/gtkclist.c
16153         gtk/gtkentry.c gtk/gtkhruler.c gtk/gtkhscale.c gtk/gtklabel.c
16154         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvruler.c
16155         gtk/gtkvscale.c: Adapt to new argument of create_pango_layout().
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:43:41 2000  Owen Taylor  <otaylor@redhat.com>
16161
16162         * gtk/gtkclist.c (_gtk_clist_create_cell_layout): Use new
16163         pango_layout_set_font_description to simplify.
16164
16165 Sun Jul  2 17:06:40 2000  Owen Taylor  <otaylor@redhat.com>
16166
16167         * gtk/gtkcalendar.c gtk/gtkclist.c gtk/gtkctree.c gtk/gtkhscale.c
16168         gtk/gtkprogressbar.c gtk/gtkscale.c gtk/gtkvscale.c gtk/gtkaccellabel.c: Use
16169         pango_layout_get_pixel_extents() to remove a large number of '/ PANGO_SCALE'.
16170
16171         * gtk/gtk[hv]ruler.c gtk/gtklabel.c: replace some / PANGO_SCALE with
16172         PANGO_PIXELS() macro.
16173
16174 Sun Jul  2 15:24:41 2000  Owen Taylor  <otaylor@redhat.com>
16175
16176         * gtk/gtkwidget.[ch] (gtk_widget_get_pango_context): Add new function
16177         that returns a PangoContext owned by the widget and updated to
16178         match future changes in the widget. Also, make 
16179         gtk_widget_create_pango_layout() use this context. If we ever
16180         add a ::changed signal to PangoContext, this will make things
16181         much more convenient. 
16182
16183         * gtk/gtkentry.c gtk/gtklabel.c: Call pango_layout_context_changed()
16184         in the appropriate places instead of destroying the layouts and
16185         creating new ones.
16186
16187         * gtk/gtkfontsel.[ch] gtk/gtkclist.c: Use gtk_widget_get_pango_context()
16188         in a few strategic places.
16189
16190 Sun Jul  2 14:37:58 2000  Owen Taylor  <otaylor@redhat.com>
16191
16192         * gtk/gtkoptionmenu.c (gtk_option_menu_size_request): Call 
16193         gtk_widget_size_request() on reparented child, if one. Otherwise,
16194         queue_resize() on the child never results in it getting size-requested
16195         at all.
16196
16197         * gtk/testgtk.c (build_option_menu): Remove silly radio-menu-items
16198         in option menus, so that (with luck) people won't copy it into
16199         their apps in the future.
16200
16201         * gtk/gtkoptionmenu.c: Connect ::size_request on the menu
16202         to gtk_option_menu_calc_size. This isn't perfect, but should fix
16203         a lot of problems with changing the size of the menu's menu
16204         items after adding it to the option menu.
16205
16206         * gtk/gtktexttag.c: Include gtkmain.h for gtk_get_default_language().
16207
16208         * gtk/gtkwidget.[ch]: Add a ::direction_changed that triggers when
16209         the text direction for a widget changes.
16210
16211         * gtk/gtk{entry.c,label.[ch],textview.[ch]} gtk/testgtk.c: Use
16212         ::direction_changed to get rid of various hacks.
16213
16214 Sun Jul  2 13:19:12 2000  Owen Taylor  <otaylor@redhat.com>
16215
16216         * docs/Changes-2.0.txt: Move Changes-1.4.txt to the appropriate
16217         name.
16218
16219 Sun Jul  2 13:06:26 2000  Owen Taylor  <otaylor@redhat.com>
16220
16221         * gdk/x11/gdkpixmap-x11.[ch] Changes-1.4.txt: Add a is_foreign
16222         flag to the structure. Do not call XFreePixmap on pixmaps created
16223         by gdk_pixmap_foreign_new().
16224
16225 Sun Jul  2 12:45:50 2000  Owen Taylor  <otaylor@redhat.com>
16226
16227         * gdk/gdkrgb.[ch]: Add gdk_rgb_find_color() to get a pixel
16228         value using GdkRGB functionality given GdkColormap and GdkColor.
16229         (name not final, waiting for inspiration.)
16230         
16231         * gdk/gdkgc.[ch] (gdk_gc_set_rgb_fg/bg_color): New functions to
16232         set the foreground/background of a GC using the GC's colormap
16233         and GdkRGB. (name not final, waiting for inspiration.)
16234
16235         * gdk/gdkcompat.h gdk/gdkrgb.c (gdk_rgb_get_colormap): Rename from 
16236         gdk_rgb_get_cmap(), put #define in gdkcompat.h.
16237
16238         * gtk/gtkwidget.[ch] gtkcompat.h: Make visuals for
16239         gtk_widget_get_visual(), gtk_widget_get_default_visual, etc,
16240         purely a function of the corresponding colormap. Make
16241         gtk_widget_set_visual(), etc, noop macros in gtkcompat.h.
16242
16243         * gdk/gdkpixmap.c gdk/x11/gdkpixmap-c11.c: Rewrite
16244         gdk_pixbuf_*create_from_xpm_* in terms of
16245         gdk_pixbuf_new_from_xpm_data(), move into platform independent
16246         code.
16247
16248         * gdk/gdkpixbuf-render.c (gdk_pixbuf_render_to_drawable): Take
16249         advantage of the new draw_rgb_32_image_dithalign.
16250
16251         * gdk/gdkrgb.c (gdk_draw_rgb_32_image_dithalign): Added.
16252
16253         * gtk/gtkgc.c (gtk_gc_new): Set the appropriate colormap
16254         on each created GC.
16255
16256         * gdk/gdkgc.[ch]: Add gdk_gc_get/set_colormap.
16257
16258         * gdk/gdkgc.[ch]: Add a colormap field to the GdkGC structure
16259         which we initialize from the drawable when the GC is created,
16260         if the drawable has a colormap.
16261
16262         * gdk/x11/gdkgc-x11.c: include string.h for memset.
16263
16264         * gdk/x11/gdkinput-x11.c: include string.h for strlen, etc.
16265
16266         * gtk/gtklayout.[ch]: Remove unsed configure serial member.
16267
16268 Sat Jul  1 16:28:32 2000  Owen Taylor  <otaylor@redhat.com>
16269
16270         * gdk/x11/gdkevents-x11.c (gdk_event_translate): When
16271         actually returning expose events, make sure to set
16272         the count field properly.
16273
16274         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): Fix
16275         accidentally reintroced bug which always cleared
16276         the graphics_exposures value. 
16277
16278 Wed Jun 28 18:03:09 BST 2000  Tony Gale <gale@gtk.org>
16279
16280         * docs/faq/gtk-faq.sgml: Change DocBook layout slightly
16281
16282 Wed Jun 28 17:49:05 BST 2000  Tony Gale <gale@gtk.org>
16283
16284         * docs/faq/gtk-faq.sgml: Finish Section 6. Add Section 7.
16285
16286 Wed Jun 28 13:31:55 BST 2000  Tony Gale <gale@gtk.org>
16287
16288         * docs/faq/gtk-faq.sgml: Start of Section 6.
16289
16290 Mon Jun 26 19:37:04 2000  Owen Taylor  <otaylor@redhat.com>
16291
16292         * configure.in: Put 1.3.1 in warning message, not 1.3.0.
16293         
16294         (Fixes problem with drawing childless frames. Pointed out
16295         by and a first patch from Anders)
16296         
16297         * gtk/gtkframe.c (gtk_frame_compute_child_allocation): Always
16298         compute a child_allocation, even if we don't have a child.
16299
16300         * gtk/gtkaspectframe.c (gtk_aspect_frame_compute_child_allocation):
16301         Always chain to the parent's impl, even if we don't have a child.
16302
16303 Mon Jun 26 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
16304
16305         * gdk/gdkrgb.c: If possible, create only a single shm segment and
16306         use multiple parts of it instead of creating a bunch of separate
16307         segments, since the maximum number of segments per system is not
16308         large. (This might be worth backporting to GTK+-1.2.x if we make a
16309         new release )
16310
16311         * gdk/gdkrgb.c: Localize a bunch of variables into the GdkRgbInfo
16312         structure in preparation for per-colormap GdkRGB.
16313
16314         * gdk/x11/gdkimage-x11.c (gdk_image_new): Don't set gdk_use_xshm
16315         to False when we get EINVAL from shmget so that the caller of
16316         gdk_image_new can retry with a smaller segment size.
16317
16318 Mon Jun 26 13:01:16 BST 2000  Tony Gale <gale@gtk.org>
16319
16320         * docs/faq/gtk-faq.sgml: Add Sections 4 & 5.
16321
16322 Fri Jun 23 17:54:23 2000  Tim Janik  <timj@gtk.org>
16323
16324         * configure.in: make the current version number 1.3.1 (binary age 0,
16325         interface age 0).
16326         
16327         * gtkfeatures.h, gtkfeatures.h.in: dejavue, get rid of these *again*,
16328         gtkcompat.h is all we want.
16329
16330         * gtk/gtktypeutils.[hc]: define most of the primitive types in terms of
16331         GLib primitive types. fixed g_type_register_fundamental() argument
16332         ordering.
16333
16334         * gtk-config.in (lib_gtk): add -lgdk_pixbuf so third party code
16335         compiles.
16336
16337         * gdk-pixbuf-loader.[hc]: get rid of unistd.h include.
16338         object code cleanup, comment trigraph fixes, etc...
16339
16340 2000-06-23  Havoc Pennington  <hp@redhat.com>
16341
16342         * gtk/gtktextview.c (gtk_text_view_set_buffer): Use anonymous mark 
16343         instead of making up a bogus name for first_para_mark
16344
16345         * gtk/gtkstatusbar.h, gtk/gtkstatusbar.c: Allow 
16346         0 as a context ID
16347
16348 Thu Jun 22 17:43:51 BST 2000  Tony Gale <gale@gtk.org>
16349
16350         * docs/faq/gtk-faq.sgml: Change filename. Add Section 3.
16351
16352 2000-06-21  Havoc Pennington  <hp@pobox.com>
16353
16354         * gdk/gdkwindow.c (_gdk_window_destroy_hierarchy): Fix bug where
16355         we didn't check window->bg_pixmap != GDK_NO_BG.
16356
16357         * gtk/gdk-pixbuf-loader.c: Change to reflect GObject-ification of
16358         gdk-pixbuf
16359
16360 Thu Jun 22 14:02:19 BST 2000  Tony Gale <gale@gtk.org>
16361
16362         * docs/faq/gtk-faq.sgm: Move file to here.
16363           TODO: Update Makfile.am 
16364
16365 Thu Jun 22 13:41:09 BST 2000  Tony Gale <gale@gtk.org>
16366
16367         * docs/gtk-faq.sgm: Add Section 2
16368
16369 Thu Jun 22 08:43:45 BST 2000  Tony Gale <gale@gtk.org>
16370
16371         * docs/gtk-faq.sgm: New file. Start of DocBook
16372           version of the FAQ.
16373
16374 Wed Jun 21 23:04:17 2000  Owen Taylor  <otaylor@redhat.com>
16375
16376         * configure.in (GDK_PIXBUF_MAJOR): Define version
16377         numbers for GDK_PIXBUF_*, as they get substituted
16378         into a header file. Need to consider versioning
16379         for gdk-pixbuf more carefully later.
16380
16381 2000-06-21  Raja R Harinath  <harinath@cs.umn.edu>
16382
16383         Work with srcdir != builddir.   
16384         * demos/testanimation.c: Don't include "gdk-pixbuf.h".  Use
16385         <gtk/gdk-pixbuf-loader.h>, not "gtk-pixbuf/gdk-pixbuf-loader.h".
16386         * demos/testpixbuf.c: Likewise.
16387         * demos/testpixbuf-scale.c: Don't include "gdk-pixbuf.h".
16388         * demos/testpixbuf-drawable.c: Don't include "gdk-pixbuf.h".  Use
16389         <gdk/x11/gdkx.h>.
16390         * demos/pixbuf-demo.c: Use <gtk/gtk.h> not "gtk.h".  Don't include
16391         "gdk-pixbuf.h".
16392         * demos/Makefile.am (INCLUDES): Remove unneeded directories.
16393
16394 Wed Jun 21 19:45:02 2000  Owen Taylor  <otaylor@redhat.com>
16395
16396         * TODO.xml: Change 1.4 version numbers to 2.0.
16397
16398 Wed Jun 21 19:29:08 2000  Owen Taylor  <otaylor@redhat.com>
16399
16400         * gdk/gdkpixbuf-render.c gdk/gdkpixbuf-drawable.c: Indentation
16401         fixups to GTK+ standard.
16402
16403 Wed Jun 21 16:38:13 2000  Owen Taylor  <otaylor@redhat.com>
16404
16405         * gdk-pixbuf/* docs/reference/gdk-pixbuf/*: Welcome aboard,
16406         gdk-pixbuf.
16407
16408         * gtk/gdk-pixbuf-loader.c (gdk_pixbuf_loader_class_init):
16409         fixups for GObject.
16410
16411         * gdk/Makefile.am gdk/gdkpixbuf-render.[ch] gdk/gdkpixbuf.[ch]: Bits of 
16412         gdk-pixbuf with GDK dependencies moved into GDK.
16413         
16414         * gtk/Makefile.am gtk/gdk-pixbuf-loader.[ch]: Temporarily
16415         move gdk-pixbuf-loader here until GObject has signals.
16416
16417         * demos/: New directory of demos. Move demos from
16418         gdk-pixbuf here.
16419
16420         * demos/pixbuf-init.c: Small bit of code to check for
16421         loaders in ../gdk-pixbuf/.libs/gdk-pixbuf, and if found,
16422         set GDK_PIXBUF_MODULEDIR appropriately.
16423
16424         * gdk/gdkcompat.h: Remove GDK_DRAWABLE_PIXMAP compat
16425         define which no longer makes sense.
16426
16427 2000-06-21  Havoc Pennington  <hp@redhat.com>
16428
16429         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Use
16430         gtk_get_default_language
16431
16432         * gtk/gtkmain.h, gtk/gtkmain.c (gtk_get_default_language): 
16433         new function to get the default language
16434
16435         * gtk/gtktexttagprivate.h, gtk/gtktexttag.c, gtktextview.c: 
16436         s/gtk_text_view_style_values/gtk_text_style_values/
16437
16438         * gtk/gtktexttag.c, gtk/gtktexttag.h, gtk/gtktexttagprivate.h:
16439         Add a "language" field to tags.
16440
16441         (gtk_text_tag_set_arg): Fix bug in setting
16442         "bg_full_height_set" tag.
16443
16444 2000-06-21  Havoc Pennington  <hp@redhat.com>
16445
16446         * gtk/gtktextiter.h: Use gunichar instead of gint when appropriate
16447         in the interfaces
16448
16449         * gtk/gtktexttypes.c: Remove UTF functions, use glib 
16450         stuff instead when possible.
16451
16452         * gtk/gtktexttypes.h: Delete some unused constants
16453
16454         * gtktextbtree.c, gtktextiter.c, gtktextsegment.c, gtktextview.c,
16455         testtextbuffer.c: use glib instead of custom unicode routines
16456
16457 Wed Jun 21 12:50:58 2000  Owen Taylor  <otaylor@redhat.com>
16458
16459         * docs/es/: Removed mistakenly added generated sgml
16460
16461         * docs/{gdk.texi,gtk.texi,gdk.sgml} macros.texi texinfo.tex:
16462         Remove outdated info files.
16463
16464         * docs/gtk_tut* docs/package_tutorial.sh docs/tutorial:
16465         Moved tutorial files into subdir
16466
16467         * docs/gtkfaq.sgml docs/faq/gtkfaq.sgml: Move FAQ into
16468         subdir.
16469
16470         * docs/man/gtk_button.pod: Remove. (contents will be
16471         integrated into gtk-reference button page.)
16472
16473         * configure.in docs/Makefile.am docs/tutorial/Makefile.am
16474         docs/faq/Makefile.am: Adjust for new organization
16475
16476 2000-06-21 Christopher Blizzard  <blizzard@redhat.com>
16477
16478         * gdk/x11/Makefile.am (install-data-local): use $(mkinstalldirs)
16479         not $(MKINSTALLDIRS)
16480
16481 Wed Jun 21 12:24:28 2000  Owen Taylor  <otaylor@redhat.com>
16482
16483         * gtk/testgtk.c (create_text): Finish the job Elliot started
16484         of removing font setting test for text widget. (Since text widget
16485         and GdkFont are not deprecated, and cause portability problems.)
16486
16487 Wed Jun 21 11:41:43 2000  Owen Taylor  <otaylor@redhat.com>
16488
16489         * gtk/gtkentry.c gtk/gtkimcontextsimple.c gtk/gtklabel.c
16490         gtk/gtktexttypes.c gtk/testtext.c modules/linux-fb/basic.c:
16491         Remove use of libunicode in favor of new GLib functions.
16492
16493         * gtk/gtkcolorsel.c: Remove conditional includes for FB, win32,
16494         nano-x, framebuffer. The X11 include is just a hack until we get
16495         the necessary functions in gdkcolor.h, so there is no reason to
16496         add other includes of platforms.
16497
16498         * gtk/gtkwindow.c (gtk_window_compute_default_size): Revert 
16499         window bigger than the screen change.
16500
16501         * gtk/testgtk.c: Revert some random changes from Elliot
16502         that had no particular point and were causing testgtkrc
16503         not to function correctly.
16504         
16505         * gdk/gdkregion-generic.h: Revert change from Elliot. Just
16506         because GdkSegment and GdkRegionBox have the same fields,
16507         it doesn't mean that 'typedef GdkSegment GdkRegionBox'
16508         results in clearer code.
16509
16510         * gdk/x11/gdkinput-x11.c (gdk_input_common_select_events,
16511         gdk_input_translate_coordinates): Fix missed GdkObjectification
16512
16513 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16514
16515         * gdk/Makefile.am, gdk/*/Makefile.am: Fix conditionality to work the "right" way.
16516         * gtk/gtk{plug,socket}.h: Missed commits from previous.
16517
16518 2000-06-20  Havoc Pennington  <hp@redhat.com>
16519
16520         * modules/linux-fb/Makefile.am: Make this compile
16521         without framebuffer enabled
16522
16523         * gdk/linux-fb/Makefile.am: Add conditional to not build
16524         framebuffer unless specified in configure
16525
16526         * gdk/gdkdraw.c (gdk_draw_drawable): Fix bug where I was getting
16527         the size of the target instead of source if -1 was passed for
16528         width/height
16529
16530         * gdk/x11/gdkgeometry-x11.c (gdk_window_compute_position): Fix 
16531         width/height confusion.
16532
16533 2000-06-19  Havoc Pennington  <hp@redhat.com>
16534
16535         * gdk/x11/gdkx.h (GDK_WINDOW_XWINDOW): change this to be
16536         GDK_DRAWABLE_XID. In the future, we probably want to make it
16537         faster with G_DISABLE_CHECKS turned on.
16538
16539 2000-06-14  Havoc Pennington  <hp@redhat.com>
16540
16541         * gdk/Makefile.am: add gdkpixmap.c
16542
16543         * gdk/gdk.c: s/gdk_window_init/_gdk_windowing_window_init/
16544         s/gdk_image_init/_gdk_windowing_image_init
16545
16546         * gdk/gdkcolor.c: make ref/unref compat wrappers for GObject
16547         ref/unref
16548
16549         * gdk/gdkcolor.h: make GdkColormap a GObject subclass
16550
16551         * gdk/gdkcompat.h: remove GdkWindowType compat, since
16552         GdkWindowType is now non-deprecated; 
16553         change gdk_window_get_type() compat to be
16554         gdk_window_get_window_type().
16555
16556         * gdk/gdkdnd.h: make GdkDragContext a GObject.
16557
16558         * gdk/gdkdraw.c, gdk/gdkdraw.h: Convert GdkDrawable to a pure
16559         virtual GObject. Make all functions call into the vtable.
16560         Move gdk_image_put() guts in here. Remove GdkDrawableType
16561         and gdk_drawable_get_type(), these are now GdkWindow-specific.
16562         draw_image, get_depth, get_size, set_colormap, get_colormap,
16563         get_visual added to the vtable.
16564         
16565         * gdk/gdkgc.h, gdk/gdkgc.c: Convert GdkGC to a pure virtual 
16566         GObject. Virtualize everything. 
16567         (gdk_gc_new_with_values): remove check for destroyed window,
16568         because now GdkWindow::create_gc will check this.
16569         (gdk_gc_set_values): New function to set GC values, this 
16570         was already implemented but wasn't in the header
16571
16572         * gdk/gdkimage.h, gdk/gdkimage.c: Convert GdkImage to a GObject.
16573
16574         * gdk/gdkinternals.h: Remove _gdk_window_alloc(), remove
16575         _gdk_window_draw_image(), remove _gdk_windowing_window_class,
16576         remove _gdk_window_class; add _gdk_window_impl_get_type() and
16577         _gdk_pixmap_impl_get_type(). Rename gdk_window_init to
16578         _gdk_windowing_window_init, rename gdk_image_init to
16579         _gdk_windowing_image_init.
16580         
16581         * gdk/gdkpango.c: Reflect GObject-ification of PangoContext.
16582         (gdk_draw_layout): Remove check for destroyed window, 
16583         because all the drawable methods already check it.
16584         
16585         * gdk/gdkpixmap.h, gdk/gdkpixmap.c: Convert GdkPixmap to GObject.
16586         Add gdkpixmap.c which contains implementation of GdkDrawable
16587         virtual table (by chaining to a platform-specific implementation
16588         object).
16589         
16590         * gdk/gdkprivate.h: Remove GDK_IS_WINDOW, GDK_IS_PIXMAP, 
16591         GDK_DRAWABLE_DESTROYED. Add GDK_WINDOW_DESTROYED. Replace
16592         GDK_DRAWABLE_TYPE with GDK_WINDOW_TYPE. Remove GdkDrawablePrivate,
16593         GdkWindowPrivate, GdkImageClass, GdkImagePrivate, GdkGCPrivate,
16594         GdkColormapPrivate. 
16595
16596         * gdk/gdktypes.h: #include <glib-object.h>
16597
16598         * gdk/gdkwindow.h, gdk/gdkwindow.c: Convert GdkWindow to GObject.
16599         Move most functionality to platform-specific implementation
16600         object. GdkWindow itself now handles the backing store, then
16601         chains to the platform-specific implementation.
16602         (gdk_window_get_window_type): return GdkWindowType of the window.
16603         (gdk_window_peek_children): New routine, returns the children of 
16604         a GdkWindow
16605         (gdk_window_get_children): Was in X11-specific code and did 
16606         XQueryTree. Changed to simply return a copy of window->children; 
16607         so it can go in cross-platform code.
16608         
16609         * gdk/x11/Makefile.am: fix broken MKINSTALLDIRS path
16610
16611         * gdk/x11/gdkcolor-x11.c: implement X-specific parts of 
16612         GdkColormap; just changed to use the new private data instead
16613         of casting to GdkColormapPrivate.
16614
16615         * gdk/x11/gdkcursor-x11.c: added a couple typechecks to 
16616         gdk_cursor_new().
16617
16618         * gdk/x11/gdkdnd-x11.c: Change the way we access private fields 
16619         (private data member in the GObject). 
16620         (xdnd_manager_source_filter): Function had broken 
16621         error handling, fix it (use gdk_error_trap_push).
16622
16623         * gdk/x11/gdkdrawable-x11.c: This file now implements
16624         a base class for GdkWindowImplX11/GdkPixmapImplX11. This 
16625         base class is purely for the convenience of the X port,
16626         and not part of the interface to cross-platform GDK.
16627
16628         * gdk/x11/gdkevents-x11.c: Reflect various renamings.
16629         
16630         * gdk/x11/gdkgc-x11.c: Implement a subclass of GdkGC that's
16631         specific to X, and returned by the create_gc virtual method
16632         of GdkDrawableImplX11. 
16633         (gdk_x11_gc_set_dashes): Change this to take an array of gint8
16634         rather than gchar, this was also changed in the GdkGC vtable.
16635         (gdk_x11_gc_values_to_xvalues): If GdkGCValues is NULL, or the
16636         mask is 0, return immediately, instead of checking every flag.
16637         This is faster, and keeps us from segfaulting if values is NULL
16638         and the mask contains some nonzero flags.
16639
16640         * gdk/x11/gdkgeometry-x11.c: deal with all the rearranging of
16641         GdkWindow.
16642
16643         * gdk/x11/gdkglobals-x11.c: change type of grab window, since 
16644         GdkWindowPrivate is gone.
16645
16646         * gdk/x11/gdkim-x11.c: rename things that got renamed.
16647
16648         * gdk/x11/gdkimage-x11.c: implement in terms of GObject, and 
16649         remove the image_put stuff that got transferred to GdkDrawable.
16650         
16651         * gdk/x11/gdkinput.c: renamings
16652
16653         * gdk/x11/gdkmain-x11.c: #include <pango/pangox.h>
16654
16655         * gdk/x11/gdkpixmap-x11.c: GObject conversion
16656
16657         * gdk/x11/gdkprivate-x11.h: indentation fixes
16658
16659         * gdk/x11/gdkproperty-x11.c: renamings
16660
16661         * gdk/x11/gdkselection-x11.c: renamings
16662
16663         * gdk/x11/gdkwindow-x11.c: Restructuring and renaming; this now 
16664         implements the platform-specific "impl" object.
16665         Moved gdk_window_get_children to gdk/gdkwindow.c
16666
16667         * gdk/x11/gdkx.h: Remove all the private structs and private datas
16668         that no longer exist. Add declaration of GdkGCX11 object here.
16669         Fix all the macros to still work. 
16670
16671         * gtk/gtk-boxed.defs: Remove GtkStyle, GdkColormap, GdkWindow,
16672         GdkDragContext from the boxed types since they are now GObjects.
16673
16674         * gtk/gtkstyle.h, gtk/gtkstyle.c: Converted GtkStyle to a GObject,
16675         moved xthickness/ythickness into the instance. GtkStyleClass
16676         functions are now in the standard vtable for GtkStyle, so you have
16677         to create a GObject subclass to write a theme engine.
16678         (gtk_style_copy): fixed a leaked PangoFontDescription
16679         (gtk_style_init): renamed gtk_style_realize, so gtk_style_init
16680         can be the standard GObject function.
16681         
16682         * Throughout GTK:
16683         s/style->klass->[xy]thickness/style->[xy]thickness
16684         s/pango_layout_unref/g_object_unref/
16685
16686         * gtk/gtkrc.h, gtk/gtkrc.c: Converted GtkRcStyle to a GObject.
16687         
16688         * gtk/gtksocket.c: Use gdk_window_get_user_data() instead of 
16689         accessing GDK internals.
16690
16691         * gtk/gtkwidget.c: Use gdk_window_peek_children() instead of 
16692         accessing GDK internals.
16693
16694 2000-06-18  Elliot Lee  <sopwith@redhat.com>
16695
16696         * gtk/gtkwindow.c: Don't allow creation of a window bigger than the screen.
16697
16698         * gtk/gtkrange.c: Fix the mega-jumpy-with-lagged-events scrollbar
16699         problem by calculating event position relative to the trough
16700         rather than the slider.
16701         * gtk/gtkdnd.c, gtk/gtkcolorsel.c: Include FB headers if appropriate.
16702
16703         * gdk/gdkgc.h: Add GDK_NOR.
16704
16705         * configure.in, Makefile.am: Add modules top level dir
16706         * configure.in: Only use pangox library if building x11 target.
16707         * gdk/gdkdnd.h: Add GDK_DRAG_PROTO_LOCAL enum for future intra-app use.
16708
16709 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16710
16711         * gtk/gtkcolorsel.c: Change private class member to be named
16712         private_data throughout the file.
16713
16714         * gtk/gtkcolorsel.h (struct _GtkColorSelection): Change private to
16715         private_data to avoid clashing with keyword.
16716
16717 Fri Jun 16 22:24:22 2000  Christopher Blizzard  <blizzard@redhat.com>
16718
16719         * gdk/gdkdnd.h: Add comment to remove warning.
16720
16721 Sun Jun 18 15:35:35 2000  Pablo Saratxaga <pablo@mandrakesoft.com>
16722
16723         * gtk/gtkrc.cp1251,gtk/Makefile.am: the cp1251 is also used by
16724         Byelorussian language; changed the Makefile and file names 
16725         to reflect that.
16726
16727 Mon Jun 12 16:58:40 2000  Owen Taylor  <otaylor@redhat.com>
16728
16729         * gtk/gtkwindow.c (gtk_window_unmap): Call gdk_window_withdraw
16730         rather than gdk_window_hide; this makes things work
16731         correctly if the window is programmatically hidden while
16732         iconified.
16733
16734 Sun Jun 11 12:46:19 2000  Owen Taylor  <otaylor@redhat.com>
16735
16736         * gtk/gtkdnd.c (gtk_drag_set_default_icon): Fix
16737         cut and paste typo where wrong pixmap was being
16738         unref'ed. (Pointed out by a friend of KUSANO Takayuki.)
16739
16740 Sun Jun 11 10:22:36 2000  Owen Taylor  <otaylor@redhat.com>
16741
16742         * gtk/gtkselection.c (gtk_selection_bytes_per_item):
16743         Add helper function to compute format / bytes 
16744         relationship. Use in a couple places to fix up
16745         errors which assume 8 * format.
16746
16747         * gtk/gtkselection.c (gtk_selection_request): Use 32
16748         rather than 8 * sizeof (GdkAtom), to work correctly
16749         on Alpha.
16750
16751 Thu Jun  8 21:54:51 2000 Christopher Blizzard  <blizzard@redhat.com>
16752
16753         * gtk/Makefile.am (DEPS): deps include libgtk-x11.la, not
16754         libgtk.la
16755         (LDADDS): include libgtk-x11.la and libgdk-x11.la, not the non-x11
16756         versions
16757
16758         * gtk/gtklabel.c (gtk_label_get_text): Make sure that the error
16759         checking macros return NULL since the function has a return value.
16760
16761 Wed Jun  7 15:44:42 2000  Owen Taylor  <otaylor@redhat.com>
16762
16763         * gtk/Makefile.am (LDFLAGS): Add missing backslash that was keeping
16764         GTK+ from building at all.
16765
16766         * gdk/Makefile.am (gdk_c_sources): Fix up some indentation issues.
16767
16768 Mon Jun  5 19:32:53 CEST 2000 Paolo Molaro <lupus@linuxcare.com>
16769
16770         * configure.in, gtk-config.in, gdk/Makefile.am, gdk/*/Makefile.am,
16771         gtk/Makefile.am: make it possible to configure gtk for different
16772         targets on the same platform. The library name is now 
16773         libgtk-$target-$version.so. gtk-config accepts a --target x11|nanox|linux-fb
16774         flag. Only the x11 target compiles right now.
16775         * gdk/gdkregion-generic.h, gdk/gdkregion-generic.c, gdk/gdkpoly-generic.h,
16776         gdk/gdkpolyreg-generic.c: move generic region code in the main GDK dir.
16777         * gdk/nanox/gdk*generic*: delete generic region code.
16778         * gdk/linux-fb/gdk*generic*: delete generic region code.
16779         * README.nanox: update information.
16780         
16781 Tue Jun  6 10:53:59 2000  Owen Taylor  <otaylor@redhat.com>
16782
16783         * gtk/gtktoolbar.c (gtk_toolbar_prepend_widget): Fix to
16784         prepend not append. (Pointed out by Brett Hall.)
16785
16786 Tue Jun  6 01:59:57 2000  Owen Taylor  <otaylor@redhat.com>
16787
16788         * gtk/gtkentry.c (gtk_entry_finalize): Unref the entry's layout.
16789
16790 Mon Jun  5 16:00:09 2000  Owen Taylor  <otaylor@redhat.com>
16791
16792         * gdk/gdk.c (gdk_init_check): Add call to g_type_init() - we'll
16793         need this later, and this makes sure that the atexit for
16794         glib gets called after that for GDK, so atexits are
16795         properly ordered for object leak checking.
16796
16797         * gdk/gdk.c (gdk_exit_func): Call gdk_windowing_exit().
16798
16799         * gdk/x11/gdkmain-x11.c (gdk_windowing_exit): Call 
16800         pango_x_shutdown_display()
16801
16802         * gtk/simple.c (main): Close window on destroy.
16803
16804 Mon Jun  5 11:50:02 2000  Owen Taylor  <otaylor@redhat.com>
16805
16806         * gdk/x11/gdkgc-x11.c (gdk_x11_gc_values_to_xvalues): We need
16807         to treat initial creation different from setting with 
16808         regards to the graphics-exposures parameter, so add a parameter
16809         indicating whether this is initial or not.
16810
16811 Mon Jun  5 13:29:31 2000  Owen Taylor  <otaylor@redhat.com>
16812
16813         * gdk/x11/gdkevents-x11.c: Hack gdk_event_get_graphics_expose()
16814         to sort of work by adding an extra return_exposes arg
16815         to gdk_event_translate() - it might be better to simply
16816         deprecate the function altogether and force people to rewrite
16817         without it. gdk_window_scroll() handles most of it, and where
16818         gdk_window_scroll() doesn't work, simply redrawing more does.
16819
16820         * gtk/gtkwidget.c (gtk_widget_set_default_direction): Fix up
16821         assertion.
16822
16823         * gtk-config.in: Include PANGO_CFLAGS/LIBS.
16824
16825         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Remove a 
16826         bunch of pretty much useless /* Print debugging info */ comments 
16827         which had drifted away from the code they were commenting.
16828
16829 2000-06-02  Havoc Pennington  <hp@pobox.com>
16830
16831         * gtk/testtextbuffer.c: Test program to make sure GtkTextBuffer
16832         is in working order.
16833         
16834         * gtk/testtext.c: Change to reflect anonymous mark API
16835
16836         * gtk/gtktextview.c: Convert from mark names to GtkTextMark*.
16837
16838         * gtk/gtktexttag.h (struct _GtkTextTag): remove the affects_size
16839         field, which was unused.
16840
16841         * gtk/gtktextmarkprivate.h (GTK_IS_TEXT_MARK): add this macro,
16842         saves some typing.
16843
16844         * gtk/gtktextbuffer.c: Switch from mark names to GtkTextMark*   
16845
16846         * gtk/gtktextbtree.c (gtk_text_btree_new): set the not_deleteable
16847         flag on the insertion point and selection bound
16848
16849         Throughout, use GtkTextMark instead of GtkTextLineSegment, and 
16850         make mark-manipulation functions take a GtkTextMark* instead of a
16851         mark name.
16852         
16853         * gtk/gtktextmarkprivate.h: Add a "not_deleteable" flag to 
16854         GtkTextMarkBody; will be used to detect attempts to delete
16855         the permanent marks (insert and selection bound)
16856
16857         * gtk/Makefile.am (noinst_PROGRAMS): add testtextbuffer 
16858
16859 Fri Jun  2 12:56:01 2000  Owen Taylor  <otaylor@redhat.com>
16860
16861         * gtk/gtkwidget.c (gtk_widget_init): Initialize DOUBLE_BUFFERED
16862         flag to on.
16863
16864         * gtk/gtkwidget.c (gtk_widget_draw) gtk/gtkmain.c (gtk_main_do_event): 
16865         Honor DOUBLE_BUFFRED_FLAG
16866
16867         * gtk/gtkwidget.c (gtk_widget_set_double_buffered): Add a
16868         function to set the DOUBLE_BUFFERED flag.
16869
16870         * gtk/gtkwidget.h: Add GTK_DOUBLE_BUFFERED flag to indicate whether
16871         or not exposes done on the widget should be double-buffered.
16872
16873         * gtk/gtkenums.h (GtkTextDirection): Reverse order of enumerations
16874         to be what would be expected. (Fixes problem with a
16875         g_return_if_fail() validating a TextDirection enumeration)
16876
16877 Thu Jun  1 23:05:13 2000  Owen Taylor  <otaylor@redhat.com>
16878
16879         * gtk/gtkwidget.c: Remove all references to 
16880         offscreen flag which was no longer used.
16881
16882         * gtk/gtkprivate.h (enum): Remove unused flags and compress.
16883
16884         * gtk/gtkframe.c (gtk_frame_set_label_widget): Check
16885         for non-null label_widget->parent.
16886
16887         * gtk/gtkentry.c: Get rid of code to deal with PangoAttribute 
16888         which no longer was used.
16889
16890         * gdk/gdkpango.c (gdk_pango_context_get_info): make static.
16891
16892         * gdk/gdkpango.c (gdk_draw_layout[_line]): Add checks
16893         for null arguments.
16894
16895         * gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): add
16896         check for destroyed windows.
16897
16898 Thu Jun  1 13:48:45 2000  Owen Taylor  <otaylor@redhat.com>
16899
16900         * gtk/gtkimmulticontext.c: Add a finalize method and unref
16901         the slave context there.
16902
16903         * gtk/gtkinvisible.[ch]: Make reference counting behavior
16904         identical to GtkWindow.
16905
16906 Thu Jun  1 01:54:11 2000  Owen Taylor  <otaylor@redhat.com>
16907
16908         * Makefile.am gdk/gdkpango.c: Copy the layout render function from
16909         pangox to here, so we can write them independent of rendering
16910         system, using GDK primitives.
16911
16912         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c
16913         gdk/x11/gdkdrawable-x11.c: Remove draw_layout() from the vtable,
16914         since we have a rendering-system independent implementation in
16915         terms of draw_glyphs().
16916         
16917         * gdk/gdkpango.c gdkdrawable.h (gdk_draw_layout_line): New
16918         function to render a single line.
16919
16920         * gdk/x11/gdkpango.c: Move the guts of this file mostly
16921         into ../gdkpango.c, which simplifies things, since we
16922         don't have to deal with raw X gc's.
16923
16924 Fri May 19 04:28:16 2000  Owen Taylor  <otaylor@redhat.com>
16925
16926         * gtk/gtktextlayout.[ch]: Add get_log_attrs() function to
16927         get the logical attributes for a given GtkTextLine.
16928
16929 Tue May 30 16:05:39 2000  Owen Taylor  <otaylor@redhat.com>
16930
16931         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Track
16932         g_locale_get_codeset() to g_get_codeset() change.
16933
16934 Tue May 30 15:03:19 2000  Owen Taylor  <otaylor@redhat.com>
16935
16936         * gtk/testcalendar.c (calendar_font_selection_ok): Use font
16937         descriptions.
16938
16939         * gtk/gtkentry.c (gtk_entry_draw_text): Center text within
16940         the entry.
16941
16942         * gtk/gtkfontsel.c (gtk_font_selection_dialog_init): Start of
16943         redoing (vastly simplifying) for Pango. Still needs quite
16944         a bit of work. (Size selection is currently poor. List of 
16945         predefined sizes is not a good idea, since all of these
16946         sizes won't necessarily be distinct.)
16947
16948 Tue May 30 13:50:19 2000  Owen Taylor  <otaylor@redhat.com>
16949
16950         * gdk/x11/gdkfont-x11.c (gdk_font_charset_for_locale): Handle
16951         CODESET results for LANG=C.
16952
16953 Mon May 29 15:49:10 2000  Owen Taylor  <otaylor@redhat.com>
16954
16955         * gtk/gtkrc.[ch]: Add a 'font_name' declaration to RC
16956         which takes a stringized pango font description;
16957         ignore the older 'font' and 'fontset' declarations.
16958
16959         * gtk/gtkstyle.c gtk/gtkrc.c: Fill in the style->font
16960         field with a GdkFont derived via gdk_font_from_description(),
16961         for compatibility. (Should we just remove it entirely?
16962         Probably too much compatibility breakage, but people
16963         should be migrating to the new Pango stuff as quickly
16964         as possible.)
16965
16966 Mon May 29 15:47:41 2000  Owen Taylor  <otaylor@redhat.com>
16967
16968         * gtk/gtkentry.c gtk/gtkclist.c: s/pango_font_unref/g_object_unref/.
16969
16970 Mon May 29 15:44:46 2000  Owen Taylor  <otaylor@redhat.com>
16971
16972         * gtk/gtkcalender.c: Roughly pango-ized. Really needs 
16973         redoing; there are some bugs in size allocation right
16974         now, the semi-existant distinction between header / day
16975         fonts was removed, but, with Pango, could actually
16976         be made functional in a nice way.
16977         
16978         * gtk/testcalender: Move calender from examples into this
16979         directory as a test program. (We really need to restrcture
16980         testgtk into a whole directory full of tests for every
16981         widget or functionality group, separated into multiple .c
16982         files.)
16983
16984 Mon May 29 15:19:56 2000  Owen Taylor  <otaylor@redhat.com>
16985
16986         * gtk/testgtk.c (file_exists): Fix stupid typo that
16987         was keeping RC file from being loaded.
16988
16989         * gtk/testgtkrc gtk/testgtkrc2: Test new pango-ized
16990         RC file font code.
16991
16992 Mon May 29 14:31:27 2000  Owen Taylor  <otaylor@redhat.com>
16993
16994         * gdk/gdkfont.h gdk/x11/gdkfont-x11.c (gdk_font_from_description):
16995         Add function to load a GdkFont from a PangoFontDescription.
16996
16997 2000-05-29  Tor Lillqvist  <tml@iki.fi>
16998
16999         * gdk/win32/gdkevents-win32.c (gdk_WindowProc): The local "event"
17000         variable should be of type GdkEventPrivate.
17001
17002 Fri May 26 17:16:40 2000  Owen Taylor  <otaylor@redhat.com>
17003
17004         * gtk/frame.[ch] gtkaspectframe.c: Make frame widgets able
17005         to have any widget for the label, use a GtkLabel widget
17006         to display the text. (Based partially on a patch from
17007         Anders Carlson.)
17008
17009         (Quite a bit of code reorganization - strip 90% of the
17010         guts out of gtkaspectframe and add a single virtual
17011         func to GtkFrameClass - compute_child_allocation.)
17012
17013 Fri May 26 12:00:02 2000  Owen Taylor  <otaylor@redhat.com>
17014
17015         * gtk/gtkctree.c gtk/gtkclist.[ch]: Pangoized.
17016         (Removed clist->row_center_offset field because caching
17017         it wasn't saving time or code, added private function
17018         _gtk_clist_create_cell_layout()).
17019
17020 Wed May 24 15:59:37 2000  Owen Taylor  <otaylor@redhat.com>
17021
17022         * gtk/gtkaccellabel.c: Pangoized.
17023
17024         * gtk/[hv]ruler.c: Pangoized
17025
17026 Mon May 22 19:23:59 2000  Owen Taylor  <otaylor@redhat.com>
17027
17028         * gtk/gtkfilesel.c (gtk_file_selection_init):
17029         Use gtk_clist_set_column_auto_resize() to remove need
17030         need for manual column width computations.
17031
17032 Mon May 22 18:50:26 2000  Owen Taylor  <otaylor@redhat.com>
17033
17034         * gtk/gtktooltips.[ch]: Replace custom drawing with a GtkLabel, 
17035         ensuring Pango correctness, and considerably simplifying the
17036         code.
17037         
17038         * gtk/gtklabel.c gtk[hv]scale.c: 1000 => PANGO_SCALE.
17039
17040         * gtk/gtklabel.c (gtk_label_size_request): Fixed incorrect
17041         getting of numbers of lines.
17042
17043         * gtk/gtklabel.c (gtk_label_size_request): Set the requisition
17044         to the actual requested width of the lable, not to the wrap
17045         width we set.
17046
17047         * gtk/gtktextchild.h: Remove extraneous include of gtk/gtk.h.
17048
17049         * gtk/gtktextbtree.c gtk/gtktextbuffer.c gtk/gtktextlayout.c
17050           gtk/gtktextview.c gtk/gtktextview.[ch]: Fix up includes.
17051
17052         * gtk/gtktextview.c: Fix structure inheritance.
17053
17054         * gtk/gtkprogressbar.c: Pangoize.
17055
17056 Mon May 22 15:47:30 2000  Owen Taylor  <otaylor@redhat.com>
17057
17058         * gtk/gtktextview.c (gtk_text_view_get_first_para_iter): Encapsulate
17059         in a function.
17060
17061         * gtk/gtktextlayout.c (find_display_line_above): Fixed
17062         bug with computing line tops.
17063
17064         * gtk/gtktextview.c (changed_handler): Fix < , <= confusion.
17065
17066 Thu May 18 18:53:31 2000  Owen Taylor  <otaylor@redhat.com>
17067
17068         * gtk/gtktextdisplay.c (gtk_text_layout_draw): Fix up the x_offset
17069         and y_offset coordinates to do what we need now. (The offset between
17070         buffer and layout coordinates has been reintroduced, but is a 
17071         bit different than before.)
17072
17073         * gtk/gtktextview.[ch]: No longer inherit from GtkLayout; instead
17074         handle the adjustments ourselves, and scroll as necessary using
17075         the new gdk_window_scroll().
17076         
17077         The advantage of this is that when we are incrementally revalidating,
17078         we are essentially rearranging things around the visible portion
17079         of the screen. With the old setup, the visible portion of the
17080         screen was moved around in the layout, so scrolling and redrawing
17081         to track that caused jumping of the display. Since we now
17082         control the scrolling ourselves, we can suppress this and
17083         only redraw when things actually change.
17084
17085 Thu May 18 18:47:25 2000  Owen Taylor  <otaylor@redhat.com>
17086
17087         * gtk/gtktextbtree.c (redisplay_mark): We need to invalidate
17088         the region not just redisplay it after-all, since we store the
17089         cursors in the LineDisplay. (Ugly interactions here between
17090         GtkLayout and GtkTextBTree here.)
17091         
17092         * gtk/gtktextbtree.c (redisplay_region): Fixed reversed comparison.
17093
17094 Thu May 18 18:43:21 2000  Owen Taylor  <otaylor@redhat.com>
17095
17096         * gdk/gdkwindow.h gdk/x11/gdkgeometry-x11.c (gdk_window_scroll): 
17097         Added function to scroll contents of a window while keeping the
17098         window constant. Works by XCopyArea or guffaw-scrolling depending
17099         on the details of how the window is set up. (guffaw-scrolling
17100         still needs to be filled in.)
17101
17102 Wed May 17 22:36:53 2000  Owen Taylor  <otaylor@redhat.com>
17103
17104         * gtk/gtktextiter.c gtk/gtkmain.c: Add a debug key for the text widget,
17105         move the debugging that was tied to a global variable
17106         to that.
17107
17108         * gtk/gtkmarshal.list: Add NONE:INT,INT,INT
17109
17110         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.c: Keep a separate
17111         validated flag, in line data instead of setting height/width to
17112         -1. This allows us to perform operations with partially invalid
17113         buffer (using the old size for invalid lines) and thus to do
17114         incremental vaidation. Keep height/width aggregates up to date
17115         when deleting text and rebalancing the tree.
17116
17117         * gtk/gtktextbtree.[ch]: Add functions validate a line
17118         (gtk_text_btree_validate_line), and to validate up
17119         to a number of pixels (gtk_text_btree_validate).
17120
17121         * gtk/gtktextlayout.[ch]: Add an ::invalidated signal
17122         that indicates that something is changed and a revalidation
17123         pass is needed. Change ::need_repaint to ::changed, and
17124         make it take old and new yranges instead of a rectangle.
17125
17126         * gtk/gtktextbtree.[ch] gtk/gtktextlayout.[ch]: Move
17127         the line_data_destroy() function from 
17128         gtk_text_btree_add_view() to a virtual function in 
17129         GtkTextLayout
17130
17131         * gtk/gtktextbtree.[ch]: Remove gtk_text_btree_get_damage_range(),
17132         since we are handling partial repaints in a different fashion
17133         now.
17134
17135         * gtk/gtktextbtree.[ch]: Only repaint the changed portion
17136         of the selection instead of queueing a repaint on the
17137         entire widget.
17138
17139         * gtk/gtktextbuffer.[ch] gtk/gtktextbtree.[ch]: Move
17140         get_selection_bounds() down to btree, make the function
17141         in buffer a wrapper around the btree function.
17142
17143         * gtk/gtktextlayout.[ch]: Add functions to check if the
17144         layout is valid and to recompute either a range of pixels
17145         aroudn a line or a certain total number of pixels.
17146
17147         * gtk/gtktextlayout.[ch]: Cache a single line display;
17148         now that we only redraw the needed portions, the hit rate
17149         for this cache is quite high.
17150         
17151         * gtk/gtktextview.[ch]: Keep track of the first paragraph
17152         on the screen so that when re-laying-out the buffer, we can
17153         keep the same place. This requires connecting to ::value_changed
17154         on the adjustments
17155
17156         * gtk/gtktextview.[ch]: Add idle functions to revalidate
17157         the buffer after we receive an ::invalidated signal.
17158         
17159 Wed May 17 22:10:47 2000  Owen Taylor  <otaylor@redhat.com>
17160
17161         * gtk/gtklayout.c (gtk_layout_size_allocate): Set upper
17162         to max of allocation and layout size, not just to the
17163         layout size.
17164
17165         * gtk/gtk[hv]scrollbar.c (gtk_[hv]scrollbar_calc_slider_size): 
17166         Invalidate window so it gets redrawn properly.
17167
17168         * gdk/gdkwindow.c (gdk_window_invalidate_rect): Allow rect == NULL
17169         to mean the entire window.
17170
17171         * gdk/gdkevents.h: Move definition for GDK_PRIORITY_REDRAW
17172         into public header.
17173
17174 Mon May 15 14:51:31 2000  Owen Taylor  <otaylor@redhat.com>
17175
17176         * gtk/gtktextmark.c (gtk_text_mark_get_name): Add function
17177         to get the name of a mark.
17178
17179         * gtk/gtktextlayout.c (gtk_text_layout_get_line_at_y): Add a function
17180         to find the paragraph from a y position.
17181
17182 Thu May 11 12:57:20 2000  Owen Taylor  <otaylor@redhat.com>
17183
17184         * gtk/gtktextbtree.c (gtk_text_btree_node_invalidate_upward): Valid
17185         nodes have width/height >= 0, not > 0.
17186
17187 Tue May  9 21:29:06 2000  Owen Taylor  <otaylor@redhat.com>
17188
17189         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c (gtk_text_layout_get_line_display):
17190         Add a size_only flag, so when we only need the size, we don't create
17191         useless appearance attributes.
17192
17193         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Remove
17194         duplicate setting of font description.
17195
17196         * gtk/gtkscale.c: Use PANGO_SCALE instead of 1000 
17197
17198 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17199
17200         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17201         EXTRA_DIST. It does not work well when the file that
17202         everything depends on is not in the tarball.
17203
17204 Wed Apr 26 00:56:14 2000  Owen Taylor  <otaylor@redhat.com>
17205
17206         * gtk/testgtk.c: Some hacks and fixes so that it basically
17207         works when not sitting in the GTK+ build tree.
17208
17209 2000-05-03  Havoc Pennington  <hp@redhat.com>
17210
17211         * gtk/gtktextbtree.c (gtk_text_line_next_could_contain_tag):
17212         Properly determine the ordering of the tag root and the current
17213         line within the tree. Previous algorithm only worked if the tag
17214         root's immediate parent was the common root of both the current
17215         line and the tag root.
17216
17217 Wed Apr 26 00:43:00 2000  Owen Taylor  <otaylor@redhat.com>
17218
17219         * gtk/gtktextlayout.c (set_para_values): Fix some bugs in
17220         alignment.
17221
17222         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Track
17223         the widget text directional dynamically.
17224
17225         * gtk/gtktextview.[ch]: Added functions to get and set default
17226         wrap mode.
17227
17228 Tue Apr 25 23:47:38 2000  Owen Taylor  <otaylor@redhat.com>
17229
17230         * gtk/gtktextlayout.c (gtk_text_layout_get_iter_location): Fix bug
17231         in cursor location computation.
17232
17233 Tue Apr 25 23:22:59 2000  Owen Taylor  <otaylor@redhat.com>
17234
17235         * gtk/gtklayout.c (gtk_layout_set_size): Clamp hadjustment/
17236         vadjusment values properly when layout gets smaller.
17237
17238         * gtk/gtktextview.c (need_repaint_handler): Areas being
17239         passed in are far completely inaccurate, and sometimes
17240         too small, so, for now, just queue a redraw on the
17241         whole visible region.
17242
17243 2000-04-25  Havoc Pennington  <hp@redhat.com>
17244
17245         * gtk/gtktextbtree.c (summary_destroy): new function to 
17246         destroy tag summary nodes
17247         (gtk_text_line_next_could_contain_tag): this function was 
17248         totally broken if the line passed in wasn't below the tag
17249         root. Fix it.
17250         (gtk_text_btree_first_could_contain_tag): In the tag == NULL 
17251         "wildcard" case, we have to do a linear scan. Blah.
17252         (gtk_text_btree_last_could_contain_tag): In tag == NULL case,
17253         we have to do the linear scan
17254         (tag_removed_cb): When a tag is removed from the tag table, 
17255         remove the GtkTextTagInfo node from the btree.
17256         (gtk_text_btree_spew): Implement the spew function, for 
17257         our debugging pleasure.
17258
17259 Tue Apr 25 19:40:18 2000  Owen Taylor  <otaylor@redhat.com>
17260
17261         * gtk/gtktextlayout.c (gtk_text_layout_set_buffer): Fix
17262         a problem with referring to the wrong buffer.
17263
17264         * gtk/gtkentry.c: Fix focus-in/focus-out confusion.
17265
17266         * gtk/gtkrc.c gtk/gtkstyle.c: Moving setting default
17267         font description to gtk_style_new() - otherwise things
17268         don't work without a .gtkrc file.
17269
17270         * gtk/gtktextbuffer.c (gtk_text_buffer_new): Sink the
17271         tags table if we create it ourself, too.
17272
17273         * gdk/gdktypes.h (enum): Move GDK_RELEASE_MASK, since
17274         it was conflicting with XKB modifiers.
17275
17276         * gtk/gtktextview.[ch]: Add simple support for 
17277         GtkIMContext.
17278
17279 Mon Apr 24 19:34:18 2000  Owen Taylor  <otaylor@redhat.com>
17280
17281         * gtk/gtkentry.c (gtk_entry_move_cursor_visually): Fix problem
17282         with deletion from last commit.
17283
17284 Mon Apr 24 19:29:40 2000  Owen Taylor  <otaylor@redhat.com>
17285
17286         * gtk/gtkwidget.c (gtk_widget_create_pango_context): Set the language
17287         in the context from the current locale.
17288         
17289         * gtk/gtkentry.c (gtk_entry_size_request): Use language from the
17290         context, not hardcoded value.
17291
17292         * gtk/gtkentry.c (gtk_entry_move_cursor): Make character movement visual,
17293         not logical.
17294
17295 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17296
17297         * gtk/gtkentry.c gtk/gtktextdisplay.c: Don't handle selections as
17298         attributes - that doesn't handle partial-glyph selection
17299         properly. Instead use new pango_layout_line_get_x_ranges()
17300         functionality to draw the selection.
17301
17302         * gtk/gtkentry.c: Simplify code since pango_layout_line_index_to_x()
17303         now properly handles out-of-range coordinates.
17304
17305         * gtk/gtktextbuffer.c: Emit "mark_set" when the cursor is moved.
17306
17307         * gtk/gtktextiter.h gtk/gtktextiterprivate.h: Make gtk_text_iter_get_line_byte()
17308         public.
17309
17310         * gtk/gtktextlayout.[ch]: Properly set the direction in the PangoContext
17311         for paragraphs opposite to the base direction of the widget.
17312
17313         * gtk/gtktextlayout.[ch] gtk/gtktextdisplay.c: Fixes for alignment.
17314
17315         * gtk/gtktextlayout.c: Don't split segments on marks, since that
17316         causes Arabic words to reshape as you cursor through.
17317
17318         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Implement virtual
17319         cursor position when moving vertically with the arrow keys and
17320         scrolling with page-up/page-down. (Arrow keys save only the X,
17321         scrolling saves both X and Y.)
17322
17323         This means you can line-up / line-down or page-up / page-down
17324         without losing your place, and also that moving vertically
17325         with the cursor keys keeps the same X position, not the same
17326         character count:
17327
17328         * gtk/gtktextlayout.[ch] gtk/gtktextview.[ch]: Make vertical
17329         arrow keys move by display lines, not paragraphs.
17330
17331 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17332
17333         * gtk/gtklayout.c: Make sure that the bin window is at least
17334         as big as the allocation. (Should we also make sure that the
17335         bin window is big enough to completely cover widget->window?)
17336
17337         * gtk/gtktextview.c (gtk_text_view_get_visible_rect): Add
17338         function to get the onscreen rectangle.
17339
17340         * gdk/x11/gdkwindow-x11.c (gdk_window_get_pointer): Correctly account
17341         for offsets in window coordinates.
17342
17343 Sun Apr 16 16:13:27 2000  Owen Taylor  <otaylor@redhat.com>
17344
17345         * gtk/gtkentry.c (gtk_entry_get_cursor_locations): Fix index/offset
17346         confusion.
17347
17348         * gtk/gtktextview.c (gtk_text_view_ensure_layout): Set the default direction
17349         from the widget direction.
17350
17351         * gtk/gtktexttag.c gtk/gtktexttagprivate.h (gtk_text_tag_set_arg): 
17352         Add a "direction" attribute.
17353
17354         * gtk/gtktextview.c: global s/tkxt/text_view/.
17355
17356         * gtk/testtext.c: Added long block of text in Arabic, to test out
17357         the direction attributes. (Some problems with the shaping system
17358         for arabic become obvious - like the fact the cursor splits words
17359         into unjoined pieces.)
17360
17361 Fri Apr 14 12:54:34 2000  Owen Taylor  <otaylor@redhat.com>
17362
17363         * gtk/gtktextdisplay.c (render_layout): Add overstrike handling.
17364
17365         * gtk/gtktextlayout.c: Fix up alignment.
17366
17367         * gtk/testtext.c: Add some tests for centering, wrapping.
17368
17369 Fri Apr 14 09:26:22 2000  Owen Taylor  <otaylor@redhat.com>
17370
17371         * gdk/gdkdrawable.h gdk/gdkdraw.c gdk/gdkwindow.c gdk/x11/gdkdrawable-x11.c:
17372         Add a draw_glyphs() operation to the drawable vtable and gdk_draw_glyphs().
17373         If we wrote GTK+-specific layout-render function this could just replace
17374         the draw_layout() operation in the vtable.
17375
17376         * gtk/gtkentry.c: Move guts of gtk_entry_get_cursor_locations to 
17377         pango_layout_get_cursor_pos() and use that function.
17378
17379         * gtk/gtktextchild.[ch]: add gtk_ onto pixmap_segment_new(), since it
17380         is a non-static symbol.
17381
17382         * gtk/gtktextbtree.[ch]: Replace gtk_text_btree_find_line_data_by_y()
17383         with gtk_text_btree_find_line_by_y()
17384
17385         * gtk/gtktextdisplay.c: Rewrote for Pango - uses a custom layout
17386         renderer that handles GtkTextAppearance attributes.
17387
17388         * gtk/gtktexttag.[ch] gtk/gtktexttagprivate.h: 
17389
17390           - Move the values in the style that don't affect geometry into a
17391             GtkTextAppearance structure.
17392           - Change underline to take a PangoUnderline and "font" a string
17393             representation of a font description
17394           - Add a "font_desc" attribute which takes a FontDescription structure.
17395
17396         * gtk/gtktextlayout.[ch]:
17397
17398           - Get rid of the display-line list per each line. Instead, we
17399             generate, on demand, a GtkTextLineDisplay structure which]
17400             contains a PangoLayout * and other necesary information
17401             (offsets, cursor locations) for displaying a paragraph.
17402           - Get rid of the code to wrap lines, create display chunks,
17403             etc. Instead, we just go through a paragraph and convert
17404             it into the necessary inputs to a PangoLayout.
17405           - Implement a new attribute type, GtkTextAttrAppearance. This
17406             holds a GtkTextAppearance, and is used to pass colors, 
17407             stipple, etc, through from the layout to the display without
17408             having to use lots and lots of individual attributes.
17409           - Reimplement gtk_layout_get_iter_at_pixel() gtk_layout_get_iter_pos()
17410             in terms of PangoLayout functions.
17411         
17412         * gtk/gtktextview.c: 
17413          
17414           - Handle passing the necessary PangoContext to the layout
17415           - Some fixups in painting to deal with the automatic backing store
17416             and offsetting of GTK+-1.4
17417           - Add a style_set handler so that the default style reacts
17418             properly to theme changes.
17419         
17420         * gtk/gtktext?*.[ch]: Random code-style fixes.
17421
17422         * gtk/testtext.c: Substitute in languages that Pango handles now for Thai
17423
17424 Mon Apr 10 10:33:45 2000  Owen Taylor  <otaylor@redhat.com>
17425
17426         * gtk/gtktext?*.[ch]: Check in Havoc's port of the Tk text widget,
17427         in original form preparatory to Pango-ization and gdkimcontext-ization.
17428
17429 Thu Apr  6 19:25:39 2000  Owen Taylor  <otaylor@redhat.com>
17430
17431         * gtk/gtkimcontext.c: Move default implementations to real_* vfuncs,
17432         so that we can derive from gtkimcontext in language bindings properly.
17433
17434 Thu Apr  6 16:02:52 2000  Owen Taylor  <otaylor@redhat.com>
17435
17436         * gtk/gtkimcontextsimple.[ch]: Use gdk_keyval_to_unicode to gdk_unicode_to_keyval.
17437         Add a compose table including (almost) all the compose combinations
17438         from X. This is 6k of static, shared data as opposed to 50k or so of dynamic
17439         data in the XIM implementation.
17440
17441         * gdk/gdk.h gdk/gdkkeyuni.c gdk/win32/gdkevents-win32.c (gdk_keyval_to_unicode, gdk_unicode_to_keyval):
17442         Moved functions to convert keyvalues from and to unicode here from
17443         the win32 port and made them public.
17444
17445 Wed Apr  5 16:37:29 2000  Owen Taylor  <otaylor@redhat.com>
17446
17447         * gtk/gtkeditable.c (gtk_editable_insert_text): Allow new_text_length == -1.
17448
17449 Wed Apr  5 16:27:45 2000  Owen Taylor  <otaylor@redhat.com>
17450
17451         * gtk/gtkimcontext.[ch]: Base class for new input context system
17452
17453         * gtk/gtkimmulticontext.[ch]: Proxy input context that allows
17454         the real input context implementation to be loaded from modules
17455         and switched on the fly.
17456
17457         * gtk/gtkcontextsimple.[ch]: Simple implementation of an input
17458         context that just does direct keysymbol => unicode translation.
17459
17460         * gtk/gtkentry.[ch]: Start switching editing over to using
17461         GtkInputContext. (No handling of preedit yet.)
17462
17463 Wed Apr  5 15:48:41 2000  Owen Taylor  <otaylor@redhat.com>
17464
17465         * gtk/gtktypeutils.h (GTK_CHECK_GET_CLASS): Fix problem with one too
17466         many substitutions. (klass should not be subsituted.)
17467
17468 Wed Apr  5 00:18:14 2000  Owen Taylor  <otaylor@redhat.com>
17469
17470         * configure.in: Add checks for Pango
17471
17472         * configure.in docs/Makefile.am: Add test for sgml2html
17473         and allow 'make dist' without building html, but print out
17474         warnings in that case. (For making snapshots)
17475
17476         * gdk/Makefile.am gdk/x11/Makefile.am gtk/Makefile.am:
17477         Add Pango libraries and C flags
17478
17479         * gdk/gdkdraw.c gdk/gdkdrawable.h gdkwindow.c gdk/x11/gdkdrawable-x11.c:
17480         Add function (gdk_draw_layout) to draw a pango layout.
17481
17482         * gdk/gdkpango.h gdk/x11/gdkpango-x11.c: New file with functions
17483         for getting Pango contexts for GDK.
17484
17485         * gtk/gtkeditable.c: Get rid of dead code gtk_editable_parent_set()
17486
17487         * gtk/gtkentry.[ch]: Complete rewrite to use Pango, add bidirectional
17488         editing.
17489
17490         * gtk/gtkentry.c: Hack in simple Hebrew input with direct
17491         keysym => unicode translations. More languages can be added
17492         here, but real input-method support is needed.
17493
17494         * docs/Changes-1.4.txt: Added note about entry behavior.
17495         
17496         * gtk/gtkenums.h gtk/gtkwidget.[ch] testgtk.c gtkprivate.h: Add functions
17497         to set the reading direction for a widget and the global direction.
17498         Add test which allows toggling the global direction. Two private
17499         flags are used to store the direction. (GTK_DIRECTION_SET + GTK_DIRECTION_LTR)
17500
17501         * gtk/gtkcheckbutton.c gtk/gtkframe.c gtk/gtkhbbox.c gtk/gtkhbox.c
17502           gtk/gtkradiobutton.c gtk/gtkspinbutton.c gtk/gtktable.c 
17503
17504         * gtk/gtk[hv]scale.c gtk/gtkscale.[ch]: Draw numbers using Pango
17505
17506         * gtk/gtklabel.[ch]: Moved to Pango and considerably rewritten. Line breaking,
17507         underlining now handled by Pango.
17508
17509         * gtk/gtkstyle.[ch] gtk/gtkrc.[ch]: Add a PangoFontDescription
17510         to RCStyle and Style. (Having both this and the old font name and GdkFont 
17511         is temporary.)
17512
17513         * gtk/gtkwidget.[ch] (gtk_widget_create_pango_{context,layout}): Added 
17514         convenience functions for creating contexts and layouts for widgets.
17515
17516         * gtk/testgtk.c: Enhance label tests with multilingual labels.
17517
17518 2000-05-29  Jonathan Blandford  <jrb@redhat.com>
17519
17520         * gtk/gtkclist.c (gtk_clist_column_titles_active): let you set the
17521         titles to be active, even if they aren't visible.
17522         (gtk_clist_column_titles_passive):  Ditto.
17523
17524 2000-05-21  Nils Barth  <nils_barth@post.harvard.edu>
17525
17526         * gtkmenu.c:
17527         * gtkmenu.h:
17528         * gtktypeutils.h: Spelling/grammar fixes in comments.
17529
17530 Tue May 23 12:25:07 CEST 2000 lupus <lupus@debian.org>
17531
17532         * gdk/nanox/*.h: add missing header files.
17533
17534 Fri May 19 11:52:59 2000  Tim Janik  <timj@gtk.org>
17535
17536         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set
17537         send_event to TRUE.
17538         (gtk_drawing_area_size): queue a resize.
17539
17540 Sun Mar 26 03:21:28 2000  Tim Janik  <timj@gtk.org>
17541
17542         * gtk/gtksignal.c (gtk_signal_handlers_destroy): when unref-ing
17543         the handlers, also invalidate them. bug nailed down by Karl Nelson
17544         <kenelson@ece.ucdavis.edu>.
17545
17546 Fri May 19 06:49:23 2000  Tim Janik  <timj@gtk.org>
17547
17548         * gtk/gtkfontsel.c (gtk_font_selection_get_font_name): handle
17549         "(nil)" foundries, patch from Grigorios Magklis.
17550
17551         * gtk/gtkfontsel.c (gtk_font_selection_load_font): don't crash
17552         on non-available fonts, based on a patch by Grigorios Magklis
17553         <maglis@cs.rochester.edu>.
17554
17555 2000-05-18  Elliot Lee  <sopwith@redhat.com>
17556
17557         * gdk/x11/gdkregion-generic.c: If a region does not have any
17558         rectangles, or if the specified rectangle is not in the region, then return GDK_OVERLAP_RECTANGLE_OUT
17559         instead of GDK_OVERLAP_RECTANGLE_IN.
17560
17561 2000-05-17  Jonathan Blandford  <jrb@redhat.com>
17562
17563         * gtk/gtklayout.c (gtk_layout_map): Remove references to
17564         OFFSCREEN, as it is no longer necessary.
17565
17566 Wed May 17 10:52:12 2000  Owen Taylor  <otaylor@redhat.com>
17567
17568         * gtk/gtkcolorsel.c: Patch from David Santiago
17569         <mrcooger@cyberverse.com> to change things so that the 
17570         indicator of the active palette entry is done independently,
17571         not via the focus, since it should always be visible.
17572
17573 2000-05-17  Tor Lillqvist  <tml@iki.fi>
17574
17575         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Plug same
17576         refcount leaks as in the X11 backend.
17577
17578         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Logging
17579         cosmetics.
17580
17581         * gdk/win32/gdkwindow-win32.c: Similar changes as in X11
17582         backend. Add _gdk_windowing_window_destroy().
17583
17584         * gtk/gtkcolorsel.c: Include correct backend-specific header.
17585         Don't use XColor unless on X11. (No GDK_VISUAL_STATIC_COLOR
17586         either, but these probably do exist on nanox?)
17587         
17588         * gtk/gtkhsv.c: Use G_PI (fresh from <glib.h>) instead of M_PI
17589         which isn't necessarily defined by <math.h>.
17590
17591         * gtk/gtkobject.c (gtk_object_init): Don't go up the class
17592         ancestry past GtkObject.
17593
17594         * gtk/gtktypeutils.h: Mark GTK_TYPE_IDENTIFIER for export/import
17595         from DLL on Win32.
17596
17597         * gtk/gtk.def: Update corresponding to recent changes.
17598
17599         * gtk/makefile.{cygwin,msc}: Updates.
17600
17601 Fri May 12 18:46:51 2000  Owen Taylor  <otaylor@redhat.com>
17602
17603         * docs/Changes-1.4.txt: A bit of editing.
17604
17605         * gdk/gdkwindow.c (_gdk_window_clear_update_area) 
17606         * gdk/x11/gdkwindow-x11.c (gdk_window_hide): Add a function
17607         to clear the update area for the window, and clear it
17608         when hiding a window.
17609
17610         * gdk/gdkwindow.c (gdk_window_begin_paint_region): Ignore
17611         if window destroyed.
17612
17613         * gdk/gdkwindow.c (gdk_window_end_paint): Likewise.
17614
17615         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c gdk/gdkinternals.h: Move 
17616         gdk_window_destroy() to the generic code, since there was a lot of 
17617         window-system-independent logic it in. Add a function:
17618         
17619          _gdk_window_destroy() 
17620
17621         to the internal API to destroy a window without unreferencing it.
17622         Add a function:
17623
17624          _gdk_windowing_window_destroy()
17625
17626         That does the windowing-system-dependent part of destroying 
17627         the window.
17628
17629 Fri May 12 11:07:41 2000  Owen Taylor  <otaylor@redhat.com>
17630
17631         * gtk/testgtk.c: Fix various memory leaks of pixmaps.
17632
17633 Fri May 12 11:06:10 2000  Owen Taylor  <otaylor@redhat.com>
17634
17635         * gtk/gtkwidget.c docs/Changes-1.4.txt (gtk_widget_shape_combine_mask): 
17636         Make gtk_widget_shape_combine_mask() keep a reference count on
17637         the pixmap since it keeps it around.
17638
17639 Fri May 12 10:53:29 2000  Owen Taylor  <otaylor@redhat.com>
17640
17641         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix refcount
17642         leak.
17643
17644         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Fix refcount
17645         leak with event filters.
17646
17647 Thu May 11 14:29:44 2000  Owen Taylor  <otaylor@redhat.com>
17648
17649         * gtk/gtkdnd.c (gtk_drag_dest_set_internal): Remove the
17650         signal handlers with the right data arguments. (Fixes
17651         some warnings when a widget was repeatedly set as a drag
17652         destination.)
17653
17654         * gdk/x11/gdkdnd-x11.c (gdk_window_register_dnd): Set data on the
17655         window so we can avoid avoid setting the DND properties on the
17656         toplevel window repeatedly.
17657
17658 2000-05-13  Tor Lillqvist  <tml@iki.fi>
17659
17660         * gdk/win32/gdkwin32.h: Define more message types missing from
17661         mingw headers.
17662
17663         * gdk/win32/gdkevents-win32.c (gdk_event_translate): On WM_DESTROY
17664         call gdk_window_destroy_notify(). It was never called. This
17665         probably meant that the GdkWindow was never freed. Thanks Owen for
17666         noticing (!).
17667
17668         * gdk/win32/gdkwindow-win32.c (gdk_window_internal_destroy): Mark
17669         window as destroyed before calling DestroyWindow(). DestroyWindow()
17670         causes a call to the window procedure (gdk_WindowProc), which
17671         calls gdk_event_translate(), which calls
17672         gdk_window_destroy_notify(), which gets confused unless the window
17673         is set as destroyed.
17674
17675         * gdk/win32/gdkcolor-win32.c (gdk_win32_color_to_string): Rename
17676         this function to indicate it's win32 only. Put inside #ifdef
17677         G_ENABLE_DEBUG.
17678
17679         * gdk/win32/gdkevents-win32.c (gdk_win32_message_name): New
17680         debugging function. (gdk_event_translate:) Add a default branch
17681         that uses the above function to print debug messages with all
17682         Windows messages symbolically.
17683
17684         * gdk/win32/gdkprivate-win32.h: Declare it, and
17685         gdk_win32_color_to_string, but only if G_ENABLE_DEBUG.
17686
17687 Fri May 12 20:07:32 2000  Tim Janik  <timj@gtk.org>
17688
17689         * gtk/gtkcolorseldialog.c: don't include gtk/gtkintl.h in a
17690         public header file.
17691
17692 Fri May 12 17:13:32 2000  Tim Janik  <timj@gtk.org>
17693
17694         * docs/Changes-1.4.txt: documented necessary changes for 1.4 transition.
17695
17696         * gtk/gtktext.c: made the adjustments no-construct args, simply
17697         provide default adjustments.
17698         (gtk_text_destroy): release adjustments.
17699
17700         * gtk/gtkprogressbar.c (gtk_progress_bar_class_init): made the
17701         adjustment argument non-construct.
17702
17703         * gtk/gtkprogress.c (gtk_progress_destroy): release adjustment here,
17704         instead of in finalize.
17705         (gtk_progress_get_text_from_value): 
17706         (gtk_progress_get_current_text): 
17707         (gtk_progress_set_value): 
17708         (gtk_progress_get_percentage_from_value): 
17709         (gtk_progress_get_current_percentage): 
17710         (gtk_progress_set_percentage): 
17711         (gtk_progress_configure): ensure an adjustment is present.
17712
17713 Thu May 11 01:24:08 2000  Tim Janik  <timj@gtk.org>
17714
17715         * gtk/gtkcolorsel.[hc]:
17716         * gtk/gtkcolorseldialog.[hc]:
17717         * gtk/gtkhsv.[hc]: major code cleanups, destroy handlers need to chain
17718         their parent implementation, use bit fields for boolean values, don't
17719         create unused widgets, usage of glib types, braces go on their own
17720         lines, function argument alignment, #include directives etc. etc. etc..
17721
17722         * gtk/Makefile.am (gtk_public_h_sources): install gtkhsv.h.
17723
17724 Wed May 10 23:29:52 2000  Tim Janik  <timj@gtk.org>
17725
17726         * gtk/gtktoolbar.c (gtk_toolbar_destroy): don't unref a NULL tooltips.
17727
17728         * gtk/gtkfilesel.c (gtk_file_selection_destroy): don't free a cmpl_state
17729         of NULL.
17730
17731         * gtk/gtkcombo.c (gtk_combo_item_destroy): don't keep references
17732         to freed data.
17733         (gtk_combo_destroy): don't keep a pointer to a destroyed window.
17734
17735         * gtk/gtkmenu.c (gtk_menu_init): reset the menu's toplevel pointer
17736         to NULL when the toplevel is getting destroyed.
17737         (gtk_menu_set_tearoff_state): same here for the tearoff_window.
17738         (gtk_menu_destroy): 
17739         (gtk_menu_init): store the information of whether we have to
17740         readd the initial child ref_count during destruction in a new
17741         GtkMenu field needs_destruction_ref_count.
17742
17743         * gtk/gtkviewport.c: SHAME! ok this one is tricky, so i note it
17744         here, those reading: learn from my mistake! ;)
17745         in order for set_?adjustment to support a default adjustemnt if
17746         invoked with an adjustment pointer of NULL, the code read (pseudo):
17747         if (v->adjustment) unref (v->adjustment);
17748         if (!adjustment) adjustment = adjustment_new ();
17749         if (v->adjustment != adjustment) v->adjustment = ref (adjustment);
17750         now imagine the first unref to actually free the old adjustment and
17751         adjustment_new() creating a new adjustment from the very same memory
17752         portion. here, the latter comparision will unintendedly fail, and
17753         all hell breaks loose.
17754         (gtk_viewport_set_hadjustment):
17755         (gtk_viewport_set_vadjustment): reset viewport->?adjustment to NULL
17756         after unreferencing it.
17757
17758         * gtk/gtkcontainer.[hc]: removed toplevel registration
17759         functions: gtk_container_register_toplevel(),
17760         gtk_container_unregister_toplevel() and
17761         gtk_container_get_toplevels() which had wrong semantics
17762         anyways: it didn't reference and copy the list.
17763
17764         * gtk/gtkwindow.c: we take over the container toplevel registration
17765         bussiness now. windows are registered across multiple destructions,
17766         untill they are finalized. the initial implicit reference count
17767         users are holding on windows is removed with the first destruction
17768         though.
17769         (gtk_window_init): ref & sink and set has_user_ref_count, got
17770         rid of gtk_container_register_toplevel() call. add window to
17771         toplevel_list.
17772         (gtk_window_destroy): unref the window if has_user_ref_count
17773         is still set, got rid of call to
17774         gtk_container_unregister_toplevel().
17775         (gtk_window_finalize): remove window from toplevel list.
17776         (gtk_window_list_toplevels): new function to return a newly
17777         created list with referenced toplevels.
17778         (gtk_window_read_rcfiles): use gtk_window_list_toplevels().
17779
17780         * gtk/gtkhscale.c (gtk_hscale_class_init): made the GtkRange
17781         adjustment a non-construct arg.
17782         * gtk/gtkvscale.c (gtk_vscale_class_init): likewise.
17783         * gtk/gtkhscrollbar.c (gtk_vscrollbar_class_init): likewise.
17784         * gtk/gtkvscrollbar.c (gtk_vscrollbar_class_init): likewise.
17785
17786         * gtk/gtkrange.c: added some realized checks.
17787         (gtk_range_destroy): get rid of the h/v adjustments in the
17788         destroy handler instead of finalize. remove timer.
17789         (gtk_range_get_adjustment): demand create adjustment.
17790
17791         * gtk/gtkviewport.c: made h/v adjustment non-construct args.
17792         we simply create them on demand now and get rid of them in
17793         the destroy handler.
17794         (gtk_viewport_destroy): get rid of the h/v adjustments in the
17795         destroy handler instead of finalize.
17796         (gtk_viewport_get_hadjustment): 
17797         (gtk_viewport_get_vadjustment): 
17798         (gtk_viewport_size_allocate): demand create h/v adjustment
17799         if required.
17800
17801         * gtk/gtkwidget.c (gtk_widget_finalize): duplicate part of the
17802         gtk_widget_real_destroy () functionality.
17803         (gtk_widget_real_destroy): reinitialize with a new style, instead
17804         of setting widget->style to NULL.
17805
17806 Fri May  5 13:02:09 2000  Tim Janik  <timj@gtk.org>
17807
17808         * gtk/gtkcalendar.c:
17809         * gtk/gtkbutton.c: ported _get_type() implementation over to
17810         GType, either to preserve memchunks allocation facilities,
17811         or because Gtk+ 1.0 GtkTypeInfo was still being used.
17812
17813         * gtk/gtkobject.[hc]: derive from GObject. ported various functions
17814         over. prepare for ::destroy to be emitted multiple times.
17815         removed reference tracer magic. chain into GObjectClass.shutdown()
17816         to emit ::destroy signal.
17817
17818         * gtk/gtksignal.c: removed assumptions about GTK_TYPE_OBJECT being
17819         fundamental.
17820
17821         * gtk/gtkmain.c: removed gtk_object_post_arg_parsing_init()
17822         cludge.
17823
17824         * gtk/gtksocket.c:
17825         * gtk/gtkplug.c:
17826         * gtk/gtklayout.c:
17827         * gtk/gtklabel.c:
17828         * gtk/gtkargcollector.c:
17829         * gtk/gtkarg.c: various fixups to work with GTK_TYPE_OBJECT
17830         not being a fundamental anymore, and to work with the new
17831         type system (nuked fundamental type varargs clutter).
17832
17833         * gtk/*.c: install finalize handlers in the GObjectClass
17834         part of the class structure.
17835         changed direct GTK_OBJECT()->klass accesses to
17836         GTK_*_GET_CLASS().
17837         changed direct object_class->type accesses to GTK_CLASS_TYPE().
17838
17839         * gtktypeutils.[hc]: use the reserved fundamental ids provided by
17840         GType. made most of the GTK_*() type macros and Gtk* typedefs
17841         simple wrappers around macros and types provided by GType.
17842         most notably, a significant portion of the old API vanished:
17843         GTK_TYPE_MAKE(),
17844         GTK_TYPE_SEQNO(),
17845         GTK_TYPE_FLAT_FIRST, GTK_TYPE_FLAT_LAST,
17846         GTK_TYPE_STRUCTURED_FIRST, GTK_TYPE_STRUCTURED_LAST,
17847         GTK_TYPE_ARGS,
17848         GTK_TYPE_CALLBACK,
17849         GTK_TYPE_C_CALLBACK,
17850         GTK_TYPE_FOREIGN,
17851         GtkTypeQuery,
17852         gtk_type_query(),
17853         gtk_type_set_varargs_type(),
17854         gtk_type_get_varargs_type(),
17855         gtk_type_check_object_cast(),
17856         gtk_type_check_class_cast(),
17857         gtk_type_describe_tree(),
17858         gtk_type_describe_heritage(),
17859         gtk_type_free(),
17860         gtk_type_children_types(),
17861         gtk_type_set_chunk_alloc(),
17862         gtk_type_register_enum(),
17863         gtk_type_register_flags(),
17864         gtk_type_parent_class().
17865         replacements, where available are described in ../docs/Changes-1.4.txt.
17866         implemented compatibility functions for the remaining API.
17867
17868         * configure.in: depend on glib 1.3.1, use gobject module.
17869
17870 Thu May 11 12:39:50 2000  Owen Taylor  <otaylor@redhat.com>
17871
17872         * TODO.xml: Various updates to current status.
17873
17874 Wed May 10 20:25:04 2000  Owen Taylor  <otaylor@redhat.com>
17875
17876         * gtk.m4: Print out version when test succeeds.
17877
17878 Wed May 10 16:38:17 2000  Owen Taylor  <otaylor@redhat.com>
17879
17880         * gtk/Makefile.am docs/Changes-1.4.txt gtk/gtkcolorsel.[ch]
17881         gtk/gtkhsv.[ch]: Color selection dialog rewrite.
17882         
17883         (Original triangle color selector from Simon Budig
17884         <Simon.Budig@unix-ag.org>, Cleaned up and rewritten for GTK+ by
17885         from Jonathan, Havoc, and Federico. Merge into GTK+ done by David
17886         Santiago <mrcooger@cyberverse.com>)
17887
17888         * gtk/gtkcolorseldialog.[ch]: Split color selection dialog
17889         out into a separate widget.
17890
17891         * gtk/testgtk.c: Add some checkbuttons for toggling palette
17892         and opacity controls.
17893
17894 Wed May 10 16:08:09 2000  Owen Taylor  <otaylor@redhat.com>
17895
17896         * configure.in (GTK_LIBS_EXTRA): Remove references to gobject that 
17897         snuck in prematurely.
17898
17899 2000-05-07  Tor Lillqvist  <tml@iki.fi>
17900
17901         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Fix typo. I
17902         had deleted a ! operator by mistake, which caused
17903         GDK_SELECTION_CLEAR events never to be generated, which caused
17904         only the first copy to the clipboard from an gtkeditable to
17905         actually cause a copy to the Windows clipboard.
17906
17907 2000-05-06  Tor Lillqvist  <tml@iki.fi>
17908
17909         * gdk/win32/gdkdnd-win32.c: Enable shortcut resolution for gcc
17910         compilation, too. Current mingw gcc distributions include the
17911         necessary headers. Also the necessary IIDs are now in mingw
17912         headers/libraries, and own definitions unnecessary.
17913
17914         More hacking on OLE2 DND, still doesn't work though, and thus
17915         ifdeffed out.
17916
17917         * gdk/win32/gdkwindow-win32.c: Remove gdk_window_clear() from
17918         here, too.
17919
17920 Sat,  6 May 2000 13:31:34 +0200 Paolo Molaro <lupus@linuxcare.com>
17921
17922         * gdk/nanox/*: nano-X port work in progress.
17923         * gdk/simple.c: simple test for Gdk.
17924         * README.nanox: notes about the port: read this first!
17925         * gtk/gtk{dnd,plug,selection,window}.c: minimal changes to make gtk compile
17926         with nano-X.
17927
17928 Fri May  5 11:18:47 2000  Owen Taylor  <otaylor@redhat.com>
17929
17930         * gdk/gdkwindow.c gdk/x11/gdkwindow-x11.c (gdk_window_clear): Move
17931         gdk_window_clear() into common code, implement in terms of
17932         gdk_window_clear_area(). (Fixes bug where gdk_window_clear() was
17933         not redirected to the backing rectangle.
17934
17935 Wed Apr 26 01:53:23 2000  Owen Taylor  <otaylor@redhat.com>
17936
17937         * gtk/Makefile.am (EXTRA_DIST): Add OLD_STAMP into 
17938         EXTRA_DIST. It does not work well when the file that
17939         everything depends on is not in the tarball.
17940
17941 Tue Apr 25 22:20:41 2000  Owen Taylor  <otaylor@redhat.com>
17942
17943         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Fix error
17944         with recursion where process_updates() is called from
17945         an expose handler. (GtkTextView is highly broken in
17946         doing this, but it should work, so it is a nice test
17947         case.)
17948
17949 Sun Apr 23 23:39:18 2000  Owen Taylor  <otaylor@redhat.com>
17950
17951         * gdk/gdkwindow.c (gdk_window_process_updates_internal): Gracefully
17952         handle the case where updates are queued during processing of
17953         updates.
17954
17955 Tue Apr 18 14:16:50 2000  Owen Taylor  <otaylor@redhat.com>
17956
17957         * gdk/x11/gdkwindow-x11.c (gdk_window_foreign_new): We already assume
17958         window is on gdk_display - use that instead of segfaulting.
17959
17960 Thu May  4 02:04:46 2000  Tim Janik  <timj@gtk.org>
17961
17962         * configure.in (STRIP_DUMMY): some Make 3.79 $(strip ) versions are
17963         broken and require an empty arg, give it to them.
17964
17965 Fri Apr 28 19:34:32 2000  Tim Janik  <timj@gtk.org>
17966
17967         * gtk/gtklabel.h: indentation fixes.
17968
17969 2000-05-02  Tor Lillqvist  <tml@iki.fi>
17970
17971         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_arc): Don't try to
17972         draw too narrow or too low arcs, they seem to fail, at least with
17973         some display drivers.
17974
17975         * gdk/gdk.c (gdk_init_check): Use G_DIR_SEPARATOR.
17976
17977         Large changes to the Win32 backend, partially made necessary by
17978         the changes to the backend-independent internal
17979         structures. Attempts to implement similar backing store stuff as
17980         on X11. The current (CVS) version of the Win32 backend is *not* as
17981         stable as it was before the no-flicker branch was merged. A
17982         zipfile with that version is available from
17983         http://www.gimp.org/win32/. That should be use by "production"
17984         code until this CVS version is usable. (But note, the Win32
17985         backend has never been claimed to be "production quality".)
17986
17987         * README.win32: Add the above comment about versions.
17988
17989         * gdk/gdkwindow.c: Don't use backing store for now on Win32.
17990
17991         * gdk/gdk.def: Update.
17992
17993         * gdk/gdkfont.h: Declare temporary Win32-only functions. Will
17994         presumably be replaced by some more better mechanism as 1.4 gets
17995         closer to release shape.
17996
17997         * gdk/makefile.{cygwin,msc}: Update.
17998
17999         * gdk/win32/*.c: Correct inclusions of the backend-specific and
18000         internal headers. Change code according to changes in these. Use
18001         gdk_drawable_*, not gdk_window_* where necessary.
18002
18003         * gdk/win32/gdkdnd-win32.c: Use MISC selector for GDK_NOTE, not
18004         our old DND.
18005
18006         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_text): Don't try
18007         to interpret single characters as UTF-8. Thanks to Hans Breuer.
18008         Use correct function name in warning messages.
18009
18010         * gdk/win32/gdkevents-win32.c: Use correct parameter lists for the
18011         GSourceFuncs gdk_event_prepare and gdk_event_check.
18012         (gdk_event_get_graphics_expose): Do implement, use
18013         PeekMessage. Thanks to Hans Breuer.
18014         (event_mask_string): Debugging function to print an GdkEventMask.
18015         (gdk_pointer_grab): Use it.
18016
18017         * gdk/win32/gdkfont-win32.c: The Unicode subrange that the
18018         (old) book I used claimed was Hangul actually is CJK Unified
18019         Ideographs Extension A. Also, Hangul Syllables were missing.
18020         Improve logging.
18021
18022         * gdk/win32/gdkgc-win32.c: Largish changes.
18023
18024         * gdk/win32/gdkim-win32.c (gdk_set_locale): Use
18025         g_win32_getlocale() from GLib, and not setlocale() to get current
18026         locale name.
18027
18028         * gdk/win32/gdkprivate-win32.h
18029         * gdk/win32/gdkwin32.h: Move stuff from gdkprivate-win32.h to
18030         gdkwin32.h, similarily as in the X11 backend.
18031
18032         * gdk/win32/gdkwindow-win32.c (gdk_propagate_shapes): Bugfix,
18033         assignment was used instead of equals in if test. Thanks to Hans
18034         Breuer.
18035
18036         * gdk/win32/gdkgeometry-win32.c: New file, just a quick hack of
18037         the X11 version.
18038
18039         * gdk/win32/makefile.{cygwin,msc}
18040         * gtk/makefile.{cygwin,msc}: Updates. Better kludge to get the
18041         path to the Win32 headers that works also with the mingw compiler.
18042
18043         * gtk/gtkstyle.c: Include <string.h>.
18044
18045 2000-04-26  Havoc Pennington  <hp@redhat.com>
18046
18047         * gtk/gtklabel.c (gtk_label_get_text): Add this function,
18048         replacing the broken gtk_label_get ()
18049
18050 2000-04-15  Havoc Pennington  <hp@pobox.com>
18051
18052         * gdk/gdkdnd.h: clean up enum format, remove extra comma, 
18053         this keeps scanner scripts from getting confused.
18054
18055         * gdk/gdkdraw.c (gdk_drawable_get_data): This should return the
18056         data, rather than void
18057
18058 2000-04-15  Tor Lillqvist  <tml@iki.fi>
18059
18060         * gtk/gtkclist.c (gtk_clist_motion)
18061         * gtk/gtklist.c (gtk_list_motion_notify): If we get a motion event
18062         with is_hint FALSE, get x and y from the event. They used to be
18063         used uninitialised. The Win32 backend never sends motion events
18064         marked as hints. This for instance fixes the annoying file and
18065         font selector behaviour in the Win32 version.
18066
18067 2000-04-14  Tor Lillqvist  <tml@iki.fi>
18068
18069         * gtk/gtksignal.c: (Win32:) Export the gtk_private_signals and
18070         gtk_private_n_signals variables, they are used by some software,
18071         sigh.
18072
18073         * gtk/gtkrc.c (get_gtk_sysconf_directory): (Win32:) Fetch the
18074         installation directory from the Registry, where the installer
18075         should have put it.
18076
18077 Fri Apr  7 17:19:27 2000  Owen Taylor  <otaylor@redhat.com>
18078
18079         * gdk/x11/Makefile.am: Fix problem with installation directory for
18080         gdkx.h
18081
18082         * gtk/gtkmenuitem.c gtk/gtkmenushell.c: Patch from David Santiago
18083         <mrcooger@cyberverse.com> so that when selecting menus with the
18084         mouse, the first item will not be selected, but when selecting
18085         with an accelerator, or navigating left-right on a menubar with
18086         the menus popped up, the first item will be selected.
18087
18088 2000-04-05  Dan Damian  <dand@dnttm.ro>
18089
18090         * configure.in: Added "ro" to ALL_LINGUAS.
18091
18092 Wed Apr  5 00:08:36 2000  Owen Taylor  <otaylor@redhat.com>
18093
18094         * gdk/x11/gdkgc-x11.c (_gdk_x11_gc_new): Fix screwy
18095         indentation.
18096
18097         * Makefile.am (EXTRA_DIST): Fix typo.
18098
18099         * gdk[/x11]/Makefile.am (INCLUDES): Add $(top_builddir)/gdk
18100         to catch gdkconfig.h
18101
18102         * gtk/gtkitemfactory.c: Added FIXME.
18103
18104 2000-03-30  Jonathan Blandford  <jrb@redhat.com>
18105
18106         * gtk/gtkpaned.c (gtk_paned_get_position): oops.
18107         s/return_if_fail/return_val_if_fail/g and add a return value.
18108
18109 Mon Mar 27 20:56:14 2000  Owen Taylor  <otaylor@redhat.com>
18110
18111         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Fix up 
18112         merge slipup.
18113
18114         * gdk/gdkinput.h: Fix missing line from merge.
18115
18116 Mon Mar 27 20:39:49 2000  Owen Taylor  <otaylor@redhat.com>
18117
18118         * gdk/gdkcolor.c cursor.c gdkdraw.c gdkfont.c: Include gdkinternals.h
18119         instead of gdkprivate.h.
18120
18121 Sun Mar 12 15:19:24 2000  Owen Taylor  <otaylor@redhat.com>
18122
18123         * gtk/gtkinputdialog.h (struct _GtkInputDialogClass): Fix
18124         parent class to correctly be GtkDialogClass.
18125
18126 Thu Feb 24 23:58:21 2000  Owen Taylor  <otaylor@redhat.com>
18127
18128         * gdk/x11/gdkgeometry-x11.c: Don't worry about clipping of
18129         toplevel windows and their immediate children by their parents,
18130         since the size of toplevel windows is out of our immediate
18131         control and we don't get any real benefit from trying to track
18132         this size for clipping.
18133
18134         * gdk/gdkprivate.h (struct _GdkWindowPrivate) gdk/x11/gdkwindow-x11.c : Add a flag
18135         for input_only windows.
18136
18137         * gdk/gdkwindow.c gdk/x11/gdkgeometry-x11.c: Use the above flag
18138         to fix some hacks and make sure that we don't try to set the
18139         background of input only windows.
18140
18141 Thu Feb 24 18:11:46 2000  Owen Taylor  <otaylor@redhat.com>
18142
18143         * gdk/gdkinternals.h gdk/gdkprivate.h gdk/Makefile.am: Add a header file for
18144         the _really_ internal stuff, and leave gdkprivate.h for the fake private
18145         stuff that we've traditionally exposed.
18146
18147         * gdk/**.c: Use gdkinternals.h where appropriate.
18148
18149         * gdk/x11/gdkx.h gdk/x11/gdkprivate-x11.h gdk/x11/*.c: Make gdkx.h
18150         not include gdkprivate-x11.h, move all stuff of conceivable public
18151         interest into gdkx.h; keep all really private stuff in
18152         uninstalled header gdkprivate-x11.h.
18153
18154         * gdk/gdkdraw.c gdk/gdkwindow.c gdk/gdkinternals: Redirect all calls to
18155         image->image_put on windows through a new function _gdk_window_draw_image()
18156         to allow us to do backing store for images. (Sort of ugly)
18157
18158         * gdk/gdkgc.c gdk/gdkprivate.h: Cache the ts and clip origins for graphics
18159         contexts locally so that we can offset them properly when drawing 
18160         onto backing pixmaps.
18161
18162         * gdk/gdkinput.h: Reindented
18163
18164         * gdk/gdkprivate.h gdk/x11/gdkwindow-x11.c: Store the background
18165         pixmap or color for the window, so we can properly initialize
18166         our double-buffer pixmaps, and also so that we temporarily set
18167         a background of None while scrolling.
18168
18169         * gdk/gdkregion.h: Revise region boolean operators to have an
18170         interface that is actually convenient - switch from creating new
18171         regions on every op, to "methods" that modify existing regions
18172         (A = A OP B). 3 argument forms which allow dest == src, would also
18173         be possible, but the current interfaces seem to map nicely
18174         onto what needs to be done. (There is quite a lot of region
18175         code in GDK now.)
18176
18177         * gdk/gdkregion.h: Add constructor from rectangle and a copy
18178         operator.
18179
18180         * gdk/x11/{gdkregion-generic.[ch],gdkpolyreg-generic.c,
18181         gdkpoly-generic.h: Copy region code from Xlib, switch it over
18182         to 32 bit coordinates, modify it to be mostly GTK+ style
18183         and to have interfaces that match gdkregion.h.
18184
18185         * gdk/gdkwindow.c gdk/gdkprivate.h: Add facility for
18186         double-buffered drawing. gdk_window_begin_paint_{rect,region}()
18187         create a backing pixmap and redirect all drawing to
18188         that backing pixmap until a matching gdk_window_end_paint().
18189
18190         * gdk/gdkwindow.[ch] gdk/gdkinternals.h gdk/x11/gdkdrawable-x11.c:
18191         Create a special drawable class for GtkWindow's that 
18192         redirects the drawing to the backing pixmap as necessary
18193         and then calls the real operations in _gdk_windowing_window_class.
18194
18195         * gdk/gdkprivate.h gdk/gdkwindow.[ch] gdk/x11/gdkevents-x11.c:
18196         Store invalid region for each window. Generate expose events for invalid
18197         region in an idle. This replaces both the expose compression
18198         and the redrawing queuing in GTK+. It is both more efficient and
18199         simpler than either one individually and far more so then the
18200         combination.
18201
18202         * gdk/x11/gdkgeometry.c gdk/x11/gdkwindow.c gdk/x11/gdkprivate-x11.h:
18203         Emulate 32 bit coordinates for windows with 16 bit coordinates
18204         by offsetting drawing, guffaw scrolling techniques and
18205         mapping/unmapping child windows as necessary.
18206
18207         * gdk/gdkwindow.[ch] gdk/x11/gdkgeometry.c: Add anti-exposes,
18208         where, when invalid regions are processed, the region is stored,
18209         and if expose events come in that are detectably duplicate
18210         the processed exposes (by comparison of event serial numbers),
18211         the stored region is subtracted out of those exposes.
18212
18213         * gdk/x11/gdkgeometry.c: Temporarily unset backing pixmaps of
18214         regions newly exposed when scrolling or resizing windows.
18215         This, combined with forcing processesing of queued invalidated
18216         regions, gives nice flicker-free scrolling.
18217
18218         * gtk/gtklayout.c gtk/gtkviewport.c: Force processing of
18219         invalidated regions after every scroll.
18220
18221         * gtk/gtklayout.c: Vastly simplify using the new 32 bit coordinate
18222         emulation in GDK. Its, for all practical purposes just a
18223         GtkViewport/GtkFixed hybrid now.
18224
18225         * gdk/gdkdrawable-x11.c: Convert from GDK (32 bit) to X11
18226         (16-bit) structures as necessary instead of just casting.
18227
18228         * gdk/x11/gdkgc-x11.c gdk/x11/gdkx.h: Replace XSetRegion with code
18229         in terms of the structures from gdkregion-generic.c, using appropriate
18230         offsets from GDK to X11 coordinates. Cache clip mask and
18231         origin and ts origin locally and only flush to the server
18232         when drawing, to avoid constantly setting and resetting these
18233         values when offsetting GC's for scrolling and backing pixmaps.
18234
18235         * gdk/x11/gdkinput-x11.c: Fix leak of axes structures.
18236
18237         * gtk/gtkcontainer.c: Call process_all_updates at end
18238         of resizing to reduce flicker. (Avoids having redraw
18239         lag arbitrarily behind resize under some circumstances)
18240
18241         * gtk/gtkentry.c: Remove old backing store code, and simply take
18242         advantage of the new backing store capabilities of GDK.
18243
18244         * gtk/gtkmain.c: Simple implementation of widget backing
18245         store - simply push a paint while handling each expose.
18246         (Should really be configurable widget for widget.)
18247         
18248         * gtk/gtkwidget.c: Remove all the old complicated redraw
18249         code, and simply invalidate the GDK windows from
18250         gdk_window_queue_clear(), etc. (Sigh, so much carefully
18251         debugged complexity ... gone to the winds.)
18252
18253         Remove all the code for suppressing expose events while
18254         resizes are pending; this isn't needed since the invalid
18255         areas won't be processed until after the resizes are
18256         processed, since they are in a lower priority idle.
18257
18258 Thu Feb 24 15:37:41 2000  Owen Taylor  <otaylor@redhat.com>
18259
18260         * gdk/gdkrectangle.c (gdk_rectangle_intersect): Set width
18261         and height of dest rectangle for non-intersecting rectangles.
18262
18263 Sun Feb 20 16:47:31 2000  Owen Taylor  <otaylor@redhat.com>
18264
18265         * gtk/gtkwidget.h: Make GtkAllocation just a typedef
18266         for GdkRectangle.
18267
18268 Sun Feb 20 11:27:00 2000  Owen Taylor  <otaylor@redhat.com>
18269
18270         * gdk/gdk{events,image,private,types,window}.h
18271          gdk/x11/gdkinputprivate.h: Change all coordinates
18272          from int16 to int. Also, Change width and height from
18273          unsigned to signed to avoid all the stupid C 
18274          signedness bugs.
18275
18276 Sat Feb 19 12:01:53 2000  Owen Taylor  <otaylor@redhat.com>
18277
18278         * gdk/x11/gdkdrawable-x11.c (gdk_x11_draw_drawable):
18279         Use gdk_drawable_get_depth instead of gdk_drawable_get_visual.
18280         Add some more detailed checking.
18281
18282         * gdk/gdkdraw.c gdk/gdkdrawable.h (gdk_drawable_get_depth):
18283         New function to retrieve the depth of a drawable.
18284
18285         * gdk/gdkprivate.h (struct _GdkDrawablePrivate): Add a depth
18286         field, reorder fields to save memory. 
18287
18288 Mon Dec 13 14:06:03 1999  Owen Taylor  <otaylor@redhat.com>
18289
18290         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): Draw a small portion
18291         of the background image instead of scaling the background down to
18292         a line.
18293
18294         * gtk/gtk[hv]scrollbar.c (gtk_hscrollbar_size_allocate): Removed mysterious
18295         which temporarily set slider to wrong size.
18296
18297         * gtk/gtkaspectframe.c gtkbin.c: Remove unecessary calls to
18298         queue_clear().
18299
18300 Wed Nov 17 18:36:05 1999  Owen Taylor  <otaylor@redhat.com>
18301
18302 2000-03-23  Jonathan Blandford  <jrb@redhat.com>
18303
18304         * gtk/gtkpaned.c (gtk_paned_get_position): add getter.
18305
18306 2000-03-17  Tor Lillqvist  <tml@iki.fi>
18307
18308         * gdk/win32/gdkevents-win32.c: Remove the #ifndef
18309         USE_DISPATCHMESSAGE sections, we do want to use DispatchMessage.
18310
18311         * gdk/win32/gdkfont-win32.c
18312         * gdk/win32/gdkproperty-win32.c
18313         * gdk/win32/gdkselection-win32.c
18314         * gdk/win32/gdkwindow-win32.c: Add const to some arguments that are
18315         now declared such.
18316
18317 Wed Mar 15 02:59:38 PST 2000 Manish Singh <yosh@gimp.org>
18318
18319         * gtk/gtkvpaned.c: removed stray gutter_size reference, a 1.2 relic
18320
18321 Mon Mar 13 18:37:55 2000  Owen Taylor  <otaylor@redhat.com>
18322
18323         * gdk/gdkdnd.c: Fix a bunch of cases where XGetWindowProperty()
18324         is called without trapping X errors.
18325
18326 Fri Feb 25 10:48:53 2000  Owen Taylor  <otaylor@redhat.com>
18327
18328         * gtk/gtkrc.*: Fix problem where stray '"' characters found their
18329         way into the fontset lists.
18330
18331 Tue Feb 22 08:52:52 2000  Tim Janik  <timj@gtk.org>
18332
18333         * gtk/gtkthemes.h: add extern "C" scope.
18334
18335 Mon Feb 21 20:16:42 2000  Lars Hamann  <lars@gtk.org>
18336
18337         * gtk/gtkclist.c: applied  patch from Guy Harris <guy@netapp.com>
18338         to make appends to the list constant. (gtk-guy-990901-0.patch)
18339
18340 Mon Feb 14 22:50:10 2000  Tim Janik  <timj@gtk.org>
18341
18342         * gtk/gtktypeutils.c (gtk_type_init): use g_str_hash() and g_str_equal()
18343         for the typename hash table.
18344
18345 Mon Feb 14 15:01:23 2000  Owen Taylor  <otaylor@redhat.com>
18346
18347         * gtk/gtkpaned.c (gtk_paned_compute_position): Add some sanity checks
18348         to make sure we never divide by zero. 
18349         (Problem pointed out by Michal Jaegermann <michal@ellpspace.math.ualberta.ca>)
18350
18351 Mon Feb 14 12:29:38 2000  Owen Taylor  <otaylor@redhat.com>
18352
18353         * gtk/gtkfontsel.c: Apply patch from
18354         SHIRASAKI Yasuhiro <yasuhiro@awa.tohoku.ac.jp> to make font selector work a little
18355         better with 2-byte fonts. (Load a fontset instead of a font for two byte fonts.)
18356
18357         Also, some cleanups in atom handling.
18358
18359 Sun Feb 13 08:02:21 2000  Tim Janik  <timj@gtk.org>
18360
18361         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18362         not GtkWidget.
18363
18364 Fri Feb 11 02:19:32 2000  Tim Janik  <timj@gtk.org>
18365
18366         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): 
18367         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): 
18368         * gtk/gtkpaned.c (gtk_paned_compute_position): had to squeeze some
18369         more guint wrap-around bugs before going to bed.
18370
18371 Thu Feb 10 16:16:35 2000  Tim Janik  <timj@gtk.org>
18372
18373         * gtk/gtkspinbutton.c (gtk_spin_button_size_allocate): guard against
18374         guint wrap arounds in allocation.width.
18375
18376         * gtk/gtktable.c (gtk_table_size_allocate_pass1): repeat shrinking
18377         process untill we fit the allocation given.
18378
18379 Tue Feb  8 09:38:29 2000  Tim Janik  <timj@gtk.org>
18380
18381         * gtk/gtkwidget.c:
18382         (gtk_widget_unrealize): guard widget access with ref/unref
18383         around signal emission.
18384         (gtk_widget_hide): same here, but also check its destroyed
18385         state before queueing a resize.
18386
18387 Tue Feb  8 03:05:55 2000  Tim Janik  <timj@gtk.org>
18388
18389         * gtk/gtkstyle.c (gtk_style_new): use gtk_default_prelight_bg instead
18390         of gtk_default_insensitive_bg as insensitive base color.
18391
18392         * gtk/gtktext.c (gtk_text_style_set): set the background color according
18393         to the widget's state.
18394         (gtk_text_realize): same here.
18395         (gtk_text_state_changed): same here.
18396         (draw_bg_rect): compare background color against base[] from
18397         GTK_WIDGET_STATE (text) not GTK_STATE_NORMAL.
18398
18399 Mon Feb  7 04:01:55 2000  Tim Janik  <timj@gtk.org>
18400
18401         * gtk/gtkmain.c (gtk_main_do_event): ignore delete events when
18402         grabs are active, unless a delete event is send to the toplevel
18403         of the currently grab holding widget.
18404
18405 Sun Feb  6 10:13:15 2000  Owen Taylor  <otaylor@redhat.com>
18406
18407         * gtk/gtkctree.c (gtk_ctree_drag_data_received): Remove
18408         debugging g_print's.
18409
18410 Fri Feb  4 15:54:54 2000  Owen Taylor  <otaylor@redhat.com>
18411
18412         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_size_request): Don't
18413         ever make the scrolled-window requisition ever depend on the 
18414         visibility state of the scrollbars for the AUTOMATIC policy. 
18415         This breaks the GTK+ requisition model, and causes loops.
18416
18417 Fri Feb  4 15:09:12 2000  Owen Taylor  <otaylor@redhat.com>
18418
18419         * gtk/gtkstyle.c (gtk_style_new): Set the charset explicitely for
18420         the default font to avoid problems with XFree86-4.0 where the
18421         default charset is iso10646-1, not iso8859-1.
18422
18423 Thu Feb  3 14:58:48 PST 2000 Manish Singh <yosh@gimp.org>
18424
18425         * acinclude.m4
18426         * config.guess
18427         * config.sub
18428         * ltconfig
18429         * ltmain.sh: upgrade to libtool 1.3.4 (bugfix only release)
18430
18431         * gtk/Makefile.am: minor cosmetic consistency tweak
18432
18433 Thu Feb  3 14:46:01 2000  Owen Taylor  <otaylor@redhat.com>
18434
18435         * gtk/gtkmenushell.c (gtk_menu_shell_button_release): Set
18436         the activate_time to 0, so that we handle a quick
18437         press/release press/release properly and don't suppress
18438         the second release. (Red Hat bug #7545)
18439
18440 Wed Feb  2 22:25:17 2000  Tim Janik  <timj@gtk.org>
18441
18442         * gtk/gtkctree.c (row_delete):
18443         (gtk_ctree_node_set_row_data_full): fixed very evil reentrancy
18444         bugs with destruction notifier, *always* update internal
18445         structures *before* calling user code.
18446
18447 Sun Jan 30 20:10:52 2000  Lars Hamann  <lars@gtk.org>
18448
18449         A few more fixes for bug #5487, #2051, #2677.
18450         * gtk/gtkclist.c : 
18451         (gtk_clist_button_press):  Reset clist->anchor to -1 if event->type is
18452         not GDK_BUTTON_PRESS.
18453         (resync_selection): resync only if selection_mode is
18454         GTK_SELECTION_EXTENDED
18455         * gtk/gtkctree.c (resync_selection): same here
18456
18457 Sun Jan 30 12:29:20 2000  Owen Taylor  <otaylor@redhat.com>
18458
18459         * gdk/gdk.h gtk/gtkmenu.h: Removed duplicate prototypes for
18460         gdk_drag_get_selection() and gtk_menu_detach().
18461
18462         [ From Jeroen Ruigrok/Asmodai ]
18463
18464 Sat Jan 29 10:11:56 2000  Owen Taylor  <otaylor@redhat.com>
18465
18466         * gtk/gtknotebook.c (gtk_notebook_size_request): 
18467         page->tab_label can be NULL.
18468
18469 2000-01-25  Havoc Pennington  <hp@pobox.com>
18470         
18471         * gdk/gdkwindow.c (gdk_window_set_back_pixmap): parent_relative
18472         arg is boolean
18473
18474         * gdk/gdkselection.c (gdk_selection_owner_set): return boolean
18475
18476         * gdk/gdkrectangle.c (gdk_rectangle_intersect): return boolean
18477
18478         * gdk/gdkproperty.c (gdk_property_get): return boolean
18479
18480         * gdk/gdkinput.c (gdk_input_set_mode): return boolean
18481
18482         * gdk/gdkim.c (gdk_im_ready): return boolean
18483
18484         * gdk/gdkgc.c (gdk_gc_set_exposures): gboolean arg
18485
18486         * gdk/gdkfont.c (gdk_font_equal): return gboolean (mild
18487         glib clash, should fix glib)
18488
18489         * gdk/gdkevents.c (gdk_set_show_events): take gboolean arg
18490         (gdk_get_show_events): return gboolean, and canonicalize 
18491         to TRUE/FALSE
18492
18493         * gdk/gdkcolor.c (gdk_colormap_new): gboolean flag whether the
18494         colormap is private
18495         (gdk_colors_alloc): gboolean whether to be contiguous
18496         (gdk_color_equal): return gboolean since we are a predicate
18497         and not a qsort() (this looks semi-wrong due to glib breakage,
18498         IMO glib should be fixed)
18499         
18500         * gdk/gdk.c (gdk_set_use_xshm): take gboolean arg
18501         (gdk_get_use_xshm): return gboolean
18502         (gdk_pointer_is_grabbed): return gboolean
18503
18504         * gdk/gdk.h: Change prototypes to match all the above changes,
18505         and re-run egtk-format-protos as required.
18506
18507 Fri Jan 28 12:28:17 2000  Owen Taylor  <otaylor@redhat.com>
18508
18509         * gtk/gtkctree.c (resync_selection): 
18510         * gtk/gtkclist.c (resync_selection):
18511
18512         Return immediately if clist->drag_pos < 0. This is a workaround
18513         for the corrupt state that the clist gets into when a
18514         GDK_2BUTTON_PRESS occurs. See note in gtk_clist_button_press().
18515
18516         Bug #5487, #2051, #2677; fix suggested by David Helder and T. Alexander Popiel.
18517         
18518         * gtk/gtknotebook.c (gtk_notebook_size_request): Fix uninitialized
18519         variable from recent commit.
18520
18521 Thu Jan 27 15:22:09 2000  Owen Taylor  <otaylor@redhat.com>
18522
18523         * gtk/gtkdnd.c (gtk_drag_begin): Fix stupid typo in last commit.
18524
18525 Thu Jan 27 18:00:55 2000  Tim Janik  <timj@gtk.org>
18526
18527         * gtk/Makefile.am: prefix all autogenerated source that get build in
18528         $(srcdir) with $(srcdir)/, so make doesn't assume they got generted
18529         in builddir. since we subsequently cd into srcdir for autogeneration,
18530         the paths have to be stripped from the target file names, thusly we
18531         use $(@F) as target names now.
18532         put a comment about configure.in's --disable-rebuilds option,
18533         which can be used for non-writable source directories, for development
18534         setups though, srcdir has to be *writable*.
18535
18536 hu Jan 27 00:15:03 2000  Owen Taylor  <otaylor@redhat.com>
18537
18538         * gtk/gtkdnd.c (gtk_drag_begin gtk_drag_get_event_actions):
18539           Finish the job of allowing event to be NULL.
18540           (Fixes bug #4283, reported by Chris Blizzard)
18541
18542         * gtk/gtkentry.c (entry_adjust_scroll): When calculating
18543           things so that the cursor appears on screen, properly
18544           take into account INNER_BORDER.
18545           (Fixes bug #4754, reported by Antonio Campos)
18546
18547 Wed Jan 26 23:12:28 2000  Owen Taylor  <otaylor@redhat.com>
18548
18549         * gtk/gtknotebook.c (gtk_notebook_map): Don't
18550           show the tab_label unless it itself is visible.
18551
18552           gtk/gtknotebook.c (gtk_notebook_size_request):
18553           Do a better job of making sure that the visibility
18554           of the tab label corresponds to whether it should
18555           be mapped or not.
18556
18557 Wed Jan 26 21:17:03 2000  Owen Taylor  <otaylor@redhat.com>
18558
18559         * gtk/gtkoptionmenu.c (gtk_option_menu_position):
18560           Use the requisition, not the allocation, since the
18561           allocation has not necessarily been computed yet.
18562           (Pointed out by Eugene Osintsev)
18563
18564 Wed Jan 26 19:44:25 2000  Owen Taylor  <otaylor@redhat.com>
18565
18566         * gtk/gtkstyle.c (gtk_style_new): Dont' set
18567           style/base[GTK_STATE_INSENSITIVE] both to
18568           gtk_default_insensitive_bg!
18569           (Bug #2187, reported by Jonathan Blandford)
18570
18571         * gtk/gtkaccelgroup.c (gtk_accelerator_valid):
18572           Add Alt_L, Alt_R to list of invalid accelerators.
18573           (Bug #3736, reported by Vlad Harchev)
18574
18575 Wed Jan 26 19:01:56 2000  Owen Taylor  <otaylor@redhat.com>
18576
18577         * gtk/gtkfilesel.c (open_ref_dir): Fix several
18578         bugs which occured after an attempt to open 
18579         invalid home directory left cmpl_state->reference_dir == NULL.
18580
18581          - completion on files in home directory didn't work
18582          - completion on an empty string caused  segfault
18583
18584          (Bug #3678, reported by Steve Ratcliffe)
18585
18586         * gtk/gtkscale.c (gtk_scale_get_value_width): Fix
18587         cut and paste error that was causing scales to
18588         be incorrectly positioned.
18589         (Bug #2956,
18590          patch from Steve Ratcliffe <steve@parabola.demon.co.uk>)
18591
18592 2000-01-27  Shirasaki Yasuhiro  <yasuhiro@gnome.gr.jp>
18593
18594         * acinclude.m4 (AM_GTK_WITH_NLS): Add -lintl to libs
18595         when checking for dcgettext, if we've found we needed
18596         it for dgettext.
18597 +
18598 Wed Jan 26 18:06:07 2000  Owen Taylor  <otaylor@redhat.com>
18599
18600         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
18601         queue_clear on NO_WINDOW widgets during a reparent,
18602         since at that point the window and widget heirarchies
18603         are out of sync. This stops crashing in some cases
18604         (the scrolled window reparent test, for instance), and
18605         _probably_ won't cause drawing errors.
18606
18607         * gtk/testgtk.c: Make the reparenting-a-scrolled-window
18608         test do what it was supposed to do and be robust against
18609         window closings, etc. (Bug #2443)
18610
18611 Wed Jan 26 16:56:54 2000  Owen Taylor  <otaylor@redhat.com>
18612
18613         * gtk/gtkentry.c: Fix return values on mouse events.
18614         (Bug #2686, Sky <seb_sky@yahoo.com>)
18615
18616         * gtk/genmarshal.pl: Fix up handling of FOREIGN.
18617         (pointed out by George Lebl)
18618
18619         * gdk/gdkcolor.c (gdk_color_copy): Made const-safe.
18620         (From Ettore Perazzoli  <ettore@helixcode.com>)
18621  
18622 Mon Jan 24 10:44:48 2000  Owen Taylor  <otaylor@redhat.com>
18623
18624         * gtk/gtkcalendar.c (gtk_calendar_main_button): Handle
18625         clicks between rows or outside calender area correctly.
18626         (Patch from Damon Chaplin)
18627
18628         * gtk/gtkclist.c (gtk_clist_set_row_data_full): 
18629         * gtk/gtkctree.c (gtk_ctree_node_set_row_data_full): 
18630           Call destroy function when overwriting existing data. 
18631           (Pointed out by Damon Chaplin)
18632
18633 Tue Jan 25 09:55:41 2000  Owen Taylor  <otaylor@redhat.com>
18634
18635         * gdk/gdk.c: Remove useless #include of <X11/Xmu/WinUtil.h>,
18636           which was causing problems on various systems with Xmu.
18637           This hasn't been needed for a very long time.
18638           (Fixes #1185 3167)
18639
18640 Sun Jan 23 22:27:36 2000  Owen Taylor  <otaylor@redhat.com>
18641
18642         * gdk/gdki18n.h: Include <ctype.h> when defining
18643           gdk_isw* in terms of is* as a fallback.
18644           (Bug #4106 - Dan Winship <danw@MIT.EDU>)
18645
18646 Sun Jan 23 22:12:36 2000  Owen Taylor  <otaylor@redhat.com>
18647
18648         * gtk/gtkviewport.c (gtk_viewport_size_allocate): Don't
18649           realize the widget when it is size allocated!
18650           (old, old bug)
18651
18652         * gtk/gtkviewport.c (gtk_viewport_adjustment_value_changed):
18653           Removed unused call to gdk_window_get_size() that
18654           showed up when the above was fixed.
18655
18656 Sat Jan 22 15:44:30 2000  Owen Taylor  <otaylor@redhat.com>
18657
18658         * gtk/gtkwidget.c (gtk_widget_reparent): Correctly
18659           fix up widget->window when the widget is a
18660           NO_WINDOW container widget.
18661
18662 Sat Jan 22 12:40:48 2000  Owen Taylor  <otaylor@redhat.com>
18663
18664         * gdk/gdkpixmap.c (gdk_pixmap_seek_string): Rewrite
18665           to account for the fact that feof() does _not_ 
18666           return TRUE on errors, and thus avoid infinite loops
18667           when trying to use gdk_pixmap_create_from_xpm()
18668           on unreadable values.
18669
18670 Fri Jan 21 18:32:43 2000  Owen Taylor  <otaylor@redhat.com>
18671
18672         * gtk/gtkaspectframe.h (struct _GtkAspectFrame): s/gint/gboolean/.
18673
18674 Fri Jan 21 16:24:08 2000  Owen Taylor  <otaylor@redhat.com>
18675
18676         * gdk/gdkgc.c (gdk_gc_set_dashes): Change from
18677           gdk_gc_set_dashes to take gint8 instead of gchar to
18678           make it clearer that it is _not_ a NULL terminated string.
18679
18680         * gdk/gdk.h gdk/gdkfont.c gdk/gdkgc.c gdk/gdkselection.c
18681           gdk/gdkwindow.c gtk/gtkprogress.[ch] gtk/gtkthemes.[ch]
18682           gtk/gtktreeitem.[ch] gtk/gtkwidget.[ch]: Constify string
18683           arguments.
18684
18685 Thu Dec 30 04:51:05 1999  Tim Janik  <timj@gtk.org>
18686
18687         * gtk/gtkvscale.c (gtk_vscale_pos_background): 
18688         * gtk/gtkhscale.c (gtk_hscale_pos_background): when calculating the
18689         background size relative to our allocation, guard against small
18690         allocations, we may have not yet been size allocated.
18691
18692 Thu Dec  2 10:59:14 1999  Owen Taylor  <otaylor@redhat.com>
18693
18694         * gdk/gdkdnd.c (xdnd_check_dest): Allow version >= 3,
18695         not just version == 3. We implement all 3 + most of 4 - 
18696         (we don't support matching text/plain;charset=iso-8859-1
18697         to a dest that expects text/plain). We'll still advertise
18698         3 to be safe, but any client implementing version >= 3
18699         must interoperate with 3.
18700         
18701 Tue Mar 14 11:53:31 2000  Owen Taylor  <otaylor@redhat.com>
18702
18703         * gtk/gtktooltips.[ch] (struct _GtkTooltips): Remove foreground,
18704         background and gc members, add a warning in gtk_tooltips_set_color()
18705         indicating that this function is deprecated.
18706
18707 Thu Mar  9 22:10:56 GMT 2000  Tony Gale <gale@gtk.org>
18708
18709         * docs/gtkfaq.sgml: FAQ Update:
18710           - Minor cleanups (Emmanuel, me)
18711           - New questions:
18712                 I need to add a new signal to a GTK+ widget. Any idea? (timj)
18713                 How can I retrieve the text from a GtkMenuItem? (timj)
18714                 How do I validate/limit/filter the input to a GtkEntry? (me)
18715                 Memory does not seem to be released when I free the list
18716                         nodes I've allocated (timj)
18717
18718 2000-03-07  Tor Lillqvist  <tml@iki.fi>
18719
18720         * gdk/win32/gdkmain-win32.c: Internal GDK error reporting changes:
18721         (gdk_win32_gdi_failed) New function for reporting errors from GDI,
18722         for which it is no use to call GetLastError onWin9x.
18723         (gdk_other_api_failed) New function, for general error
18724         reporting without calling GetLastError.
18725         (gdk_win32_api_failed) OTOH, this function always calls
18726         GetLastError. (gdk_win32_last_error_string) Remove this function,
18727         GLib has the equivalent now.
18728
18729         * gdk/win32/gdkprivate-win32.h: Declare the above, and macros to
18730         call them with function name, file name and line number in the
18731         arguments.
18732
18733         * gdk/win32/*.c: Use the new macros for reporting errors from GDI
18734         functions.
18735         
18736         * gtk/gtk.def: Add some missing entry points.
18737
18738         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18739         gtk_paned_set_gutter_size, which don't exist any longer, as void.
18740         
18741         Fixes by Hans Breuer:
18742
18743         * gdk/makefile.msc: Update for debugging.
18744
18745         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_dashes): Fake
18746         implementation, just use the PS_DASH, PS_DOT, PS_DASHDOT or
18747         PS_DASHDOTDOT or PS_DASH styles depending on the number of entries
18748         in the dash_list.
18749
18750         * gdk/win32/gdkwin32.h (GDK_FONT_XFONT): New macro, similar as in
18751         the x11 backend.
18752
18753         * gdk/win32/gdkprivate-win32.h (IS_WIN_NT): New macro.
18754
18755         * gtk/testgtk.c: Include config.h, guard inclusion of unistd.h.
18756
18757 2000-03-04  Tor Lillqvist  <tml@iki.fi>
18758
18759         * gdk/win32/gdkprivate-win32.h (struct _GdkWindowWin32Data): Store
18760         just pixel value of background colour.
18761
18762         * gdk/win32/gdkgc-win32.c (gdk_colormap_color): New function
18763         containing code snippet previously duplicated in a couple of
18764         places.
18765         
18766         * gdk/win32/gdkdrawable-win32.c (gdk_win32_draw_points): Use
18767         gdk_colormap_color.
18768
18769         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Generate
18770         GDK_SCROLL events for WM_MOUSEWHEEL messages. Don't generate
18771         events for autorepeated Shift, Control and Alt keys. Use
18772         gdk_colormap_color.
18773
18774         * gdk/win32/gdkwindow-win32.c (gdk_window_set_cursor): If the
18775         pointer is inside the window the cursor of which we are setting,
18776         call SetCursor immediately.
18777
18778         * gdk/win32/makefile.cygwin
18779         * gtk/makefile.cygwin: If we don't have the build number stamp
18780         file, use zero.
18781
18782         * gtk/gtkcompat.h.in: Define gtk_paned_gutter_size and
18783         gtk_paned_set_gutter_size as empty.
18784
18785         * gtk/gtk.def: Remove gtk_paned_set_gutter_size.
18786         
18787 Tue Feb 29 13:10:00 GMT 2000  Tony Gale <gale@gtk.org>
18788
18789         * gdk/gdkwindow.h gdk/x11/gxid.c gtk/gtkclist.c gtk/gtkclist.h
18790           gtk/gtkctree.c gtk/gtkmenu.h gtk/gtkwidget.c gtk/testgtk.c
18791           docs/styles.txt docs/refcounting.txt docs/gtkfaq.sgml
18792           docs/gtk_tut.sgml docs/gtk.texi TODO:
18793
18794           Spelling/grammar fixes from Martin Buchholz <martin@xemacs.org>
18795
18796 Sat Feb 26 11:46:25 GMT 2000  Tony Gale <gale@gtk.org>
18797
18798         * gtk/gtkcalendar.c: Implement num_marked_dates,
18799           and don't emit mutiple day_selected signals on
18800           month_prev.
18801
18802 2000-02-25  Jonathan Blandford  <jrb@redhat.com>
18803
18804         * docs/make-todo (lineno): let title and logo be configurable so
18805         that GNOME can use this script too.
18806
18807         * TODO.xml: added logourl and a title
18808
18809 Fri Feb 25 11:12:00 2000  Owen Taylor  <otaylor@redhat.com>
18810
18811         * TODO.xml: Added some UI items, and an explanatory
18812         comment at the top of the file.
18813
18814 Thu Feb 24 09:07:28 2000  Tim Janik  <timj@gtk.org>
18815
18816         * TODO.xml: some updates, added abunch of new entries.
18817         a note for those fiddeling with this file, when done
18818         with it, invoke:
18819         $ ./docs/make-todo TODO.xml >/dev/null
18820         and correct output errors before comitting changes.
18821
18822 Wed Feb 23 22:59:50 2000  Owen Taylor  <otaylor@redhat.com>
18823
18824         * TODO.xml: Added XML-structured TODO file.
18825         * docs/make-todo: python script to turn TODO.xml into
18826           pretty XML output. 
18827
18828 2000-02-23  Jonathan Blandford  <jrb@redhat.com>
18829
18830         * gtk/gtkstyle.c (gtk_default_draw_handle): add a 'paned' mode to
18831         the function to let it draw the seven dots, instead of the old,
18832         much maligned, method.
18833         (draw_dot): New function to draw a dot.
18834
18835         * gtk/gtkhpaned.c (gtk_hpaned_size_allocate): changed allocation
18836         to draw the handle inside the border width as opposed to outside.
18837         Use paint function instead of gdk_draw_point.
18838
18839         * gtk/gtkvpaned.c (gtk_vpaned_size_allocate): changed allocation
18840         to draw the handle inside the border width as opposed to outside.
18841         Use paint function instead of gdk_draw_point.
18842
18843         * gtk/gtkfilesel.c (gtk_file_selection_update_history_menu):
18844         Change indenting to be more GTK like.
18845
18846 Wed Feb 23 10:54:14 GMT 2000  Tony Gale <gale@gtk.org>
18847
18848         * docs/gtk_tut.sgml: New section on GtkCalendar
18849         * examples/calendar: Update example code
18850
18851 Tue Feb 22 13:54:12 GMT 2000  Tony Gale <gale@gtk.org>
18852
18853         * docs/gtkfaq.sgml: FAQ Update
18854
18855 2000-02-19  Anders Carlsson  <andersca@gnu.org>
18856
18857         * gtk/gtkrange.c (gtk_range_scroll_event): Return TRUE
18858         to prevent the scroll event to be propagated upwards.
18859
18860 Fri Feb 18 14:37:29 2000  Owen Taylor  <otaylor@redhat.com>
18861
18862         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Remove
18863         OwnerGrabButtonMask from button entries for
18864         GDK_BUTTON_PRESS / GDK_BUTTON_RELEASE.
18865
18866         * gtk/gtklayout.c (gtk_layout_realize): Always add GDK_SCROLL
18867         to the event mask (which will result in button/press release
18868         being added to the event mask on Unix) so scrolling works
18869         for layouts in scroll windows.
18870
18871         * gdk/gdkevents.h (enum): Fix up GDK_ALL_EVENTS_MASK.
18872
18873         Patch from Anders Carlsson  <andersca@gnu.org> to add
18874         a scroll event.
18875
18876         * gtk/testgtk.c (scroll_test_scroll): Added an example of mouse wheel
18877         scrolling to the "Test Scrolling" part of testgtk.
18878  
18879         * gtk/gtkwidget.h (struct _GtkWidgetClass): Added scroll_event signal.
18880  
18881         * gtk/gtkwidget.c: Added "scroll_event" GTK+ signal and matched
18882         it against GDK_SCROLL.
18883  
18884         * gtk/gtkrange.c (gtk_range_scroll_event): Updated to use the new
18885         way of mouse wheel scrolling.
18886  
18887         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_scroll_event): Likewise.
18888  
18889         * gtk/gtkspinbutton.c (gtk_spin_button_scroll): Likewise.
18890  
18891         * gtk/gtkmain.c: Removed previous mouse wheel hack.
18892  
18893         * gdk/x11/gdkwindow-x11.c (gdk_event_mask_table): Added entry in
18894         gdk_event_mask_table.
18895  
18896         * gdk/x11/gdkevents-x11.c (gdk_event_translate): Added 
18897         GdkEventScroll handler.
18898  
18899         * gdk/gdkevents.h: Added GdkEventScroll structure.
18900  
18901 Thu Feb 17 17:10:12 2000  Owen Taylor  <otaylor@redhat.com>
18902
18903         * gtk/gt{h,k,}vpaned.[ch]: Add patch from Jonathan Blandford
18904         and Anders Carlsson to change the Paned widgets so that they
18905         can be dragged from anywhere along the length. Also change
18906         the way that this is drawn to make this apparent.
18907
18908         * gtk/gtkoptionmenu.c (gtk_option_menu_get_history): Apply patch
18909         from George Lebl to check that option_menu->menu is present
18910         before getting history.
18911
18912 2000-02-14  Tor Lillqvist  <tml@iki.fi>
18913
18914         * gdk/gdkdraw.c (gdk_draw_segments): Move the test for no segments
18915         before the assertion for non-NULL segment list.
18916
18917         * gdk/win32/gdkgc-win32.c: (gdk_win32_gc_values_to_win32values):
18918         Seems that pattern brushes *must* be 8x8 pixels! At least on my
18919         machine, but it might be display driver dependent. Sigh, so make
18920         sure the stipple is that size. Does Windows suck or what?
18921
18922         * gdk/win32/gdkdrawable-win32.c: Improve error handling in a few
18923         places.
18924
18925 2000-02-13  Havoc Pennington  <hp@pobox.com>
18926
18927         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): init
18928         refcount to 1
18929         (gdk_cursor_new): init refcount to 1
18930
18931         * gdk/win32/gdkcursor-win32.c (gdk_cursor_new): init refcount to 1
18932
18933 2000-02-13  Tor Lillqvist  <tml@iki.fi>
18934
18935         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Add an extra parameter
18936         so that we don't have to do unnecessary settings to the HDC.
18937
18938         * gdk/win32/gdkdrawable-win32.c
18939         * gdk/win32/gdkimage-win32.c: Corresponding changes to the calls of
18940         gdk_gc_predraw.
18941
18942         * gdk/win32/gdkdrawable-win32.c: Special-casing for GdkGCs where
18943         the fill style is GDK_OPAQUE_STIPPLED. In those cases we construct
18944         GDI paths, call WidenPath to get the outline of the stroken path,
18945         and then fill the outline (with the brush that was built from the
18946         stipple).
18947
18948         * gdk/win32/gdkgc-win32.c: Factor out common code from
18949         _gdk_win32_gc_new and gdk_win32_gc_set_values into
18950         gdk_win32_gc_values_to_win32values. Use correct colour for
18951         SetBkColor() (Until now the code actually used a random colour in
18952         the call to SetBkColor()... but that didn't show up as not many
18953         GDI APIs use the background colour. Pattern (opaque stippled)
18954         brushes do.)
18955
18956         * gdk/win32/gdkmain-win32.c (gdk_win32_last_error_string,
18957         gdk_win32_api_failed): New functions for error logging.
18958
18959         * gdk/win32/gdkprivate-win32.h: Declare them, and define a macro
18960         WIN32_API_FAILED to call them, passing function or file name and
18961         line number.
18962
18963         * gdk/win32/*.c: Use the WIN32_API_FAILED macro.
18964
18965         * gdk/win32/gdkprivate-win32.h: Store just the pixel values from
18966         GdkColor for foreground and background in GdkGCWin32Data.
18967
18968         * gdk/makefile.cygwin: Link in the resource object separately.
18969
18970         * gdk/win32/rc/gdk.rc
18971         * gtk/gtk.rc (New file)
18972         * gdk/win32/makefile.cygwin
18973         * gtk/makefile.cygwin: Update build number in DLLs automatically,
18974         as in GLib.
18975
18976 Sun Feb 13 08:54:45 2000  Tim Janik  <timj@gtk.org>
18977
18978         * gdk/gdkcursor.h (struct _GdkCursor): s/refcount/ref_count/.
18979         * gdk/x11/gdkcursor-x11.c (gdk_cursor_new_from_pixmap): 
18980         * gdk/x11/gdkcursor-x11.c (_gdk_cursor_destroy): 
18981         * gdk/gdkcursor.c (gdk_cursor_ref): insert assertments for the
18982         parameters given and cursor->ref_count. coding style fixups.
18983
18984         * gtk/gtksocket.c (gtk_socket_class_init): parent class is GtkContainer,
18985         not GtkWidget.
18986         
18987         * gtk/*.h: applied patch from Mathieu Lacage <lacage@email.enst.fr> to
18988         fix up widget macros and add _GET_CLASS() variant.
18989         
18990         * gtk/*.c: some GtkType fixups.
18991
18992 2000-02-09  Tor Lillqvist  <tml@iki.fi>
18993
18994         * gdk/win32/gdkproperty-win32.c
18995         * gdk/x11/gdkproperty-x11.c: The assertions for GDK_IS_WINDOW
18996         were reversed.
18997
18998 2000-02-04  Tor Lillqvist  <tml@iki.fi>
18999
19000         * gdk/win32/gdkfont-win32.c (logfont_to_xlfd): Use
19001         g_filename_to_utf8 to convert the font names Windows gives us from
19002         whatever is the default codepage to UTF-8.
19003         (gdk_font_load_internal) Use g_filename_from_utf8 for conversion
19004         in the other direction.
19005
19006         * gdk/win32/gdkgc-win32.c (gdk_win32_gc_set_values): Fix cut&paste
19007         error in debugging output.
19008
19009 2000-02-02  Tor Lillqvist  <tml@iki.fi>
19010
19011         * gdk/win32/gdkwindow-win32.c (gdk_window_clear): Pass zero width
19012         and height parameters to gdk_window_clear_area(). Not minus one.
19013
19014 Wed Feb  2 11:58:05 2000  Owen Taylor  <otaylor@redhat.com>
19015
19016         * gtk/gtkdnd.c (gtk_drag_selection_received): Add some sanity
19017         checks if the widget passed to gtk_drag_get_data() was not the
19018         dest widget.
19019
19020 2000-02-01  Tor Lillqvist  <tml@iki.fi>
19021
19022         * gtk/gtkfilesel.c: Use the g_filename_to_utf8 and
19023         g_filename_from_utf8 functions (which were added a moment ago to
19024         GLib). Some cleanups: Use gbooleans. Use GStrings instead of fixed
19025         size buffers.
19026
19027         gtk_file_selection_get_filename returns the filename in the C
19028         runtime encoding. It calls g_filename_from_utf8, but copies the
19029         returned string to a static buffer, which is returned. I think
19030         this is better than returning the result from g_filename_from_utf8
19031         directly, which would mean all apps that use it would have to free
19032         the return value. Or should this function care about this issue at
19033         all? Maybe a new function with clearly defined semantics.
19034
19035         * gtk/gtkfilesel.h: Add comment about
19036         gtk_file_selection_get_filename returning the filename in the C
19037         runtime's encoding.
19038
19039         * README.win32
19040         * gdk/gdk.def
19041         * gdk/makefile.{cygwin,msc}
19042         * gtk/gtk.def: Updates.
19043
19044         * gdk/gdkcursor-win32.c: Initialise refcount.
19045
19046 2000-01-31  Yuan-Chung Cheng <platin@linux.org.tw>
19047
19048         * configure.in: Added "zh_CN.GB2312" to ALL_LINGUAS.
19049
19050 2000-01-30  Havoc Pennington  <hp@pobox.com>
19051
19052         * gtk/testgtk.c (set_cursor): use gdk_cursor_unref instead of
19053         destroy
19054
19055         * gdk/gdkimage.c (gdk_image_ref): image wasn't being returned
19056
19057         * gdk/gdkprivate.h: declare _gdk_cursor_destroy which is then 
19058         implemented in platform-specific code
19059
19060         * gdk/Makefile.am (gdk_c_sources): add gdkcursor.c
19061
19062         * gdk/x11/gdkcursor-x11.c (gdk_cursor_destroy): rename with an
19063         underscore in front
19064
19065         * gdk/win32/gdkcursor-win32.c (gdk_cursor_destroy):
19066         put an underscore in front
19067
19068         * gdk/gdkcursor.c: new file, implements
19069         gdk_cursor_ref/gdk_cursor_unref
19070
19071         * gdk/gdkcursor.h: Refcount GdkCursor
19072
19073         * gdk/gdkcompat.h (gdk_cursor_destroy): compat
19074
19075 2000-01-29  Tor Lillqvist  <tml@iki.fi>
19076
19077         * gdk/gdkwindow.h
19078         * gdk/gdkpixmap.h: Remove prototypes for renamed functions.
19079
19080 Tue Jan 25 11:43:21 2000  Owen Taylor  <otaylor@redhat.com>
19081
19082         * gtk/gtkinvisible.h (struct _GtkInvisible[Class]): Fix
19083         structures to properly inherit from GtkWidget not GtkBin.
19084
19085 Sun Jan 23 20:28:24 2000  Owen Taylor  <otaylor@redhat.com>
19086
19087         * gtk+.spec.in: Added lib/gtk+/include/* to %files
19088         (bug #5178 - Peter Wainright)
19089         
19090         * gtk/Makefile.am (gtk_public_h_sources): Add gtkcompat.h
19091         so that it will be installed.
19092         (bug #4889 - "david d `zoo' zuhn" <zoo@mnnr.org>)
19093
19094 Fri Jan 21 16:29:28 2000  Owen Taylor  <otaylor@redhat.com>
19095
19096         * gtk/gtkstyle.[ch] docs/Changes-1.4.txt: Make the @detail argument
19097         for the GtkStyleClass vtable const.
19098
19099         * gtk/gtkitemfactory.[ch] docs/Changes-1.4.txt: Make GtkPrintFunc
19100         take a const string argument like GtkTranslateFunc. This will
19101         require changes in use code.
19102
19103 2000-01-19  Tor Lillqvist  <tml@iki.fi>
19104
19105         * gdk/win32/gdkwindow-win32.c (gdk_window_clear_area): The correct
19106         semantics (to mimic the X11 backend, which just calls XClearArea)
19107         is to check for zero width (and height), and in that case use the
19108         window's width minus x (height minus y). This fixes for instance
19109         some redraw problems with gtkclist, which were easily noticeable
19110         in the gtk file selection widget.
19111
19112         (gdk_window_new): Don't set WS_EX_TOPMOST for dialog
19113         windows.
19114
19115 2000-01-13  Tor Lillqvist  <tml@iki.fi>
19116
19117         * configure.in
19118         * gdk/Makefile.am
19119         * gdk/x11/Makefile.am
19120         * gdk/win32/Makefile.am: Small fixes, thanks to Peter Wainwright
19121         (bug #5177).
19122         * gdk/win32/gdkcc-win32.c: Reintroduce, to be thrown
19123         out later.
19124
19125 2000-01-09  Tor Lillqvist  <tml@iki.fi>
19126
19127         * gdk/win32/gdkevents-win32.c (gdk_event_translate): Ignore
19128         WM_MOVE for iconified or invisible windows. This fixes various
19129         problems when minimising windows. Thanks to Bernd Herd.
19130
19131 2000-01-05  Tor Lillqvist  <tml@iki.fi>
19132
19133         * gdk/gdkdraw.c (gdk_draw_lines): Fix copy&paste error: Call the
19134         backend's draw_lines method, not draw_points.
19135
19136 2000-01-02  Tor Lillqvist  <tml@iki.fi>
19137
19138         * gdk/win32/gdkevents-win32.c: Clean up some more leftovers from
19139         before Owen's reorganisation: Don't have queued_events and
19140         queued_tail statics in this file, but use gdk_queued_events and
19141         gdk_queued_tail. This makes exposure event compression work again.
19142
19143         (gdk_WindowProc): Comment out a posting of gdk_ping_msg, doesn't
19144         seem to be needed?
19145
19146 1999-12-30  Tor Lillqvist  <tml@iki.fi>
19147
19148         * gdk/gdk.c: If we don't HAVE_XCONVERTCASE we must #include
19149         gdkkeysyms.h to get the GDK_* keysym constants that are needed by
19150         gdk_keyval_convert_case(). Otherwise, gdk_keyval_convert_case()
19151         doesn't do anything.
19152
19153         * gdk/gdk.def: Add gdk_xid_table_insert.
19154
19155         * gdk/win32/gdkprivate-win32.h
19156         * gdk/win32/gdkevents-win32.c
19157         * gdk/win32/gdkinput-win32.c
19158         
19159         * gdk/win32/gdkwindow-win32.c: Remove the superfluous
19160         extension_events field in the GdkWindowWin32Data struct. Use only
19161         the extension_events field in GdkWindowPrivate. Previously one was
19162         set, and the other one tested, which broke tablet
19163         functionality. Thanks to Keishi Suenaga for pointing this out.
19164
19165 1999-12-18  Tor Lillqvist  <tml@iki.fi>
19166
19167         * gdk/win32/gdkfont-win32.c (gdk_text_size, gdk_text_extents):
19168         When handling a single character (text length == 1), don't handle
19169         it as if it was UTF-8.
19170
19171 1999-12-11  Tor Lillqvist  <tml@iki.fi>
19172
19173         * Makefile.am: Distribute README.win32.
19174         
19175         * gdk/Makefile.am
19176         * gdk/win32/Makefile.am: Distribute Win32 files.
19177
19178         * gdk/makefile.msc: New file.
19179
19180         * gdk/gdk.c (gdk_arg_context_parse): Fix gccism (no statement
19181         after label).
19182
19183         * gdk/gdkprivate.h: Must mark also gdk_error_warnings and
19184         gdk_error_code as GDKVAR, as they are referred outside GDK.
19185
19186         * gdk/win32/makefile.msc: Update.
19187
19188         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): More
19189         tweaks. Check only if at least one of those Unicode subrange bits
19190         we care for is set. If no code page bits are set, guess (wildly)
19191         based on the charset.
19192
19193         * gdk/win32/gdkinput-win32.c: Remove debugging leftover.
19194
19195         * gdk/win32/gdkwindow-win32.c (gdk_window_new): Assure title is
19196         non-NULL.
19197
19198         * gtk/gtkdnd.c
19199         * gtk/gtklayout.c
19200         * gtk/gtkplug.c
19201         * gtk/gtkselection.c
19202         * gtk/gtksocket.c
19203         * gtk/gtkwindow.c: Include x11/gdkx.h *or* win32/gdkwin32.c as
19204         appropriate. There must be a cleaner way to handle this?
19205
19206         * gtk/gtkrc.c: Must include windows.h on Win32.
19207
19208         * gtk/testgtk.c: No need to include gdkx.h.
19209
19210         * gtk/makefile.cygwin: Correct invokation of genmarshal.pl.
19211
19212 1999-12-07  Tor Lillqvist  <tml@iki.fi>
19213
19214         * gdk/win32/gdkfont-win32.c: Fix string measurement code. For now,
19215         the rbearing is set to the same as the width, but this should be
19216         fixed.
19217
19218 1999-12-06  Tor Lillqvist  <tml@iki.fi>
19219
19220         * gdk/win32/gdkfont-win32.c (check_unicode_subranges): New
19221         function. If Windows doesn't tell us what Unicode subranges a font
19222         covers, guesstimate based on the codepages it covers. This will
19223         hopefully help those Windows versions or fonts that don't give us
19224         any useful Unicode subrange information with GetTextCharsetInfo.
19225         Call this function in gdk_font_load_internal.
19226
19227         * gdk/win32/{gdkdnd,gdkimage,gdkpixmap,gdkprivate}-win32.c: Misc
19228         minor changes.
19229
19230 Fri Dec  3 14:09:50 1999  Owen Taylor  <otaylor@redhat.com>
19231
19232         * gtk/gtkoptionmenu.[ch] (gtk_option_menu_get_history):
19233         New function, long needed.
19234
19235 Wed Dec  1 22:35:43 1999  Owen Taylor  <otaylor@redhat.com>
19236
19237         * gdk/gdkproperty.h x11/gdkproperty.c: Change 
19238         only_if_exists argument of gdk_atom_intern to
19239         bool.
19240
19241 1999-11-25  Tor Lillqvist  <tml@iki.fi>
19242
19243         * gdk/gdkgc.c (gdk_gc_set_ts_origin, gdk_gc_set_clip_origin): 
19244         Fix two copy&paste errors.
19245
19246         * gdk/makefile.cygwin: Also rebuild DLL when the static archive in
19247         win32 has changed.
19248
19249         * gdk/win32/gdkprivate-win32.h: Don't need CPINFO in the
19250         GdkWin32SingleFont struct.
19251
19252         * gdk/win32/gdkfont-win32.c: Some more debugging: Print Unicode
19253         subranges of loaded fonts. Clear font signature first, in case
19254         GetTextCharsetInfo fails. Pretend SYMBOL_CHARSET fonts have
19255         ASCII+Basic Latin (i.e. 0x40--0xFF) as they are single-byte.
19256
19257         * gdk/win32/gdkgc-win32.c: Improved logging. (gdk_gc_postdraw):
19258         Unoffset clip region.
19259
19260 1999-11-23  Tor Lillqvist  <tml@iki.fi>
19261
19262         * gdk/win32/gdkevents-win32.c (gdk_event_translate): set
19263         event->any.window before calling filter functions.
19264
19265 Fri Nov 19 10:34:41 1999  Owen Taylor  <otaylor@redhat.com>
19266
19267         * gtk/gtkgamma.h: Adapt cast macros to standard.
19268
19269 [ Merges from 1.2 ]
19270
19271 Tue Nov 16 10:15:54 1999  Owen Taylor  <otaylor@redhat.com>
19272
19273         * gtk/gtkitemfactory.c (gtk_item_factory_parse_path):
19274         If translation does not include a '/', use entire
19275         translation instead of crashing.
19276
19277 Sun Oct 31 22:21:11 1999  Tim Janik  <timj@gtk.org>
19278
19279         * docs/gtk_tut.sgml:
19280         s/gtk_accel_group_attach/gtk_window_add_accel_group/.
19281
19282 Sat Oct 30 09:09:09 1999  Owen Taylor  <otaylor@redhat.com>
19283
19284         * gtk/gtkselection.c (gtk_target_list_remove): Use
19285         g_list_remove_link, not g_list_remove.
19286
19287         [ From Geert Bevin <gbevin@thunderstorms.org> ]
19288         
19289 Sun Oct 24 07:41:40 1999  Tim Janik  <timj@gtk.org>
19290
19291         * gtk/gtkclist.c (real_undo_selection): commented out g_print()
19292         statement upon unselection (how the heck did that slip in?).
19293
19294 Sat Oct 23 03:03:08 1999  Tim Janik  <timj@gtk.org>
19295
19296         * gtk/gtktext.c (gtk_text_freeze): 
19297         (gtk_text_thaw): undraw/draw cursor here to avoid unnecessary scrolling
19298         in frozen state (and aparently crashes). patch provided by Anders
19299         Melchiorsen <and@kampsax.dtu.dk>.
19300
19301 Sat Oct 23 02:53:20 1999  Tim Janik  <timj@gtk.org>
19302
19303         * fix insensitive default/focus widget activation,
19304         reported by Matt Goodall <mgg@isotek.co.uk>.
19305
19306         * gtk/gtkwindow.c (gtk_window_key_press_event): 
19307         (gtk_window_activate_default):
19308         (gtk_window_activate_focus):
19309         return handled=FALSE for actiavtion of insensitive default
19310         widgets. return handled=TRUE for activation of insensitive
19311         focus widgets. don't activate in either case.
19312
19313 Tue Oct 19 09:55:08 1999  Owen Taylor  <otaylor@redhat.com>
19314
19315         * gtk-config.in (lib_gtk): Switch order of @x_cflags@
19316         and $glib_cflags to match library order and in the
19317         theory that an old version of GLib is more likely to
19318         be in the include directory for X then vice-versa.
19319         (Bug #2776)
19320
19321 Tue Oct 19 09:46:49 1999  Owen Taylor  <otaylor@redhat.com>
19322
19323         * gtk/gtkrc.c (gtk_rc_init): Always use LC_CTYPE 
19324         to determine the locale for fontsets, not LC_MESSAGES;
19325         the user may want English messages with a handling
19326         for non-English languages. (LC_CTYPE=ru_RU LC_MESSAGES=fr_FR
19327         will still be broken) (Bug #2891)
19328
19329 Tue Oct 19 20:36:42 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19330
19331         * gtk/gtkrc.ko: Fixed the wrong number of "*"'s.
19332
19333 Tue Oct 19 12:15:13 1999  Changwoo Ryu  <cwryu@adam.kaist.ac.kr>
19334
19335         * gtk/gtkrc.ko: Changed the Korean default fontset.
19336
19337 Fri Oct  8 02:32:47 1999  Owen Taylor  <otaylor@redhat.com>
19338
19339         * gtk/gtklayout.c (gtk_layout_adjustment_changed): Fix bug
19340         where when scrolling to the left or top double exposes
19341         were done, causing major slowdowns.
19342
19343 Thu Oct  7 18:31:55 1999  Owen Taylor  <otaylor@redhat.com>
19344
19345         * gtk/gtkrc.c (gtk_rc_init): Always normalize codeset
19346         names to lowercase and alphanumeric, before looking
19347         them up.
19348
19349         * gtk/Makefile.am: Install codeset variant gtkrc files
19350         with normalized names.
19351
19352 Thu Oct  7 22:52:42 1999  Tim Janik  <timj@gtk.org>
19353
19354         * gtk/gtkitemfactory.c (gtk_item_factory_popup_with_data): even
19355         popup menus when the menu is already visible, but its parent
19356         is still hidden, (happens after tornoff window got hidden).
19357
19358 Thu Oct  7 11:09:55 1999  Owen Taylor  <otaylor@redhat.com>
19359
19360         * gtk/Makefile.am (install-data-local): Fix
19361         a typo where gtkrc.vi_VN.tcvn5712 wasn't getting
19362         deleted, causing error messages on install.
19363
19364 Thu Oct  7 11:03:06 1999  Owen Taylor  <otaylor@redhat.com>
19365
19366         * gtk/gtk[hv]paned.c (gtk_{h,v}paned_draw): Redraw
19367         the handle as well, since we now sometimes ignore
19368         exposes on the handle while resizing.
19369
19370 Wed Oct  6 18:02:31 1999  Owen Taylor  <otaylor@redhat.com>
19371
19372         * gtk/gtkrc.c (gtk_rc_append_default_pixmap_path): Fix stupid
19373         extra g_free introduced in one of the last one or two 
19374         commits.
19375
19376 Wed Oct  6 16:38:36 1999  Owen Taylor  <otaylor@redhat.com>
19377
19378         * gtk/Makefile.am gtk/gtkrc*: Make naming of gtkrc files
19379         consistent, put each style that a gtkrc.* file creates
19380         in a unique namespace, remove old files before installing.
19381
19382 Wed Oct  6 14:31:16 1999  Owen Taylor  <otaylor@redhat.com>
19383
19384         * gtk/gtkrc.c (gtk_rc_init): Avoid leaking memory when
19385         gtk_rc_init is called multiple times. (Yes, people who
19386         do that have bugs in their code.)
19387
19388 Tue Oct  5 11:36:57 PDT 1999 Manish Singh <yosh@gimp.org>
19389
19390         * gtk/Makefile.am: listing gtkrc in gtkconf_DATA seems to barf.
19391         Remove it since it's generated by the Makefile anyway
19392
19393 Tue Oct  5 02:43:41 1999  Owen Taylor  <otaylor@redhat.com>
19394
19395         * gdk/gdkinputcommon.h (gdk_input_device_new): Free
19396         device->info.axes for core pointer.
19397
19398 Thu Sep 30 13:55:25 1999  Owen Taylor  <otaylor@redhat.com>
19399
19400         * gtk/testgtk.c (destroy_idle_test): Rename idle to 
19401         idle_id, to deal with obsolete, broken C libraries.
19402
19403 Mon Sep 27 02:50:15 1999  Owen Taylor  <otaylor@redhat.com>
19404
19405         * gtk/gtkvscale.c (gtk_vscale_draw): Don't add in
19406         allocation->x/y twice!
19407
19408         * gtk/gtkhscale.c: Make usage of gtk_hscale_pos_trough()
19409         consistent with gtk_vscale_pos_trough().
19410
19411 Sun Sep 26 19:44:34 1999  Owen Taylor  <otaylor@redhat.com>
19412
19413         * gtk/gtkcontainer.c (gtk_container_queue_resize): We may
19414         be queueing a resize on a toplevel container between
19415         the time we show it and when we map it. So, we need
19416         to test GTK_WIDGET_VISIBLE() for toplevels, and only
19417         use GTK_WIDGET_DRAWABLE() for child windows.
19418
19419 Thu Sep 23 16:41:03 1999  Owen Taylor  <otaylor@redhat.com>
19420
19421         * gtk/Makefile.am (LDADDS): Add GDK_WLIBS to LDADDS 
19422         (fixes bug #2144)
19423
19424 Fri Sep 24 00:51:45 1999  Tim Janik  <timj@gtk.org>
19425
19426         * gtk/gtkcontainer.c (gtk_container_queue_resize): check for
19427         container DRAWABLE (instead of VISIBLE), so we don't queue
19428         resizes on non-toplevel containers.
19429
19430 Sun Sep 19 18:13:31 1999  Owen Taylor  <otaylor@redhat.com>
19431
19432         * gtk/gtkselection.[ch]: Make the data argument
19433         const guchar *.
19434
19435 Sat Sep 18 21:27:40 1999  Owen Taylor  <otaylor@redhat.com>
19436
19437         * gtk/gtkwindow.c: Try to behave sensibly if 
19438         the focus widget is the window itself. (Should
19439         we allow this at all?)
19440
19441 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
19442
19443         * gtk/gtkwidget.c (gtk_widget_set_sensitive): 
19444         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): 
19445         * gtk/gtknotebook.c (gtk_notebook_set_show_border): 
19446         * gtk/gtkclist.c (gtk_notebook_set_show_border): make gboolean args
19447         in prototypes and implementations consistent (Tomas Ogren).
19448
19449         * gtk/gtklayout.c (gtk_layout_remove): unset GTK_IS_OFFSCREEN flag
19450         before the widget is unparented (reported by damon).
19451
19452         * gtk/gtkdnd.c: make the cursor and icon data _unsigned_ char,
19453         since we provide unsigned data anyways.
19454
19455 Thu Sep 16 21:32:01 1999  Owen Taylor  <otaylor@redhat.com>
19456
19457         * gtk/gtktooltips.c (gtk_tooltips_set_tip): Delay
19458         the call to gtk_tooltips_layout_text() until later.
19459
19460         * gtk/gtktooltips.c (gtk_tooltips_draw_tips):
19461         Call gtk_widget_ensure_style() before using the style.
19462
19463 Wed Sep 15 02:52:19 1999  Owen Taylor  <otaylor@redhat.com>
19464
19465         * gtk/gtkwidget.c (gtk_widget_event): Added workaround
19466         for old widgets that don't propagate draws to all
19467         children. (Namely gnome-dock for gnome-libs <= 1.0.16)
19468
19469 Tue Sep 14 19:22:19 1999  Tim Janik  <timj@gtk.org>
19470
19471         * gtk/gtkwidget.c (gtk_widget_queue_resize): don't queue the parent
19472         for a redraw but just the widget that requested the resize.
19473
19474 Tue Sep 14 18:29:47 1999  Tim Janik  <timj@gtk.org>
19475
19476         * gtk/gtkcontainer.c: added new widget level method
19477         gtk_container_set_reallocate_redraws() and a GtkContainer flag
19478         reallocate_redraws : 1 to reflect the setting, exported this through
19479         the argument system as a boolean ::reallocate_redraws.
19480
19481         * gtk/gtkwidget.c (gtk_widget_size_allocate): when queueing redraws
19482         on the widget because the allocation changes, do so as well for
19483         widget->parent if the parent has reallocate_redraws set to TRUE.
19484         with that containers requesting reallocation redraws get automatically
19485         redrawn if their children changed allocation (this unfortunately
19486         affects also other children that didn't change allocation, but we
19487         cannot work around that before 1.3).
19488
19489 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
19490
19491         * gtk/gtkwidget.c (gtk_widget_idle_draw): only emit ::draw if width
19492         _and_ height are >0 (not _or_).
19493
19494         * gtk/gtktable.c (gtk_table_remove): use gtk_widget_queue_resize()
19495         instead of gtk_container_queue_resize(), which is a core gtk internal
19496         function (must have been on crack when i queued that).
19497
19498         * gtk/gtkprivate.h: added new private flag GTK_FULLDRAW_PENDING, so
19499         we can check more reliably if we want to discard expose events.
19500         * gtk/gtkwidget.c: added setting/unsetting of the GTK_FULLDRAW_PENDING
19501         flag.
19502         
19503         * gtk/gtkwidget.c (gtk_widget_event): don't discard synthesized exposes,
19504         we simply trust these events. for deciding whether to discard exposes,
19505         check GTK_FULLDRAW_PENDING instead of RESIZE_PENDING.
19506         
19507 Mon Sep 13 15:01:21 1999  Owen Taylor  <otaylor@redhat.com>
19508
19509         * gtk/gtkwidget.c (gtk_widget_queue_clear_area): Ignore
19510         queues of areas that are completely off screen.
19511
19512         * gtk/gtkwidget.c (gtk_widget_idle_draw): Fix broken
19513         logic for handleboxes.
19514
19515         * gtk/gtkwidget.c (gtk_widget_queue_draw_data): Add santity
19516         check on width/height.
19517
19518 Mon Sep 13 02:22:47 1999  Tim Janik  <timj@gtk.org>
19519
19520         * gtk/Makefile.am: backed out Raja's recent VPATH build "improvements",
19521         we are fine with using $@ the way we do (if we actually encounter
19522         brokeness with $@ in VPATH builds because of additional path prefixes,
19523         we need to use $(@F) actually).
19524
19525 Mon Sep 13 01:34:53 1999  Tim Janik  <timj@gtk.org>
19526
19527         * gtk/gtksignal.c: renamed two variables, hopefully didn't introduce
19528         short lived bugs, that would allow language bindings to do surgeries
19529         to our guts.
19530
19531 Fri Sep 10 15:22:50 1999  Owen Taylor  <otaylor@redhat.com>
19532
19533         * gtk/gtkwindow.c (gtk_window_size_allocate): Fix typo
19534         where comparison was being done against an uninitialized
19535         value causing intermittant results depending on
19536         compiler flags. Also make it clearer that we aren't
19537         ever initializing the child as 0x0 (though this will
19538         be caught in gtk_widget_size_allocate())
19539
19540 Fri Sep 10 10:06:56 1999  Owen Taylor  <otaylor@redhat.com>
19541
19542         * gtk/gtkwindow.c (gtk_window_set_transient_for): Move
19543         gtk_window_unset_transient_for() call after we do checks
19544         involving the old transient parent.
19545         [ From Lance Capser <lmc@cyberhighway.net> ]
19546
19547 1999-09-07  Raja R Harinath  <harinath@cs.umn.edu>
19548
19549         * gtk/Makefile.am (gtk.defs): Go back to using `touch' to create
19550         an empty file.
19551
19552 Mon Sep  6 00:11:56 1999  Lars Hamann  <lars@gtk.org>
19553
19554         * gtk/gtkctree.c (gtk_ctree_is_ancestor): return FALSE if node has
19555         no children. (Reported by: Chris Rogers <gandalf@pobox.com>)
19556
19557 1999-09-03  Raja R Harinath  <harinath@cs.umn.edu>
19558
19559         * gtk/Makefile.am (gen_sources): Improve VPATH builds.
19560         `$@' is valid only in the build dir, not after we've done 
19561         `cd $srcdir'.  Also use `test -f' instead of less portable
19562         `test -e'.
19563
19564 Fri Sep  3 15:59:56 1999  Owen Taylor  <otaylor@redhat.com>
19565
19566         * gtk/gtktext.c (correct_cache_insert): Rewrite
19567          for simplicity, and hopefully correctness.
19568          (Fixes bug #1322, which was a segfault when
19569           on some insertions with the properties around
19570           the insertion set up just wrong.)
19571
19572         * gtk/gtktext.c (gtk_text_adjustment): When we receive
19573          a "changed" signal, clamp the new value to the adjustment
19574          bounds to avoid segfaulting if someone tries to change
19575          the adjustment to a bogus value. (Bug #1795)
19576
19577 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
19578
19579         * gtk/gtkmain.c: Ignore unexpected destroy notifies
19580         for children, for toplevel windows handle them
19581         like delete_event.
19582
19583         * gtk/gtkplug.c: Add an unrealize handler so that
19584         we unref plug->socket_window when we are done
19585         with it.
19586
19587 Fri Sep  3 14:52:54 1999  Owen Taylor  <otaylor@redhat.com>
19588
19589         * gtk/gtktext.c (clear_area): Fix stupid signedness
19590          problem that was causing background to sometimes
19591          be misaligned.
19592
19593 Fri Sep  3 12:26:33 1999  Owen Taylor  <otaylor@redhat.com>
19594
19595         [ Fixes pointed out by Ettore Perazzoli <ettore@comm2000.it> ]
19596         
19597         * gtk/gtkmenu.c (gtk_menu_position): Make
19598          sure we never position menus with negative x, y,
19599          since gtk_widget_set_uposition() can't handle that.
19600
19601         * gtk/gtkmenuitem.c (gtk_menu_item_position_menu):
19602          Modify the positioning code a bit so that we always
19603          put the top-left corner onscreen. (This is for
19604          UI reasons, gtk_menu_position() now takes care of
19605          gtk_widet_set_uposition() brokeness.)
19606
19607 Fri Sep  3 03:06:30 1999  Tim Janik  <timj@gtk.org>
19608
19609         * gtk/Makefile.am: fixed up things for -jx, x > 1.
19610
19611 Sun Sep  5 08:48:51 1999  Owen Taylor  <otaylor@redhat.com>
19612
19613         * gtk/gtkwidget.c (gtk_widget_modify_style): Ref the
19614           RC style that is passed in. The lack of the ref
19615           before was a bug. If people worked around this
19616           bug, this will introduce a slight memory leak
19617           in their code. The code should typically look like:
19618
19619             rc_style = gtk_rc_style_new ();
19620             [...]
19621             gtk_widget_modify_style (widget, rc_style);
19622             gtk_rc_style_unref (rc_style);
19623
19624         * gtk/gtkwidget.c (gtk_widget_modify_style): Reset
19625           the style if it was already set.
19626
19627         * gtk/gtkwidget.c (gtk_widget_set_name): Only set the
19628           style if it was set before.
19629
19630 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
19631
19632         * gtk/testgtk.c (main): Add a check to see if we
19633           are being run from the correct directory and
19634           to quit nicely if we are not.
19635
19636         * gtk/gtkrc.c (gtk_rc_slist_remove_all): Make function
19637           static.
19638
19639 Thu Sep  2 23:00:03 1999  Tim Janik  <timj@gtk.org>
19640
19641         * gtk/gtkenums.h (GtkWindowPosition): added GTK_WIN_POS_CENTER_ALWAYS.
19642
19643         * gtk/gtkwindow.c:
19644         queue resizes unconditionally (gtk_widget_queue_resize will figure
19645         what to do if the window is not realized).
19646         (gtk_window_move_resize): only recenter the window
19647         for GTK_WIN_POS_CENTER_ALWAYS.
19648         (gtk_window_compute_reposition): handle GTK_WIN_POS_CENTER_ALWAYS in
19649         the same way as GTK_WIN_POS_CENTER.
19650
19651 Thu Sep  2 22:39:27 1999  Tim Janik  <timj@gtk.org>
19652
19653         * gtk/gtkwindow.c (gtk_window_reposition): check for the last position
19654         with (!(info->last_flags & GDK_HINT_POS)) instead of
19655         (!info->last_flags & GDK_HINT_POS).
19656
19657         * gtk/gtkwindow.c (gtk_window_move_resize): constrain new_width and
19658         new_height unconditionally, because we use these values even if
19659         !default_size_changed && !hints_changed.
19660         comented the (default_size_changed || hints_changed) case with
19661         respect to resize rejects from the window manager.
19662
19663         * gtk/gtkwindow.c (gtk_window_move_resize): save info->last values
19664         in the zvt condition hack, since this includes the window hints, set
19665         the hints after the handling_resize case.
19666
19667         * gtk/gtkwindow.c (gtk_window_show): constrain the default size that a
19668         window is initially shown with to the geometry.
19669
19670 Thu Sep  2 07:38:56 1999  Tim Janik  <timj@gtk.org>
19671
19672         * gtk/gtkwindow.c (gtk_window_move_resize):
19673         s/size_changed/default_size_changed/g so i know what's
19674         really going on (frying brain on smaller flame now).
19675
19676 Thu Sep  2 05:47:47 1999  Tim Janik  <timj@gtk.org>
19677
19678         * gtk/gtkwindow.c (gtk_window_move_resize): queue a new resize if
19679         we have size_changed upon handling_resize. this is a gross
19680         workaround for the broken zvt widget and should be removed in
19681         1.3 again (search for FIXME).
19682         Owen provided an accurate comment for this:
19683
19684         /* We could be here for two reasons
19685          *  1) We coincidentally got a resize while handling
19686          *     another resize.
19687          *  2) Our computation of size_changed was completely
19688          *     screwed up, probably because one of our children
19689          *     is broken. It's probably a zvt widget.
19690          *
19691          * For 1), we could just go ahead and ask for the
19692          * new size right now, but doing that for 2)
19693          * might well be fighting the user (and can even
19694          * trigger a loop). Since we really don't want to
19695          * do that, we requeue a resize in hopes that
19696          * by the time it gets handled, the child has seen
19697          * the light and is willing to go along with the
19698          * new size. (this happens for the zvt widget, since
19699          * the size_allocate() above will have stored the
19700          * requisition corresponding to the new size in the
19701          * zvt widget)
19702          *
19703          * This doesn't buy us anything for 1), but it shouldn't
19704          * hurt us too badly, since it is what would have
19705          * happened if we had gotten the configure event before
19706          * the new size had been set.
19707          */
19708
19709 Wed Sep  1 20:46:11 1999  Owen Taylor  <otaylor@redhat.com>
19710
19711         * gtk/gtkrc.c: deal properly with the fact that RC
19712           style lists may include rc styles more than once.
19713
19714         * gtk/gtkrc.c (gtk_rc_append_pixmap_path): Removed
19715           unused static function.
19716
19717         * gtk/gtkrc.c (gtk_rc_find_pixmap_in_path): Keep a
19718           stack of directories of RC files currently being
19719           parsed and implicitely add them to pixmap path.
19720           
19721           This fixes a bug where the directory would get
19722           appended then overwritten by pixmap_path declarations.
19723
19724           (bug #1462, from Peter Wainright <prw@wainpr.demon.co.uk>)
19725
19726         * gtk/gtkthemes.c (gtk_theme_engine_unref): Call
19727           theme's exit function. (Patch from Peter Wainwright,
19728           bug #1454)
19729
19730         * gtk/gtkradiomenuitem.c (gtk_radio_menu_item_destroy):
19731           Add a destroy() handler to take care of removing
19732           group for menu item. (Fixes bug #1197)
19733
19734         * gtk/gtkwidget.c (gtk_widget_size_request): Fixed thinko
19735           in warning message.
19736
19737 Wed Sep  1 21:27:42 1999  Tim Janik  <timj@gtk.org>
19738
19739         * gtk/gtkwindow.c (gtk_window_move_resize): don't require a server
19740         roundtrip to figure window's width and height, since we know that
19741         anyways from widget->allocation.
19742
19743 Wed Sep  1 12:37:44 1999  Owen Taylor  <otaylor@redhat.com>
19744
19745         * gtk/gtkwindow.c (gtk_window_move_resize): Compute
19746           the hints after we request the new size.
19747
19748 Wed Sep  1 10:38:37 1999  Owen Taylor  <otaylor@redhat.com>
19749
19750         * gtk/gtkwindow.c (gtk_window_compute_hints): Removed
19751           GTK_WIDGET_REALIZED() assertion - we can compute the
19752           hints before we are realized.
19753
19754         * gtk/gtkwindow.c (gtk_window_move_resize): Reorder
19755           hint changing so that we have a value of hints_changed
19756           when we decide whether to constrain the window size.
19757
19758         * gtk/gtkwindow.c (gtk_window_move_resize): Spelling fix.
19759
19760         * gtk/gtkwindow.c (gtk_window_constrain_size): cleanups,
19761         change back to G_MAXINT.
19762
19763 Wed Sep  1 06:54:59 1999  Tim Janik  <timj@gtk.org>
19764
19765         * gtk/gtkwindow.c (gtk_window_get_geometry_info): zero initialize
19766         new GtkWindowGeometryInfo, so fields like GdkGeometry geometry
19767         contain uncluttered values.
19768         (gtk_window_compute_hints): simply assert that window is realized
19769         and that geometry_info is valid, since we rely on this anyways.
19770         (gtk_window_constrain_size): major cleanups to the code.
19771         if (flags & GDK_HINT_BASE_SIZE) use geometry's base width and height
19772         for the base size, instead of the minimums. use 32767 as max width
19773         and height (like in gtkwindow.c) instead of G_MAXINT.
19774
19775 Wed Sep  1 04:41:25 1999  Tim Janik  <timj@gtk.org>
19776
19777         * cleaned up the GtkContainer.need_resize flag handling mess, we
19778         only need to force resize requests when we were prematurely
19779         realized, or our widget tree was modified when we were temporarily
19780         hidden. handling these cases directly upon showing the window (i.e.
19781         while the GdkWindow is still unmapped) avoids the need to wait for
19782         a configure event response and therefore makes the GUI more snappier
19783         and avoids blank windows during the roundtrip.
19784
19785         * gtk/gtkwidget.c:
19786         (gtk_widget_hide): 
19787         (gtk_widget_show): don't queue resizes on toplevels, they know how
19788         to deal with matters.
19789
19790         * gtk/gtkcontainer.c (gtk_container_queue_resize): set the ->need_resize
19791         flag directly for not visible resize containers and spare us unecessary
19792         signal emissions.
19793
19794         * gtk/gtkwindow.c:
19795         (gtk_window_realize): if we need to enforce premature size allocation,
19796         queue a container resize so we are correctly resized later on.
19797         (gtk_window_init):
19798         (gtk_window_size_request):
19799         don't freak around with the ->need_resize flag,
19800         gtk_container_queue_resize() will care about that.
19801         (gtk_window_show):
19802         handle initial resizing issues here, we can handle matters better in
19803         this place, especially since we know that our GdkWindow is still
19804         unmapped.
19805         (gtk_window_move_resize):
19806         don't care about ->need_resize at all.
19807         handle size changes properly that occoured while we waited for a
19808         configure event.
19809
19810 Tue Aug 31 15:58:46 1999  Owen Taylor  <otaylor@redhat.com>
19811
19812         * gtk/gtkwidget.c (gtk_widget_set_uposition):
19813         * gtk/gtkwindow.[hc] (gtk_window_reposition):
19814         Move the hint setting code from gtk_widget_set_uposition
19815         to here; set the hints so that we respect any previously
19816         set geometry hints.
19817
19818         * gtk/gtkwindow.c (gtk_window_compute_reposition): Don't
19819         change the window hints here or move the window here,
19820         let that happen in gtk_window_move_resize().
19821
19822 Tue Aug 31 06:58:52 1999  Tim Janik  <timj@gtk.org>
19823
19824         * gtk/gtkwidget.c (gtk_widget_event): when discarding exposes due
19825         to already queued resizes (and therefore redraws) on a widget, check
19826         its anchestry as well.
19827
19828         * gtk/gtkcontainer.c:
19829         (gtk_container_queue_resize): clear resize widgets for resize
19830         containers before aborting prematurely. this is especially important
19831         for toplevels which may need imemdiate processing or their resize
19832         handler to be queued.
19833         (gtk_container_dequeue_resize_handler): added new internal function for
19834         gtkwindow.c.
19835
19836         * gtk/gtkwindow.c (gtk_window_move_resize): if we are resizing due to a
19837         configure event, take possible changes in window position into account
19838         as well.
19839         if we request a new window size, queue up a resize handler that will
19840         last until the configure event response arrives.
19841         combined the ->need_resize case (initial show) with the general size
19842         (hints) changed case and added even more comments.
19843         if !auto_shrink, only revert to the old allocation if the new size
19844         is smaller than the current allocation.
19845
19846 Tue Aug 31 11:55:20 1999  Owen Taylor  <otaylor@redhat.com>
19847
19848         * gtk/gtkwindow.c (gtk_window_set_arg, gtk_window_set_policy,
19849                            gtk_window_set_geometry_hints
19850                            gtk_window_set_default_size):
19851         When hints are set, queue a resize so that the hints will
19852         be eventually reset on the toplevel.
19853
19854         * gtk/gtkwindow.c (gtk_window_show): Use
19855         gtk_window_compute_default_size(). Clear the need_resize flag
19856         on the initail map so that we don't unnecessarily trigger the
19857         resize code.
19858
19859         * gtk/gtkwindow.c (gtk_window_move_resize): Split apart
19860         into separate functions. Compare the hints we are setting
19861         with what we set last time so that we can accurately
19862         tell when we need to reset the hints.
19863
19864         * gtk/gtkwindow.c (gtk_window_compute_default_size): New
19865         function to figure out the size from requisition
19866         and default_size.
19867
19868         * gtk/gtkwindow.c (gtk_window_constrain_size): Function
19869         from fvwm to constrain a size to the geometry hints.
19870
19871         * gtk/gtkwindow.c (gtk_window_compare_hints): New function
19872         to compare two sets of geometry hints.
19873
19874         * gtk/gtkwindow.c (gtk_window_compute_hints): Renamed
19875         from gtk_window_set_hints(), just compute the hints,
19876         don't set them.
19877
19878         * gtk/gtkwindow.c (gtk_window_compute_reposition): Move
19879         code from gtk_window_move_resize() to separate function,
19880         rationalize a bit.
19881
19882 Tue Aug 31 13:05:03 1999  Owen Taylor  <otaylor@redhat.com>
19883
19884         * gtkrc.h: Move the ref_count member out of the GtkRcStyle
19885         structure into a new private structure.
19886
19887         * gtkrc.c: Split GtkRcStyle into public/private.
19888         In the private part, add a list of pointers to the
19889         RcStyle lists this RcStyle participates in.
19890
19891         * gtkrc.c: When a RcStyle is free, remove all
19892         lists referencing it from the 
19893         realized_style_ht hash, and free those lists.
19894         
19895         * gtk/gtkrc.c (gtk_rc_clear_styles): Don't call
19896         gtk_rc_init(), since that adds the default styles
19897         to the list of parsed RC files again.
19898
19899         * gtk/gtkrc.c: Use gtk_rc_style_find() consistently.
19900         
19901 Thu Aug 26 14:14:42 1999  Tim Janik  <timj@gtk.org>
19902
19903         * gtk/gtkwidget.c (gtk_widget_size_allocate): reactivated the sanity
19904         checks that ensure that a widget's allocation is at least 1 in width
19905         and height. (GNOME note: this doesn't affect old panel code anymore,
19906         because GtkSocket will request width and height of at least 1 since
19907         Fri Jul 23).
19908
19909         * gtk/gtkwindow.c (gtk_window_realize): if the widget hasn't been
19910         allocated yet (happens if the user realizes the window prematurely),
19911         size request and allocate it.
19912         (gtk_window_size_allocate): guard against guint underflows.
19913
19914 Wed Aug 25 19:01:36 1999  Lars Hamann  <lars@gtk.org>
19915
19916         * gtk/Makefile.am (gtk_built_sources): reordered stamp-gtk.defs
19917         in gtk_built_sources, so gtk.defs gets built prior to all other
19918         sources.
19919
19920 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
19921
19922         * gtk/Makefile.am:
19923         invoke indent on gtkmarshal.*. 
19924         rewrote source generation rules, use COPYING as oldest source tag for
19925         a piggyback rule to generate all sources from (don't touch it ;).
19926         major cleanups, strip spaces on build rules for GNU Make.
19927
19928         * gtk/genmarshal.pl: don't operate on hardcoded filenames but take
19929         source and target files from commandline arguments. don't invoke indent.
19930
19931 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19932
19933         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19934         notebook after switch to avoid drawing problems.
19935         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19936         
19937         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19938         show them instead. 
19939         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19940
19941 Sat Aug 21 14:07:36 1999  Lars Hamann  <lars@gtk.org>
19942
19943         * gtk/gtknotebook.c (gtk_notebook_real_switch_page): queue_resize
19944         notebook after switch to avoid drawing problems.
19945         (Bug#856 Reported by: Theodore Roth <troth@netmagic.net>)
19946         
19947         (gtk_notebook_pages_allocate): don't map not visible tab_labels, 
19948         show them instead. 
19949         (Bug#1805 Reported by: Dave Cole <dave@dccs.com.au>)
19950
19951 Wed Aug 18 09:20:10 1999  Tim Janik  <timj@gtk.org>
19952
19953         * gtk/gtkwindow.c:
19954         we use window->need_resize from configure_event now, to indicate that
19955         the gtkwindow should keep its allocation (e.g. because the user resized
19956         the window through window manager handles). resize_count is now reliably
19957         used to figure whether we got the allocation we requested from the
19958         window manager.
19959         configure events get queued as resizes now, the real stuff (size
19960         computation and allocation) now only goes on in gtk_window_move_resize().
19961         GtkWindow's requisition now contains its *real* requisition (like all
19962         other widgets), *not* taking usize into account.
19963         geometry_info->last_{width|height} is now updated from set_hints() only
19964         so it always contains the last hints we set for the window manager.
19965         made some event handlers return TRUE instead of FALSE.
19966         the overall code should be much more straight forward now, and the
19967         significant code portions are accompanied by comments now.
19968         (gtk_window_set_hints):
19969         removed requisition argument and made it
19970         fetch the requisition through gtk_widget_get_child_requisition.
19971         we also don't move the gdkwindow here anymore, gtk_window_move_resize()
19972         does that now.
19973         (gtk_window_show):
19974         ensure that the widget is realized before calling 
19975         gtk_container_check_resize() (and thus gtk_window_move_resize()), also
19976         ensure that we got properly size requested and allocated before
19977         realization.
19978         (gtk_window_configure_event):
19979         ignore plain window moves, or reallocate the widget tree through the
19980         resize queue otherwise.
19981         (gtk_window_move_resize):
19982         mostly rewrote this function to figure window manager hints more
19983         reliably, coalesce window moves and resizes to reduce configure events
19984         and do actuall size allocations.
19985
19986 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
19987
19988         * gtk/gtkwidget.c (gtk_widget_event): discard expose events for widgets
19989         that have a resize pending, because a redraw is already queued for them.
19990
19991         * gtk/gtkcontainer.c: removed ugly connect_to ::size_allocate signal
19992         hack to clear resize_widgets.
19993
19994         * gtk/gtkwidget.c (gtk_widget_size_allocate): call clear_resize_widgets
19995         for resize containers prior to size allocation. (this is also a bit
19996         ugly, but avoids side effects for stopped emissions and is thus more
19997         reliable).
19998         (gtk_widget_unparent): removed disconnect call for clear_resize_widgets.
19999
20000         * gtk/gtktooltips.c (gtk_tooltips_paint_window): renamed this
20001         function from gtk_tooltips_expose, as we connect to ::expose_event
20002         *and* ::draw now.
20003
20004 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
20005
20006         * gtk/gtkselection.c (gtk_target_list_ref): Added missing sanity
20007         checks.
20008         (gtk_target_list_unref): Likewise.
20009
20010         * gtk/gtkthemes.c (gtk_theme_engine_unref): Likewise.
20011
20012 Tue Aug 17 15:47:07 1999  Owen Taylor  <otaylor@redhat.com>
20013
20014         * gtk/gtkcolorsel.c (gtk_color_selection_draw_value_bar):
20015         guard against division by zero. (Fixes bug #1339)
20016
20017 Tue Aug 17 10:56:49 1999  Owen Taylor  <otaylor@redhat.com>
20018
20019         * gtk/gtkentry.c (gtk_move_{forward,backward}_word): 
20020         Prevent the trivial leak of information of allowing
20021         word motion when the entry is not visible.
20022
20023 Tue Aug 17 10:28:52 1999  Owen Taylor  <otaylor@redhat.com>
20024
20025         * gtk/gtkfilesel.c (gtk_file_selection_fileop_error): Propagate
20026         modality to error dialog as well as confirmation dialogs.
20027         (Bug #1803, reported by Rosanna Wing Sze Yuen)
20028
20029 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
20030
20031         * gtk/gtktreeitem.c (gtk_tree_item_draw_lines): Honor
20032         tree->view_lines.
20033         (gtk-guy-990611-3.patch: Guy Harris <guy@netapp.com>)
20034
20035         * gtk/Makefile.am (install-data-local): Solaris apparently
20036         has various troubles with ln -f; use rm first instead.
20037         (gtk-guy-990611-2.patch: Guy Harris <guy@netapp.com>)
20038
20039 1999-07-30  Raja R Harinath  <harinath@cs.umn.edu>
20040
20041         * gtk/Makefile.am (stamp-m): Don't `mv' from builddir to srcdir,
20042         use `cp' followed by `rm' (the `rm' was already there).
20043
20044 July 30, 1999 Elliot Lee <sopwith@redhat.com>
20045         
20046         * configure.in: Fix autoconf warnings about cross compilation by
20047         trying to provide sane defaults for AC_TRY_RUN.
20048         * gtk/Makefile.am: If we refer to gtkmarshal.[ch] in $(srcdir),
20049         put them into $(srcdir) when generated. Also add a dependency of
20050         gtksignal.h on gtkmarshal.h for -j builds. 
20051         * gtk/gtk(dnd,style,gamma).c: Minor warning fixes.
20052
20053 Wed Jul 28 09:29:19 1999  Owen Taylor  <otaylor@redhat.com>
20054
20055         * gtk/gtkmain.c (gtk_main_iteration_do): Added missing
20056         GDK_THREADS_{LEAVE,ENTER} pair.
20057         (From Paul Fisher <pnfisher@redhat.com>)
20058
20059 Fri Jul 23 01:00:15 1999  Tim Janik  <timj@gtk.org>
20060
20061         * gtk/gtksocket.c (gtk_socket_size_request): asure that the requested
20062         width and height are always >0 (owen).
20063
20064 Fri Jul 23 00:00:47 1999  Tim Janik  <timj@gtk.org>
20065
20066         * gtk/gtkwidget.c (gtk_widget_size_allocate): backed out my recent
20067         change that assured that a widget's allocated with and height are
20068         always >1, since this breaks *buggy* panel code. unfortunately this
20069         back-breaks the gimp's color selector.
20070
20071         * gtk/gtkdrawingarea.c (gtk_drawing_area_size_allocate): asure that our
20072         allocation is always >0 in width and height, before sending the
20073         configure event; this is a *gross* hack to get the gimp back to work.
20074         
20075         * marked both cases with TODO-1.3
20076
20077 Wed Jul 21 15:47:39 1999  Owen Taylor  <otaylor@redhat.com>
20078
20079         * gtk/gtktext.c: Don't display wrap indicators when
20080         text is not editable and word wrap is on.
20081
20082 Wed Jul 21 08:21:40 1999  Tim Janik  <timj@gtk.org>
20083
20084         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): special case
20085         option menus here as they are not derived from menu shell, assure that
20086         the option menu has a menu we can add items to.
20087
20088 Tue Jul 20 23:29:48 1999  Tim Janik  <timj@gtk.org>
20089
20090         * gtk/gtknotebook.c (gtk_notebook_page_allocate): convert allocation->
20091         width/height to (gint) before calculations and check against < 0 to
20092         avoid guint wraparounds.
20093
20094 Sun Jul 18 00:35:49 1999  Tim Janik  <timj@gtk.org>
20095
20096         * gtk/gtkwidget.c (gtk_widget_size_allocate): ensure that the allocated
20097         width and height is never zero. sanity check both dimensions against
20098         32767 and issue a warning if the allocation is greater than that.
20099
20100 Wed Jul  7 15:03:30 1999  Owen Taylor  <otaylor@redhat.com>
20101
20102         * gtk/gtkmain.c (gtk_events_pending): Unlock around call
20103         to g_main_pending() as well.
20104
20105 Wed Jul  7 14:59:01 1999  Owen Taylor  <otaylor@redhat.com>
20106
20107         * gtk/gtkmain.c (gtk_main_iteration): Unlock around
20108         call to g_main_iteration() - since that will regrab
20109         GTK+ lock to process events.
20110
20111 Thu Jul  1 15:01:55 1999  Owen Taylor  <otaylor@redhat.com>
20112
20113         * gtk/gtkwindow.c
20114         - Regularize with the rest of GTK+ by making widget->requisition
20115           not reflect the set_usize()
20116         - Always recompute geometry hints, then check if they
20117           changed before sending them to the X server. The
20118           previous checks for changes would fail in a number
20119           of circumstances. 
20120
20121 Thu Jul  1 11:55:59 1999  Owen Taylor  <otaylor@redhat.com>
20122
20123         * gtk/gtkstyle.c: Include <stdlib.h> for strcmp().
20124
20125 Wed Jun 30 19:26:36 1999  Owen Taylor  <otaylor@redhat.com>
20126
20127         * gtk/gtkdnd.c:
20128         - Code cleanups
20129         - Instantaneously update on modifier key presses
20130         - Allow cancellation of the drag with Escape.
20131
20132 Tue Jun 29 17:04:09 1999  Owen Taylor  <otaylor@redhat.com>
20133
20134         * gtk/testgtk.c (create_handle_box): Set the policy
20135         to auto_shrink - otherwise the appearance is rather
20136         strange when flipping between horizontal and vertical.
20137
20138 Mon Jun 28 09:29:52 1999  Tim Janik  <timj@gtk.org>
20139
20140         * gtk/gtkwindow.c: add ::default_width and ::default_height arguments.
20141         (gtk_window_set_default_size): don't change a value if it's < 0.
20142         queue a resize.
20143
20144 Sun Jun 27 11:00:33 1999  Tim Janik  <timj@gtk.org>
20145
20146         * gtk/gtktext.c (gtk_text_insert): don't segfault on NULL inserts.
20147
20148 Mon Jun 28 12:08:25 1999  Owen Taylor  <otaylor@redhat.com>
20149
20150         * gtk/gtkfilesel.c (cmpl_completion_fullname): Don't
20151         add an extra "/" when concating "/" + filename.
20152         (From Matt Grossman <mattg@oz.net>)
20153
20154 Mon Jun 28 10:57:12 1999  Owen Taylor  <otaylor@redhat.com>
20155
20156         * gtk/gtkctree.c (draw_cell_pixmap): Reset clip mask
20157         for fg_gc if we set it for drawing pixmap.
20158
20159 Tue Jun 15 12:45:12 1999  Owen Taylor  <otaylor@redhat.com>
20160
20161         Fixes from Peter Wainwright <prw@wainpr.demon.co.uk>
20162         
20163         * gtk/gtkrc.c (gtk_rc_parse_engine): If rc_style->engine is
20164         already set, call old engine's destroy function and
20165         unref the old engine.
20166
20167 Thu Jun 10 17:59:38 1999  Tim Janik  <timj@gtk.org>
20168
20169         * gtk/gtkdrawingarea.c (gtk_drawing_area_size): queue a resize.
20170
20171 Wed Jun  9 15:13:16 1999  Tim Janik  <timj@gtk.org>
20172
20173         * gtk/gtkaccelgroup.h: mark certain functions as internal.
20174
20175 Wed Jun  9 13:48:28 1999  Tim Janik  <timj@gtk.org>
20176
20177         * gtk/gtkpreview.c (gtk_preview_set_expand): queue a resize if the
20178         expand behaviour changed.
20179
20180         * gtk/gtklabel.c (gtk_label_set_pattern):
20181         (gtk_label_set_justify):
20182         (gtk_label_set_line_wrap):
20183         don't bother invoking queue_clear, the reallocation does
20184         that for us, always free_words so the upcoming resize will
20185         relayout the label's contents.
20186
20187 Wed Jun  9 12:50:48 1999  Tim Janik  <timj@gtk.org>
20188
20189         * applied argument implementation patches from Elena Devdariani
20190         <elena@cogent.ca>.
20191
20192         * gtk/gtktoolbar.c: ::orientation, ::toolbar_style, ::space_size,
20193         ::space_style, ::relief
20194         * gtk/gtkruler.c: ::lower, ::upper, ::position, ::max_size
20195         * gtk/gtkpreview.c: ::expand
20196         * gtk/gtkpaned.c: ::handle_size, ::gutter_size
20197         * gtk/gtknotebook.c: ::homogeneous
20198         * gtk/gtklabel.c: ::wrap
20199         * gtk/gtklist.c: ::selection_mode
20200         * gtk/gtkhandlebox.c: ::handle_position, ::snap_edge
20201         * gtk/gtkcurve.c: ::curve_type, ::min_x, ::max_x, ::min_y, ::max_y
20202         * gtk/gtkcolorsel.c: ::update_policy, ::use_opacity
20203         * gtk/gtkclist.c: ::sort_type
20204         * gtk/gtkcheckmenuitem.c: ::active, ::show_toggle
20205         * gtk/gtkaspectframe.c: ::xalign, ::yalign, ::ratio, ::obey_child
20206
20207 Tue Jun  1 23:38:38 1999  Owen Taylor  <otaylor@redhat.com>
20208
20209         * gtk/gtkstyle.c: Removed ill-thought-out part of last
20210         comment.
20211
20212 Tue Jun  1 23:30:09 1999  Owen Taylor  <otaylor@redhat.com>
20213
20214         * gtk/gtkstyle.c (gtk_style_attach): Get the reference
20215         counting right when we have to attach a new style
20216         for a different visual. (Chi-Deok Hwang <cdhwang@sr.hei.co.kr>)
20217
20218         * gtk/gtkstyle.c: Documented the refcounting
20219         peculularities of gtk_style_attach.
20220
20221 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
20222
20223         * gtk/gtkwindow.c (gtk_window_new): added return if fail for invalid
20224         window types.
20225
20226         * examples/packer/pack.c (main): use GTK_WINDOW_TOPLEVEL instead
20227         of GTK_TOPLEVEL for creating the window.
20228
20229 1999-06-01  Tim Janik  <timj@dhcpd7.redhat.com>
20230
20231         * gtk/gtkmain.c (gtk_init_check): don't segfault when --gtk-module is
20232         the last argument (reported by Per Winkvist).
20233         
20234 Tue May 25 13:13:12 1999  Owen Taylor  <otaylor@redhat.com>
20235
20236         Fixes for invisible XOR lines (Frank Loemker
20237         <floemker@TechFak.Uni-Bielefeld.DE>)
20238         
20239         * gtk/gtkclist.c (gtk_clist_realize): Always use
20240         a non-zero pixel for GDK_XOR.
20241
20242         * gtk/gtkvpaned.c gtk/gtkhpaned.c: 
20243         Use GDK_INVERT instead of GDK_XOR.
20244
20245 Wed May 12 21:56:40 1999  Lars Hamann  <lars@gtk.org>
20246
20247         * gtk/gtkclist.c (adjust_adjustments): signal emit value_changed
20248         signals if h/voffsets differ from adjustment values.
20249         Reportet by Jerome Bolliet <bolliet@in2p3.fr>
20250
20251 Mon May 10 04:20:41 1999  Tim Janik  <timj@gtk.org>
20252
20253         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): propagate
20254         ::selection-done emissions up to the topmost menu shell.
20255
20256 Fri May  7 10:15:14 1999  Owen Taylor  <otaylor@redhat.com>
20257
20258         * gtk/gtknotebook.c (gtk_notebook_set_scrollable): Unset
20259         the user data on the window before destroying it.
20260
20261         * gtk/gtknotebook.c (gtk_notebook_unrealize): Add an
20262         unrealize handler to take care of destroying 
20263         notebook->panel properly. 
20264         (Bug #1198 - Morten Welinder <terra@diku.dk>)
20265
20266         * gtk/gtktext.c (expand_scratch_buffer): Fix reversal
20267         of g_new and g_realloc to stop memory leak. (Actually,
20268         we could just use g_realloc(), but I'm not 100% sure
20269         that is portable).
20270         (Bug #1196 - Morten Welinder <terra@diku.dk>)
20271
20272 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
20273
20274         * gtk/gtkplug.h: Removed stray GtkPlugButton declaration.
20275
20276         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
20277         for fontsets.
20278
20279         * gtk/gtkbutton.c (gtkbutton_expose): Fix warning
20280         with bin/button confusion.
20281
20282 Thu May  6 04:53:26 1999  Tim Janik  <timj@gtk.org>
20283
20284         * gtk/testgtk.c: in the ItemFactory test, link radio items together,
20285         and show how preselection of radio items is done.
20286
20287 Sun May  2 13:31:14 1999  Tim Janik  <timj@gtk.org>
20288
20289         * gtk/gtktreeitem.c (gtk_tree_item_set_subtree): 
20290         * gtk/gtktree.c (gtk_tree_add) (gtk_tree_insert):
20291         * gtk/gtktoolbar.c (gtk_toolbar_insert_element): 
20292         * gtk/gtkpaned.c (gtk_paned_pack2) (gtk_paned_pack1):
20293         * gtk/gtkscrolledwindow.c (gtk_scrolled_window_add): 
20294         * gtk/gtktable.c (gtk_table_attach): 
20295         * gtk/gtklist.c (gtk_list_insert_items): 
20296         * gtk/gtkmenushell.c (gtk_menu_shell_insert): 
20297         * gtk/gtknotebook.c (gtk_notebook_insert_page_menu): 
20298         * gtk/gtkpacker.c (gtk_packer_add_defaults) (gtk_packer_add): 
20299         * gtk/gtkbin.c (gtk_bin_add): 
20300         * gtk/gtkbox.c (gtk_box_pack_start) (gtk_box_pack_end): 
20301         * gtk/gtkfixed.c (gtk_fixed_put): 
20302         * gtk/gtklayout.c (gtk_layout_put):
20303         general fixups to container_add logic. always realize child if
20304         child->parent is realized, only map the child and queue a resize
20305         if child and child->parent are both visible.
20306
20307 Fri Apr 30 09:02:28 1999  Tim Janik  <timj@gtk.org>
20308
20309         * gtk/gtkwidget.c (gtk_widget_real_unrealize): use gtk_container_forall
20310         instead of gtk_container_foreach to walk and unrealize children, so
20311         composite children get also unrealized.
20312         (gtk_widget_real_show): don't call gtk_widget_map() if we don't need to.
20313         (gtk_widget_map): assert that the widget is visible (basic constrain).
20314         (gtk_widget_real_map): assert that the widget is realized (basic
20315         constrain).
20316
20317 Fri Apr 29 00:53:20 1999  Tim Janik  <timj@gtk.org>
20318
20319         * gtk/gtkbindings.c (gtk_pattern_spec_init): plugged a memory leak.
20320
20321 Tue May  4 09:32:08 1999  Owen Taylor  <otaylor@redhat.com>
20322
20323         * gtk/Makefile.am gtk/gtkrc.iso-8859-2: Add a gtkrc
20324         file for iso-8859-2 locales.
20325
20326         * configure.in (ALL_LINGUAS): ALL_LINGUAS update.
20327
20328 Tue Apr 27 16:38:32 1999  Owen Taylor  <otaylor@redhat.com>
20329
20330         * gtk/Makefile.am: Fix typo of static_sources for static_SOURCES.
20331          (Pointed out by andy@rz.uni-karlsruhe.de and others).
20332          Remove some suspicious and useless lines. 
20333
20334 Tue May  4 08:44:08 1999  Owen Taylor  <otaylor@redhat.com>
20335
20336         * gtk/gtkclist.c (gtk_clist_draw, draw_rows): Use 
20337         width,height = 0, 0 to mean - here to edge of window,
20338         instead of -1, -1, since the former is all we support.
20339
20340 Tue May  4 08:34:43 1999  Owen Taylor  <otaylor@redhat.com>
20341
20342         * gtk/gtkmain.c (gtk_main): Correctly free list nodes
20343         when removing from quit_functions list.
20344
20345 Tue Apr 27 14:17:16 1999  Tim Janik  <timj@gtk.org>
20346
20347         * gtk/gtkpacker.c (gtk_packer_size_request): remove unused variable.
20348
20349 Tue Apr 27 18:23:35 1999  Owen Taylor  <otaylor@redhat.com>
20350
20351         * gtk/gtkentry.c (gtk_entry_draw_cursor_on_drawable): 
20352          When redrawing characters on non-visible entry, use appropriate
20353          '*' character. (Bug #1130 - Jean-Marc Jacquet <jm@littleigloo.org>)
20354
20355 Tue Apr 27 01:31:40 1999  Lars Hamann  <lars@gtk.org>
20356
20357         * gtk/gtkclist.c (drag_dest_cell): compute destination cell
20358         from drag coordinates.
20359         (gtk_clist_drag_data_received) (gtk_clist_drag_motion):
20360         use drag_dest_cell.
20361
20362         * gtk/gtktree (drag_dest_cell)
20363         (gtk_ctree_drag_data_received) (gtk_ctree_drag_motion): likewise.
20364         (Bug #1129)
20365
20366 Wed Apr 21 21:26:11 1999  Tim Janik  <timj@gtk.org>
20367
20368         * gtk/gtkitemfactory.c (gtk_item_factory_init): properly initialize
20369         translate_* fields.
20370         (gtk_item_factory_finalize): invoke translate_notify independant from
20371         translate_data.
20372         (gtk_item_factory_set_translate_func): likewise.
20373         (gtk_item_factory_destroy): only remove ifactory pointer from those
20374         widgets that belong to us (stupid me).
20375
20376 Mon Apr 19 12:05:31 1999  Owen Taylor  <otaylor@redhat.com>
20377
20378         * gtk/gtkrc.c (gtk_rc_style_init): Fixed leak of
20379         rc_style list when lookup succeeeds.
20380
20381 Thu Apr 15 01:11:24 1999  Lars Hamann  <lars@gtk.org>
20382
20383         * gtk/gtkctree.c (resync_selection): 
20384         * gtk/gtkclist.c (resync_selection): fixed undo_selection bug.
20385         * gtk/gtkclist.c (gtk_clist_button_release): fixed resync_selection
20386         bug.
20387
20388 Fri Apr  9 19:22:19 1999  Owen Taylor  <otaylor@redhat.com>
20389
20390         * gtk/gtkcolorsel.c gtk/gtkdnd.c gtk/gtkmenuitem.c:
20391         Add some missing GDK_THREADS_ENTER()/LEAVE around
20392         timeouts. (Patches from Sebastian Wilhelmi <wilhelmi@ira.uka.de>)
20393
20394 Thu Apr  8 20:10:33 1999  Tim Janik  <timj@gtk.org>
20395
20396         * gtk/gtkentry.c (gtk_entry_key_press): use gtk_widget_activate()
20397         rather than emit_by_name.
20398
20399         * gtk/gtkeditable.c (gtk_editable_insert_text): keep a reference
20400         on the widget across multiple signal emissions.
20401         (gtk_editable_delete_text): same here.
20402         (gtk_editable_class_init): set widget_class->activate_signal after
20403         editable_signals[ACTIVATE] has been created.
20404
20405 Wed Apr  7 22:59:47 1999  Owen Taylor  <otaylor@redhat.com>
20406
20407         * gtk/gtkpaned.c (gtk_paned_set_position): Don't clamp
20408         position here prematurely -- we might not have the
20409         right ->min_position and ->max_position yet.
20410
20411 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
20412
20413         * gtk/gtkselection.c gdk/gdkselection.c: (gtk_selection_request):
20414         Add error traps so if the other end of the connection
20415         dies, we survive.
20416
20417         * gtk/gtkselection.c (gtk_selection_notify): Clean
20418         up properly when selection property retrieval fails.
20419         
20420         * gtk/gtkselection.c (gtk_selection_request): Correctly
20421         reject SelectionRequest notifies where the handler
20422         returns no data.
20423
20424 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
20425
20426         * gtk/gtkdnd.c (gtk_drag_dest_leave): Only unhighlight
20427         when we've previously highlighted.
20428
20429         * gtk/gtkdnd.c (gtk_drag_dest_handle_event): Don't
20430         emit two "drag_leave" signals for Motif drops.
20431
20432         * gtk/gtkdnd.c (gtk_drag_source_handle_event): Send
20433         back the correct status messages when dropping from
20434         Motif onto a proxy window that is rejecting the
20435         drop.
20436
20437 Sat Mar 27 23:32:13 1999  Tim Janik  <timj@gtk.org>
20438
20439         * gtk/gtkarg.[hc]: added functions from GLE, gtk_arg_reset() to free
20440         the value and reset type to GTK_TYPE_INVALID, and gtk_arg_values_equal()
20441         to compare two argument values. added gtk_arg_to_valueloc() to set a
20442         variable from an arg through its location (pointer).
20443
20444         * gtk/gtkobject.[hc]: implemented gtk_object_get() in terms of
20445         gtk_object_arg_get() and gtk_arg_to_valueloc(), floats are collected
20446         as gfloat*, uchars are collected as guchar*, ints are collected as
20447         gint*, etc...
20448
20449 Mon Mar 29 17:45:47 1999  Owen Taylor  <otaylor@redhat.com>
20450
20451         * gtk/gtkaccelgroup.c gtk/gtkgtkbindings.c:
20452         Include <string.h> instead of <strings.h>.
20453
20454         * gtk/gtkstyle.c: Fix double include of gtkthemes.h
20455         (actually, a lot more duplicate includes occur if
20456          you trace through the sequence of #include's)
20457         gtk-jbb-990320-0: John Bley, jbb6@acpub.duke.edu
20458         
20459 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
20460
20461         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
20462         gtk-a-higuti-990322-[0-3]
20463
20464         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
20465         that was causing -DX_LOCALE not to work.
20466
20467         * gtk/gtkrc.c (gtk_rc_init):
20468         X_LOCALE will never have LC_MESSAGES defined
20469
20470 Thu Mar 25 12:38:31 1999  Tim Janik  <timj@gtk.org>
20471
20472         * gtk/gtkrc.c (gtk_rc_append_default_module_path): get $HOME from
20473         g_get_home_dir() (gtk-pmc-990123-0.patch.gz).
20474
20475         * gtk/gtkwindow.c (gtk_window_key_press_event): feature keypad up/down/
20476         left/right as well (gtk-michael-980726-0.patch.gz).
20477
20478         * gtk/gtklabel.[hc]: bunch of miscellaneous cleanups, such as s/0/NULL/
20479         for pointer values, use gchar instead of char. fixed uline allocation
20480         leaks, changed the allocation pattern so we use G_ALLOC_AND_FREE mem
20481         chunks instead of G_ALLOC_ONLY.
20482         (gtk_label_size_request): always alter requisition as passed and leave
20483         widget->requisition alone.
20484         (gtk_label_set_text): allow NULL strings.
20485         (gtk_label_new): likewise.
20486
20487 Wed Mar 24 09:24:03 1999  Tim Janik  <timj@gtk.org>
20488
20489         * gtk/gtkdrawingarea.[hc]: type/macro fixups.
20490
20491 Mon Mar 22 05:51:34 1999  Tim Janik  <timj@gtk.org>
20492
20493         * gtk/gtkbin.c (gtk_bin_draw): only redraw children that are visible
20494         *and* mapped (i.e. drawable).
20495         (gtk_bin_expose): only send exposes to drawable children.
20496
20497         * gtk/gtkbox.c (gtk_box_draw): only redraw children that are drawable.
20498         (gtk_box_expose): only send exposes to drawable children.
20499
20500         * gtk/gtkhscale.c (gtk_hscale_draw): 
20501         * gtk/gtkvscale.c (gtk_vscale_draw):
20502         hm, this is an ugly one. we first compute the size of our trough area
20503         here (window relative) and then check intersection with the draw_area
20504         which is parent relative because we're a NO_WINDOW widget, so we need
20505         to offset the trough area by allocation.x and allocation.y before the
20506         check. (this must not be done for the background area though, since
20507         that's already computed parent relative).
20508
20509 Mon Mar 22 00:41:39 1999  Lars Hamann  <lars@gtk.org>
20510
20511         * gtk/gtkclist.c (gtk_clist_unrealize): unmap clist if neccessary,
20512         unrealize title buttons.
20513
20514 Fri Mar 19 00:00:22 1999  Lars Hamann  <lars@gtk.org>
20515
20516         * gtk/gtkclist.c (gtk_clist_column_title_passive)
20517         (gtk_clist_column_title_active): 
20518         only connect/disconnect to GtkWidgetClass::event to block mouse events.
20519
20520         * gtk/gtkclist.c (vertical_timeout) (horizontal_timeout): 
20521         zero initialize event, removed superfluous gdk_window_get_pointer call
20522
20523         * gtk/gtklist.c (gtk_list_vertical_timeout)
20524         (gtk_list_horizontal_timeout): removed superfluous
20525         gdk_window_get_pointer call
20526
20527 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
20528
20529         * plugging problems reported by "Bruce Mitchener, Jr."
20530         <bruce@puremagic.com> due to a purify session.
20531
20532         * gtk/gtkstyle.c:
20533         (gtk_style_ref): 
20534         (gtk_style_unref): assert ref_count to be > 0.
20535
20536         * gtk/gtkclist.c (gtk_clist_set_cell_style): { 0 } initilaize
20537         the requisition.
20538         (gtk_clist_set_shift): likewise.
20539
20540         * gtk/gtklayout.c: introduce gtk_layout_finalize() to unref the
20541         adjustments.
20542
20543         * gtk/gtklist.c (gtk_list_horizontal_timeout): zero initialize the
20544         event before sending it and set send_event to TRUE (which needs to
20545         be done for *all* synthesized events).
20546         (gtk_list_vertical_timeout): likewise.
20547
20548         * gtk/gtktipsquery.c (gtk_tips_query_destroy): plug small memory
20549         leaks.
20550
20551         * gtk/gtkdrawingarea.c (gtk_drawing_area_send_configure): set send_event
20552         to TRUE when synthesizing events.
20553
20554 [ *** end of merges from 1.2 *** ]      
20555         
20556 1999-11-21  Tor Lillqvist  <tml@iki.fi>
20557
20558         * gdk/gdkconfig.h: Remove, as this is a file generated by configure
20559         (or copied from gdkconfig.h.win32 on Win32, sigh).
20560
20561         * gdk/gdkprivate.h: Mark gdk_parent_root for export from DLL.
20562
20563         * gdk/gdk.c (gdk_keyval_convert_case): Fix typo.
20564
20565         * gdk/gdkgc.c (gdk_gc_alloc): Remove duplicated line.
20566
20567         * gdk/gdkconfig.h.win32: New file.
20568
20569         * gdk/win32/makefile.cygwin: Build just a static archive here.
20570
20571         * gdk/makefile.cygwin: New file. Get the win32-specific stuff
20572         for the DLL from the static archive built above.
20573
20574         * gdk/gdk.def: Moved here from the win32 subdirectory.
20575
20576         * gdk/win32/*: Adapt for the changed private struct organisation.
20577
20578         * gtk/makefile.{cygwin,msc}: Get gdk library from ../gdk now.
20579
20580 Sun Nov 21 16:44:35 1999  Stefan Jeske  <stefan@gtk.org>
20581
20582         * gtk/gtkspinbutton.c (gtk_spin_button_button_press): Added support 
20583         for wheel mice (buttons 4 and 5).
20584
20585 1999-11-18  Tor Lillqvist  <tml@iki.fi>
20586
20587         * gdk/win32/gdkgc-win32.c (gdk_gc_predraw): Also for truecolor
20588         drawables use just the pixel field in the foreground and
20589         background GdkColor of the GdkGC.
20590
20591         gdk_gc_set_{fore,back}ground() are called in the GIMP with
20592         GdkColors containing uninitialized (red,green,blue) fields, and
20593         just the pixel field filled in, and furthermore in the
20594         visual-dependent format as returned by gdk_rgb_xpixel_from_rgb().
20595         It thus turns out that we really don't need to have the full
20596         GdkColor for fg and bg in GdkGCWin32Data after all. Will change
20597         it later to have just the pixel values.
20598
20599 Mon Nov 15 17:17:51 GMT 1999 Tony Gale  <gale@gtk.org>
20600
20601         * docs/gtkfaq.sgml: s/gtk_main_iteration/g_main_iteration/
20602
20603 Sat Nov 13 22:30:29 GMT 1999 Tony Gale  <gale@gtk.org>
20604
20605         * docs/gtkfaq.sgml: threads example from Erik Mouw.
20606         New question on GtkLabel background colors.
20607
20608         * docs/gtk_tut.sgml:
20609           - Correct the example code callback
20610             function definitions.
20611           - Update the gtkdial example code, from Frans van Schaik.
20612           - Update setselection.c to current API.
20613
20614         * examples/Makefile examples/*/*.c: Update to code
20615         listed in tutorial.
20616
20617 1999-11-10  Tor Lillqvist  <tml@iki.fi>
20618
20619         * gdk/win32/gdkfont-win32.c: Fix a couple of bugs. The Unicode
20620         subrange table (from the "Developing International Software for
20621         WIndows 95 and Windows NT" book) was missing the Hangul syllable
20622         block... Get the loaded font's charset correctly.
20623
20624         (Note that this, and the other *-win32.c files, still really are
20625         the old ones, the win32 subdirectory is not ready for compilation
20626         yet after the reorg.)
20627
20628 Wed Nov 10 17:26:49 GMT 1999 Tony Gale  <gale@gtk.org>
20629
20630         * gtk/gtkclist.c: Fix off-by-one bug in parameter
20631         check.
20632
20633 Wed Nov 10 12:12:03 1999  Owen Taylor  <otaylor@redhat.com>
20634
20635         * gdk/x11/gdkinput-{x11,xfree}.c: Call XFreeDeviceState()
20636         on results of XQueryDeviceState().
20637
20638 Mon Nov  8 16:40:43 1999  Owen Taylor  <otaylor@redhat.com>
20639
20640         * gtk/gtkwidget.c: Substitute gdkx.h => gdkprivate.h since
20641         we need to accesss only ->children. We need an accessor
20642         for the children.
20643
20644         * gtk/gtkhandlebox.c gtk/testgtk.c: Substitute G
20645         DK_ROOT_PARENT() => NULL, in call to gtk_window_get_pointer()
20646         to get rid of gdkx.h include.
20647         
20648         * gtk/gtkctree.c: Get rid of #include <gdk/gdkx.h>
20649         and random references to 'None'.
20650
20651         * gtk/gtkclist.c gtk/gtkeditable.c gtk/gtkpreview.c
20652         Get rid of unused #include <gdk/gdkx.h>
20653
20654         * gtk/gtkrc.c gtk/gtkmain.c: Get rid of #include <gdk/gdkx.h>
20655         gdkx.h is _X_ specific stuff. GDK_WINDOWING comes from
20656         gdkconfig.h.
20657
20658 1999-11-08  Tor Lillqvist  <tml@iki.fi>
20659
20660         * gdk/win32/gdkdraw.c
20661         * gdk/win32/gdkfont.c
20662         * gdk/win32/gdkgc.c: Various minor cleanups and bugfixes
20663         following yesterday's changes. (Unrelated to Owen's reorg.)
20664
20665 Mon Nov  8 16:18:25 1999  Owen Taylor  <otaylor@redhat.com>
20666
20667         * gdk/x11/gdkinput-gxi.c: Add missing include,
20668           fix GdkWindowPrivate => GdkDrawablePrivate.
20669
20670         * gdk/x11/gdkinputprivate.h: include <X11/Xlib.h>.
20671
20672         * gdk/x11/Makefile.am (xinput_sources): Add missing
20673         backslash to fix building with --with-xinput=none
20674
20675 Mon Nov  8 14:47:04 1999  Owen Taylor  <otaylor@redhat.com>
20676
20677         Move all X specific code into the x11/ directory.
20678         Aside from shuffling things around, did the following:
20679
20680        * gdk/gdkprivate.h gdk/gdk.h gdk/x11/gdkmain-x11.h: Add
20681          gdk_arg_context_* - a simple argument parsing system
20682          in the style of popt.
20683
20684        * gdk/gdkdrawable.[ch] gdk/gdkprivate.h gdk/gdkwindow.[ch]
20685          gdk/x11/gdkprivate-x11.h:
20686          Remove X specific stuff from GdkDrawable and GdkWindowPrivate - 
20687          add ->klass and ->klass_data fields. The klass_data
20688          field points to an auxilliary structure that is
20689          windowing system dependent.
20690
20691        * gdk/gdkfont.c: Make most of the measurement functions
20692          simply wrappers around gdk_text_extents().
20693
20694        * gdk/gdkfont.c gdk/gdkprivate.h gdk/x11/gdkfont-x11.c: Add a 
20695          _gdk_font_strlen() function that hides the weird
20696          behavior in gtk+-1.[02] where a string is interpreted
20697          differently for 8-bit and 16-bit fonts.
20698
20699        * gdk/gdkevents.c: Add a new function gdk_event_button_generate()
20700          to store common code for synthesizing double/triple
20701          press events.
20702         
20703        * gdk/gdkgc.[ch]: Virtualize in the same way as gdkdrawable.h.
20704          Make all the function that modify an existing GC
20705          simply wrappers around gdk_gc_set_values().
20706          
20707        * gdk/gdkcc.[ch]: Moved into x11/ directory in preparation
20708          for throwing out later.
20709
20710        * gdk/gdkfont.c gdk/gdkimage.c gdk/gdkcolor.c: Change GdkFontPrivate,
20711          GdkImagePrivate and GdkColormapPrivate to have a
20712          windowing system dependent part (GdkFontPrivateX etc.)
20713          that "derives" from the system-independent part.
20714
20715        * configure.in gdk/x11/Makefile.in gdk/x11/gdkinput*.c:
20716          Got rid of the included-source-files for XInput in
20717          favor of automake conditionals. (Which didn't exist
20718          when XInput support was originally added.)
20719
20720        * gdk/gdkrgb.c: Remove the visual id from the debugging
20721          statements since that is X11 specific; print out
20722          type/depth info instead.
20723          
20724
20725 Wed Nov  3 18:14:49 1999  Owen Taylor  <otaylor@redhat.com>
20726
20727         * gdk/x11/gdkfont-x11.c (gdk_font_load): Ref fonts when
20728         loading duplicates of hashed fonts.
20729
20730         * gdk/gdk.c (gdk_keysym_convert_case): rename
20731         gdk_XConvertCase to gdk_keysym_convert_case, allow
20732         results to be NULL in the GTK+ style.
20733
20734         * gdk/gdkcompat.h: Started compatibility header
20735         for renames.
20736
20737 1999-11-07  Tor Lillqvist  <tml@iki.fi>
20738
20739         * gdk/win32/gdkprivate.h: New font private structures, related to
20740         fontsets.
20741
20742         * gdk/win32/gdkfont.c: New functions gdk_font_list_new() and
20743         gdk_font_list_free(). On X11, will just be wrappers to
20744         XListFonts() and XFreeFontNames(). On Win32, the code previously
20745         in gtkfontsel.c is now here.
20746
20747         New function gdk_font_xlfd_create(). On X11 will get the FONT
20748         property of the font (for GDK_FONT_FONTs), or call
20749         XBaseFontNameListOfFontSet (for GDK_FONT_FONTSETs), on Win32
20750         builds a XLFD style name from the font information in the LOGFONT
20751         struct(s).
20752
20753         New function gdk_font_xlfd_free(), which correspondingly frees the
20754         string returned by gdk_font_xlfd_create().
20755
20756         Implement fontsets on Win32. Add a function that iterates over a
20757         wide char string and calls a callback function for each substring
20758         of wide chars from the same Unicode subrange (and thus probably
20759         available in the same real font).
20760
20761         Improve the XLFD emulation a bit.
20762
20763         * gdk/win32/gdkim.c (gdk_nmbstowchar_ts): Small bugfix.
20764
20765         * gdk/win32/gdkevents.c: Workaround for suspected bug on Win2k
20766         Beta3, WM_IME_CHAR messages don't seem to contain the composed
20767         multi-byte char as with the Active IMM on Win9x. Oh well, handle
20768         WM_IME_COMPOSITION with GCS_RESULTSTR instead, use
20769         ImmGetCompositionStringW() to get the composed Unicode chars.
20770
20771         * gdk/win32/gdkgc.c
20772         * gdk/win32/gdkdraw.c: Changes needed because of the font private
20773         struct changes.
20774
20775         * gdk/win32/gdk.def: Add the new functions.
20776
20777 1999-11-04  Tor Lillqvist  <tml@iki.fi>
20778
20779         * config.h.win32: Don't define HAVE_DIMM_H if MSC, as you have to
20780         get the Platform SDK to get <dimm.h>.
20781
20782         * gdk/win32/gdkevents.c: More event handling fixes and
20783         simplification. Never generate motion events with is_hint true. We
20784         used to do that on bogus grounds earlier. Windows sends
20785         WM_MOUSEMOVE messages on button events even if the mouse hasn't
20786         moved, ignore these.
20787
20788         * gdk/win32/gdkfont.c: Load all fonts as (pretended) fontsets.
20789
20790         * gdk/win32/gdkglobals.c
20791         * gdk/win32/gdkprivate.h: Define a typedef for the pointer to
20792         the TrackMouseEvent function, and use it.
20793
20794         * gdk/win32/gdkwindow.c: Terminate widechar string with a zero
20795         char before calling WideCharToMultiByte in order to get a string
20796         for the window title.
20797
20798         * gdk/win32/gdkdnd.c: Some more random hacking, ifdeffed out.
20799
20800         * gdk/win32/gdk.def: Remove obsolete functions.
20801
20802         * gdk/win32/makefile.{cygwin,msc}: Remove gdkcompat.{o,obj}. Add
20803         /nodefaultlib and /defaultlib switches.
20804
20805         * gtk/gtkrc.c: s/gwin_getlocale/g_win32_getlocale/.
20806
20807 1999-10-31  Tor Lillqvist  <tml@iki.fi>
20808
20809         * gdk/gdkkeysyms.h: Add new keysyms from X11R6.4 (including
20810         EuroSign).
20811
20812         * gdk/gdktypes.h: Add note about wchar_t not necessarily being the
20813         same type as GdkWChar, especially on Win32.
20814
20815         * gdk/win32/*.c: Change gdk_root_parent to be a pointer.
20816
20817         * gdk/win32/*.c: Assume all strings are UTF-8. Convert to Unicode
20818         before passing to Windows GDI for drawing etc. Convert to the
20819         system default codepage before passing to Windows as window
20820         titles.
20821
20822         * gdk/win32/gdkprivate.h: Add more fields to GdkWindowPrivate to
20823         support changing input locale on the fly.
20824
20825         * gdk/win32/gdkevent.c: Support input language (keyboard locale)
20826         on-the-fly changes. Convert incoming characters from the current
20827         codepage to Unicode (and then to a UTF-8 multi-byte string) based
20828         on the current input language. Use keysym<->Unicode mapping tables
20829         and functions borrowed from xterm sources.
20830
20831         Support IMEs (Input Method Editors) for CJK languages. On non-CJK
20832         editions of Win9x, use the ActiveX-based Active IMM (Input Method
20833         Manager) if available. IMEs and the Active IMM are available under
20834         the disguise of Chinese, Korean and Japanese support for IE and
20835         Outlook Express from "Windows Update" for Win98. On Win2k, the CJK
20836         support is present in all editions (as long as you install it).
20837
20838         Call DispatchMessage from gdk_events_queue() (and thus
20839         gdk_WindowProc()), instead of duplicating the code in
20840         gdk_WindowProc().
20841
20842         Reworked the grab handling and propagation code, factored out
20843         duplicated code snippets into separate functions. Other cleanups,
20844         too.
20845
20846         * gdk/win32/surrogate-dimm.h: Provide just the bits we need from
20847         the <dimm.h> header describing the Active IMM.
20848
20849         * gdk/win32/gdkfont.c: Pretend to support fontsets, but so far
20850         just do the same as for "single" fonts.
20851
20852         * gdk/win32/gdk.c: Call CoInitialize() (COM initialisation) from
20853         gdk_init_check, and CoUninitialize() from gdk_exit_func. Handle
20854         the new keysyms from gdkkeysyms.h.
20855
20856         * gtk/gtkfontsel.c (Win32): Load the font for the preview as a
20857         fontset, so that gtkentry uses wide characters.
20858
20859         * gtk/gtkrc.c (Win32): Get the locale with gwin_getlocale(). Call
20860         GTk+'s system directory "gtk+", not "gtk".
20861
20862 Sat Oct 30 13:17:18 BST 1999 Tony Gale <gale@gtk.org>
20863
20864         * docs/gtkfaq.sgml: FAQ update
20865
20866 1999-10-21  Tor Lillqvist  <tml@iki.fi>
20867
20868         * gdk/win32/gdkprivate.h: Add more font private data.
20869
20870         * gdk/win32/gdkfont.c
20871         * gdk/win32/gdkdraw.c: Revamped handling of multi-byte charset
20872         fonts and strings. Now works much better. You still have to
20873         have a correct font selected, though. No fontset emulation yet.
20874
20875 1999-10-19  Tor Lillqvist  <tml@iki.fi>
20876
20877         * gtk/maketypes.awk: Use G_OS_WIN32.
20878
20879         * gtk/gtk.def: Add some missing entry points. Also some non-public
20880         ones, but PyGTK porter claims to need them.
20881
20882         * gtk/makefile.{cygwin,msc}: Drop some unneeded headers from the
20883         built-in type generation.
20884
20885 1999-10-14  Tor Lillqvist  <tml@iki.fi>
20886
20887         * gdk/win32/gdkdraw.c (gdk_draw_text_wc): Don't use TextOutW for
20888         GDK_FONT_FONT fonts (which is all we have for now, we don't
20889         emulate fontsets). The X11 version uses plain XDrawString in that
20890         case, too. The string passed to gdk_draw_text_wc seems to be in
20891         fact (at least, when used by gtkentry and gtktext) either in a
20892         single-byte charset, or a DBCS. Not Unicode.
20893
20894         This fixes the problem in gtkfontsel, where even if you had
20895         selected a font with a non-Latin1 charset (windows-greek, for
20896         instance), the preview still used Latin-1 glyphs.
20897
20898         * gdk/win32/gdkfont.c (gdk_text_width_wc): Similar change. Don't
20899         use GetTextExtentPoint32W, use GetTextExtentPoint32A.
20900         (gdk_font_load): Recognize the demibold etc weights, even if we
20901         don't have the corresponding constants in the headers.
20902         (gdk_font_hash_insert): Use same hash mechanism as in the X11
20903         version. Should save font resources a bit, when we don't have
20904         multiple HFONTs for the same font.
20905
20906         * gdk/win32/gdkprivate.h: Add the names field as in the X11
20907         version.
20908
20909 1999-10-11  ERDI Gergo  <cactus@cactus.rulez.org>
20910
20911         * gdk/gdk.c (gdk_beep): Modified the XBell call to use the default
20912         X values
20913
20914 1999-10-09  ERDI Gergo  <cactus@cactus.rulez.org>
20915
20916         * gtk/gtktoolbar.h, gtk/gtktoolbar.c: Added horizontal icon/text
20917         layout support (as mentioned on
20918         http://www.jcinteractive.com/gnome-ui/software/widgets/)
20919
20920 Wed Oct  6 12:46:17 PDT 1999 Manish Singh <yosh@gimp.org>
20921
20922         * gtk/fnmatch.c
20923         * gtk/gtkfilesel.c: s/G_HAVE_CYGWIN/G_WITH_CYGWIN/
20924
20925 1999-10-05  Jesus Bravo Alvarez  <jba@pobox.com>
20926
20927         * configure.in (ALL_LINGUAS): Added Galician (gl)
20928
20929 1999-10-05  Tor Lillqvist  <tml@iki.fi>
20930
20931         * gdk/win32/*.[ch]: Corresponding changes as in X11 backend.
20932
20933         * gdk/win32/gdkcompat.c: New file, actually provide an
20934         implementation for the deprecated functions. (Just temporarily.)
20935
20936         * gtk/gtkfilesel.c: Fix an #ifdef syntax botch.
20937
20938         * gtk/makefile.{cygwin,msc}: Update gdk_headers.
20939
20940         * gdk/win32/gdk.def gtk/gtk.def: Updates.
20941
20942 1999-10-05  Kjartan Maraas  <kmaraas@online.no>
20943
20944         * configure.in: Added "uk" to ALL_LINGUAS.
20945         
20946 Mon Oct  4 11:57:11 PDT 1999 Manish Singh <yosh@gimp.org>
20947
20948         * configure.in: correct checking for BeOS check
20949
20950         * gdk/gdktypes.h
20951         * gtk/fnmatch.c
20952         * gtk/gtkfilesel.c
20953         * gtk/gtkitemfactory.c
20954         * gtk/gtkmain.[ch]
20955         * gtk/gtkrc.c: use G_OS_WIN32 and G_HAVE_CYGWIN #defines
20956
20957 Mon Oct  4 16:16:53 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
20958
20959         * gtk/gtkrc.{bg,iso88591[345]}: add gtkrc files for some new charset
20960         encodings: iso-8859-13 (for Lithuanian), iso-8859-14 (used by celtic
20961         languages), iso-8859-15 (used in Estonia) and microsoft-cp1251 (used
20962         by Bulgarian). 
20963
20964 Sun Oct  3 18:13:44 1999  Owen Taylor  <otaylor@redhat.com>
20965
20966         * gtk/gtkwidget.c (gtk_reset_shapes_recurse): 
20967         Fix a reference to window_private->destroyed.   
20968
20969         * gtk/gtkplug.c (gtk_plug_realize): Fix up a direct
20970         (ugly) setting of an internal GdkWindow member to use
20971         a _slightly_ cleaner macro.
20972
20973         * gdk/gdkprivate.h: Split GdkWindowPrivate into
20974         GdkDrawablePrivate and GdkWindowPrivate.
20975         Add extra macros for accessing GDK_DRAWABLE_ components.
20976
20977         * *.[ch]: Massive adjustments for the above, use the
20978         new macros in a lot of places.
20979
20980 Sun Oct  3 15:16:24 1999  Owen Taylor  <otaylor@redhat.com>
20981
20982         * gdk/gdktypes.h: Make GdkDrawable the base type,
20983         not GdkWindow.
20984
20985 Sun Oct  3 15:08:44 1999  Owen Taylor  <otaylor@redhat.com>
20986
20987         * gdk/gdkdraw.c (gdk_drawable_get_data): Added new function.
20988
20989 Sun Oct  3 14:26:15 1999  Owen Taylor  <otaylor@redhat.com>
20990
20991         * gdk/gxid* gdk/x11/gxid*: Move files into x11 subdirectory.
20992
20993 Sun Oct  3 14:16:23 1999  Owen Taylor  <otaylor@redhat.com>
20994
20995         * gdk/gdkdrawable.h: Include gdk/gdkdrawable.h with
20996         gdk/ prefix. (Pointed out by chak@is.tsukuba.ac.jp)
20997
20998         * configure.in gdk/Makefile.am x11/: create x-specific subdirectory.
20999
21000         * docs/gtk-config.1: Now autogenerated.
21001         * docs/Changes-1.4.txt: started
21002         
21003 1999-10-03  Tor Lillqvist  <tml@iki.fi>
21004
21005         * gdk/gdkimage.h gdk/gdkpixmap.h: Change GDK_WINDOWING_WIN32 usage
21006         to #ifdef also here.
21007
21008         * gdk/win32/*.h gdk/win32/*.c: Make corresponding changes as those
21009         Owen did to the X11 backend.
21010
21011         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Fix it again, don't use
21012         ScrollWindowEx when blitting inside a window, it can't be correct
21013         in the general case.
21014
21015         * gdk/win32/gdkevents.c: Don't handle WM_SIZING, handling
21016         WM_GETMINMAXINFO is easier.
21017
21018         * gdk/win32/gdkimage.c (gdk_image_new): Create new image with
21019         depth equal to the bitspixel value, not the visual's depth.
21020
21021         * gdk/win32/gdkvisual.c (gdk_visual_init): Set the visual's depth
21022         to 24 even if the bitspixel value is 32.
21023
21024         * gdk/gdkrgb.c (gdk_rgb_select_conv): After the above change, no
21025         need to check for depth==32 when bpp==32, depth will always be 24.
21026
21027 Fri Oct  1 18:03:36 1999  Owen Taylor  <otaylor@redhat.com>
21028
21029         * docs/Changes-1.4.txt: Started
21030         
21031         * gtk/Makefile.am (gdk_headers): Include all the new headers.
21032
21033         * gdk/*.h gdk/*.c: Split gdk.h into lots of itty-bitty little pieces.
21034         
21035         * gdk/gdkprivate.h gdk/gdkcc.c: Moved GdkColorContext private
21036         into C file.
21037         
21038         * gdkinput.h gdkinputprivate.h - renamed the internal gdkinput
21039         header to gdkinputprivate.h.
21040
21041         * gdk/gdk.h gdk/gdk.c: Removed gdk_time* functions which have been
21042         unused since before 1.2.
21043
21044 1999-09-30  Tor Lillqvist  <tml@iki.fi>
21045
21046         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): On Win32,
21047         expand possible hex escapes in the font family (put there by
21048         logfont_to_xlfd if the font name isn't a legal XLFD font family,
21049         mainly if it contains slashes). (gtk_font_selection_create_xlfd):
21050         On Win32, add hex escapes here, too.
21051
21052 Wed Sep 29 19:55:35 1999  Owen Taylor  <otaylor@redhat.com>
21053
21054         * */*.[ch]: Changed from #if GDK_WINDOWING == GDK_WINDOWING_X11
21055         to #ifdef GDK_WINDOWING_X11.
21056
21057 [ Merges from gtk-1-2 ]
21058
21059 Wed Sep  8 07:13:29 1999  Tim Janik  <timj@gtk.org>
21060
21061         * configure.in: fixed "GNU Make" check to pass with new make version
21062         3.77.95.
21063
21064 Fri Sep  3 16:04:41 1999  Tim Janik  <timj@gtk.org>
21065
21066         * gtk-config.in (--version): don't echo @GTK_VERSION@, but
21067         @GTK_MAJOR_VERSION@.@GTK_MINOR_VERSION@.@GTK_MICRO_VERSION@, so the
21068         AM_PATH_GTK() macros don't get confused by the -pre1.
21069
21070 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
21071
21072         * configure.in (REBUILD): Change check for perl5
21073           to check explicitely for v >= 5.002. (5.001
21074           does not work with our scripts.)
21075
21076 Wed Aug 25 15:45:46 1999  Tim Janik  <timj@gtk.org>
21077
21078         * configure.in: evaluate $PERL for the perl version check. added
21079         --disable-rebuilds to give the user an option to completely disable
21080         any source autogeneration rules.
21081
21082 Mon Aug 23 23:16:14 1999  Tim Janik  <timj@gtk.org>
21083
21084         * configure.in: evaluate $ac_make when checking for GNU Make.
21085
21086 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
21087
21088         * docs/Makefile.am: added generation.txt.
21089
21090         * Makefile.am: require automake 1.4, build README from README.in and
21091         INSTALL from INSTALL.in in dist-hook.
21092         
21093         * README.in:
21094         * INSTALL.in: new files to autogenerate README and INSTALL from.
21095
21096         * configure.in: figure whether we have GNU Make
21097
21098         * docs/generation.txt: minor additions/corrections.
21099
21100 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21101
21102         * docs/gtkfaq.sgml: FAQ Update
21103
21104 July 30, 1999 Elliot Lee <sopwith@redhat.com>
21105         
21106         * configure.in: Fix autoconf warnings about cross compilation by
21107         trying to provide sane defaults for AC_TRY_RUN.
21108
21109 Fri Jul 16 22:20:21 PDT 1999 Manish Singh <yosh@gimp.org>
21110
21111         * ltconfig
21112         * ltmain.sh: upgrade to libtool 1.3.3
21113
21114 Thu Jul  8 11:30:18 1999  Owen Taylor  <otaylor@redhat.com>
21115
21116         * INSTALL: Indicate that the --with-glib= configure
21117         time flag is unsupported.
21118
21119 Mon Jul  5 20:36:03 1999  Owen Taylor  <otaylor@redhat.com>
21120
21121         * docs/generation.txt: Added a file that gives
21122         documenation about the autogeneration process for
21123         various autogenerated files.
21124         
21125 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
21126
21127         * configure.in (LIBS): Look for libgmodule in the
21128         right location.
21129
21130 Thu Jun 17 13:57:31 1999  Owen Taylor  <otaylor@redhat.com>
21131
21132         * docs/gtk_tut.sgml: Removed references to
21133         code examples in my directory on gtk.org as
21134         they should all be in the tutorial now.
21135
21136         * docs/gtk_tut.sgml: Added sources for dial-test
21137         and scribble-xinput programs that were previously
21138         missing.
21139
21140 Fri Jun  4 00:08:59 1999  Owen Taylor  <otaylor@redhat.com>
21141
21142         * TODO: Added entry about menu keyboard navigation, removed
21143         some finished items.
21144
21145 Mon May 31 00:11:24 1999  Owen Taylor  <otaylor@redhat.com>
21146
21147         * acinclude.m4: Standardize on func_dgettext
21148         not func_gettext, so that the checks for dgettext
21149         actually are paid attention to.
21150
21151 Wed May  5 10:47:54 1999  Owen Taylor  <otaylor@redhat.com>
21152
21153         * configure.in (LIBS): Add $INTLLIBS into $LIBS
21154         directly, rather than repeating the checks for
21155         gettext.
21156
21157         * INSTALL: Added information about gettext and
21158         NLS support.
21159
21160         * acinclude.m4 (LIBM): Check for dgettext, not
21161         just gettext. This should hopefully fix things wrt
21162         systems with old versions of GNU gettext installed.
21163
21164 Tue Jun 29 15:59:25 1999  Owen Taylor  <otaylor@redhat.com>
21165
21166         * configure.in (LIBS): Look for libgmodule in the
21167         right location.
21168
21169 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
21170
21171         * autogen.sh: add --enable-maintainer-mode
21172
21173         * configure.in: set ACLOCAL="$ACLOCAL $ACLOCAL_FLAGS"
21174
21175 Wed Mar 24 23:03:49 CST 1999 Shawn T. Amundson <amundson@gtk.org>
21176
21177         * docs/gtk-config.1.in:
21178           docs/Makefile.am:
21179           configure.in: gtk-config is now generated.
21180
21181         * docs/gtk-config.1: Removed, now generated.
21182
21183 Thu Sep 23 17:59:59 1999  Tim Janik  <timj@gtk.org>
21184
21185         * gdk/gdkevents.c (gdk_event_translate): grr, even if Gdk doesn't
21186         handle CreateNotify itself, still put out a debuging message for
21187         --gdk-debug=events. made the ReparentNotify debugging message more
21188         verbose.
21189         wrap xcoords translation for ConfigureEvents into an error trap,
21190         a destroy event may already be pending, and in that case, the
21191         actuall coordinate values are not at all critical.
21192
21193 Sat Sep 18 22:24:15 1999  Owen Taylor  <otaylor@redhat.com>
21194
21195         * gdk/gdkcc.c: Stop leaking the color_hash all over
21196         the place. Simplify and improve the logic.
21197
21198 Fri Sep 17 09:57:15 1999  Tim Janik  <timj@gtk.org>
21199
21200         * gdk/gdk.h, gdk/gdkcolor.c: make return types (gint or gboolean)
21201         for prototypes and function implementations consistent (reported
21202         by Tomas Ogren).
21203
21204 Tue Sep 14 18:23:01 1999  Tim Janik  <timj@gtk.org>
21205
21206         * gdk/gdkevents.c (gdk_event_translate): tell if expose events have
21207         send_event set in debugging output.
21208         (gdk_compress_exposures): default initialize the event so we don't
21209         operate on bogus values (namely send_event).
21210
21211 Thu Sep  2 16:33:59 1999  Owen Taylor  <otaylor@redhat.com>
21212
21213         * gdk/gdkwindow.c: When we receive an unexpected
21214         destroy notify on one of our windows, don't just
21215         warn about it, also mark our windows as destroyed.
21216
21217 Sun Sep  5 08:10:53 1999  Owen Taylor  <otaylor@redhat.com>
21218
21219         * gdk/gdkfont.c (gdk_font_hash_insert): Add
21220           name => font and name => fontset hashes. The 
21221           name => fontset hash is a _big_ win since we
21222           weren't previously caching fontsets at all and loading
21223           fontsets is expensive. The name => font hash
21224           is less of a win, but it does save us from doing
21225           repeated XQueryFont calls on the same font.
21226
21227         * gdk/gdkprivate.h (struct _GdkFontPrivate): Add a names
21228           list so we can remove font/fontset from hash.
21229
21230 Thu Sep  2 19:02:37 1999  Owen Taylor  <otaylor@redhat.com>
21231
21232         * gdk/gdkproperty.c (gdk_atom_intern): Remove useless
21233           and slightly confusing test. [ XInternAtom (,,TRUE)
21234           will never return None ].
21235
21236 Sat Sep  4 08:39:26 1999  Owen Taylor  <otaylor@redhat.com>
21237
21238         * gdk/gdkwindow.c (gdk_window_set_geometry_hints)
21239           gdk/gdkwindow.c (gdk_window_set_hints):
21240
21241         Don't omit setting the properties if flags == 0 -
21242         there may be an existing set of properties there
21243         already. (Very old bug. Would it be better to
21244         delete the property instead?)
21245
21246         * gdk/gdkselection.c (gdk_selection_property_get): Fix 
21247           spelling error in comment.
21248
21249 Wed Sep  1 14:05:30 1999  Owen Taylor  <otaylor@redhat.com>
21250
21251         * gdk/gdkimage.c (gdk_image_new): Use gdk_error_trap_push()
21252           to avoid stomping over gdk_error_warnings.
21253
21254         * gdk/gdkimage.c (gdk_image_new): compute image->bpp
21255           as (bits_per_pixel + 7) / 8. This gives the same
21256           result as before for multiples of 8, but actually
21257           a "reasonable" value for 1bit or 4bit displays.
21258
21259 Mon Aug 23 19:11:17 1999  Tim Janik  <timj@gtk.org>
21260
21261         * gdk/Makefile.am: minor cleanups, strip spaces on build rules for
21262         GNU Make.
21263
21264 Tue Aug 17 07:43:04 1999  Tim Janik  <timj@gtk.org>
21265
21266         * gdk/gdkevents.c (gdk_event_translate): give a debugging note when
21267         discarding configure events.
21268
21269 1999-08-18  Federico Mena Quintero  <federico@redhat.com>
21270
21271         * gdk/gdkpixmap.c (gdk_pixmap_unref): g_return_if_fail() the
21272         refcount is greater than zero.
21273
21274         * gdk/gdkwindow.c (gdk_window_unref): Likewise.
21275
21276         * gdk/gdkfont.c (gdk_font_unref): Likewise.
21277
21278         * gdk/gdkgc.c (gdk_gc_unref): Likewise.
21279
21280         * gdk/gdkdnd.c (gdk_drag_context_unref): Likewise.
21281
21282 Wed Aug 11 01:04:57 1999  Owen Taylor  <otaylor@redhat.com>
21283
21284         * gdk/gdkproperty.c (gdk_property_get): Fix assumption
21285         that format 32 => sizeof(item) == 4. It really is
21286         sizeof(long).
21287
21288 Tue Jun 29 23:02:42 1999  Owen Taylor  <otaylor@redhat.com>
21289
21290         * gdk/gdk.c (gdk_x_error / gdk_x_io_error): Don't
21291         core dump at all on X IO errors, only core dump
21292         if --enable-debug for X errors.
21293
21294 Thu Jun 24 17:06:23 1999  Tim Janik  <timj@gtk.org>
21295
21296         * gdk/gdkevents.c (gdk_event_translate): removed old ""Got event for
21297         unknown window:" message. disabled ConfigureNotify discarding code,
21298         because it led to events being processed out of order.
21299
21300 Thu Jun 24 12:22:02 1999  Tim Janik  <timj@gtk.org>
21301
21302         * gdk/gdkglobals.c: preinitialize gdk_error_code to 0.
21303
21304         * gdk/gdkevents.c (gdk_event_send_client_message_to_all_recurse): since
21305         we export this function, supress error warnings and don't reset the
21306         error code in the first half of this function.
21307
21308         * gdk/gdk.c (gdk_x_error): set gdk_error_code to the actuall X error
21309         code (instead of just -1) so gdk_error_trap_pop() reveals something
21310         actually informative about the error that happened.
21311
21312         * gdk/*.c:
21313         don't rely on gdk_error_code being -1 if an error occoured, but just
21314         gdk_error_code != 0.
21315
21316 Thu Jun 24 11:50:07 1999  Tim Janik  <timj@gtk.org>
21317
21318         * gdk/gdkevents.c (gdk_event_apply_filters): advance the filter list
21319         pointer *before* invoking the filter function, so we at least don't
21320         crash if a filter is removed that is currently executed. window filters
21321         *really* need to be made truely reentrant at some point.
21322
21323 Mon Jun 14 11:10:15 1999  Tim Janik  <timj@gtk.org>
21324
21325         * gdk/gdkevents.c (gdk_event_translate): print the atom name in the
21326         PropertyNotify debug messages.
21327
21328 Wed May  5 22:51:06 1999  Owen Taylor  <otaylor@redhat.com>
21329         
21330         Patch from Sung-Hyun Nam <namsh@lgic.co.kr>
21331         
21332         * gdk/gdkim.c: Fix cut-and-paste errors for 
21333         x/y and PreeditAttributes/StatusAttributes.
21334
21335 Wed May  5 22:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21336
21337         * gdk/gdkwindow.c (gdk_window_set_geometry_hints): Change
21338         G_MAXINT to 2^16 to alleviate overflow problems in
21339         various window managers.
21340
21341 Wed Apr 21 00:42:08 1999  Owen Taylor  <otaylor@redhat.com>
21342
21343         * gdk/gdkfont.c (gdk_text_measure): Fix the return value
21344         for fontsets.
21345
21346 Wed May  5 12:42:01 1999  Owen Taylor  <otaylor@redhat.com>
21347
21348         * gdk/gdkwindow.c (gdk_window_set_geometry_hints):
21349         Initialize size_hints.x and size_hints.y because kwm
21350         brokenly pays attention to them.
21351         (Bug #1181 -  Lars Heete <hel@admin.de>)
21352
21353 Wed May  5 11:38:56 1999  Owen Taylor  <otaylor@redhat.com>
21354
21355         * gdk/gdkrgb.c (gdk_rgb_choose_visual): Free the 
21356         return value of gdk_list_visuals(). 
21357         (Bug #1193 - Morten Welinder <terra@diku.dk>)
21358
21359 Tue May  4 11:12:56 PDT 1999 Manish Singh <yosh@gimp.org>
21360
21361         * gdk/gdkim.c (gdk_im_real_open): cast the return value of
21362         XSetIMValues to (void *) when comparing to NULL, to workaround
21363         the problem of some compilers barfing since older X headers don't
21364         have the prototype for it.
21365
21366 Mon Apr 19 10:11:12 1999  Owen Taylor  <otaylor@redhat.com>
21367
21368         * gdk/gdkcolor.c (gdk_colormap_new): Fix memory leak
21369         for pseudocolor where colormap->colors was double
21370         allocated.
21371
21372         * gdk/gdkcolor.c (gdk_colormap_alloc1): Store the
21373         color value in the hash table with the pixel filled
21374         in so when we do later hash table lookups, the color
21375         value is correct.
21376         
21377 Sun May  2 15:29:45 PDT 1999 Manish Singh <yosh@gimp.org>
21378
21379         * gdk/gdkdraw.c (gdk_draw_lines): check private->destroyed before
21380         making the call
21381
21382 Tue Apr 27 11:17:35 1999  Owen Taylor  <otaylor@redhat.com>
21383
21384         * gdk/gdkdnd.c (xdnd_set_{targets,actions}): Fix leak
21385         pointed out by Morten Welinder <terra@diku.dk>.
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 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21393
21394         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21395           default filter from the list
21396
21397 Fri Apr 16 20:41:43 PDT 1999 Manish Singh <yosh@gimp.org>
21398
21399         * gdk/gdk.c: #include "gdkkeysyms.h" for gdk_XConvertCase #defines
21400
21401         * gtk/gtkfontsel.c (gtk_font_selection_create_xlfd): use
21402         g_strdup_printf instead of calcing the length separately
21403
21404 Tue Apr 13 02:49:33 1999  Owen Taylor  <otaylor@redhat.com>
21405
21406         * gdk/gdkwindow.c: removed some silly #ifdef HAVE_CONFIG
21407         that we don't do in many other places. (Fixing duplicate 
21408         #include of config.h)
21409
21410         * gdk/gdkevents.c: include gdkinput.h _after_ config.h.
21411         Otherwise, #ifndef XINPUT_NONE check in the latter
21412         doesn't work. (Bug #546)
21413
21414 Sun Apr 11 14:38:03 1999  Tim Janik  <timj@gtk.org>
21415
21416         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): check for color
21417         "None" case insensitive.
21418
21419 Tue Apr  6 16:38:51 1999  Owen Taylor  <otaylor@redhat.com>
21420
21421         * gdk/gdkselection.c: 
21422         Add error traps so if the other end of the connection
21423         dies, we survive.
21424
21425 Tue Apr  6 12:24:21 1999  Owen Taylor  <otaylor@redhat.com>
21426
21427         * gdk/gdkdnd.c (gdk_drag_motion): Separate out the
21428         dest_xid field into two fields - one for the window
21429         to send in messages, one to indicate the last looked
21430         up window for caching purposes. This is needed, so
21431         that Leave messages get the correct window.
21432
21433 Mon Apr  5 13:21:30 1999  Owen Taylor  <otaylor@redhat.com>
21434
21435         * gdk/gdkevents.c (gdk_event_check, gdk_event_prepare):
21436         Fix warning created by people mucking around
21437         with the gsource API.
21438
21439         * gdk/gdkevents.c (gdk_io_invoke, gdk_input_add_full):
21440         Change mapping between GIOCondition and GdkInputCondition
21441         to match the way the Linux kernel does it. This should
21442         fix problems where closed pipes were no longer signalling
21443         GDK_INPUT_READ on systems with a native poll().
21444
21445 Mon Apr  5 17:11:57 1999  Owen Taylor  <otaylor@redhat.com>
21446
21447         * gdk/gdkpixmap.c (_gdk_pixmap_create_from_xpm): Check 
21448         explicitly for the string "None" - it is in the XPM
21449         spec and some servers treat unknown colors in odd ways
21450         (like asking the user!)
21451
21452 Thu Apr  1 16:58:10 PST 1999 Manish Singh <yosh@gimp.org>
21453
21454         * gdk/gdkevents.c: made "->" into a "." of previous change so
21455         it compiles
21456
21457 Thu Apr  1 18:41:25 1999  Owen Taylor  <otaylor@redhat.com>
21458
21459         * gdk/gdkevents.c (gdk_compress_exposures): Set the
21460         window field of the event structure before calling
21461         user filters.
21462
21463 1999-03-31  Federico Mena Quintero  <federico@nuclecu.unam.mx>
21464
21465         * gdk/gdk.c (gdk_init_check): Use False as the last argument to
21466         XInternAtom() here.  This is a particularly Old And Nasty(tm) bug.
21467
21468 Mon Mar 29 17:31:52 1999  Owen Taylor  <otaylor@redhat.com>
21469
21470         * gdk/gdkim.c (gdk_mbstowcs): Free the value of the
21471         intermediate text property - prevents major memory
21472         leak when gdk_use_mb.
21473         gtk-d3august-990311-0: Bj|rn Augustsson <d3august@dtek.chalmers.se>
21474
21475 Mon Mar 29 17:02:58 1999  Owen Taylor  <otaylor@redhat.com>
21476
21477         Patches from Akira Higuchi <a-higuti@math.sci.hokudai.ac.jp>
21478         gtk-a-higuti-990322-[0-3]
21479
21480         * gdk/gdkfont.c (gdk_text_extents_wc): Make  work when
21481         sizeof(wchar_t) != sizeof (GdkWChar)
21482
21483         * configure.in: Fix confusion between GTK_LOCALE_[C]FLAGS
21484         that was causing -DX_LOCALE not to work.
21485
21486         * gtk/gtkrc.c (gtk_rc_init):
21487         X_LOCALE will never have LC_MESSAGES defined
21488
21489         * gdk/gdk.c (gdk_init_check):
21490         Remove --xim-preedit and --xim-status from argv properly.
21491
21492         * gdk/gdkim.c (gdk_ic_real_new): Add a gdk_flush() so
21493         that the client window is present on the X server
21494         before we pass it to the input method.
21495
21496 Tue Mar  9 10:46:49 1999  Owen Taylor  <otaylor@redhat.com>
21497
21498         * gdk/gdkdnd.c (motif_find_drag_window): Fix bug where
21499         if --display is specified on the command line, than
21500         the drag window will not be created on that display.
21501         
21502 Tue Mar  9 10:38:24 1999  Owen Taylor  <otaylor@redhat.com>
21503
21504         * gdk/gdkproperty.c (gdk_atom_intern): Fixed bug where
21505         lookups with only_if_exists == TRUE were inserting
21506         bogus values into the atom cache.
21507
21508 Wed Mar 17 09:00:00 1999  Tim Janik  <timj@gtk.org>
21509
21510         * gdk/gdkselection.c (gdk_selection_property_get): first XFree(t),
21511         then reset it to NULL.
21512
21513         * gdk/gdkcolor.c:
21514         (gdk_colors_free): 
21515         (gdk_colormap_free_colors): use colormap->colors[in_pixels[i]] as the
21516         key for g_hash_table_remove() in both functions, this prevents us
21517         from accessing possibly uninitialized portions of a GdkColor structure
21518         where we are only interested in its pixel value.
21519
21520 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
21521
21522         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
21523         font hash table, if we have a GdkFontPrivate entry for this font
21524         already, simply increment its reference count, provided by Olaf Dietsche
21525         <olaf.dietsche+list.gtk@netcologne.de>.
21526
21527 1999-09-21  Tor Lillqvist  <tml@iki.fi>
21528
21529         * gdk/win32/gdk.c (gdk_exit_func): Delete the gdk_DC when exiting,
21530         just to be sure.
21531
21532         * gdk/win32/gdkvisual.c (gdk_visual_init): Remove a couple of
21533         unused variables, leftovers from the X11 version.
21534
21535         * gdk/win32/rc/*.cur: Better cursors provided by Bernd Herd.
21536
21537         * gtk/gtkfontsel.c (gtk_font_selection_get_xlfd_field): Only
21538         downcase fields on X11.
21539
21540 Mon Sep 20 13:17:39 1999  Pablo Saratxaga <pablo@mandrakesoft.com>
21541         
21542         * configure.in,po/pt_BR.po: added Portuguese Brazilian file from
21543         Alex Sandro Queiroz e Silva <asandro@lcg.dc.ufc.br>
21544
21545 1999-09-17  Tor Lillqvist  <tml@iki.fi>
21546
21547         * gdk/win32/gdk.def: Add gdk_threads_mutex.
21548
21549         * gtk/makefile.msc: Correct path to libintl.
21550
21551         Thanks to Tomi Ollila and Bernd Herd: Fix some inconsistencies in
21552         use of gint vs. int, and gint vs. gboolean in headers and
21553         definitions. Use GtkType for the *_get_type functions. Note that
21554         these changes preserve binary compatibility.
21555
21556         * gdk/gdk.c
21557         * gdk/win32/gdk.c
21558         * gdk/gdk.h: Fix inconsistencies: gint vs int.
21559
21560         * gtk/gtkmain.c
21561         * gtk/gtkclist.c
21562         * gtk/gtkmenufactory.c
21563         * gtk/gtknotebook.c
21564         * gtk/gtkwidget.c: Fix inconsistencies, also gint
21565         vs. gboolean.
21566
21567         * gtk/gtkcolorsel.[ch]
21568         * gtk/gtkcombo.[ch]
21569         * gtk/gtkdrawingarea.[ch]
21570         * gtk/gtkgamma.[ch]
21571         * gtk/gtkhandlebox.[ch]
21572         * gtk/gtkhpaned.[ch]
21573         * gtk/gtkhruler.[ch]
21574         * gtk/gtkplug.[ch]
21575         * gtk/gtkpreview.[ch]
21576         * gtk/gtkruler.[ch]
21577         * gtk/gtksocket.[ch]
21578         * gtk/gtkstatusbar.[ch]
21579         * gtk/gtktoolbar.[ch]
21580         * gtk/gtkvbbox.[ch]
21581         * gtk/gtkvpaned.[ch]
21582         * gtk/gtkvruler.[ch]: Always use type GtkType for the *_get_type
21583         functions.
21584
21585         * gtk/gtkgamma.h: Fix bug, missing () in call of
21586         gtk_gamma_curve_get_type() in GTK_GAMMA_CURVE_CLASS. 
21587
21588 1999-09-14  Tor Lillqvist  <tml@iki.fi>
21589
21590         * gdk/gdkcolor.c (gdk_colormap_new)
21591         * gdk/win32/gdkcolor.c (gdk_colormap_new): Fix memory leak:
21592         colormap->colors was allocated twice.
21593
21594         * gdk/win32/gdk.c: Remove some unused stuff.
21595
21596         * gdk/win32/gdkcolor.c (gdk_colormap_sync): Initialize all of the
21597         colormap.
21598
21599         * gtk/gtkfontsel.c (gtk_font_selection_dialog_get_type)
21600         * gtk/gtklabel.h (gtk_label_get_type)
21601         * gtk/gtktipsquery.c (gtk_tips_query_get_type)
21602         * gtk/gtktypeutils.h (gtk_type_name): : Use GtkType
21603         in a couple of places, not guint.
21604
21605 Fri Sep 10 21:31:00 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21606
21607         * configure.in,po/et.po: added Estonian language file
21608
21609 Wed Sep  1 14:36:12 CEST 1999 Pablo Saratxaga <pablo@mandrakesoft.com>
21610
21611         * configure.in,po/da.po: added Danish file
21612
21613 Sun Aug 29 13:38:59 BST 1999 Tony Gale <gale@gtk.org>
21614
21615         * docs/gtkfaq.sgml: Minor FAQ Update
21616
21617 Sat Aug 28 14:34:37 BST 1999 Tony Gale <gale@gtk.org>
21618
21619         * docs/gtkfaq.sgml: FAQ update
21620
21621 1999-08-27  Tor Lillqvist  <tml@iki.fi>
21622
21623         Win32: Philippe Colantoni <colanton@aris.ss.uci.edu> suggests a
21624         way to get window contents continually refreshed while resizing. I
21625         didn't like the effects myself, so it's not on by default.
21626
21627         * gdk/win32/gdkprivate.h: New flag variable
21628         gdk_event_func_from_window_proc, FALSE by default.
21629
21630         * gdk/win32/gdk.c (gdk_init_check): Set above flag if the
21631         environment variable GDK_EVENT_FUNC_FROM_WINDOW_PROC is set, or we
21632         are passed --gdk-event-func-from-window-proc.
21633
21634         * gdk/win32/gdkevents.c (gdk_WindowProc): If above flag is set,
21635         and we have am event_func, call it instead of enqueing the event.
21636
21637 1999-08-23  Tor Lillqvist  <tml@iki.fi>
21638
21639         * gdk/win32/gdkevents.c (gdk_event_translate): Fix from Simon
21640         Kelley: Set expose_count in GdkEventExposes correctly.
21641
21642         * gdk/win32/gdkwindow.c: Remove dead code (#ifdef
21643         MULTIPLE_WINDOW_CLASSES).
21644
21645         * gdk/win32/gdkdraw.c (gdk_draw_line): Workaround from Hans Breuer
21646         for bug in NT, apparently NT *does* draw the end pixel, too, in
21647         LineTo with a one-pixel pen, so we don't have to do it ourselves.
21648
21649 1999-08-21  Tor Lillqvist  <tml@iki.fi>
21650
21651         Improvements by Hans Breuer: 
21652
21653         * gdk/win32/gdkwindow.c (RegisterGdkClass): New function
21654
21655         * gdk/win32/gdkwindow.c (gdk_window_new): Use it. Don't set the
21656         CS_?REDRAW flags as they cause lots of (late) redraws when "show
21657         window contents while dragging" is turned on. Allocate at least
21658         one unique class for every GdkWindowType. If support for single
21659         window-specific icons is ever needed (eg. Dialog specific), every
21660         such window should get its own class.
21661
21662 1999-08-19  Tor Lillqvist  <tml@iki.fi>
21663
21664         * gdk/win32/gdkgc.c (gdk_gc_new_with_values): Fix a cut&paste
21665         error that caused crashes.
21666
21667 1999-08-17  Tor Lillqvist  <tml@iki.fi>
21668
21669         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): When blitting inside one
21670         window, use ScrollWindowEx, and call UpdateWindow. This prevents
21671         bugs when for instance part of the window was outside the
21672         display. Thanks to Philippe Colantoni for finding and fixing this.
21673
21674 1999-08-16  Tor Lillqvist  <tml@iki.fi>
21675
21676         * gdk/win32/gdkdraw.c (gdk_draw_arc): Fix start and end radial
21677         endpoint calculations which were totally wrong. (A little RTFMing
21678         helps a lot ;-)
21679
21680         * gtk/makefile.{cygwin,msc}: Use libintl extracted from glibc
21681         from a separate directory, not from gettext, because of licensing
21682         issues (we want to use the LGPL version).
21683
21684         * README.win32: Mention the intl from glibc vs from gettext issue.
21685
21686 1999-08-13  Tor Lillqvist  <tml@iki.fi>
21687
21688         * gdk/win32/gdkevents.c (gdk_event_translate): Fix a couple of bugs
21689         in the key event handling: Now AltGr chars work again. Also,
21690         now Alt-digits are passed up as well as Control-digits.
21691         Pass keypad plus and minus as normal plus and minus.
21692
21693 Wed Aug 11 13:38:26 BST 1999 Tony Gale  <gale@gtk.org>
21694
21695         * docs/gtkfaq.sgml: FAQ Update
21696
21697 1999-07-25  Tor Lillqvist  <tml@iki.fi>
21698
21699         * README.win32
21700         * config.h.win32: Add HAVE_WINTAB. Undefine it if bulding without
21701         the Wintab SDK.
21702
21703         * gdk/win32/gdkinput.c: Hack some more. Still doesn't quite work
21704         OK, but getting closer. Guard against bogus tilt data from Wacom
21705         ArtPad II with the 3.40 driver. Add ifdefs for HAVE_WINTAB to
21706         enable easier building without Wintab.
21707
21708         * gdk/win32/gdkinput.h
21709         * gdk/win32/gdkevents.c 
21710         * gdk/win32/gdkwindow.c: Minor changes related related to above.
21711         
21712         * gdk/win32/gdkvisual.c: Simplify a lot, remove leftovers from X11
21713         code. As we have just one visual on Win32, no sense to have it in a
21714         table, and no need for the hash table.
21715
21716         * gdk/win32/rc/cursor*.cur: Edit some of the cursors a bit to look
21717         better on white background.
21718
21719 1999-07-21  Tor Lillqvist  <tml@iki.fi>
21720
21721         * README.win32: Update gcc build instructions. Mention gettext is
21722         GPL.
21723
21724         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Get correct
21725         supported cursor size with GetSystemMetrics.
21726
21727         * gdk/win32/gdkfont.c
21728         * gtk/gtkfontsel.c: Guard against some font weight and charset
21729         symbols being undefined (in mingw32 headers).
21730
21731         * gdk/win32/makefile.cygwin
21732         * gtk/makefile.cygwin
21733         * gtk/gtkthemes.c: No longer need to have differently named
21734         gcc-built DLLs when using gcc-2.95 and -fnative-struct.
21735
21736 hu Jul 15 13:33:15 BST 1999 Tony Gale <gale@gtk.org>
21737
21738         * docs/gtkfaq.sgml: Long awaited FAQ update.
21739
21740 1999-07-15  Tor Lillqvist  <tml@iki.fi>
21741
21742         * gdk/win32/gdkcursor.c (gdk_cursor_new_from_pixmap): Implement
21743         it. Obscure bit manipulation needed.
21744
21745         * gdk/win32/gdkevents.c: Logging.
21746         
21747         * gtk/gtkthemes.c (gtk_theme_engine_get): (Win32) Use new DLL naming
21748         style (file name include compiler name) for theme engines.
21749
21750 1999-07-13  Tor Lillqvist  <tml@iki.fi>
21751
21752         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Less logging verbiage.
21753
21754         * gdk/win32/gdkevents.c: Fix long-standing bug in key
21755         events. The key.string wasn't zero-terminated, still we strdup'ed
21756         it in gdk_event_copy(). Synthesize crossing events for button
21757         events before possible propagation.
21758
21759         * gdk/win32/gdkwindow.c: Log gdk_window_set_title.
21760
21761         * gdk/win32/makefile.cygwin
21762         * gtk/makefile.cygwin: Use new DLL naming style for the
21763         GCC-compiled ones.
21764
21765         * gdk/win32/makefile.msc
21766         * gtk/makefile.msc: Cosmetics mostly.
21767
21768         * gtk/gtk.def: Add missing entry points.
21769
21770         * gtk/gtksocket.c: Add dummy gtk_socket_get_type() for Win32.
21771
21772 1999-07-09  Tor Lillqvist  <tml@iki.fi>
21773
21774         * gdk/win32/gdkdraw.c (gdk_draw_arc): Don't draw anything if width
21775         or height is zero. Don't print a warning if Pie or Arc fails, they
21776         always fail (?) for very narrow ellipses.
21777
21778         * gdk/win32/gdkdraw.c (gdk_draw_pixmap): Call InvalidateRgn for
21779         the part or the destination window corresponding to source area
21780         outside of the source drawable's boundary.
21781
21782         * gdk/win32/gdkdraw.c (gdk_draw_lines, gdk_draw_polygon): Don't do
21783         anything if less than two points.
21784
21785         * gdk/win32/gdkselection.c (gdk_selection_owner_get): Always
21786         return NULL. Gtk cut-and-paste inside a single program works
21787         better this way. (It always gets the clipboard contents from
21788         Windows, not from its own copy, which is cleared anyway. I can't
21789         say I fully understand what happens... Emulating the X selection
21790         and property stuff is a bit of a mess.)
21791
21792         * gdk/win32/gdkevents.c
21793         * gdk/win32/gdkproperty.c: A bit more verbose logging.
21794
21795         * gdk/win32/gdkregion.c: Fix some memory leaks (temporary regions
21796         that never got deleted). Revamp gdk_region_shrink.
21797
21798         * gdk/win32/gdkregion.c: Fix memory leak, delete temporary regions
21799         after use.
21800
21801         * gtk/gtk.def: Add some missing entry points.
21802
21803         * gtk/gtkrc.c: Strip trailing directory separator from pixmap path
21804         component.
21805
21806 1999-07-04  Tor Lillqvist  <tml@iki.fi>
21807
21808         * gdk/win32/gdkevents.c (gdk_event_translate): Handle
21809         Control-digits specially.
21810
21811 1999-07-03  Tor Lillqvist  <tml@iki.fi>
21812
21813         * gtk/makefile.{cygwin,msc}: New pthreads version. Use gettext.
21814
21815 1999-06-28  Tor Lillqvist  <tml@iki.fi>
21816
21817         * gdk/win32/gdkimage.c (gdk_image_get): bpl was set wrong for
21818         bitmaps, should be multiple of 4. (Thanks to Hans Breuer for
21819         finding this.)
21820
21821 1999-06-01  Jose H Mercado  <jmercado@mit.edu>
21822
21823         * gtk+.spec.in: Corrected some typos in files section.
21824         
21825 1999-06-15  Tor Lillqvist  <tml@iki.fi>
21826
21827         * README.win32: Mention using GNU gettext.
21828         * config.h.win32: Enable NLS stuff.
21829         * gtk/makefile.msc: Use GNU gettext.
21830         * gdk/win32/gdkdnd.c: Minor header reorg.
21831         * gdk/win32/{gdkevents,gdkwindow}.c: No semantic changes, mainly
21832         cosmetics.
21833         * gtk/gtkrc.c (Win32): Make get_gtk_sysconf_directory() public.
21834         * gtk/gtkmain.c (Win32): Use it in bindtextdomain() call.
21835
21836 Wed Jun  2 11:44:25 PDT 1999 Manish Singh <yosh@gimp.org>
21837
21838         * acinclude.m4
21839         * config.guess
21840         * config.status
21841         * ltconfig
21842         * ltmain.sh: upgrade to libtool 1.3.2 (BeOS changes merged)
21843
21844 1999-05-30  Tor Lillqvist  <tml@iki.fi>
21845
21846         * gdk/win32/gdkwindow.c: AdjustWindowRectEx2 renamed to
21847         SafeAdjustWindowRectEx. Don't override all calls to
21848         AdjustWindowRectEx by it, but use it only in two places: When
21849         creating a new top-level window and when moving a top-level
21850         window.
21851
21852         Use screen coordinate rectangle, not client rectangle, in
21853         gdk_window_move. Thus SafeAdjustWindowRectEx will do its job only
21854         when we try to place a window so that the decoration (mainly,
21855         title bar) isn't visible.
21856
21857         These changes fix the bug that showed up for instance as the
21858         GIMP's saved top-level windows moving right and down (by an amount
21859         equal to the window decoration) for each session. This bug showed
21860         up also in testgtk's "Saved Position".
21861
21862         gdk_window_resize also redone a bit.
21863
21864 1999-05-25  Tor Lillqvist  <tml@iki.fi>
21865
21866         * gtk/testgtkrc: Add (commented out) Windows-style theme
21867         include line.
21868
21869         * gdk/win32/gdk.def,gtk/gtk.def: Add some missing entry points.
21870
21871 1999-05-18  Tor Lillqvist  <tml@iki.fi>
21872
21873         * gdk/win32/makefile.{cygwin,msc}: Copy our gdkprivate.h and
21874         gdkx.h to a gdk subdirectory, so that applications can include
21875         these with <gdk/*.h> without trouble.
21876
21877         * gdk/win32/gdkimage.c (gdk_image_new_with_depth): Code simplified.
21878         (gdk_image_destroy): Plug resource leak, some GdkImages didn't
21879         have their bitmap destroyed.
21880
21881         * gdk/win32/gdk.def: Add gdk_root_parent.
21882
21883 Wed May 12 03:00:56 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
21884
21885         * configure.in
21886           gtk-config.in
21887           ltconfig
21888           ltmain.sh     
21889           gtk/Makefile.am: changes to compile nicely (with xlib) 
21890           on BeOS
21891
21892 Sat May  1 15:04:42 PDT 1999 Manish Singh <yosh@gimp.org>
21893
21894         * acinclude.m4
21895         * config.guess
21896         * config.sub
21897         * ltconfig
21898         * ltmain.sh: upgrade to libtool 1.3
21899
21900 Fri Apr 30 13:38:16 1999  Lars Hamann  <lars@gtk.org>
21901
21902         * gtk/gtkclist.c:
21903         * gtk/gtkctree.c: merges from gtk-1-2
21904
21905 1999-04-25  Tor Lillqvist  <tml@iki.fi>
21906
21907         Support added for building using a GNU toolchain on Win32,
21908         gcc -mno-cygwin (egcs-1.1.2) on cygwin-b20.1.
21909
21910         * gdk/win32/makefile.cygwin gtk/makefile.cygwin: New files.
21911         * config.h.win32: Changes for gcc.
21912         * gdk/gdkrectangle.c: Include gdk.h as <gdk/gdk.h>.
21913         * gdk/gdkcolor.c: config.h.win32 already defines strcasecmp.
21914         * gdk/win32/gdkconfig.h: Only the MS compiler has wctype.h.
21915         * gdk/win32/gdkdnd.c: Protect (unused) OLE2 stuff better.
21916         Protect shl stuff unavaiilable with mingw32 headers.
21917         * gdk/win32/gdkevents.c: Fix typo.
21918         * gdk/win32/gdkglobals.c: Use GDKVAR here also for gcc.
21919         * gdk/win32/gdkim.c: Use OEM code page for multibyte chars. (?)
21920         * gdk/win32/gdkinput.c: Use __try __except only with the MS compiler.
21921         * gdk/win32/gdkprivate.h: Make up for some stuff missing from
21922         the mingw32 headers.
21923         * gdk/win32/makefile.msc: Use latest Wintab kit and glib.
21924         * gtk/gtkfilesel.c: Include <glib.h> early, to get stat->_stat
21925         definition on Win32. Test for NATIVE_WIN32, not _MSC_VER.
21926         * gtk/gtkfontsel.c: Protect CHARSET redefinition on Win32.
21927         Test for NATIVE_WIN32, not _MSC_VER.
21928         * gtk/gtkmain.c: No use warning about developer version on Win32,
21929         there aren't any non-developer versions anyhow.
21930         * gtk/gtkrc.c: Test for NATIVE_WIN32, not _MSC_VER.
21931         * gtk/makefile.msc: Use pthread from another directory. Minor other
21932         changes. 
21933
21934 Wed Apr 21 14:20:22 1999  George Lebl  <jirka@5z.com>
21935
21936         * gdk/gdkwindow.c: (gdk_window_remove_filter) correctly remove the
21937           default filter from the list
21938
21939 Mon Mar  8 12:52:53 1999  Owen Taylor  <otaylor@redhat.com>
21940
21941         * gtk/gtkwidget.c (gtk_widget_grab_default): Add a warning
21942          when gtk_widget_grab_default() is called for a widget that
21943          is not within a GtkWindow.
21944
21945 Sat Apr 10 13:52:54 BST 1999  Tony Gale <gale@gtk.org>
21946
21947         * docs/gtk_tut.sgml, examples/clist.c: use a
21948           scrolled window in the clist example. Minor
21949           tutorial fixes.
21950
21951 Fri Apr  2 09:19:20 BST 1999  Tony Gale <gale@gtk.org>
21952
21953         * docs/gtk_tut.sgml: Style check from David King
21954           <dking@youvegotmail.net>
21955
21956 1999-03-30  Pavel Machek  <pavel@artax.karlin.mff.cuni.cz>
21957
21958         * gtk/gtkfontsel.c (gtk_font_selection_get_fonts): Make code
21959         compile with unknown value of GDK_WINDOWING
21960
21961 1999-03-28  Raja R Harinath  <harinath@cs.umn.edu>
21962
21963         * gdk/Makefile.am (gdkconfig.h): Make sure `gdkconfig.h' exists
21964         after the rule is fired.
21965         (install-exec-local): Install gdkconfig.h only if the contents are
21966         different from the currently installed gdkconfig.h.
21967
21968 1999-03-26  Raja R Harinath  <harinath@cs.umn.edu>
21969
21970         * gdk/Makefile.am (configexecincludedir): Rename from 
21971         configincludedir so that gdkconfig.h will be installed 
21972         as part of `make install-exec'. 
21973
21974 Fri Mar 19 16:50:33 PST 1999 Manish Singh <yosh@gimp.org>
21975
21976         * acinclude.m4
21977         * config.guess
21978         * config.sub
21979         * ltconfig
21980         * ltmain.sh: upgrade to libtool 1.2f
21981
21982         * autogen.sh: libtool is not required to autogen gtk+
21983
21984         * acconfig.h: remove WITH_SYMBOL_UNDERSCORE (not explictly
21985         needed)
21986
21987 1999-03-18  Tor Lillqvist  <tml@iki.fi>
21988
21989         * gdk/gdktypes.h: Merge in Win32 version: Define macro GDKVAR for
21990         declaring gdk variables exported/imported from the DLL. New image
21991         type enum, GDK_IMAGE_SHARED_PIXMAP, for gdk_imlib. New drag and
21992         drop protocol enums, GDK_DRAG_PROTO_WIN32_DROPFILES and
21993         GDK_DRAG_PROTO_OLE2.
21994
21995         * gdk/gdk.h: Merge in Win32 version: Two new functions,
21996         gdk_pixmap_create_on_shared_image and gdk_image_bitmap_new. So far
21997         declared only for the Win32 version, but could be in the X11
21998         version as well. (Needed for a Xlib-less gdk_imlib.)
21999         gdk_color_hash should have only one parameter. Declare
22000         gdk_threads_mutex with GDKVAR.
22001         
22002         * gdk/gdkcolor.c (gdk_color_hash): A hash function should have
22003         just one parameter.
22004
22005         * gdk/gdkimage.c (gdk_image_get): Initialize bpp correctly. Bytes
22006         per pixel, not bits.
22007
22008         * gdk/gdkrgb.c: Mingle includes somewhat. (gdk_rgb_select_conv):
22009         Fetch bpp (which means bits-per-pixel here) from another place on
22010         Win32. Accept also depth==32 (which we might get on Win32) with
22011         bpp==32.
22012
22013         * gtk/{gtkclist,gtkctree,gtkdnd,gtkditable,gtkfontsel,
22014         gtkhandlebox,gtklayout,gtkmain,gtkplug,gtkpreview,gtkrc,
22015         gtkselection,gtksocket,gtkstyle,gtkwidget,gtkwindow}.c:
22016         Include gdx.h from "gdkx.h", not "gdk/gdkx.h", as gdkx.h will be
22017         in the backend-dependent directory, not in the common gdk
22018         directory.
22019
22020         * gtk/testgtk.c: Ditto. Also, don't use ../gdk path to gdk
22021         headers.
22022
22023 Wed Mar 17 05:06:49 1999  Tim Janik  <timj@gtk.org>
22024
22025         * gtk/gtkmain.c (gtk_init_check): tell people that they don't really
22026         want to use the Gtk+ devel version (which is true, and yes - even i am
22027         currently working with the 1.2.x branch). so everyone reading this, you
22028         probably want to issue
22029         cvs checkout -r glib-1-2 glib
22030         and
22031         cvs checkout -r gtk-1-2 gtk+
22032         as your next two comands.
22033
22034 Wed Mar 17 02:49:32 1999  Tim Janik  <timj@gtk.org>
22035
22036         * configure.in: build gtkcompat.h from gtkcompat.h.in instead of
22037         gtkfeatures.h from gtkfeatures.h.in, require GLib 1.3.0.
22038
22039         * gtk/gtkcompat.h.in: combined gtkcompat.h and gtkfeatures.in in this
22040         file. strongly deprecated the GTK_HAVE_* macros, we provide
22041         GTK_CHECK_VERSION() for people that need to check for certain
22042         Gtk+ versions.
22043
22044         * gtk/gtkcompat.h: removed this from CVS.
22045         * gtk/gtkfeatures.h.in: removed this from CVS, gtkfeatures.h was a bad
22046         idea right from the start, it just didn't seem like that back then.
22047
22048 Wed Mar 17 01:46:28 1999  Tim Janik  <timj@gtk.org>
22049
22050         * merges from gtk-1-2:
22051
22052 Tue Mar 16 17:43:33 1999  Tim Janik  <timj@gtk.org>
22053
22054         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc_string): ensure the
22055         item factory class has been created.
22056         (gtk_item_factory_parse_rc): likewise.
22057
22058         * gtk/gtkmenu.c:
22059         keep proper references for old_active_menu_item.
22060         (gtk_menu_reparent): unset the usize of the new parent,
22061         so the menu can sanely be size requested and we don't get nasty screen
22062         artefacts upon next reparentation.
22063         (gtk_menu_motion_notify): set send_event to TRUE if we synthesize an
22064         enter notify. only synthesize enter notifies if the pointer really is
22065         inside the event window.
22066         (gtk_menu_popdown): use gtk_menu_shell_deselect().
22067         (gtk_menu_popup): move the background setting stuff into
22068         gtk_menu_tearoff_bg_copy() so it can be called from other places as well.
22069
22070         * gtk/gtkmenushell.c (gtk_menu_shell_button_press): use
22071         gtk_menu_shell_select_item() to select the new item.
22072         (gtk_menu_shell_deselect): export this function, so gtkmenu.c can
22073         do the right thing for deselection as well.
22074
22075 Sat Mar 15 20:10:33 1999  Tim Janik  <timj@gtk.org>
22076
22077         * gtk/gtkwidget.[hc]:
22078         (gtk_widget_accelerators_locked): return whether a widget's accelerators
22079         are locked.
22080
22081         * gtk/gtkmenu.c (gtk_menu_key_press): don't remove or install new or
22082         existing accelerators if the widget's accelerators are locked.
22083
22084 Sat Mar 14 19:44:05 1999  Tim Janik  <timj@gtk.org>
22085
22086         * gtk/gtkitemfactory.[hc]: allow managing of foreign menu items.
22087
22088         * gtk/gtkmenu.c: truely forward key press and key release events to
22089         the menu widget from the toplevel or tearoff window. we can't simply
22090         connect to that, we need to stop further processing of the events as
22091         well.
22092
22093 Sat Mar 13 13:14:17 1999  Tim Janik  <timj@gtk.org>
22094
22095         * gtk/gtkmenu.c:
22096         (gtk_menu_key_press): pass event->keyval, event->state to
22097         gtk_accelerator_valid, instead of event->keyval twice.
22098         refuse to install single letter accelerators for menus that use
22099         single letter shortcuts.
22100
22101         * gtk/gtkitemfactory.c (gtk_item_factory_create_item): use
22102         gtk_menu_ensure_uline_accel_group().
22103
22104         * gtk/gtkmenu.[hc]: added gtk_menu_ensure_uline_accel_group()
22105         which will always return an uline accel group, made
22106         gtk_menu_get_uline_accel_group() return NULL if the group isn't
22107         yet created.
22108
22109 Mon Mar 15 01:03:27 1999  Lars Hamann  <lars@gtk.org>
22110
22111         * gtk/gtkclist.h (struct _GtkCListColumn): added button_passive flag.
22112
22113         * gtk/gtkclist.c (gtk_clist_column_title_passive):
22114         Leave button sensitive, trap  button_press, button_release,
22115         motion_notify, enter_notify and leave_notify events instead.
22116         (gtk_clist_column_title_active): disconnect event handler.
22117         (gtk_clist_drag_data_get): fixed memory leak. Reported by
22118         Guillaume Laurent <glaurent@worldnet.fr>
22119
22120 Wed Mar 10 23:49:55 1999  Lars Hamann  <lars@gtk.org>
22121
22122         * gtk/gtklayout.c (gtk_layout_adjustment_changed): fixed a few
22123         width/height mixups.
22124
22125         * gtk/gtkctree.c (tree_delete): emit an tree_unselect_row signal
22126         if needed.
22127
22128 Wed Mar 10 00:11:32 1999  Tim Janik  <timj@gtk.org>
22129
22130         * gtk/testgtk.c (create_item_factory): unref the item factory after
22131         window's destruction.
22132
22133         * gtk/gtkmenushell.c (gtk_menu_shell_activate_item): keep a reference
22134         count on the menu shell around the menu item's activation, since the
22135         signal emission may cause menu shell destruction.
22136
22137         * gtk/gtkitemfactory.c:
22138         the previous code leaked one accel group per menu. we use
22139         gtk_menu_get_uline_accel_group() now to fix that, and with that
22140         also create the underline accelerator group of the menus only if
22141         required (i.e. an underline accelerator has been specified).
22142         (gtk_item_factory_construct):
22143         (gtk_item_factory_create_item): removed code that would create an
22144         extra accel group for the menu (and leak references).
22145         (gtk_item_factory_create_item): adapted the underline accelerator
22146         installation code to properly feature gtk_menu_get_uline_accel_group().
22147
22148         * gtk/gtkmenu.[hc]: added gtk_menu_get_accel_group() to retrive
22149         menu->accel_group, this may return NULL if the accelerator group
22150         hasn't been set yet.
22151         added gtk_menu_get_uline_accel_group() to retrive the underline
22152         accelerator group of the menu, this will be created on demand
22153         and proper care is taken about its reference count.
22154
22155         * gtk/gtkitemfactory.h:
22156         * gtk/gtkitemfactory.c:
22157         dumped the approach of keeping a widgets by action list on the
22158         factory since the factory<->widget destroy negotiation didn't work
22159         and would be hard to get going at all. instead we keep a list of
22160         GtkItemFactoryItem items on the factory (GtkItemFactoryItems are
22161         persistant throughout a program's life time).
22162         also, i removed the static const gchar *key_* variables, and made
22163         them inline strings (they weren't actually used anyways).
22164         (gtk_item_factory_add_item): update ifactory->items.
22165         (gtk_item_factory_destroy): destroy ifactory->items (and remove
22166         the item factory pointer from the remaining ifactory widgets).
22167         (gtk_item_factory_get_widget_by_action): walk the GtkItemFactoryItem
22168         list to find the widget.
22169         (gtk_item_factory_get_item): new function that works around
22170         gtk_item_factory_get_widget() limitations, this function will only
22171         return menu items, even for <Branch> entries.
22172
22173 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22174
22175         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22176         font hash table, if we have a GdkFontPrivate entry for this font
22177         already, simply increment its reference count, provided by Olaf Dietsche
22178         <olaf.dietsche+list.gtk@netcologne.de>.
22179
22180         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
22181         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
22182
22183 Sun Mar  7 06:13:29 1999  Tim Janik  <timj@gtk.org>
22184
22185         * gtk/gtkcontainer.c:
22186         (gtk_container_add_with_args):
22187         (gtk_container_addv):
22188         (gtk_container_add): before adding a child to a conatiner, make sure
22189         it is (default) constructed, this is neccessary because under certain
22190         circumstances the child will get relized and mapped immediatedly, in
22191         which case it has to be constructed already.
22192
22193 Mon Mar  1 17:58:21 1999  Tim Janik  <timj@gtk.org>
22194
22195         * gtk/gtksignal.c (gtk_signal_connect_by_type): count object_signal
22196         values > 1 as TRUE also.
22197
22198 1999-03-16  Tor Lillqvist  <tml@iki.fi>
22199
22200         * README.win32: New file.
22201                 
22202         * configure.in: Check for lstat.
22203
22204         * config.h.win32: Add non-definition of HAVE_LSTAT, just for
22205         completeness.
22206
22207         * gtk/gtkrc.c: If don't HAVE_LSTAT, use stat.
22208
22209         * gtk/gtk.def: Removed CRs.
22210
22211         * gtk/makefile.msc: Correct include path to Win32 GDK version (in
22212         ..\gdk\win32).
22213
22214         * gdk/win32/makefile.msc: Correct upwards relative paths.
22215         
22216 Mon Mar 15 03:38:34 1999  George Lebl  <jirka@5z.com>
22217
22218         * gtk/gtkdnd.c: (gtk_drag_highlight) swap the
22219           gtk_drag_highlight_expose and gtk_drag_highlight_paint since
22220           it was connecting a void function to expose_event and the int
22221           returning function to the draw signal
22222
22223 1999-03-14  Jeff Garzik  <jgarzik@pobox.com>
22224
22225         * configure.in:
22226         Use correct path to libgmodule.la when ref'ing uninstalled copy
22227         of glib.  (Already in stable branch, Bug #417)
22228
22229 1999-03-15  Tor Lillqvist  <tml@iki.fi>
22230
22231         Win32 merge and general portability stuff:
22232                 
22233         * acconfig.h,configure.in: Check for <sys/time.h>.
22234
22235         * gdk/win32: New directory (actually, been there for a while).
22236         
22237         * gtk/fnmatch.c: Include <glib.h> for G_DIR_SEPARATOR, WIN32 and
22238         NATIVE_WIN32, and use these. Always case fold on Win32. No
22239         backslashed escapes on native Win32.
22240
22241         * gtk/{gtk.def,makefile.msc}: New files.
22242
22243         * gtk/Makefile.am: Add above new files.
22244         
22245         * gtk/{gtkaccelgroup,gtkbindings}.c: Include <string.h>
22246         instead of <strings.h>.
22247
22248         * gtk/{gtkcalendar,gtkitemfactory,gtkpreview,gtkrc}.c: Include
22249         config.h. Protect inclusion of <sys/param.h>, <sys/time.h>, and
22250         <unistd.h> appropriately.
22251
22252         * gtk/gtkdnd.c: Merge in Win32 version (which doesn't do much).
22253         Use ABS() (from <glib.h>) instead of abs().
22254         
22255         * gtk/gtkfilesel.c: Moved Win32-specific includes after inclusion
22256         of gtk (and thus glib) headers, so that WIN32 will be
22257         defined. With MS C, include <direct.h> for mkdir prototype.
22258
22259         * gtk/gtkitemfactory.c (gtk_item_factory_callback_marshal): Add
22260         some casts, needed by MS C.
22261
22262         * gtk/{gtklayout,gtkplug}.c: Merge in Win32 version (which isn't
22263         implemented).
22264
22265         * gtk/gtkmain.c: Include gdk/gdkx.h for GDK_WINDOWING. Include
22266         <X11/Xlocale.h> only on X11 platform, otherwise <locale.h>.  Use
22267         G_SEARCHPATH_SEPARATOR_S and g_module_build_path.
22268
22269         * gtk/gtkmain.h: Mark variables for export/import on Win32.
22270                 
22271         * gtk/gtkrange.c (gtk_range_motion_notify): Set mods also in case
22272         the event is not a hint, or its window is not the slider. Needed
22273         on Win32, at least.
22274
22275         * gtk/gtkrc.c: Include config.h and gdk/gdkx.h. Use <locale.h>
22276         unless on X11. Skip \r chars, too. Use G_DIR_SEPARATOR and
22277         G_SEARCHPATH_SEPARATOR(_S). Use g_path_is_absolute. On Win32, use
22278         a subdirectory of the Windows directory as gtk system
22279         configuration directory.
22280
22281         * gtk/gtkselection.c: No chunks on Win32.
22282
22283         * gtk/gtksocket.c: Not implemented on Win32.
22284
22285         * gtk/gtkthemes.c (gtk_theme_engine_get): Use g_module_build_path.
22286
22287         * gtk/makeenums.h: Include gdkprivate.h after gdk.h.
22288
22289         * gtk/maketypes.awk: Declare variables with a macro that expands to
22290         necessary export/import magic in the case of Win32.
22291                 
22292         * gtk/testrgb.c: Use dynamically allocated buffer. Use GTimers.
22293
22294 1999-03-13  Raja R Harinath  <harinath@cs.umn.edu>
22295
22296         * configure.in (gdk_wc): Move widechar tests from `glib' to here,
22297         since those were meant only for gdki18n.h.  
22298         * gdk/gdki18n.h: Include gdkconfig.h and use GDK_* instead of G_*
22299         for widechar tests.
22300         * gtk/Makefile.am (INCLUDES): Add -I../gdk for gdkconfig.h.
22301
22302 1999-03-13  Tor Lillqvist  <tml@iki.fi>
22303
22304         * configure.in acconfig.h: Check for dirent.h and pwd.h. Generate
22305         gdk/gdkconfig.h using similar mechanism as GLib's glibconfig.h.
22306
22307         * gtk-config.in: Add @libdir/gtk+/include (where gdkconfig.h is
22308         installed) to CFLAGS.
22309
22310         * gdk/Makefile.am: Add rules for gdkconfig.h.
22311
22312         * gdk/gdktypes.h: Include gdkconfig.h. Define macros for windowing
22313         APIs.
22314
22315         * gdk/gdkfontsel.c: Don't include Xlib.h, it gets included via
22316         gdkx.h anyway when compiling for X11.
22317         (gtk_font_selection_create_xlfd): Use g_strdup_printf. (In
22318         general): Merge in Win32 version.
22319         
22320         * gtk/gtkfilesel.c: Use g_get_current_dir(). Merge in Win32
22321         version: Use G_DIR_SEPARATOR, g_path_is_absolute, no tilde
22322         expansion (if we don't have HAVE_PWD_H), allow for drive
22323         letters. UNC paths (\\server\share\...) are not handled yet.  Also,
22324         included code from Craig Setera's port to Win32 (the one that uses
22325         X11, and the cygwin dll), even if it probably will be abandoned.
22326
22327         * gtk/gtkfilesel.c: Don't append a * to the pattern to complete if
22328         the user entered one herself.  This way one can complete *.h and
22329         don't get matches on any .help files, for instance.
22330         
22331 Tue Mar  9 01:01:28 1999  Tim Janik  <timj@gtk.org>
22332
22333         * gdk/gdkfont.c (gdk_font_load): first lookup the xfont ID in our
22334         font hash table, if we have a GdkFontPrivate entry for this font
22335         already, simply increment its reference count, provided by Olaf Dietsche
22336         <olaf.dietsche+list.gtk@netcologne.de>.
22337
22338         * gtk/gtkstyle.c (gtk_style_copy): plug a GdkFont reference leak, fix
22339         provided by Olaf Dietsche <olaf.dietsche+list.gtk@netcologne.de>.
22340
22341 1999-03-09  Federico Mena Quintero  <federico@nuclecu.unam.mx>
22342
22343         * gtk/gtkstyle.c (gtk_default_draw_handle): Significantly reduced
22344         the number of calls to gdk_draw_point() (and thus to X) by
22345         clipping the points by hand.
22346
22347         * gtk/gtkhandlebox.c (draw_textured_frame): Actually make use of
22348         the clip parameter.
22349         (gtk_handle_box_paint): Only paint the handle if the expose area
22350         intersects it.
22351
22352 Sun Mar  7 18:46:37 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
22353
22354         * gtk/gtkmain.c (add_dll_suffix): Add this function (OS/2 ver.)
22355
22356 Sun Mar  7 11:43:34 1999  ape@spacetec.no  (Asbjorn Pettersen)
22357
22358         * gtk/gtkthemes.c (gtk_theme_engine_get): Add OS/2 changes.
22359         Added function gen_8_3_dll_name(gchar *name, gchar *fullname).
22360
22361 Fri Mar  5 09:12:24 1999  ape@lrdpf.spacetec.no  (Asbjorn Pettersen)
22362
22363         * gtk/gtkitemfactory.c (gtk_item_factory_parse_rc): Open file in
22364          textmode (O_TEXT) for OS/2 version.
22365
22366 Sun Feb 28 16:46:02 1999  Stefan Jeske  <stefan@gtk.org>
22367
22368         * gtk/gtkspinbutton.[c,h] gtk/testgtk.c: Added two new signals to 
22369         GtkSpinButton, "input" and "output", to make the output more flexible.
22370         The user has to provide a mapping between adjustment->value and the
22371         output string (and vice versa, if the spin button is editable). 
22372         See testgtk for examples.
22373
22374 Sat Feb 27 01:18:47 1999  Tim Janik  <timj@gtk.org>
22375
22376         * ChangeLog: moved old ChangeLog to ChangeLog.pre-1-2, and started
22377         new one.
22378         
22379         * configure.in: set gtk+ version to 1.3.0.